public void Init() { var options = EfInMemory.CreateOptions <MWDBContext>(); _context = new MWDBContext(options); DbInitializer.Initialize(_context); _boardRepository = new BoardRepository(_context); _boardController = new BoardController(_boardRepository); }
public void GetAllProductsReturnsEmptyList() { var options = EfInMemory.CreateOptions <ProductsContext>(); using (var context = new ProductsContext(options)) { var products = context.Product.ToList(); products.Count().ShouldEqual(0); } }
public void DeleteProductNotFound() { var options = EfInMemory.CreateOptions <ProductsContext>(); using (var context = new ProductsContext(options)) { var logger = new Mock <ILogger <ProductsRepository> >(); var repository = new ProductsRepository(context, logger.Object); Assert.Throws <KeyNotFoundException>(() => repository.DeleteProduct(ProductMocks.NewProductiPhoneXS)); } }
public void AddRangeGetAllReturnsAll2Items() { var options = EfInMemory.CreateOptions <ProductsContext>(); using (var context = new ProductsContext(options)) { context.FeedDataContext(ProductMocks.ProductsBaseDataset); var products = context.Product.ToList(); products.Count().ShouldEqual(2); } }
public void UpdateProductNotFoundError() { var options = EfInMemory.CreateOptions <ProductsContext>(); using (var context = new ProductsContext(options)) { var logger = new Mock <ILogger <ProductsRepository> >(); var repository = new ProductsRepository(context, logger.Object); Assert.Throws <KeyNotFoundException>(() => repository.UpdateProduct(ProductMocks.ProductSamsungGalaxyS7)); } }
public void DeleteProductSuccess() { var options = EfInMemory.CreateOptions <ProductsContext>(); using (var context = new ProductsContext(options)) { context.FeedDataContext(ProductMocks.ProductsBaseDataset); var logger = new Mock <ILogger <ProductsRepository> >(); var repository = new ProductsRepository(context, logger.Object); repository.DeleteProduct(ProductMocks.ProductSamsungGalaxyS7).ShouldBeTrue(); } }
public void AddProductDuplicateKeyError() { var options = EfInMemory.CreateOptions <ProductsContext>(); using (var context = new ProductsContext(options)) { context.FeedDataContext(ProductMocks.ProductsBaseDataset); var logger = new Mock <ILogger <ProductsRepository> >(); var repository = new ProductsRepository(context, logger.Object); Assert.Throws <InvalidOperationException>(() => repository.AddProduct(ProductMocks.ProductSamsungGalaxyS7)); } }
public void DeleteProductOptionNotFoundError() { var options = EfInMemory.CreateOptions <ProductsContext>(); using (var context = new ProductsContext(options)) { var option = ProductMocks.ProductSamsungGalaxyS7.ProductOptions.First(); var logger = new Mock <ILogger <ProductsRepository> >(); var repository = new ProductsRepository(context, logger.Object); Assert.Throws <KeyNotFoundException>(() => repository.DeleteProductOption(option.ProductId, option.Id)); } }
public void GetProductOptionNotFoundError() { var options = EfInMemory.CreateOptions <ProductsContext>(); using (var context = new ProductsContext(options)) { context.FeedDataContext(ProductMocks.ProductsBaseDataset); var logger = new Mock <ILogger <ProductsRepository> >(); var repository = new ProductsRepository(context, logger.Object); Assert.Throws <KeyNotFoundException>(() => repository.GetProductOption(new Guid(), new Guid())); } }
public void TestInMemorySupportsSchema() { //SETUP var options = EfInMemory.CreateOptions <DbContextWithSchema>(); using (var context = new DbContextWithSchema(options)) { //ATTEMPT context.Database.EnsureCreated(); //VERIFY } }
public void TestInMemoryAcceptsComputedCol() { //SETUP var options = EfInMemory.CreateOptions <MyEntityComputedColDbContext>(); using (var context = new MyEntityComputedColDbContext(options)) { //ATTEMPT context.Database.EnsureCreated(); //VERIFY } }
public void GetProductOptionsSuccess() { var options = EfInMemory.CreateOptions <ProductsContext>(); using (var context = new ProductsContext(options)) { context.FeedDataContext(ProductMocks.ProductsBaseDataset); var logger = new Mock <ILogger <ProductsRepository> >(); var repository = new ProductsRepository(context, logger.Object); var productOptions = repository.GetProductOptions(ProductMocks.ProductSamsungGalaxyS7.Id); productOptions.Count().ShouldEqual(ProductMocks.ProductSamsungGalaxyS7.ProductOptions.Count()); } }
public void Setup() { var options = EfInMemory .CreateOptions <TestDBContext>(); Context = new TestDBContext(options); Context.Database.EnsureCreated(); DbSeeder.Feed(Context); Context.SaveChanges(); _repository = new TestRepository <TestEntity>(Context); }
public void GetProductByNameReturnsEmpty() { var options = EfInMemory.CreateOptions <ProductsContext>(); using (var context = new ProductsContext(options)) { context.FeedDataContext(ProductMocks.ProductsBaseDataset); var logger = new Mock <ILogger <ProductsRepository> >(); var repository = new ProductsRepository(context, logger.Object); var matches = repository.SearchByName("Microsoft"); matches.Count().ShouldEqual(0); } }
public void TestInMemoryOk() { //SETUP var options = EfInMemory.CreateOptions <BookContext>(); using (var context = new BookContext(options)) { context.Database.EnsureCreated(); //ATTEMPT context.SeedDatabaseFourBooks(); //VERIFY context.Books.Count().ShouldEqual(4); } }
public void TestInMemoryAcceptsComputedColButDoesntWork() { //SETUP var options = EfInMemory.CreateOptions <MyEntityComputedColDbContext>(); using (var context = new MyEntityComputedColDbContext(options)) { context.Database.EnsureCreated(); //ATTEMPT context.Add(new MyEntity()); context.SaveChanges(); //VERIFY context.Set <MyEntity>().First().MyDateTime.ShouldEqual(new DateTime()); } }
public void GetProductByIdReturnsSucessAndWithOptions() { var options = EfInMemory.CreateOptions <ProductsContext>(); using (var context = new ProductsContext(options)) { context.FeedDataContext(ProductMocks.ProductsBaseDataset); var logger = new Mock <ILogger <ProductsRepository> >(); var repository = new ProductsRepository(context, logger.Object); var product = repository.GetProduct(ProductMocks.ProductSamsungGalaxyS7.Id); var compareLogic = new CompareLogic(); var result = compareLogic.Compare(product, ProductMocks.ProductSamsungGalaxyS7); result.AreEqual.ShouldBeTrue(); product.ProductOptions.Count().ShouldEqual(2); } }
public void GetProductByNameReturnsSuccess() { var options = EfInMemory.CreateOptions <ProductsContext>(); using (var context = new ProductsContext(options)) { context.FeedDataContext(ProductMocks.ProductsBaseDataset); var logger = new Mock <ILogger <ProductsRepository> >(); var repository = new ProductsRepository(context, logger.Object); var matches = repository.SearchByName("Samsung"); matches.Count().ShouldEqual(1); var product = matches.First(); product.Name.ShouldEqual(ProductMocks.ProductSamsungGalaxyS7.Name); } }
public void GetProductOptionSuccess() { var options = EfInMemory.CreateOptions <ProductsContext>(); using (var context = new ProductsContext(options)) { context.FeedDataContext(ProductMocks.ProductsBaseDataset); var targetOption = ProductMocks.ProductSamsungGalaxyS7.ProductOptions.First(); var logger = new Mock <ILogger <ProductsRepository> >(); var repository = new ProductsRepository(context, logger.Object); var sourceOption = repository.GetProductOption(targetOption.ProductId, targetOption.Id); var compareLogic = new CompareLogic(); var result = compareLogic.Compare(targetOption, sourceOption); result.AreEqual.ShouldBeTrue(); } }
public void UpdateProductSuccess() { var options = EfInMemory.CreateOptions <ProductsContext>(); using (var context = new ProductsContext(options)) { context.FeedDataContext(ProductMocks.ProductsBaseDataset); var logger = new Mock <ILogger <ProductsRepository> >(); var repository = new ProductsRepository(context, logger.Object); var product = ProductMocks.ProductSamsungGalaxyS7; product.Description = "TestDescription"; product.Name = "TestName"; repository.UpdateProduct(product); var updatedProduct = repository.GetProduct(product.Id); updatedProduct.Name.ShouldBeSameAs(product.Name); updatedProduct.Description.ShouldBeSameAs(product.Description); } }
public void AddProductSuccess() { try { var options = EfInMemory.CreateOptions <ProductsContext>(); using (var context = new ProductsContext(options)) { var logger = new Mock <ILogger <ProductsRepository> >(); var repository = new ProductsRepository(context, logger.Object); repository.AddProduct(ProductMocks.NewProductiPhoneXS); var product = repository.GetProduct(ProductMocks.NewProductiPhoneXS.Id); product.ShouldBeSameAs(ProductMocks.NewProductiPhoneXS); } } catch (Exception ex) { var s = ex.Message; } }
public void UpdateProductOptionSuccess() { var options = EfInMemory.CreateOptions <ProductsContext>(); using (var context = new ProductsContext(options)) { var option = ProductMocks.ProductSamsungGalaxyS7.ProductOptions.First(); var logger = new Mock <ILogger <ProductsRepository> >(); var repository = new ProductsRepository(context, logger.Object); var compareLogic = new CompareLogic(); context.FeedDataContext(ProductMocks.ProductsBaseDataset); option.Name = "UpdatedName"; option.Description = "UpdatedDescription"; repository.UpdateProductOption(option); var updatedOption = repository.GetProductOption(option.ProductId, option.Id); var result = compareLogic.Compare(option, updatedOption); result.AreEqual.ShouldBeTrue(); } }
public SurveyRepositoryTests() { _options = EfInMemory.CreateOptions <ApplicationDataContext>(); }