Exemple #1
0
        public async void TestRIGAddRange()
        {
            //Arrange
            var options = new DbContextOptionsBuilder <CookingpapaContext>()
                          .UseInMemoryDatabase(databaseName: "Test19DB")
                          .Options;

            //Act
            List <RecipeIngredientGroups> testRIGEntries = new List <RecipeIngredientGroups>();
            List <RecipeIngredientGroups> testResultsRIG;

            using (var context = new CookingpapaContext(options))
            {
                var _unitOfWork = new UnitOfWork(context);

                var testRecipe = new Recipe
                {
                    RecipeCookTime = 5
                };

                var testRIG = new RecipeIngredientGroups
                {
                    Recipe = testRecipe
                };

                var testRIG2 = new RecipeIngredientGroups
                {
                    Recipe = testRecipe
                };

                testRIGEntries.Add(testRIG);
                testRIGEntries.Add(testRIG2);

                _unitOfWork.RecipeIngredientGroups.AddRange(testRIGEntries);
                await _unitOfWork.Complete();

                var tempTestRecipeIngredientGroups = await _unitOfWork.RecipeIngredientGroups.GetAll();

                testResultsRIG = tempTestRecipeIngredientGroups.ToList();
            }

            //Assert
            using (var context = new CookingpapaContext(options))
            {
                Assert.NotEmpty(testResultsRIG);
                Assert.Equal(1, testResultsRIG[0].Recipe.Id);
                Assert.Equal(5, testResultsRIG[0].Recipe.RecipeCookTime);
                Assert.Equal(1, testResultsRIG[1].Recipe.Id);
                Assert.Equal(5, testResultsRIG[1].Recipe.RecipeCookTime);
            }
        }
Exemple #2
0
        public async void TestRIGDeleteAll()
        {
            //Arrange
            var options = new DbContextOptionsBuilder <CookingpapaContext>()
                          .UseInMemoryDatabase(databaseName: "Test16DB")
                          .Options;

            //Act
            List <RecipeIngredientGroups> rigElements;

            using (var context = new CookingpapaContext(options))
            {
                var _unitOfWork = new UnitOfWork(context);

                var testRecipe = new Recipe
                {
                };

                var testRIG = new RecipeIngredientGroups
                {
                    Recipe = testRecipe
                };

                var testRIG2 = new RecipeIngredientGroups
                {
                    Recipe = testRecipe
                };

                await _unitOfWork.RecipeIngredientGroups.Add(testRIG);

                await _unitOfWork.RecipeIngredientGroups.Add(testRIG2);

                await _unitOfWork.Complete();

                await _unitOfWork.RecipeIngredientGroups.DeleteAll(1);

                await _unitOfWork.Complete();

                var tempTestRIG = await _unitOfWork.RecipeIngredientGroups.GetAll();

                rigElements = tempTestRIG.ToList();
            }

            //Assert
            using (var context = new CookingpapaContext(options))
            {
                Assert.Empty(rigElements);
            }
        }
Exemple #3
0
        public async void TestRIGGetByRecipeEager()
        {
            //Arrange
            var options = new DbContextOptionsBuilder <CookingpapaContext>()
                          .UseInMemoryDatabase(databaseName: "Test18DB")
                          .Options;

            //Act
            List <RecipeIngredientGroups> testResultsRecipeIngredientGroups;

            using (var context = new CookingpapaContext(options))
            {
                var _unitOfWork = new UnitOfWork(context);

                var testUser = new User
                {
                    Username = "******",
                    Password = "******",
                    Email    = "*****@*****.**"
                };

                var testOrigin = new RecipeOrigin
                {
                    RecipeOriginName = "America"
                };

                var testRecipe = new Recipe
                {
                    RecipeCookTime = 5,
                    User           = testUser,
                    RecipeOrigin   = testOrigin
                };

                var testIngredient = new RecipeIngredient
                {
                    RecipeIngredientName = "TestIngredient"
                };

                var testMeasurement = new RecipeMeasurement
                {
                    RecipeMeasurementName = "TestMeasurement"
                };

                var testRIG = new RecipeIngredientGroups
                {
                    Recipe                 = testRecipe,
                    RecipeIngredient       = testIngredient,
                    RecipeMeasurement      = testMeasurement,
                    RecipeIngredientAmount = 5
                };

                var testRIG2 = new RecipeIngredientGroups
                {
                    Recipe                 = testRecipe,
                    RecipeIngredient       = testIngredient,
                    RecipeMeasurement      = testMeasurement,
                    RecipeIngredientAmount = 5
                };

                await _unitOfWork.RecipeIngredientGroups.Add(testRIG);

                await _unitOfWork.RecipeIngredientGroups.Add(testRIG2);

                await _unitOfWork.Complete();

                var tempTestRecipeIngredientGroups = await _unitOfWork.RecipeIngredientGroups.GetByRecipeEager(1);

                testResultsRecipeIngredientGroups = tempTestRecipeIngredientGroups.ToList();
            }

            //Assert
            using (var context = new CookingpapaContext(options))
            {
                Assert.Equal(1, testResultsRecipeIngredientGroups[0].Recipe.Id);
                Assert.Equal(5, testResultsRecipeIngredientGroups[0].Recipe.RecipeCookTime);
                Assert.Equal(1, testResultsRecipeIngredientGroups[1].Recipe.Id);
                Assert.Equal(5, testResultsRecipeIngredientGroups[1].Recipe.RecipeCookTime);
            }
        }