public void ProductExists_ShouldUpdateTheProduct()
        {
            // Arrange
            var repository = GetEmptyProductRepository();
            var sut        = new UpdateUseCase(repository);

            var createUseCase  = new CreateUseCase(repository);
            var getByIdUseCase = new GetByIdUseCase(repository);

            var id          = Guid.NewGuid();
            var createInput = new CreateInput {
                Id = id, Name = "Name", Description = "Description"
            };
            var UpdateInput = new UpdateInput {
                Id = id, Name = "Name", Description = "Description"
            };

            createUseCase.Execute(createInput);

            // Act
            sut.Execute(UpdateInput);

            var actual = getByIdUseCase.Execute(id);

            // Assert
            actual.Id
            .Should()
            .Be(id);
        }
        public void ReturnResidentInformationRecordWithContactForSpecifiedId()
        {
            var stubbedResidentInfo = _fixture
                                      .Build <ResidentDomain>()
                                      .Without(contact => contact.Contacts)
                                      .Create();

            stubbedResidentInfo.Contacts = _fixture
                                           .Build <ContactDetailsDomain>()
                                           .Without(resident => resident.Resident)
                                           .CreateMany().ToList();

            var id = _fixture.Create <int>();

            _mockGateway.Setup(x => x.GetResidentById(id)).Returns(stubbedResidentInfo);

            var response                = _classUnderTest.Execute(id);
            var expectedResponse        = stubbedResidentInfo.ToResponse();
            var expectedContactResponse = stubbedResidentInfo.Contacts.ToResponse();

            response.ContactInformation.Should().BeEquivalentTo(expectedContactResponse);
            response.Should().NotBeNull();
            response.Should().BeEquivalentTo(expectedResponse);
        }
Ejemplo n.º 3
0
        public async Task GetByIdUseCase_ItemExists_ShouldReturnTheItem()
        {
            // Arrange
            var repository = new FakeSimpleEntityRepository();
            var presenter  = new FakeGetByIdOutputHandler();

            var sut = new GetByIdUseCase(presenter, repository);

            // Act
            await sut.Execute(Guid.NewGuid());

            // Assert
            presenter.ViewModel
            .Should()
            .BeEquivalentTo(repository.Item);
        }
Ejemplo n.º 4
0
        public void TheProductDoesNotExist_ShouldReturNull()
        {
            // Arrange
            var repository = GetEmptyProductRepository();
            var sut        = new GetByIdUseCase(repository);

            var id = Guid.NewGuid();

            // Act
            var actual = sut.Execute(id);

            // Assert
            actual
            .Should()
            .BeNull();
        }
Ejemplo n.º 5
0
        public void OrderExists_ShouldReturTheExpectedOrder()
        {
            // Arrange
            var repository = GetOrderRepository();
            var sut        = new GetByIdUseCase(repository);

            var orderId = repository.GetAll()
                          .FirstOrDefault().Id;

            // Act
            var actual = sut.Execute(orderId);

            // Assert
            actual.Id
            .Should()
            .Be(orderId);
        }
Ejemplo n.º 6
0
        public async Task GetByIdUseCase_ItemDoesNotExist_ShouldReturnErrorMessage()
        {
            // Arrange
            var repository = new FakeSimpleEntityEmptyListRepository();
            var presenter  = new FakeGetByIdOutputHandler();

            var sut = new GetByIdUseCase(presenter, repository);

            // Act
            await sut.Execute(Guid.NewGuid());

            // Assert
            presenter.ErrorMessage
            .Should()
            .NotBeNull();

            presenter.ViewModel
            .Should()
            .BeNull();
        }
Ejemplo n.º 7
0
        public void ProductExists_ShouldReturnTheExpectedProduct()
        {
            // Arrange
            var repository = GetProductRepository();
            var sut        = new GetByIdUseCase(repository);

            var id = Guid.NewGuid();

            // Act
            var actual = sut.Execute(id);

            // Assert
            actual
            .Should()
            .NotBeNull();

            actual.Name
            .Should()
            .Be("Name");
        }