public async Task GetUserIdsYouRequestedToFollow_NextPage_ReturnsAllPages() { // arrange var accountController = CreateUserController(); var parameters = new GetUserIdsYouRequestedToFollowParameters(); var iterator = accountController.GetUserIdsYouRequestedToFollowIterator(parameters, A.Fake <ITwitterRequest>()); var iteratorTestRunner = new TwitterIdsIteratorTestRunner(iterator); iteratorTestRunner.Arrange(A.CallTo(() => _fakeUserQueryExecutor.GetUserIdsYouRequestedToFollow(It.IsAny <IGetUserIdsYouRequestedToFollowParameters>(), It.IsAny <ITwitterRequest>()))); // act await iteratorTestRunner.Act(); // assert await iteratorTestRunner.Assert(); }
public ITwitterPageIterator <ITwitterResult <IIdsCursorQueryResultDTO> > GetUserIdsYouRequestedToFollowIterator(IGetUserIdsYouRequestedToFollowParameters parameters, ITwitterRequest request) { var twitterCursorResult = new TwitterPageIterator <ITwitterResult <IIdsCursorQueryResultDTO> >( parameters.Cursor, cursor => { var cursoredParameters = new GetUserIdsYouRequestedToFollowParameters(parameters) { Cursor = cursor }; return(_userQueryExecutor.GetUserIdsYouRequestedToFollow(cursoredParameters, new TwitterRequest(request))); }, page => page.DataTransferObject.NextCursorStr, page => page.DataTransferObject.NextCursorStr == "0"); return(twitterCursorResult); }
public void GetUserIdsYouRequestedToFollowQuery_ReturnsExpectedQuery() { // Arrange var queryGenerator = CreateUserQueryGenerator(); var parameters = new GetUserIdsYouRequestedToFollowParameters { PageSize = 42, Cursor = "start_cursor", CustomQueryParameters = { new Tuple <string, string>("hello", "world") } }; // Act var result = queryGenerator.GetUserIdsYouRequestedToFollowQuery(parameters); // Assert Assert.Equal(result, $"https://api.twitter.com/1.1/friendships/outgoing.json?cursor=start_cursor&count=42&hello=world"); }
public async Task GetUserIdsYouRequestedToFollow_ReturnsPendingFollowersAsync() { // Arrange var queryExecutor = CreateUserQueryExecutor(); var parameters = new GetUserIdsYouRequestedToFollowParameters(); var url = TestHelper.GenerateString(); var request = A.Fake <ITwitterRequest>(); var expectedResult = A.Fake <ITwitterResult <IIdsCursorQueryResultDTO> >(); A.CallTo(() => _fakeUserQueryGenerator.GetUserIdsYouRequestedToFollowQuery(parameters)).Returns(url); A.CallTo(() => _fakeTwitterAccessor.ExecuteRequestAsync <IIdsCursorQueryResultDTO>(request)).Returns(expectedResult); // Act var result = await queryExecutor.GetUserIdsYouRequestedToFollowAsync(parameters, request); // Assert Assert.Equal(result, expectedResult); Assert.Equal(request.Query.Url, url); Assert.Equal(HttpMethod.GET, request.Query.HttpMethod); }