Example #1
0
        private static void TestXaml(string symbols, bool removeIgnorableContent, string xamlName, string expectedXamlName)
        {
            var preprocessor = new XamlPreprocessor(symbols, removeIgnorableContent);
            var xaml         = LoadXamlPage(xamlName);
            var expected     = LoadXamlPage(expectedXamlName);
            var result       = preprocessor.ProcessXaml(xaml);

            // perform char-by-char comparison, raise error with index info if mismatch
            var lineNumber = 1;

            for (var i = 0; i < expected.Length && i < result.Length; i++)
            {
                if (expected[i] != result[i])
                {
                    Assert.Fail("Character mismatch at index {0} (line number: {1}. Expected: {2} ({3}), actual: {4} ({5})", i, lineNumber, result[i], (int)result[i], expected[i], (int)expected[i]);
                }
                if (result[i] == '\n')
                {
                    lineNumber++;
                }
            }

            // still fail if one string is substring of the other
            Assert.AreEqual(expected, result);
        }
Example #2
0
        private static void TestXml(string symbols, bool removeIgnorableContent, string xaml, string expected)
        {
            var preprocessor = new XamlPreprocessor(symbols, removeIgnorableContent);
            var result       = preprocessor.ProcessXaml(xaml);

            Assert.AreEqual(expected, result);
        }
Example #3
0
        private static void TestXaml(string symbols, string xamlSnippet, string expectedResult)
        {
            var preprocessor = new XamlPreprocessor(symbols, false);
            var xaml         = CreateInputXamlPage(xamlSnippet);
            var result       = preprocessor.ProcessXaml(xaml);

            Assert.AreEqual(CreateResultXamlPage(expectedResult), result);
        }
Example #4
0
        private static void TestXaml(string symbols, bool removeIgnorableContent, string xamlName, Func <string, bool> evaluator, string errorMsg = "Test failed!")
        {
            var preprocessor = new XamlPreprocessor(symbols, removeIgnorableContent);
            var xaml         = LoadXamlPage(xamlName);

            //Fix line endings on Mac OS: force all line endings to CR
            var processed = preprocessor.ProcessXaml(xaml);

            var expected = evaluator(processed);

            if (!expected)
            {
                Assert.Fail(errorMsg);
            }
        }
Example #5
0
        private static void TestXml(string symbols, bool removeIgnorableContent, string xaml, string expected)
        {
            var preprocessor = new XamlPreprocessor(symbols, removeIgnorableContent);
            var result = preprocessor.ProcessXaml(xaml);

            Assert.AreEqual(expected, result);
        }
Example #6
0
        private static void TestXaml(string symbols, string xamlSnippet, string expectedResult)
        {
            var preprocessor = new XamlPreprocessor(symbols, false);
            var xaml = CreateInputXamlPage(xamlSnippet);
            var result = preprocessor.ProcessXaml(xaml);

            Assert.AreEqual(CreateResultXamlPage(expectedResult), result);
        }
Example #7
0
        private static void TestXaml(string symbols, bool removeIgnorableContent, string xamlName, string expectedXamlName)
        {
            var preprocessor = new XamlPreprocessor(symbols, removeIgnorableContent);
            var xaml = LoadXamlPage(xamlName);
            var expected = LoadXamlPage(expectedXamlName);
            var result = preprocessor.ProcessXaml(xaml);

            // perform char-by-char comparison, raise error with index info if mismatch
            var lineNumber = 1;
            for (var i = 0; i < expected.Length && i < result.Length; i++) {
                if (expected[i] != result[i]) {
                    Assert.Fail("Character mismatch at index {0} (line number: {1}. Expected: {2} ({3}), actual: {4} ({5})", i, lineNumber, result[i], (int)result[i], expected[i], (int)expected[i]);
                }
                if (result[i] == '\n') {
                    lineNumber++;
                }
            }

            // still fail if one string is substring of the other 
            Assert.AreEqual(expected, result);
        }