diff options
author | Mihai Bazon <mihai@bazon.net> | 2012-10-13 15:04:44 +0300 |
---|---|---|
committer | Mihai Bazon <mihai@bazon.net> | 2012-10-13 15:04:44 +0300 |
commit | fcc0229087c4efd212a1050f38d3049d52344b3a (patch) | |
tree | 02032c14fdb06c118ae18ab41b81f69fd6d6206b /test | |
parent | b071c9d079e3acbfb521a6634364c5816d3be280 (diff) | |
download | tracifyjs-fcc0229087c4efd212a1050f38d3049d52344b3a.tar.gz tracifyjs-fcc0229087c4efd212a1050f38d3049d52344b3a.zip |
drop unused function arguments
also add test for "drop_unused" (the last one fails for now)
Diffstat (limited to 'test')
-rw-r--r-- | test/compress/drop-unused.js | 97 | ||||
-rwxr-xr-x | test/run-tests.js | 6 |
2 files changed, 103 insertions, 0 deletions
diff --git a/test/compress/drop-unused.js b/test/compress/drop-unused.js new file mode 100644 index 00000000..bf5cd296 --- /dev/null +++ b/test/compress/drop-unused.js @@ -0,0 +1,97 @@ +unused_funarg_1: { + options = { unused: true }; + input: { + function f(a, b, c, d, e) { + return a + b; + } + } + expect: { + function f(a, b) { + return a + b; + } + } +} + +unused_funarg_2: { + options = { unused: true }; + input: { + function f(a, b, c, d, e) { + return a + c; + } + } + expect: { + function f(a, b, c) { + return a + c; + } + } +} + +unused_nested_function: { + options = { unused: true }; + input: { + function f(x, y) { + function g() { + something(); + } + return x + y; + } + }; + expect: { + function f(x, y) { + return x + y; + } + } +} + +unused_circular_references_1: { + options = { unused: true }; + input: { + function f(x, y) { + // circular reference + function g() { + return h(); + } + function h() { + return g(); + } + return x + y; + } + }; + expect: { + function f(x, y) { + return x + y; + } + } +} + +unused_circular_references_2: { + options = { unused: true }; + input: { + function f(x, y) { + var foo = 1, bar = baz, baz = foo + bar, qwe = moo(); + return x + y; + } + }; + expect: { + function f(x, y) { + moo(); // keeps side effect + return x + y; + } + } +} + +unused_circular_references_3: { + options = { unused: true }; + input: { + function f(x, y) { + var g = function() { return h() }; + var h = function() { return g() }; + return x + y; + } + }; + expect: { + function f(x, y) { + return x + y; + } + } +} diff --git a/test/run-tests.js b/test/run-tests.js index abace39c..87301412 100755 --- a/test/run-tests.js +++ b/test/run-tests.js @@ -37,6 +37,12 @@ function find_test_files(dir) { var files = fs.readdirSync(dir).filter(function(name){ return /\.js$/i.test(name); }); + if (process.argv.length > 2) { + var x = process.argv.slice(2); + files = files.filter(function(f){ + return x.indexOf(f) >= 0; + }); + } return files; } |