本文整理匯總了C#中Moq.Moq.Mock.SetupSet方法的典型用法代碼示例。如果您正苦於以下問題:C# Moq.Mock.SetupSet方法的具體用法?C# Moq.Mock.SetupSet怎麽用?C# Moq.Mock.SetupSet使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Moq.Moq.Mock
的用法示例。
在下文中一共展示了Moq.Mock.SetupSet方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: SetupHttpAbstractionMocking
internal MockResults SetupHttpAbstractionMocking()
{
var results = new MockResults();
// Locate the test manager so we can override the lower layer.
var manager = ServiceLocator.Instance.Locate<IServiceLocationIndividualTestManager>();
// Create a Mock of the HTTP layer response.
var moqResponse = new Moq.Mock<IHttpResponseMessageAbstraction>(MockBehavior.Loose);
// Always return 200 OK
moqResponse.SetupGet(res => res.StatusCode)
.Returns(HttpStatusCode.OK);
// Create a mock of the Request client.
var moqClient = new Moq.Mock<IHttpClientAbstraction>(MockBehavior.Loose);
// Mock the return to set the request headers.
moqClient.SetupGet(client => client.RequestHeaders)
.Returns(() => results.Headers);
// Mock the return to set the request uri.
moqClient.SetupGet(client => client.RequestUri)
.Returns(() => results.RequestUri);
// Mock the return to set the request uri.
moqClient.SetupSet(abstraction => abstraction.RequestUri = It.IsAny<Uri>()).Callback<Uri>(uri => results.RequestUri = uri);
// Mock the return to set the http method.
moqClient.SetupGet(client => client.Method)
.Returns(() => results.Method);
// Mock the return to set the http method.
moqClient.SetupSet(abstraction => abstraction.Method = It.IsAny<HttpMethod>()).Callback<HttpMethod>(method => results.Method = method);
// Mock the return to set the content.
moqClient.SetupGet(client => client.Content)
.Returns(() => results.Content);
moqClient.SetupSet(abstraction => abstraction.Content = It.IsAny<HttpContent>()).Callback<HttpContent>(content => results.Content = content);
// Mock the SendAsync method (to just return the response object previously created).
moqClient.Setup(c => c.SendAsync())
.Returns(() => Task.Run(() =>
{
results.SendAsyncCalled = true;
return moqResponse.Object;
}));
// Mock the factory to return our mock client.
var moqFactory = new Moq.Mock<IHttpClientAbstractionFactory>();
// Overload both create methods.
moqFactory.Setup(fac => fac.Create(It.IsAny<X509Certificate2>(), It.IsAny<HDInsight.IAbstractionContext>(), false))
.Returns(() => moqClient.Object);
moqFactory.Setup(fac => fac.Create(It.IsAny<HDInsight.IAbstractionContext>(), false))
.Returns(() => moqClient.Object);
// Override the factory in the Service Locator (for this test only).
manager.Override<IHttpClientAbstractionFactory>(moqFactory.Object);
return results;
}