Ejemplo n.º 1
0
        public async Task <CinemaApp.Domain.Visitor> InsertAsync(VisitorUpdateModel visitor)
        {
            var result = await this.Context.AddAsync(this.Mapper.Map <Visitor>(visitor));

            await this.Context.SaveChangesAsync();

            return(this.Mapper.Map <CinemaApp.Domain.Visitor>(result.Entity));
        }
Ejemplo n.º 2
0
        public async Task <CinemaApp.Domain.Visitor> UpdateAsync(VisitorUpdateModel visitor)
        {
            var existing = await this.Get(visitor);

            var result = this.Mapper.Map(visitor, existing);

            this.Context.Update(result);

            await this.Context.SaveChangesAsync();

            return(this.Mapper.Map <CinemaApp.Domain.Visitor>(result));
        }
Ejemplo n.º 3
0
        public async Task CreateAsync_VisitorValidationSucceed_CreatesVisitor()
        {
            // Arrange
            var visitor  = new VisitorUpdateModel();
            var expected = new Visitor();

            var loyaltycardService = new Mock <ILoyaltyCardService>();

            loyaltycardService.Setup(x => x.ValidateAsync(visitor));

            var visitorDAL = new Mock <IVisitorDAL>();

            visitorDAL.Setup(x => x.InsertAsync(visitor)).ReturnsAsync(expected);

            var visitorService = new VisitorService(visitorDAL.Object, loyaltycardService.Object);

            // Act
            var result = await visitorService.CreateAsync(visitor);

            // Assert
            result.Should().Be(expected);
        }
Ejemplo n.º 4
0
        public async Task CreateAsync_VisitorValidationFailed_ThrowsError()
        {
            // Arrange
            var fixture  = new Fixture();
            var visitor  = new VisitorUpdateModel();
            var expected = fixture.Create <string>();

            var loyaltycardService = new Mock <ILoyaltyCardService>();

            loyaltycardService
            .Setup(x => x.ValidateAsync(visitor))
            .Throws(new InvalidOperationException(expected));

            var visitorDAL = new Mock <IVisitorDAL>();

            var visitorService = new VisitorService(visitorDAL.Object, loyaltycardService.Object);

            var action = new Func <Task>(() => visitorService.CreateAsync(visitor));

            // Assert
            await action.Should().ThrowAsync <InvalidOperationException>().WithMessage(expected);

            visitorDAL.Verify(x => x.InsertAsync(visitor), Times.Never);
        }
Ejemplo n.º 5
0
        public async Task <Visitor> UpdateAsync(VisitorUpdateModel visitor)
        {
            await this.LoyaltyCardService.ValidateAsync(visitor);

            return(await this.VisitorDAL.UpdateAsync(visitor));
        }