/// <summary> /// Mock image web response /// </summary> /// <param name="mockImageConfig">Mock image config</param> /// <returns>Mocked instance</returns> public static HttpWebResponse MockImageWebResponse(MockImageWebResponseConfig mockImageConfig) { // Generate mock var webResponse = MockRepository.GenerateMock <HttpWebResponse>(); // Define stubs webResponse.Stub(x => x.StatusCode).Return(mockImageConfig.StatusCode); webResponse.Stub(x => x.ContentType).Return(mockImageConfig.ContentType); webResponse.Stub(x => x.GetResponseStream()).WhenCalled(invocation => { invocation.ReturnValue = new MemoryStream(mockImageConfig.GetImageBytes()); }).Return(null).Repeat.Any(); // Return result return(webResponse); }
/// <summary> /// Arrange image web response mocks on client /// </summary> /// <param name="client">Client</param> /// <param name="mockImageConfig">Mock image config</param> /// <returns>Result mocks</returns> public static ClientAPIWebQueryMocks ArrangeImageWebResponseMocks(this IMapsAPIClient client, MockImageWebResponseConfig mockImageConfig) { // Web response var webResponse = ClientAPIMockUtils.MockImageWebResponse(mockImageConfig); // Web request var webRequest = MockRepository.GenerateMock <HttpWebRequest>(); webRequest.Stub(x => x.GetResponse()).Return(webResponse); // Web request util var webRequestUtil = MockRepository.GeneratePartialMock <WebRequestUtility>(client); webRequestUtil.Stub(x => x.CreateWebRequest(null)).IgnoreArguments().Return(webRequest); // Client client.Stub(x => x.WebRequestUtility).Return(webRequestUtil); // Return result return(new ClientAPIWebQueryMocks(webRequestUtil, webRequest, webResponse)); }