public void RequestsTheCorrectUrl() { var connection = Substitute.For<IApiConnection>(); var client = new SearchClient(connection); client.SearchUsers(new SearchUsersRequest("something")); connection.Received().Get<SearchUsersResult>(Arg.Is<Uri>(u => u.ToString() == "search/users"), Arg.Any<Dictionary<string, string>>()); }
public void TestingTheTermParameter() { var connection = Substitute.For<IApiConnection>(); var client = new SearchClient(connection); var request = new SearchUsersRequest("github"); client.SearchUsers(request); connection.Received().Get<SearchUsersResult>( Arg.Is<Uri>(u => u.ToString() == "search/users"), Arg.Is<Dictionary<string, string>>(d => d["q"] == "github")); }
public void TestingTheAccountTypeQualifier_Org() { var connection = Substitute.For<IApiConnection>(); var client = new SearchClient(connection); var request = new SearchUsersRequest("github"); request.AccountType = AccountType.Org; client.SearchUsers(request); connection.Received().Get<SearchUsersResult>( Arg.Is<Uri>(u => u.ToString() == "search/users"), Arg.Is<Dictionary<string, string>>(d => d["q"] == "github+type:Org")); }
public void TestingTheInQualifier_Email() { var connection = Substitute.For<IApiConnection>(); var client = new SearchClient(connection); var request = new SearchUsersRequest("github"); request.In = new[] { UserInQualifier.Email }; client.SearchUsers(request); connection.Received().Get<SearchUsersResult>( Arg.Is<Uri>(u => u.ToString() == "search/users"), Arg.Is<Dictionary<string, string>>(d => d["q"] == "github+in:Email")); }
public void TestingTheInQualifier() { var connection = Substitute.For<IApiConnection>(); var client = new SearchClient(connection); //get users where the fullname contains 'github' var request = new SearchUsersRequest("github"); request.In = new[] { UserInQualifier.Fullname }; client.SearchUsers(request); connection.Received().Get<SearchUsersResult>( Arg.Is<Uri>(u => u.ToString() == "search/users"), Arg.Is<Dictionary<string, string>>(d => d["q"] == "github+in:Fullname")); }
public void EnsuresNonNullArguments() { var client = new SearchClient(Substitute.For<IApiConnection>()); Assert.Throws<ArgumentNullException>(() => client.SearchUsers(null)); }
public void TestingTheFollowersQualifier_Range() { var connection = Substitute.For<IApiConnection>(); var client = new SearchClient(connection); var request = new SearchUsersRequest("github"); request.Followers = new Range(1, 1000); client.SearchUsers(request); connection.Received().Get<SearchUsersResult>( Arg.Is<Uri>(u => u.ToString() == "search/users"), Arg.Is<Dictionary<string, string>>(d => d["q"] == "github+followers:1..1000")); }
public void TestingTheCreatedQualifier_LessThan() { var connection = Substitute.For<IApiConnection>(); var client = new SearchClient(connection); var request = new SearchUsersRequest("github"); request.Created = DateRange.LessThan(new DateTime(2014, 1, 1)); client.SearchUsers(request); connection.Received().Get<SearchUsersResult>( Arg.Is<Uri>(u => u.ToString() == "search/users"), Arg.Is<Dictionary<string, string>>(d => d["q"] == "github+created:<2014-01-01")); }
public void TestingTheLanguageQualifier() { var connection = Substitute.For<IApiConnection>(); var client = new SearchClient(connection); //get users who have mostly repos where language is Ruby var request = new SearchUsersRequest("github"); request.Language = Language.Ruby; client.SearchUsers(request); connection.Received().Get<SearchUsersResult>( Arg.Is<Uri>(u => u.ToString() == "search/users"), Arg.Is<Dictionary<string, string>>(d => d["q"] == "github+language:Ruby")); }
public void TestingTheLocationQualifier() { var connection = Substitute.For<IApiConnection>(); var client = new SearchClient(connection); var request = new SearchUsersRequest("github"); request.Location = "San Francisco"; client.SearchUsers(request); connection.Received().Get<SearchUsersResult>( Arg.Is<Uri>(u => u.ToString() == "search/users"), Arg.Is<Dictionary<string, string>>(d => d["q"] == "github+location:San Francisco")); }
public void TestingTheReposQualifier_LessThan() { var connection = Substitute.For<IApiConnection>(); var client = new SearchClient(connection); var request = new SearchUsersRequest("github"); request.Repositories = Range.LessThan(5); client.SearchUsers(request); connection.Received().Get<SearchUsersResult>( Arg.Is<Uri>(u => u.ToString() == "search/users"), Arg.Is<Dictionary<string, string>>(d => d["q"] == "github+repos:<5")); }
public async Task EnsuresNonNullArguments() { var client = new SearchClient(Substitute.For<IApiConnection>()); await Assert.ThrowsAsync<ArgumentNullException>(() => client.SearchUsers(null)); }
public void TestingTheFollowersQualifier_LessThanOrEqualTo() { var connection = Substitute.For<IApiConnection>(); var client = new SearchClient(connection); var request = new SearchUsersRequest("github"); request.Followers = Range.LessThanOrEquals(1); client.SearchUsers(request); connection.Received().GetAll<User>( Arg.Is<Uri>(u => u.ToString() == "search/users"), Arg.Is<Dictionary<string, string>>(d => d["q"] == "github+followers:<=1")); }