Some new integration tests were added in order to test Pagination Support on IUserEmailsClient and IObservableUserEmailsClient.

This commit is contained in:
aedampir@gmail.com
2016-03-15 19:32:42 +07:00
parent 9fd3c9b730
commit f16b20d28d
2 changed files with 117 additions and 8 deletions
@@ -7,12 +7,13 @@ namespace Octokit.Tests.Integration
{
public class ObservableUserEmailsClientTests
{
private readonly ObservableUserEmailsClient _emailClient
= new ObservableUserEmailsClient(Helper.GetAuthenticatedClient());
[IntegrationTest]
public async Task CanGetEmail()
{
var github = Helper.GetAuthenticatedClient();
var client = new ObservableUserEmailsClient(github);
var client = new ObservableUserEmailsClient(Helper.GetAuthenticatedClient());
var email = await client.GetAll();
Assert.NotNull(email);
@@ -21,12 +22,60 @@ namespace Octokit.Tests.Integration
[IntegrationTest]
public async Task CanGetEmailWithApiOptions()
{
var github = Helper.GetAuthenticatedClient();
var client = new ObservableUserEmailsClient(github);
var email = await client.GetAll(ApiOptions.None);
var email = await _emailClient.GetAll(ApiOptions.None);
Assert.NotNull(email);
}
[IntegrationTest]
public async Task ReturnsCorrectCountOfEmailsWithoutStart()
{
var options = new ApiOptions
{
PageSize = 5,
PageCount = 1
};
var emails = await _emailClient.GetAll(options).ToList();
Assert.Equal(1, emails.Count);
}
[IntegrationTest]
public async Task ReturnsCorrectCountOfEmailsWithStart()
{
var options = new ApiOptions
{
PageSize = 5,
PageCount = 1,
StartPage = 2
};
var emails = await _emailClient.GetAll(options).ToList();
Assert.Equal(0, emails.Count);
}
//[IntegrationTest]
//public async Task ReturnsDistinctResultsBasedOnStartPage()
//{
// var startOptions = new ApiOptions
// {
// PageSize = 5,
// PageCount = 1
// };
// var firstPage = await _emailClient.GetAll(startOptions);
// var skipStartOptions = new ApiOptions
// {
// PageSize = 5,
// PageCount = 1,
// StartPage = 2
// };
// var secondPage = await _emailClient.GetAll(skipStartOptions);
// Assert.Equal(firstPage[0].Email, secondPage[0].Email);
//}
}
}