private void Seed(entities.GameKingdomContext testcontext)
 {
     testcontext.Customer.AddRange(testCustomers);
     testcontext.Location.AddRange(locations);
     testcontext.Product.AddRange(products);
     testcontext.Manager.AddRange(testManagers);
     testcontext.Orders.AddRange(orders);
     testcontext.Inventory.AddRange(inventories);
     testcontext.Orderitems.AddRange(orderitems);
     testcontext.SaveChanges();
 }
        public void AddCustomerShouldAdd()
        {
            // Arrange
            var options = new DbContextOptionsBuilder <entities.GameKingdomContext>().UseInMemoryDatabase("AddCustomerShouldAdd").Options;

            using var testcontext = new entities.GameKingdomContext(options);
            repo = new DBRepo(testcontext, mapper);

            // Act
            repo.AddACustomer(testCustomer);

            // Assert
            using var assertContext = new entities.GameKingdomContext(options);
            Assert.NotNull(assertContext.Customer.Single(c => c.Name == testCustomer.Name));
        }
        public void GetProductByNameShouldGetProduct()
        {
            // Arrange
            var options = new DbContextOptionsBuilder <entities.GameKingdomContext>().UseInMemoryDatabase("GetProductByNameShouldGetProduct").Options;

            using var testcontext = new entities.GameKingdomContext(options);
            Seed(testcontext);

            // Act
            using var assertContext = new entities.GameKingdomContext(options);
            repo = new DBRepo(assertContext, mapper);
            var result = repo.GetProductByName("Dark Souls");

            // Assert
            Assert.NotNull(result);
            Assert.Equal("Dark Souls", result.GameName);
        }
        public void GetOrdersByLocationIdShouldGetOrder()
        {
            // Arrange
            var options = new DbContextOptionsBuilder <entities.GameKingdomContext>().UseInMemoryDatabase("GetOrdersByLocationIdShouldGetOrder").Options;

            using var testcontext = new entities.GameKingdomContext(options);
            Seed(testcontext);

            // Act
            using var assertContext = new entities.GameKingdomContext(options);
            repo = new DBRepo(assertContext, mapper);
            var result = repo.GetOrdersByLocationId(1);

            // Assert
            Assert.NotNull(result);
            Assert.Equal(1, result.LocationId);
        }
        public void GetManagerShouldGetManager()
        {
            // Arrange
            var options = new DbContextOptionsBuilder <entities.GameKingdomContext>().UseInMemoryDatabase("GetManagerShouldGetManager").Options;

            using var testcontext = new entities.GameKingdomContext(options);
            Seed(testcontext);

            // Act
            using var assertContext = new entities.GameKingdomContext(options);
            repo = new DBRepo(assertContext, mapper);
            var result = repo.GetManager("Steve", "iamLarry");

            // Assert
            Assert.NotNull(result);
            Assert.Equal("Steve", result.Name);
            Assert.Equal("iamLarry", result.Password);
        }