aboutsummaryrefslogtreecommitdiff
path: root/tools/addon-sdk-1.12/test/test-require.js
diff options
context:
space:
mode:
authorGravatar Rogan Creswick <creswick@gmail.com>2013-01-02 15:31:43 -0800
committerGravatar Rogan Creswick <creswick@gmail.com>2013-01-02 15:31:43 -0800
commit91c8d16838b39c7726f6c0a0fb333f5ba38d2494 (patch)
tree136df17525e5e62f3ddc5b7a6dc71ffd31e2aa42 /tools/addon-sdk-1.12/test/test-require.js
parentf7b228c479bac8828e521a2826d7f57f150da877 (diff)
updated addon-sdk to 1.12
Diffstat (limited to 'tools/addon-sdk-1.12/test/test-require.js')
-rw-r--r--tools/addon-sdk-1.12/test/test-require.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/tools/addon-sdk-1.12/test/test-require.js b/tools/addon-sdk-1.12/test/test-require.js
new file mode 100644
index 0000000..d7e790e
--- /dev/null
+++ b/tools/addon-sdk-1.12/test/test-require.js
@@ -0,0 +1,29 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+const traceback = require("sdk/console/traceback");
+
+exports.test_no_args = function(test) {
+ var passed = false;
+ try {
+ var oops = require(); // leave this on line 6!
+ } catch(e) {
+ let msg = e.toString();
+ test.assertEqual(msg.indexOf("Error: you must provide a module name when calling require() from "), 0);
+ test.assertNotEqual(msg.indexOf("test-require"), -1, msg);
+ // we'd also like to assert that the right filename and linenumber is in
+ // the stack trace, but this currently doesn't work (see bugs 679591 and
+ // 551604)
+ if (0) {
+ let tb = traceback.fromException(e);
+ let lastFrame = tb[tb.length-1];
+ test.assertNotEqual(lastFrame.filename.indexOf("test-require.js"), -1,
+ lastFrame.filename);
+ test.assertEqual(lastFrame.lineNo, 6);
+ test.assertEqual(lastFrame.funcName, "??");
+ }
+ passed = true;
+ }
+ test.assert(passed, 'require() with no args should raise helpful error');
+};