Exemplo n.º 1
0
        public void Evaluate(string input, object expected, HashSet <string> expectedRefs)
        {
            var parsed = new ExpressionEngine().Parse(input);

            Assert.IsNotNull(parsed);
            var(actual, msg) = parsed.TryEvaluate(scope);
            Assert.AreEqual(null, msg);
            AssertObjectEquals(expected, actual);
            if (expectedRefs != null)
            {
                var actualRefs = parsed.References();
                Assert.IsTrue(expectedRefs.SetEquals(actualRefs), $"References do not match, expected: {string.Join(',', expectedRefs)} acutal: {string.Join(',', actualRefs)}");
            }
        }