Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/twbs/rewire.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohannes <johannes.ewald@roomieplanet.de>2012-07-03 05:03:31 +0400
committerJohannes <johannes.ewald@roomieplanet.de>2012-07-03 05:03:31 +0400
commitdfe9ba7d197263641ac1d0247993bd7fa938b2c5 (patch)
tree6e14a3475bae22461781d675e61dcaabb368a678 /test/browserify.browserifyRewire.test.js
parent8bfdd979dabc1a0ab2e85fd80548d66bccdd1b82 (diff)
- fixed bug when using b.addEntry()
- small fixes
Diffstat (limited to 'test/browserify.browserifyRewire.test.js')
-rw-r--r--test/browserify.browserifyRewire.test.js111
1 files changed, 14 insertions, 97 deletions
diff --git a/test/browserify.browserifyRewire.test.js b/test/browserify.browserifyRewire.test.js
index e52a50c..54f4ad1 100644
--- a/test/browserify.browserifyRewire.test.js
+++ b/test/browserify.browserifyRewire.test.js
@@ -18,102 +18,23 @@ function runInFakeBrowserContext(src, filename) {
after: after,
beforeEach: beforeEach,
afterEach: afterEach,
- setTimeout: setTimeout
+ setTimeout: setTimeout,
+ clearTimeout: clearTimeout,
+ setInterval: setInterval,
+ clearInterval: clearInterval,
+ parseFloat: parseFloat,
+ parseInt: parseInt,
+ encodeURIComponent: function () {},
+ decodeURIComponent: function () {},
+ document: {}
},
- console: console,
- setTimeout: setTimeout,
- clearTimeout: clearTimeout,
- setInterval: setInterval,
- clearInterval: clearInterval,
- parseFloat: parseFloat,
- parseInt: parseInt,
- encodeURIComponent: function () {},
- decodeURIComponent: function () {}
+ console: console
}, filename);
}
describe("browserifyRewire", function () {
before(require("./testHelpers/createFakePackageJSON.js"));
after(require("./testHelpers/removeFakePackageJSON.js"));
- it("should attach __set__ and __get__ to the exports-obj", function (done) {
- var pathToBrowserfiyRewire = pathUtil.resolve(__dirname, "../lib/browserify/browserifyRewire.js"),
- context,
- exportsObj = {},
- moduleObj = {exports: exportsObj},
- returnedObj,
- browserifyRewire;
-
- // Register with fake objects
- // Using null for objects that are not involved in this particular test
- function moduleA() {
- "use strict";
-
- browserifyRewire.register("/a.js", null, null, null);
- returnedObj = browserifyRewire("/a.js", "/b.js");
- }
-
- function moduleB() {
- "use strict";
-
- browserifyRewire.register("/b.js", moduleObj, setter, getter);
-
- return exportsObj;
- }
-
- function fakeResolve() {
- return "/b.js";
- }
-
- function fakeRequire(path, parentModulePath) {
- var module;
-
- if (path === "../browser/shims.js") {
- return;
- } else if (path === "../getImportGlobalsSrc.js") {
- return require("../lib/getImportGlobalsSrc.js");
- }
-
- module = moduleB();
-
- expect(path).to.be("/b.js");
- expect(parentModulePath).to.be("/a.js");
- fakeRequire.cache["/b.js"] = module;
-
- return module;
- }
- fakeRequire.resolve = fakeResolve;
- fakeRequire.cache = {};
-
- function setter() {}
- function getter() {}
-
- context = {
- module: {},
- console: console,
- window: {
- browserifyRequire: fakeRequire
- },
- require: fakeRequire
- };
-
- fs.readFile(pathToBrowserfiyRewire, "utf8", function onBrowserifyRewireRead(err, src) {
- vm.runInNewContext(src, context, pathToBrowserfiyRewire);
- browserifyRewire = context.module.exports;
-
- moduleA();
-
- expect(returnedObj.__set__).to.be(setter);
- expect(returnedObj.__get__).to.be(getter);
- // Because browserify does not create the module-object newly when executing the module
- // again we have to copy the module object deeply and store that copy in the
- // cache. Therefore we're checking here if the returned exports-object and the
- // cached module-object are an independent copy.
- expect(returnedObj).not.to.be(exportsObj);
- expect(context.window.browserifyRequire.cache["/b.js"]).not.to.be(moduleObj);
-
- done();
- });
- });
it("should run all sharedTestCases without exception", function () {
var b = browserify({debug: true}),
middleware = require("rewire").browserify,
@@ -122,19 +43,15 @@ describe("browserifyRewire", function () {
vmBundle;
b.use(middleware);
- b.require(__dirname + "/testModules/sharedTestCases.js");
+ b.addEntry(__dirname + "/testModules/sharedTestCases.js");
vmBundle = b.bundle();
browserBundle = vmBundle;
// Setup for mocha
- browserBundle += 'window.onload = function () {' +
- 'console.log("These tests will only work in all browsers with the console being opened");' +
- 'mocha.setup("bdd");' +
- 'window.browserifyRequire("/test/testModules/sharedTestCases.js");' +
- 'mocha.run();' +
- '};';
+ browserBundle = "function enableTests() {" + browserBundle + "}";
- vmBundle += 'window.browserifyRequire("/test/testModules/sharedTestCases.js");';
+ /*
+ vmBundle += 'window.browserifyRequire("/test/testModules/sharedTestCases.js");'; */
// Output for browser-testing
fs.writeFileSync(browserOutput, browserBundle, "utf8");