public void LuggageProcessor_Process_Returns_List_Of_Bag_Colours(LuggageProcessorType luggageProcessorType, int expectedResult)
        {
            // Act
            var actualResult = LuggageProcessor.ProcessRules(_luggageRules, "shiny gold", luggageProcessorType);

            // Assert
            Assert.AreEqual(expectedResult, actualResult);
        }
Beispiel #2
0
        public void Part2(string filepath, int expected)
        {
            var parser = new Parser(filepath);
            var bags   = parser.Parse(new BagFactory());
            var sut    = new LuggageProcessor(new Dictionary <string, Bag[]>(bags));
            var actual = sut.Pack("shiny gold");

            Assert.Equal(expected, actual);
        }
        public void Day07BaggageCount_Ok()
        {
            var sut = new LuggageProcessor(TestBaggageRules);

            Assert.Equal(9, sut.BaggageRules.Count);

            var actual = sut.TotalBagCount("shiny gold");

            Assert.Equal(32, actual);
        }
        public void Day07ParseBaggageRules_Ok()
        {
            var sut = new LuggageProcessor(TestBaggageRules);

            Assert.Equal(9, sut.BaggageRules.Count);

            var actual = sut.ComboToContainBag("shiny gold");

            Assert.Equal(4, actual);
        }
Beispiel #5
0
        public void TestNumberOfBagsInAShinyGold()
        {
            var luggageProcessor = new LuggageProcessor();

            foreach (var line in Input)
            {
                luggageProcessor.Add(line);
            }

            var count = luggageProcessor.GetNumberOfBagsIn("shiny gold");

            Assert.Equal(10219, count);
        }
        public void Day07BaggageCount_Part2_Ok()
        {
            var rules = DailyDataUtilities.ReadLinesFromFile("Day07Data.txt");

            Assert.Equal(594, rules.Length);
            var sut = new LuggageProcessor(rules);

            Assert.Equal(594, sut.BaggageRules.Count);

            var actual = sut.TotalBagCount("shiny gold");

            Assert.Equal(41559, actual);
        }
        public void Day07BaggageCombos_Part1_Ok()
        {
            var rules = DailyDataUtilities.ReadLinesFromFile("Day07Data.txt");

            Assert.Equal(594, rules.Length);
            var sut = new LuggageProcessor(rules);

            Assert.Equal(594, sut.BaggageRules.Count);

            var actual = sut.ComboToContainBag("shiny gold");

            Assert.Equal(151, actual);
        }
 private static void Main()
 {
     Console.WriteLine($"First Challenge: {LuggageProcessor.CountBagsThatCanContain("shiny gold")}");
     Console.WriteLine($"Second Challenge: {LuggageProcessor.HowManyBagsCouldBagWithGivenCodeContains("shiny gold")}");
 }