Ejemplo n.º 1
0
        public async Task CallConfigureTwice_OneTable_And_NoDuplicateIngredients()
        {
            // arrange
            var ingredientRepository = new IngredientsRepository(new RepositoryComponent()
            {
                IsTest = true
            });
            // act
            await ingredientRepository.ConfigureAsync(TestData.CreateDefaultIngredients());

            await ingredientRepository.ConfigureAsync(TestData.CreateDefaultIngredients());

            // assert
            var connection = ingredientRepository.Component.Connection;
            var tableCount = await ingredientRepository.Component.Connection.TableCount(IngredientsRepository.TableName);

            var items = await connection.Table <Ingredient>().ToListAsync();

            tableCount.ShouldBe(1);
            items.Count.ShouldBe(6);
        }
        public async Task Setup()
        {
            _repositoryComponent        = new RepositoryComponent();
            _repositoryComponent.IsTest = true;

            var ingredientsFactory    = new IngredientsFactory(new IngredientBuilder());
            var ingredientsRepository = new IngredientsRepository(_repositoryComponent);
            await ingredientsRepository.ConfigureAsync(ingredientsFactory.GetDefaultIngredients());

            var drinkRecipesFactory    = new DrinkRecipeFactory(new DrinkRecipeBuilder());
            var drinkRecipesRepository = new DrinkRecipesRepository(_repositoryComponent, new DrinkIngredientRepository(_repositoryComponent));
            await drinkRecipesRepository.ConfigureAsync(drinkRecipesFactory.GetDefaultDrinks());
        }