예제 #1
0
        public async Task CreateAsync_WithValidModel_WorksCorrectly()
        {
            // Arrange
            const string testName = "TestName";

            var context = new PoolItDbContext(new DbContextOptionsBuilder <PoolItDbContext>()
                                              .UseInMemoryDatabase(Guid.NewGuid().ToString())
                                              .Options);

            var manufacturersService = new ManufacturersService(new EfRepository <CarManufacturer>(context));

            var serviceModel = new CarManufacturerServiceModel
            {
                Name = testName
            };

            // Act
            var result = await manufacturersService.CreateAsync(serviceModel);

            // Assert
            Assert.True(result);

            var addedToDb = await context.CarManufacturers.AnyAsync(m => m.Name == testName);

            Assert.True(addedToDb);
        }
예제 #2
0
        public async Task CreateAsync_WithInvalidModel_WorksCorrectly()
        {
            // Arrange
            var context = new PoolItDbContext(new DbContextOptionsBuilder <PoolItDbContext>()
                                              .UseInMemoryDatabase(Guid.NewGuid().ToString())
                                              .Options);

            var manufacturersService = new ManufacturersService(new EfRepository <CarManufacturer>(context));

            var serviceModel = new CarManufacturerServiceModel();

            // Act
            var result = await manufacturersService.CreateAsync(serviceModel);

            // Assert
            Assert.False(result);

            var dbCount = await context.CarManufacturers.CountAsync();

            Assert.Equal(0, dbCount);
        }