예제 #1
0
        public void ElvesCanPickNewRecipes()
        {
            var day = new Day14(2, new[] { 3, 7 });

            day.CreateNewRecipes();

            Assert.Equal(0, day.ElvesCurrentRecipeIndexes[0]);
            Assert.Equal(1, day.ElvesCurrentRecipeIndexes[1]);

            day.CreateNewRecipes();

            Assert.Equal(4, day.ElvesCurrentRecipeIndexes[0]);
            Assert.Equal(3, day.ElvesCurrentRecipeIndexes[1]);
        }
예제 #2
0
        public void CanDoTenGenerations()
        {
            var day = new Day14(2, new[] { 3, 7 });

            day.CreateNewRecipes();
            day.CreateNewRecipes();
            day.CreateNewRecipes();
            day.CreateNewRecipes();
            day.CreateNewRecipes();
            day.CreateNewRecipes();
            day.CreateNewRecipes();
            day.CreateNewRecipes();
            day.CreateNewRecipes();
            day.CreateNewRecipes();

            Assert.Equal(1, day.ElvesCurrentRecipeIndexes[0]);
            Assert.Equal(13, day.ElvesCurrentRecipeIndexes[1]);
        }
예제 #3
0
        public void CanDoFirstGeneration()
        {
            var day = new Day14(2, new[] { 3, 7 });

            day.CreateNewRecipes();

            Assert.Equal(4, day.RecipeScores.Count);
            Assert.Equal(1, day.RecipeScores[2]);
            Assert.Equal(0, day.RecipeScores[3]);
        }