/* * [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())); } }
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(); } }