public async Task GetFollowerIds_ReturnsFromUserQueryExecutor() { // Arrange var controller = CreateUserController(); var parameters = new GetFollowerIdsParameters("username"); var iterator = controller.GetFollowerIdsIterator(parameters, A.Fake <ITwitterRequest>()); var iteratorTestRunner = new TwitterIdsIteratorTestRunner(iterator); iteratorTestRunner.Arrange(A.CallTo(() => _fakeUserQueryExecutor.GetFollowerIds(A <IGetFollowerIdsParameters> .Ignored, A <ITwitterRequest> .Ignored))); await iteratorTestRunner.Act(); await iteratorTestRunner.Assert(); }
public ITwitterPageIterator <ITwitterResult <IIdsCursorQueryResultDTO> > GetFollowerIdsIterator(IGetFollowerIdsParameters parameters, ITwitterRequest request) { var twitterCursorResult = new TwitterPageIterator <ITwitterResult <IIdsCursorQueryResultDTO> >( parameters.Cursor, cursor => { var cursoredParameters = new GetFollowerIdsParameters(parameters) { Cursor = cursor }; return(_userQueryExecutor.GetFollowerIds(cursoredParameters, new TwitterRequest(request))); }, page => page.DataTransferObject.NextCursorStr, page => page.DataTransferObject.NextCursorStr == "0"); return(twitterCursorResult); }
public void GetFollowerIdsQuery_ReturnsExpectedQuery() { // Arrange var parameters = new GetFollowerIdsParameters(42) { Cursor = "cursor_id", PageSize = 43, CustomQueryParameters = { new Tuple <string, string>("hello", "world") } }; var queryGenerator = CreateUserQueryGenerator(); // Act var result = queryGenerator.GetFollowerIdsQuery(parameters); // Assert Assert.Equal(result, $"https://api.twitter.com/1.1/followers/ids.json?user_id=42&cursor=cursor_id&count=43&hello=world"); }
public async Task GetFollowerIds_ReturnsUserDTOAsync() { // Arrange var queryExecutor = CreateUserQueryExecutor(); var request = A.Fake <ITwitterRequest>(); var url = TestHelper.GenerateString(); var parameter = new GetFollowerIdsParameters(42); var expectedResult = A.Fake <ITwitterResult <IIdsCursorQueryResultDTO> >(); A.CallTo(() => _fakeUserQueryGenerator.GetFollowerIdsQuery(parameter)).Returns(url); A.CallTo(() => _fakeTwitterAccessor.ExecuteRequestAsync <IIdsCursorQueryResultDTO>(request)).Returns(expectedResult); // Act var result = await queryExecutor.GetFollowerIdsAsync(parameter, request); // Assert Assert.Equal(result, expectedResult); Assert.Equal(request.Query.Url, url); Assert.Equal(HttpMethod.GET, request.Query.HttpMethod); }
public ITwitterIterator <long> GetFollowerIdsIterator(IUserIdentifier userIdentifier) { var parameters = new GetFollowerIdsParameters(userIdentifier); return(GetFollowerIdsIterator(parameters)); }
public ITwitterIterator <long> GetFollowerIdsIterator(long userId) { var parameters = new GetFollowerIdsParameters(userId); return(GetFollowerIdsIterator(parameters)); }