Example #1
0
        public void Test1()
        {
            var evaluator = new TestCase1.Evaluator();
            var generator = new TestCase1.Generator();
            var applier   = new TestCase1.Applier();
            var algorithm = new GreedyAlgorithm <TestCase1.State, TestCase1.Move>(evaluator, generator, applier);

            var initState = new TestCase1.State(1, int.MinValue);

            var move1  = algorithm.Calculate(initState);
            var state2 = applier.Apply(initState, move1);
            var move2  = algorithm.Calculate(state2);

            Assert.Equal('a', move1.Label);
            Assert.Equal('c', move2.Label);
        }