From e62fd3cf403ca131daf43647ea62f16bdc0aad2d Mon Sep 17 00:00:00 2001 From: Paul Baumgart Date: Fri, 24 Sep 2010 16:46:31 -0700 Subject: [PATCH] Add a test case to test some reductions of regexes that current cause errors in the Preprocessor. --- .../OutputTests/Misc/regex-simple-char-classes.j | 10 ++++++++++ .../OutputTests/Misc/regex-simple-char-classes.js | 10 ++++++++++ .../Preprocessor/OutputTests/OutputTest.j | 13 +++++++++---- 3 files changed, 29 insertions(+), 4 deletions(-) create mode 100644 Tests/Objective-J/Preprocessor/OutputTests/Misc/regex-simple-char-classes.j create mode 100644 Tests/Objective-J/Preprocessor/OutputTests/Misc/regex-simple-char-classes.js diff --git a/Tests/Objective-J/Preprocessor/OutputTests/Misc/regex-simple-char-classes.j b/Tests/Objective-J/Preprocessor/OutputTests/Misc/regex-simple-char-classes.j new file mode 100644 index 000000000..dbc548b70 --- /dev/null +++ b/Tests/Objective-J/Preprocessor/OutputTests/Misc/regex-simple-char-classes.j @@ -0,0 +1,10 @@ +/[\{]/; +/[\}]/; +/[@]/; +/[\[]/; +/[\]]/; +/[#]/; +/[\(]/; +/[\)]/; +/(\[)/; +/(\])/; diff --git a/Tests/Objective-J/Preprocessor/OutputTests/Misc/regex-simple-char-classes.js b/Tests/Objective-J/Preprocessor/OutputTests/Misc/regex-simple-char-classes.js new file mode 100644 index 000000000..dbc548b70 --- /dev/null +++ b/Tests/Objective-J/Preprocessor/OutputTests/Misc/regex-simple-char-classes.js @@ -0,0 +1,10 @@ +/[\{]/; +/[\}]/; +/[@]/; +/[\[]/; +/[\]]/; +/[#]/; +/[\(]/; +/[\)]/; +/(\[)/; +/(\])/; diff --git a/Tests/Objective-J/Preprocessor/OutputTests/OutputTest.j b/Tests/Objective-J/Preprocessor/OutputTests/OutputTest.j index 7c97fa2b0..f9048e927 100644 --- a/Tests/Objective-J/Preprocessor/OutputTests/OutputTest.j +++ b/Tests/Objective-J/Preprocessor/OutputTests/OutputTest.j @@ -10,7 +10,9 @@ var FILENAMES = [ "Messages/no-parameters", "Messages/one-parameter", "Messages/multiple-parameters", - "Messages/ternary-operator-argument" + "Messages/ternary-operator-argument", + + "Misc/regex-simple-char-classes" ]; @implementation OutputTest : OJTestCase @@ -33,11 +35,14 @@ var FILENAMES = [ { var filePath = FILE.join(FILE.dirname(module.path), filename + ".j"), unpreprocessed = FILE.read(filePath, { charset:"UTF-8" }), - preprocessed = ObjectiveJ.preprocess(unpreprocessed).code(), + preprocessed, correct = FILE.read(FILE.join(FILE.dirname(module.path), filename + ".js")); - preprocessed = compressor.compress(preprocessed, { charset : "UTF-8", useServer : true }); - correct = compressor.compress(correct, { charset : "UTF-8", useServer : true }); + [self assertNoThrow:function() { + preprocessed = ObjectiveJ.preprocess(unpreprocessed).code(), + preprocessed = compressor.compress(preprocessed, { charset : "UTF-8", useServer : true }); + correct = compressor.compress(correct, { charset : "UTF-8", useServer : true }); + }]; [self assert:preprocessed equals:correct]; });