Skip to content

Commit b60c7c9

Browse files
authored
Merge pull request #236 from octokit/fixes/integration-tests
Update integration tests
2 parents ef1ec23 + aeed6fb commit b60c7c9

File tree

5 files changed

+70
-10
lines changed

5 files changed

+70
-10
lines changed
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
name: Integration tests
2+
3+
on:
4+
push:
5+
6+
# Runs at 00:00 UTC every day
7+
schedule:
8+
- cron: '0 */24 * * *'
9+
10+
# Runs when repository is starred
11+
watch:
12+
types: [started]
13+
14+
env:
15+
config: Release
16+
17+
jobs:
18+
integration-tests:
19+
runs-on: windows-latest
20+
21+
steps:
22+
- uses: actions/checkout@v2
23+
24+
- name: Setup .NET Core
25+
uses: actions/setup-dotnet@v1
26+
with:
27+
dotnet-version: 3.1.101
28+
29+
- name: Build using .NET Core
30+
run: dotnet build Octokit.GraphQL.sln -c ${{ env.config }}
31+
32+
- name: Run integration tests
33+
run: dotnet test -c ${{ env.config }} --no-build /p:CollectCoverage=true /p:CoverletOutputFormat=opencover /p:Exclude="[Octokit.GraphQL]Octokit.GraphQL.*" .\Octokit.GraphQL.IntegrationTests\Octokit.GraphQL.IntegrationTests.csproj
34+
env:
35+
OCTOKIT_GQL_OAUTHTOKEN: "${{ secrets.OCTOKIT_GQL_OAUTHTOKEN }}"
36+
OCTOKIT_GQL_GITHUBUSERNAME: "${{ secrets.OCTOKIT_GQL_GITHUBUSERNAME }}"

Octokit.GraphQL.IntegrationTests/Queries/ErrorTests.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,10 @@ public async Task Should_Throw_Correct_Error_For_Name_Resolution_Failure()
4141
[IntegrationTest]
4242
public async Task Should_Throw_Correct_Error_For_Invalid_Repository_Name()
4343
{
44+
var owner = "octokit";
45+
var name = "bad_repository";
4446
var query = new Query()
45-
.Repository(owner: "octokit", name: "bad_repository")
47+
.Repository(owner: owner, name: name)
4648
.Issues(first: 3)
4749
.Nodes
4850
.Select(i => new
@@ -52,7 +54,7 @@ public async Task Should_Throw_Correct_Error_For_Invalid_Repository_Name()
5254
});
5355

5456
var ex = await Assert.ThrowsAnyAsync<ResponseDeserializerException>(async () => await Connection.Run(query));
55-
Assert.Equal("Could not resolve to a Repository with the name 'bad_repository'.", ex.Message);
57+
Assert.Equal($"Could not resolve to a Repository with the name '{owner}/{name}'.", ex.Message);
5658
Assert.Equal(1, ex.Line);
5759
Assert.Equal(7, ex.Column);
5860
}

Octokit.GraphQL.IntegrationTests/Queries/PullRequestTests.cs

Lines changed: 26 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -138,11 +138,22 @@ public async Task Can_Use_Conditional_In_BaseRef_Query()
138138
var query = new Query()
139139
.Repository(owner: "octokit", name: "octokit.net")
140140
.PullRequest(number: 1)
141-
.Select(pr => pr.BaseRef != null ? pr.BaseRef.Name : null);
141+
.Select(pr => new
142+
{
143+
BaseRefName = pr.BaseRef != null ? pr.BaseRef.Name : null,
144+
BaseRefNotNull = pr.BaseRef != null
145+
});
142146

143147
var result = await Connection.Run(query);
144148

145-
Assert.Equal("master", result);
149+
if (result.BaseRefNotNull)
150+
{
151+
Assert.Equal("main", result.BaseRefName);
152+
}
153+
else
154+
{
155+
Assert.Null(result.BaseRefName);
156+
}
146157
}
147158

148159
[IntegrationTest]
@@ -151,11 +162,22 @@ public async Task Can_Use_Conditional_When_Selecting_Base_Repository_Owner()
151162
var query = new Query()
152163
.Repository(owner: "octokit", name: "octokit.net")
153164
.PullRequest(number: 1)
154-
.Select(pr => pr.BaseRef != null ? pr.BaseRef.Repository.Owner.Login : null);
165+
.Select(pr => new
166+
{
167+
Owner = pr.BaseRef != null ? pr.BaseRef.Repository.Owner.Login : null,
168+
BaseRefNotNull = pr.BaseRef != null
169+
});
155170

156171
var result = await Connection.Run(query);
157172

158-
Assert.Equal("octokit", result);
173+
if (result.BaseRefNotNull)
174+
{
175+
Assert.Equal("octokit", result.Owner);
176+
}
177+
else
178+
{
179+
Assert.Null(result.Owner);
180+
}
159181
}
160182

161183
[IntegrationTest]

Octokit.GraphQL.IntegrationTests/Queries/RepositoryTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -285,8 +285,8 @@ public async Task Query_Organization_Repositories_Select_Multiple_Object_Fragmen
285285
});
286286

287287
var testModelObject = await Connection.Run(query);
288-
Assert.Equal("bkeepers", testModelObject.Member.StringField1);
289-
Assert.Equal("bkeepers", testModelObject.MentionableUser.StringField1);
288+
Assert.Equal("alanjrogers", testModelObject.Member.StringField1);
289+
Assert.Equal("anaisbetts", testModelObject.MentionableUser.StringField1);
290290
}
291291

292292
[IntegrationTest]

Octokit.GraphQL.IntegrationTests/Queries/ViewerTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ public async Task Viewer_By_GraphyQL_Matches_Api()
5353
Assert.NotNull(graphqlUser);
5454

5555
Assert.Equal(apiUser.AvatarUrl, graphqlUser.AvatarUrl);
56-
Assert.Equal(apiUser.Bio ?? string.Empty, graphqlUser.Bio);
57-
Assert.Equal(apiUser.Company ?? string.Empty, graphqlUser.Company);
56+
Assert.Equal(apiUser.Bio, graphqlUser.Bio);
57+
Assert.Equal(apiUser.Company, graphqlUser.Company);
5858

5959
Assert.Equal(apiUser.CreatedAt.ToUniversalTime(), graphqlUser.CreatedAt.ToUniversalTime());
6060

0 commit comments

Comments
 (0)