Skip to content
This repository was archived by the owner on Jun 21, 2023. It is now read-only.

Commit 8fa09e5

Browse files
committed
Factor out GetIncrementedCounter
Utility method to find the incremented counter as a string.
1 parent 729c64f commit 8fa09e5

File tree

1 file changed

+15
-8
lines changed

1 file changed

+15
-8
lines changed

test/GitHub.App.UnitTests/ViewModels/Dialog/Clone/RepositoryCloneViewModelTests.cs

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -45,11 +45,11 @@ public async Task Default_SelectedTabIndex_For_Group(string address, bool isGrou
4545
Assert.That(target.SelectedTabIndex, Is.EqualTo(expectTabIndex));
4646
}
4747

48-
[TestCase("https://github.com", false, "model => model.NumberOfCloneViewGitHubTab")]
49-
[TestCase("https://enterprise.com", false, "model => model.NumberOfCloneViewEnterpriseTab")]
50-
[TestCase("https://github.com", true, "model => model.NumberOfCloneViewUrlTab")]
51-
[TestCase("https://enterprise.com", true, "model => model.NumberOfCloneViewUrlTab")]
52-
public async Task IncrementCounter_Showing_Default_Tab(string address, bool isGroupA, string expressionString)
48+
[TestCase("https://github.com", false, nameof(UsageModel.MeasuresModel.NumberOfCloneViewGitHubTab))]
49+
[TestCase("https://enterprise.com", false, nameof(UsageModel.MeasuresModel.NumberOfCloneViewEnterpriseTab))]
50+
[TestCase("https://github.com", true, nameof(UsageModel.MeasuresModel.NumberOfCloneViewUrlTab))]
51+
[TestCase("https://enterprise.com", true, nameof(UsageModel.MeasuresModel.NumberOfCloneViewUrlTab))]
52+
public async Task IncrementCounter_Showing_Default_Tab(string address, bool isGroupA, string expectCounter)
5353
{
5454
var cm = CreateConnectionManager(address);
5555
var connection = cm.Connections[0];
@@ -60,9 +60,8 @@ public async Task IncrementCounter_Showing_Default_Tab(string address, bool isGr
6060

6161
await target.InitializeAsync(connection).ConfigureAwait(false);
6262

63-
await usageTracker.Received(1).IncrementCounter(Arg.Any<Expression<Func<UsageModel.MeasuresModel, int>>>()).ConfigureAwait(false);
64-
var expression = (Expression<Func<UsageModel.MeasuresModel, int>>) usageTracker.ReceivedCalls().First().GetArguments()[0];
65-
Assert.AreEqual(expressionString, expression.ToString());
63+
var counter = await GetIncrementedCounter(usageTracker);
64+
Assert.That(counter, Is.EqualTo(expectCounter));
6665
}
6766

6867
[Test]
@@ -364,5 +363,13 @@ static IRepositoryModel CreateRepositoryModel(string owner, string name)
364363
repository.Name.Returns(name);
365364
return repository;
366365
}
366+
367+
static async Task<string> GetIncrementedCounter(IUsageTracker usageTracker)
368+
{
369+
await usageTracker.Received(1).IncrementCounter(Arg.Any<Expression<Func<UsageModel.MeasuresModel, int>>>()).ConfigureAwait(false);
370+
var expression = (Expression<Func<UsageModel.MeasuresModel, int>>)usageTracker.ReceivedCalls().First().GetArguments()[0];
371+
var counter = ((MemberExpression)expression.Body).Member.Name;
372+
return counter;
373+
}
367374
}
368375
}

0 commit comments

Comments
 (0)