コード例 #1
0
        public async Task GetBookingById_WithWrongInformation_ShouldReturnNull()
        {
            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);

            for (int i = 0; i < 2; i++)
            {
                await this.CreateBookingForTest(
                    user1,
                    DateTime.UtcNow,
                    $"TestName{i}",
                    "TestCompany",
                    $"test{i}@abv.bg",
                    $"059593{i}",
                    1,
                    $"descriptionTest{i}",
                    false,
                    userRepository,
                    bookingRepository);
            }
            var getBookingById = await service.GetBookingById <InboxViewModel>("FakeUser6006", user1);

            Assert.Null(getBookingById);
        }
コード例 #2
0
        public async Task GetBookingById_ShouldReturnTheBookingByUserIdAndBookingId()
        {
            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 this.CreateBookingForTest(
                user1,
                DateTime.UtcNow,
                "TestName",
                "TestCompany",
                "*****@*****.**",
                "059593",
                1,
                "descriptionTest",
                false,
                userRepository,
                bookingRepository);

            for (int i = 0; i < 3; i++)
            {
                await this.CreateBookingForTest(
                    user1,
                    DateTime.UtcNow,
                    $"TestName{i}",
                    "TestCompany",
                    $"test{i}@abv.bg",
                    $"059593{i}",
                    1,
                    $"descriptionTest{i}",
                    false,
                    userRepository,
                    bookingRepository);
            }

            var getBookingId = await bookingRepository.All()
                               .Where(x => x.UserId == user1 && x.HireDescription == "descriptionTest")
                               .Select(x => x.Id)
                               .FirstOrDefaultAsync();

            var getBookingById = await service.GetBookingById <InboxViewModel>(getBookingId, user1);

            Assert.Equal("TestName", getBookingById.FullName);
            Assert.Equal("*****@*****.**", getBookingById.Email);
        }