示例#1
0
        public async Task SayHelloWorldTest()
        {
            var action = A.Fake <ISayHelloWorldAction>();

            A.CallTo(() => action.Execute("You")).Returns(new SayHelloWorldResponse {
                Greeting = "Hello You!"
            });
            var actionFactory = A.Fake <IActionFactory>();

            A.CallTo(() => actionFactory.CreateSayHelloWorldAction()).Returns(action);
            var sut = new HelloWorldController(actionFactory);

            var response = await sut.SayHelloWorld("You");

            response.Should().NotBeNull();
            var okResponse = response.As <OkObjectResult>();

            okResponse.Should().NotBeNull();
            okResponse.StatusCode.Should().Be((int)HttpStatusCode.OK);
            var content = okResponse.Value.As <SayHelloWorldResponse>();

            content.Should().NotBeNull();
            content.Greeting.Should().Be("Hello You!");
        }