コード例 #1
0
        public async Task TestDeleteWithQueryAndOptions()
        {
            var port = _server.Ports.First();
            var initServiceOptions = new InitServiceOptions(port);

            _sut = new ServiceProxy(new Dictionary <string, string>(), "localhost", initServiceOptions);

            _server
            .Given(Request.Create().WithPath("/foo").WithParam("bar", "baz").UsingDelete())
            .RespondWith(
                Response.Create()
                .WithStatusCode(SUCCESS_STATUS_CODE)
                .WithBody(SUCCESS_RESPONSE_BODY)
                );

            var headers = new Dictionary <string, string> {
                { "foo", "bar" }
            };
            var response = await _sut.Delete("foo", "bar=baz", "", new ServiceOptions(port, Protocol.Http, headers));

            var statusCode   = (int)response.StatusCode;
            var responseBody = await response.Content.ReadAsStringAsync();

            Check.That(response.RequestMessage.Headers.GetValues("foo").First()).IsEqualTo("bar");
            Check.That(statusCode).IsEqualTo(SUCCESS_STATUS_CODE);
            Check.That(responseBody).IsEqualTo(SUCCESS_RESPONSE_BODY);
        }
コード例 #2
0
        public async Task TestGetWithCustomInitOptionsAndServiceOptions()
        {
            var initServiceOptions = new InitServiceOptions(_server.Ports.First(), Protocol.Http,
                                                            new Dictionary <string, string> {
                { "foo", "bar" }
            }, "one");

            _sut = new ServiceProxy(new Dictionary <string, string>(), "localhost", initServiceOptions);

            _server
            .Given(Request.Create()
                   .WithPath("/one/two/foo")
                   .WithHeader("foo", "bar")
                   .WithHeader("baz", "bam")
                   .UsingGet())
            .RespondWith(
                Response.Create()
                .WithStatusCode(SUCCESS_STATUS_CODE)
                .WithBody(SUCCESS_RESPONSE_BODY)
                );

            var response = await _sut.Get("foo", "", "",
                                          new ServiceOptions(_server.Ports.First(), Protocol.Http,
                                                             new Dictionary <string, string> {
                { "baz", "bam" }
            }, "two"));

            var statusCode   = (int)response.StatusCode;
            var responseBody = await response.Content.ReadAsStringAsync();

            Check.That(statusCode).IsEqualTo(SUCCESS_STATUS_CODE);
            Check.That(responseBody).IsEqualTo(SUCCESS_RESPONSE_BODY);
        }
コード例 #3
0
        public IServiceProxy GetServiceProxy(InitServiceOptions options)
        {
            var microserviceGatewayName = _envsConfigurations.MICROSERVICE_GATEWAY_SERVICE_NAME;

            return(string.IsNullOrEmpty(microserviceGatewayName)
                ? null
                : new ServiceProxy(_miaHeaders, microserviceGatewayName, options));
        }
コード例 #4
0
        public async Task TestDelete()
        {
            var initServiceOptions = new InitServiceOptions(_server.Ports.First());

            _sut = new ServiceProxy(new Dictionary <string, string>(), "localhost", initServiceOptions);

            _server
            .Given(Request.Create().WithPath("/foo").UsingDelete())
            .RespondWith(
                Response.Create()
                .WithStatusCode(SUCCESS_STATUS_CODE)
                .WithBody(SUCCESS_RESPONSE_BODY)
                );

            var response = await _sut.Delete("foo", "foo=bar");

            var statusCode   = (int)response.StatusCode;
            var responseBody = await response.Content.ReadAsStringAsync();

            Check.That(statusCode).IsEqualTo(SUCCESS_STATUS_CODE);
            Check.That(responseBody).IsEqualTo(SUCCESS_RESPONSE_BODY);
        }
コード例 #5
0
 public IServiceProxy GetDirectServiceProxy(string serviceName, InitServiceOptions options)
 {
     return(new ServiceProxy(_miaHeaders, serviceName, options));
 }