コード例 #1
0
        public async Task CreateBooking_WithNotValidUser_ShouldReturnFailMessage()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(databaseName: Guid.NewGuid().ToString()).Options;

            var userRepository    = new EfDeletableEntityRepository <ApplicationUser>(new ApplicationDbContext(options));
            var bookingRepository = new EfDeletableEntityRepository <Model4You.Data.Models.Booking>(new ApplicationDbContext(options));

            var service = new BookingService.BookingService(bookingRepository, userRepository, null);
            var user1   = await this.CreateUserWithNoInformationAsync(
                "*****@*****.**", "Pesho", "Peshev", userRepository);

            var fakeUserId = "FakeUser6006";
            var booking    = await service.CreateBooking(
                fakeUserId,
                DateTime.UtcNow,
                "TestName",
                "TestCompany",
                "*****@*****.**",
                "059593",
                3,
                "descriptionTest");

            var failedNoUser = "******";
            var getBooking   = await bookingRepository
                               .All()
                               .Where(x => x.UserId == fakeUserId)
                               .FirstOrDefaultAsync();

            Assert.Equal(failedNoUser, booking);
            Assert.Null(getBooking);
        }
コード例 #2
0
        public async Task CreateBooking_ShouldCreateBookingForTheModel()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(databaseName: Guid.NewGuid().ToString()).Options;

            var userRepository    = new EfDeletableEntityRepository <ApplicationUser>(new ApplicationDbContext(options));
            var bookingRepository = new EfDeletableEntityRepository <Model4You.Data.Models.Booking>(new ApplicationDbContext(options));

            var service = new BookingService.BookingService(bookingRepository, userRepository, null);
            var user1   = await this.CreateUserWithNoInformationAsync
                              ("*****@*****.**", "Pesho", "Peshev", userRepository);

            var booking = await service.CreateBooking(
                user1,
                DateTime.UtcNow,
                "TestName",
                "TestCompany",
                "*****@*****.**",
                "059593",
                3,
                "descriptionTest");

            var success    = "Booking was successful! Please wait for the model to contact you back";
            var getBooking = await bookingRepository
                             .All()
                             .Where(x => x.UserId == user1)
                             .FirstOrDefaultAsync();

            Assert.Equal(success, booking);
            Assert.NotNull(getBooking);
        }