Exemple #1
0
        /*
         *      [TestCase(10)]
         *      [TestCase(11)]
         *      [TestCase(12)]
         *      [TestCase(13)]
         */
        public void TestInclude(int size)
        {
            var bruter    = new Force();
            var solutions = new HashSet <string>(bruter.Solve(size - 1, AllOps).Select(expr => expr.ToSExpr()));

            //            System.IO.File.WriteAllText("allTrees.txt", string.Join("\n", solutions));

            foreach (var problem in GetAllSamples().Where(p => p.Size == size))
            {
                Assert.True(solutions.Contains(problem.Solution.GetUnified().ToSExpr()));
            }
        }
Exemple #2
0
        public void Test(int size, string ops, string expectedExpr)
        {
            var       force = new Force();
            Stopwatch sw    = Stopwatch.StartNew();
            var       trees = force.Solve(size, ops.Split(' ')).ToList();

            Console.WriteLine(sw.Elapsed);
            Console.WriteLine(trees.Count());
            if (trees.All(tree => tree.ToSExpr() != expectedExpr))
            {
                foreach (var tree in trees)
                {
                    Console.WriteLine(tree);
                }
                Assert.Fail();
            }
        }