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

Commit 151f3f6

Browse files
authored
Merge pull request #508 from github/fixes/add-usage-track-for-pr-creation
Ooops we weren't tracking PR creation
2 parents 9f4123e + f77c057 commit 151f3f6

File tree

4 files changed

+10
-6
lines changed

4 files changed

+10
-6
lines changed

src/GitHub.App/Services/PullRequestService.cs

+6-2
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,15 @@ public class PullRequestService : IPullRequestService
2727
readonly IGitClient gitClient;
2828
readonly IGitService gitService;
2929
readonly IOperatingSystem os;
30+
readonly IUsageTracker usageTracker;
3031

3132
[ImportingConstructor]
32-
public PullRequestService(IGitClient gitClient, IGitService gitService, IOperatingSystem os)
33+
public PullRequestService(IGitClient gitClient, IGitService gitService, IOperatingSystem os, IUsageTracker usageTracker)
3334
{
3435
this.gitClient = gitClient;
3536
this.gitService = gitService;
3637
this.os = os;
38+
this.usageTracker = usageTracker;
3739
}
3840

3941
public IObservable<IPullRequestModel> CreatePullRequest(IRepositoryHost host,
@@ -88,7 +90,9 @@ async Task<IPullRequestModel> PushAndCreatePR(IRepositoryHost host,
8890
if (!Splat.ModeDetector.Current.InUnitTestRunner().GetValueOrDefault())
8991
await Task.Delay(TimeSpan.FromSeconds(5));
9092

91-
return await host.ModelService.CreatePullRequest(sourceRepository, targetRepository, sourceBranch, targetBranch, title, body);
93+
var ret = await host.ModelService.CreatePullRequest(sourceRepository, targetRepository, sourceBranch, targetBranch, title, body);
94+
usageTracker.IncrementUpstreamPullRequestCount();
95+
return ret;
9296
}
9397

9498
}

src/GitHub.Exports/Services/UsageTracker.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ public void IncrementCreateGistCount()
122122
public void IncrementUpstreamPullRequestCount()
123123
{
124124
var usage = LoadUsage();
125-
++usage.Model.NumberOfClones;
125+
++usage.Model.NumberOfUpstreamPullRequests;
126126
SaveUsage(usage);
127127
}
128128

src/UnitTests/GitHub.App/Services/PullRequestServiceTests.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ public class PullRequestServiceTests : TestBaseClass
1313
public void CreatePullRequestAllArgsMandatory()
1414
{
1515
var serviceProvider = Substitutes.ServiceProvider;
16-
var service = new PullRequestService(Substitute.For<IGitClient>(), serviceProvider.GetGitService(), serviceProvider.GetOperatingSystem());
16+
var service = new PullRequestService(Substitute.For<IGitClient>(), serviceProvider.GetGitService(), serviceProvider.GetOperatingSystem(), Substitute.For<IUsageTracker>());
1717

1818
IRepositoryHost host = null;
1919
ISimpleRepositoryModel sourceRepo = null;

src/UnitTests/GitHub.App/ViewModels/PullRequestCreationViewModelTests.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ static TestData PrepareTestData(
115115
public void TargetBranchDisplayNameIncludesRepoOwnerWhenFork()
116116
{
117117
var data = PrepareTestData("octokit.net", "shana", "master", "octokit", "master", "origin", true, true);
118-
var prservice = new PullRequestService(data.GitClient, data.GitService, data.ServiceProvider.GetOperatingSystem());
118+
var prservice = new PullRequestService(data.GitClient, data.GitService, data.ServiceProvider.GetOperatingSystem(), Substitute.For<IUsageTracker>());
119119
prservice.GetPullRequestTemplate(data.ActiveRepo).Returns(Observable.Empty<string>());
120120
var vm = new PullRequestCreationViewModel(data.RepositoryHost, data.ActiveRepo, prservice, data.NotificationService);
121121
Assert.Equal("octokit/master", vm.TargetBranch.DisplayName);
@@ -150,7 +150,7 @@ public async Task CreatingPRs(int testId,
150150
var targetBranch = data.TargetBranch;
151151
var ms = data.ModelService;
152152

153-
var prservice = new PullRequestService(data.GitClient, data.GitService, data.ServiceProvider.GetOperatingSystem());
153+
var prservice = new PullRequestService(data.GitClient, data.GitService, data.ServiceProvider.GetOperatingSystem(), Substitute.For<IUsageTracker>());
154154
var vm = new PullRequestCreationViewModel(data.RepositoryHost, data.ActiveRepo, prservice, data.NotificationService);
155155

156156
vm.Initialize();

0 commit comments

Comments
 (0)