示例#1
0
        public void EscapesOutputFilenames()
        {
            using (var test = new ComparisonTest(
                       EvaluatorPool,
                       new[] { @"TestCases\HelloWorld.cs" },
                       Portability.NormalizeDirectorySeparators(@"MetadataTests\EscapesOutputFilenames")
                       )) {
                var filenames = test.Translate((tr) => {
                    return((from file in tr.OrderedFiles select file.Filename).ToArray());
                }, () => {
                    var configuration = MakeConfiguration();
                    configuration.FilenameEscapeRegex = "[^A-Za-z0-9 _]";
                    // We don't escape manifest
                    configuration.SkipManifestCreation = true;
                    return(configuration);
                });

                Assert.AreEqual(1, filenames.Length);

                foreach (var filename in filenames)
                {
                    Assert.IsTrue(Regex.IsMatch(filename, @"^([A-Za-z0-9 _]*)\.js$"), "Filename '{0}' does not match regex.", filename);
                    Console.WriteLine(filename);
                }
            }
        }
示例#2
0
        public void EscapesOutputFilenames()
        {
            using (var test = new ComparisonTest(
                EvaluatorPool,
                new[] { @"TestCases\HelloWorld.cs" },
                Portability.NormalizeDirectorySeparators(@"MetadataTests\EscapesOutputFilenames")
            )) {
                var filenames = test.Translate((tr) => {
                    return (from file in tr.OrderedFiles select file.Filename).ToArray();
                }, () => {
                    var configuration = MakeConfiguration();
                    configuration.FilenameEscapeRegex = "[^A-Za-z0-9 _]";
                    return configuration;
                });

                Assert.AreEqual(1, filenames.Length);

                foreach (var filename in filenames) {
                    Assert.IsTrue(Regex.IsMatch(filename, @"^([A-Za-z0-9 _]*)\.js$"), "Filename '{0}' does not match regex.", filename);
                    Console.WriteLine(filename);
                }
            }
        }