Example #1
0
        public async Task SetNumberAsHiredAsyncShouldWorkCorrectly()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(databaseName: Guid.NewGuid().ToString()).Options;
            var dbContext = new ApplicationDbContext(options);

            var numberRepo = new EfDeletableEntityRepository <ServiceNumber>(dbContext);

            var service = new ServiceNumbersService(numberRepo);

            await numberRepo.AddAsync(new ServiceNumber
            {
                Number = "866666661",
                IsFree = true,
            });

            await numberRepo.SaveChangesAsync();

            await service.SetNumberAsHiredAsync(1);

            var number = await numberRepo.All()
                         .FirstOrDefaultAsync(x => x.Id == 1);

            Assert.False(number.IsFree);
        }
Example #2
0
        public async Task GetFreeNumbersAsyncShouldWorkCorrectlyWhitTypeFixNet()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(databaseName: Guid.NewGuid().ToString()).Options;
            var dbContext = new ApplicationDbContext(options);

            var numberRepo = new EfDeletableEntityRepository <ServiceNumber>(dbContext);

            var service = new ServiceNumbersService(numberRepo);

            await numberRepo.AddAsync(new ServiceNumber
            {
                Number = "866666666",
                IsFree = true,
            });

            await numberRepo.AddAsync(new ServiceNumber
            {
                Number = "866666661",
                IsFree = false,
            });

            await numberRepo.AddAsync(new ServiceNumber
            {
                Number = "N.123456",
                IsFree = true,
            });

            await numberRepo.AddAsync(new ServiceNumber
            {
                Number = "N.123451",
                IsFree = false,
            });

            await numberRepo.AddAsync(new ServiceNumber
            {
                Number = "TV.123456",
                IsFree = true,
            });

            await numberRepo.AddAsync(new ServiceNumber
            {
                Number = "TV.123451",
                IsFree = false,
            });

            await numberRepo.SaveChangesAsync();

            var numbers = await service.GetFreeNumbersAsync <ServiceNumberModel>("fix", "net");

            Assert.Single(numbers);
            Assert.Collection(
                numbers,
                x => Assert.Equal("N.123456", x.Number));
        }
Example #3
0
        public async Task GetByServiceInfoIdShouldWorkCorrectlyWhitTypeMobile()
        {
            var options = new DbContextOptionsBuilder <ApplicationDbContext>()
                          .UseInMemoryDatabase(databaseName: Guid.NewGuid().ToString()).Options;
            var dbContext = new ApplicationDbContext(options);

            var numberRepo = new EfDeletableEntityRepository <ServiceNumber>(dbContext);

            var service = new ServiceNumbersService(numberRepo);

            await numberRepo.AddAsync(new ServiceNumber
            {
                Number       = "866666666",
                IsFree       = true,
                ServiceInfos = new HashSet <ServiceInfo> {
                    new ServiceInfo()
                },
            });

            await numberRepo.AddAsync(new ServiceNumber
            {
                Number = "866666661",
                IsFree = false,
            });

            await numberRepo.AddAsync(new ServiceNumber
            {
                Number = "N.123456",
                IsFree = true,
            });

            await numberRepo.AddAsync(new ServiceNumber
            {
                Number = "TV.123456",
                IsFree = true,
            });

            await numberRepo.SaveChangesAsync();

            var number = await service.GetByServiceInfoId(1);

            Assert.Equal("866666666", number);
        }