public async Task returns_expected_when_context_is_added()
        {
            var expected = new CapabilityListItemBuilder().Build();

            var sut = new CapabilityApiControllerBuilder()
                      .WithCapabilityService(new StubCapabilityServiceClient(capabilities: expected))
                      .Build();

            var result = await sut.AddContext(id : "foo");

            Assert.Null(result.Value);
        }
        public async Task returns_conflict_when_context_is_already_present()
        {
            var expected = new CapabilityListItemBuilder().Build();

            var sut = new CapabilityApiControllerBuilder()
                      .WithCapabilityService(new ErroneousCapabilityServiceClient(new ContextAlreadyAddedException()))
                      .Build();

            var result = await sut.AddContext(id : "foo");

            Assert.IsType <ConflictObjectResult>(result.Result);
        }
        public async Task returns_bad_request_when_creating_new_capability_with_invalid_name()
        {
            var expected = new CapabilityListItemBuilder().Build();

            var sut = new CapabilityApiControllerBuilder()
                      .WithCapabilityService(new ErroneousCapabilityServiceClient(new RecoverableUpstreamException(HttpStatusCode.BadRequest, "I don't understand the syntax")))
                      .Build();

            var dummyInput = new CapabilityInput();

            var result = (ObjectResult)await sut.CreateCapability(dummyInput);

            Assert.Equal((int)HttpStatusCode.BadRequest, result.StatusCode.Value);
        }
示例#4
0
        public async Task returns_badrequest_when_creating_new_capability_with_invalid_name()
        {
            var expected = new CapabilityListItemBuilder().Build();

            var sut = new CapabilityApiControllerBuilder()
                      .WithCapabilityService(new ErroneousCapabilityServiceClient(new CapabilityValidationException("booo")))
                      .Build();

            var dummyInput = new CapabilityInput();

            var result = await sut.CreateCapability(dummyInput);

            Assert.IsType <BadRequestObjectResult>(result);
        }
        public async Task returns_expected_when_single_capability_found_by_id()
        {
            var expected = new CapabilityListItemBuilder().Build();

            var sut = new CapabilityApiControllerBuilder()
                      .WithCapabilityService(new StubCapabilityServiceClient(capabilities: expected))
                      .Build();

            var result = await sut.GetById(expected.Id);

            Assert.Equal(
                expected: expected,
                actual: result.Value
                );
        }
        public async Task returns_expected_when_single_capability_is_available()
        {
            var expected = new CapabilityListItemBuilder().Build();

            var sut = new CapabilityApiControllerBuilder()
                      .WithCapabilityService(new StubCapabilityServiceClient(capabilities: expected))
                      .Build();

            var result = await sut.GetAll();

            Assert.Equal(
                expected: new[] { expected },
                actual: result.Value.Items
                );
        }
        public async Task returns_expected_when_creating_new_capability()
        {
            var expected = new CapabilityListItemBuilder().Build();

            var sut = new CapabilityApiControllerBuilder()
                      .WithCapabilityService(new StubCapabilityServiceClient(capabilities: expected))
                      .Build();

            var dummyInput = new CapabilityInput();

            var result = (CreatedAtRouteResult)await sut.CreateCapability(dummyInput);

            Assert.Equal(
                expected: expected,
                actual: result.Value
                );
        }
        public async Task get_single_capability_returns_expected_status_code_when_capability_is_available()
        {
            using (var clientBuilder = new HttpClientBuilder())
            {
                var stub = new CapabilityListItemBuilder().Build();

                var client = clientBuilder
                             .WithService <ICapabilityServiceClient>(new StubCapabilityServiceClient(capabilities: stub))
                             .Build();

                var response = await client.GetAsync($"/api/capabilities/{stub.Id}");

                Assert.Equal(
                    expected: HttpStatusCode.OK,
                    actual: response.StatusCode
                    );
            }
        }
        public async Task post_capability_through_api_returns_expected_location_header()
        {
            using (var clientBuilder = new HttpClientBuilder())
            {
                var stub = new CapabilityListItemBuilder().Build();

                var client = clientBuilder
                             .WithService <ICapabilityServiceClient>(new StubCapabilityServiceClient(capabilities: stub))
                             .Build();

                var dummyContent = JsonContent.Empty;

                var response = await client.PostAsync("/api/capabilities", dummyContent);

                Assert.EndsWith(
                    expectedEndString: $"/api/capabilities/{stub.Id}",
                    actualString: string.Join("", response.Headers.Location.Segments)
                    );
            }
        }
        public async Task post_capability_through_api_returns_expected_status_code()
        {
            using (var clientBuilder = new HttpClientBuilder())
            {
                var stub = new CapabilityListItemBuilder().Build();

                var client = clientBuilder
                             .WithService <ICapabilityServiceClient>(new StubCapabilityServiceClient(capabilities: stub))
                             .Build();

                var dummyContent = JsonContent.Empty;

                var response = await client.PostAsync("/api/capabilities", dummyContent);

                Assert.Equal(
                    expected: HttpStatusCode.Created,
                    actual: response.StatusCode
                    );
            }
        }
        public async Task post_topic_through_api_returns_expected_status_code()
        {
            using (var clientBuilder = new HttpClientBuilder())
            {
                var stub = new CapabilityListItemBuilder().Build();

                var client = clientBuilder
                             .WithService <ICapabilityServiceClient>(new StubCapabilityServiceClient())
                             .WithService <IKafkaServiceClient>(new StubKafkaServiceClient())
                             .Build();

                var dummyContent = new JsonContent(new { Name = "TestTopicRoutesCreation", Description = "Created during run of Tests", IsPrivate = true });

                var response = await client.PostAsync("/api/capabilities/1/topics", dummyContent);

                Assert.Equal(
                    expected: HttpStatusCode.OK,
                    actual: response.StatusCode
                    );
            }
        }
示例#12
0
        public async Task post_topic_through_api_returns_expected_status_code()
        {
            using (var clientBuilder = new HttpClientBuilder())
            {
                var stub = new CapabilityListItemBuilder().Build();

                var client = clientBuilder
                             .WithService <ITopicClient>(new TopicClientStub())
                             .Build();

                var dummyContent = new JsonContent(new CreateTopicRequest {
                    Name = "dummyTopic"
                });

                var response = await client.PostAsync("/api/topics", dummyContent);

                Assert.Equal(
                    expected: HttpStatusCode.NoContent,
                    actual: response.StatusCode
                    );
            }
        }