public void TestDogApi()
        {
            var request  = DogRequests.GetRandomDog();
            var response = Actor.Calls(Rest <CallDogApi> .Request <DogResponse>(request));

            response.StatusCode.Should().Be(HttpStatusCode.OK);
            response.Data.Status.Should().Be("success");
            response.Data.Message.Should().NotBeNullOrWhiteSpace();
        }
        public void TestDogApiStatusCode()
        {
            // This test shows how to call a REST API without parsing response content.

            var request  = DogRequests.GetRandomDog();
            var response = Actor.Calls(Rest.Request(request));

            response.StatusCode.Should().Be(HttpStatusCode.OK);
        }
        public byte[] RequestAs(IActor actor)
        {
            var request  = DogRequests.GetRandomDog();
            var response = actor.Calls(DogApi.Request <DogResponse>(request));

            var resource     = new Uri(response.Data.Message).AbsolutePath;
            var imageRequest = new RestRequest(resource);
            var extension    = Path.GetExtension(resource);
            var imageData    = actor.Calls(DogImagesApi.Download(imageRequest, extension));

            return(imageData);
        }
        public void TestDogApiContent()
        {
            // This test shows how to call a REST API and parse its response content.
            // It should supersede the previous test, but both are kept for the sake of examples.

            var request  = DogRequests.GetRandomDog();
            var response = Actor.Calls(Rest.Request <DogResponse>(request));

            response.StatusCode.Should().Be(HttpStatusCode.OK);
            response.Data.Status.Should().Be("success");
            response.Data.Message.Should().NotBeNullOrWhiteSpace();
        }