|
42 | 42 | /************************************************************************/
|
43 | 43 | /******/ ([
|
44 | 44 | /* 0 */
|
45 |
| -/***/ function(module, exports, __webpack_require__) { |
46 |
| - |
47 |
| - var jasminePatch = __webpack_require__(1); |
48 |
| - jasminePatch.apply(); |
49 |
| - //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiamFzbWluZS1wYXRjaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2xpYi9icm93c2VyL2phc21pbmUtcGF0Y2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsSUFBWSxZQUFZLFdBQU0sa0JBQWtCLENBQUMsQ0FBQTtBQUVqRCxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBqYXNtaW5lUGF0Y2ggZnJvbSAnLi4vamFzbWluZS9wYXRjaCc7XG5cbmphc21pbmVQYXRjaC5hcHBseSgpO1xuIl19 |
50 |
| - |
51 |
| -/***/ }, |
52 |
| -/* 1 */ |
53 | 45 | /***/ function(module, exports) {
|
54 | 46 |
|
55 | 47 | /* WEBPACK VAR INJECTION */(function(global) {'use strict';
|
56 |
| - // Patch jasmine's it and fit functions so that the `done` callback always resets the zone |
| 48 | + // Patch jasmine's it and fit functions so that the `done` wrapCallback always resets the zone |
57 | 49 | // to the jasmine zone, which should be the root zone. (angular/zone.js#91)
|
58 |
| - function apply() { |
59 |
| - if (!global.zone) { |
60 |
| - throw new Error('zone.js does not seem to be installed'); |
| 50 | + if (!Zone) { |
| 51 | + throw new Error('zone.js does not seem to be installed'); |
| 52 | + } |
| 53 | + var SET_TIMEOUT = '__zone_symbol__setTimeout'; |
| 54 | + // When you have in async test (test with `done` argument) jasmine will |
| 55 | + // execute the next test synchronously in the done handler. This makes sense |
| 56 | + // for most tests, but now with zones. With zones running next test |
| 57 | + // synchronously means that the current zone does not get cleared. This |
| 58 | + // results in a chain of nested zones, which makes it hard to reason about |
| 59 | + // it. We override the `clearStack` method which forces jasmine to always |
| 60 | + // drain the stack before next test gets executed. |
| 61 | + jasmine.QueueRunner = (function (SuperQueueRunner) { |
| 62 | + // Subclass the `QueueRunner` and override the `clearStack` method. |
| 63 | + function alwaysClearStack(fn) { |
| 64 | + global[SET_TIMEOUT](fn, 0); |
61 | 65 | }
|
62 |
| - if (!global.zone.isRootZone()) { |
63 |
| - throw new Error('The jasmine patch should be called from the root zone'); |
| 66 | + function QueueRunner(options) { |
| 67 | + options.clearStack = alwaysClearStack; |
| 68 | + SuperQueueRunner.call(this, options); |
64 | 69 | }
|
65 |
| - // When you have in async test (test with `done` argument) jasmine will |
66 |
| - // execute the next test synchronously in the done handle. This makes sense |
67 |
| - // for most tests, but now with zones. With zones running next test |
68 |
| - // synchronously means that the current zone does not get cleared. This |
69 |
| - // results in a chain of nested zones, which makes it hard to reason about |
70 |
| - // it. We override the `clearStack` method which forces jasmine to always |
71 |
| - // drain the stack before next test gets executed. |
72 |
| - jasmine.QueueRunner = (function (SuperQueueRunner) { |
73 |
| - // Subclass the `QueueRunner` and override the `clearStack` mothed. |
74 |
| - function alwaysClearStack(fn) { |
75 |
| - global.zone.setTimeoutUnpatched(fn, 0); |
76 |
| - } |
77 |
| - function QueueRunner(options) { |
78 |
| - options.clearStack = alwaysClearStack; |
79 |
| - SuperQueueRunner.call(this, options); |
80 |
| - } |
81 |
| - QueueRunner.prototype = SuperQueueRunner.prototype; |
82 |
| - return QueueRunner; |
83 |
| - })(jasmine.QueueRunner); |
84 |
| - } |
85 |
| - exports.apply = apply; |
86 |
| - if (global.jasmine) { |
87 |
| - module.exports = { |
88 |
| - apply: apply |
89 |
| - }; |
90 |
| - } |
91 |
| - else { |
92 |
| - module.exports = { |
93 |
| - apply: function () { } |
94 |
| - }; |
95 |
| - } |
96 |
| - //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0Y2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9saWIvamFzbWluZS9wYXRjaC50cyJdLCJuYW1lcyI6WyJhcHBseSIsImFsd2F5c0NsZWFyU3RhY2siLCJRdWV1ZVJ1bm5lciJdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDO0FBQ2IsMEZBQTBGO0FBQzFGLDJFQUEyRTtBQUUzRTtJQUNFQSxFQUFFQSxDQUFDQSxDQUFDQSxDQUFDQSxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxDQUFDQSxDQUFDQTtRQUNqQkEsTUFBTUEsSUFBSUEsS0FBS0EsQ0FBQ0EsdUNBQXVDQSxDQUFDQSxDQUFDQTtJQUMzREEsQ0FBQ0E7SUFFREEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0EsTUFBTUEsQ0FBQ0EsSUFBSUEsQ0FBQ0EsVUFBVUEsRUFBRUEsQ0FBQ0EsQ0FBQ0EsQ0FBQ0E7UUFDOUJBLE1BQU1BLElBQUlBLEtBQUtBLENBQUNBLHVEQUF1REEsQ0FBQ0EsQ0FBQ0E7SUFDM0VBLENBQUNBO0lBRURBLHVFQUF1RUE7SUFDdkVBLDJFQUEyRUE7SUFDM0VBLG1FQUFtRUE7SUFDbkVBLHVFQUF1RUE7SUFDdkVBLDBFQUEwRUE7SUFDMUVBLHlFQUF5RUE7SUFDekVBLGtEQUFrREE7SUFDNUNBLE9BQVFBLENBQUNBLFdBQVdBLEdBQUdBLENBQUNBLFVBQVVBLGdCQUFnQkE7UUFDdEQsbUVBQW1FO1FBRW5FLDBCQUEwQixFQUFFO1lBQzFCQyxNQUFNQSxDQUFDQSxJQUFJQSxDQUFDQSxtQkFBbUJBLENBQUNBLEVBQUVBLEVBQUVBLENBQUNBLENBQUNBLENBQUNBO1FBQ3pDQSxDQUFDQTtRQUVELHFCQUFxQixPQUFPO1lBQzFCQyxPQUFPQSxDQUFDQSxVQUFVQSxHQUFHQSxnQkFBZ0JBLENBQUNBO1lBQ3RDQSxnQkFBZ0JBLENBQUNBLElBQUlBLENBQUNBLElBQUlBLEVBQUVBLE9BQU9BLENBQUNBLENBQUNBO1FBQ3ZDQSxDQUFDQTtRQUNELFdBQVcsQ0FBQyxTQUFTLEdBQUcsZ0JBQWdCLENBQUMsU0FBUyxDQUFDO1FBQ25ELE1BQU0sQ0FBQyxXQUFXLENBQUM7SUFDckIsQ0FBQyxDQUFDRixDQUFPQSxPQUFRQSxDQUFDQSxXQUFXQSxDQUFDQSxDQUFDQTtBQUVqQ0EsQ0FBQ0E7QUEvQmUsYUFBSyxRQStCcEIsQ0FBQTtBQUVELEVBQUUsQ0FBQyxDQUFPLE1BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQzFCLE1BQU0sQ0FBQyxPQUFPLEdBQUc7UUFDZixLQUFLLEVBQUUsS0FBSztLQUNiLENBQUM7QUFDSixDQUFDO0FBQUMsSUFBSSxDQUFDLENBQUM7SUFDTixNQUFNLENBQUMsT0FBTyxHQUFHO1FBQ2YsS0FBSyxFQUFFLGNBQWEsQ0FBQztLQUN0QixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0Jztcbi8vIFBhdGNoIGphc21pbmUncyBpdCBhbmQgZml0IGZ1bmN0aW9ucyBzbyB0aGF0IHRoZSBgZG9uZWAgY2FsbGJhY2sgYWx3YXlzIHJlc2V0cyB0aGUgem9uZVxuLy8gdG8gdGhlIGphc21pbmUgem9uZSwgd2hpY2ggc2hvdWxkIGJlIHRoZSByb290IHpvbmUuIChhbmd1bGFyL3pvbmUuanMjOTEpXG5cbmV4cG9ydCBmdW5jdGlvbiBhcHBseSgpIHtcbiAgaWYgKCFnbG9iYWwuem9uZSkge1xuICAgIHRocm93IG5ldyBFcnJvcignem9uZS5qcyBkb2VzIG5vdCBzZWVtIHRvIGJlIGluc3RhbGxlZCcpO1xuICB9XG5cbiAgaWYgKCFnbG9iYWwuem9uZS5pc1Jvb3Rab25lKCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBqYXNtaW5lIHBhdGNoIHNob3VsZCBiZSBjYWxsZWQgZnJvbSB0aGUgcm9vdCB6b25lJyk7XG4gIH1cblxuICAvLyBXaGVuIHlvdSBoYXZlIGluIGFzeW5jIHRlc3QgKHRlc3Qgd2l0aCBgZG9uZWAgYXJndW1lbnQpIGphc21pbmUgd2lsbFxuICAvLyBleGVjdXRlIHRoZSBuZXh0IHRlc3Qgc3luY2hyb25vdXNseSBpbiB0aGUgZG9uZSBoYW5kbGUuIFRoaXMgbWFrZXMgc2Vuc2VcbiAgLy8gZm9yIG1vc3QgdGVzdHMsIGJ1dCBub3cgd2l0aCB6b25lcy4gV2l0aCB6b25lcyBydW5uaW5nIG5leHQgdGVzdFxuICAvLyBzeW5jaHJvbm91c2x5IG1lYW5zIHRoYXQgdGhlIGN1cnJlbnQgem9uZSBkb2VzIG5vdCBnZXQgY2xlYXJlZC4gVGhpc1xuICAvLyByZXN1bHRzIGluIGEgY2hhaW4gb2YgbmVzdGVkIHpvbmVzLCB3aGljaCBtYWtlcyBpdCBoYXJkIHRvIHJlYXNvbiBhYm91dFxuICAvLyBpdC4gV2Ugb3ZlcnJpZGUgdGhlIGBjbGVhclN0YWNrYCBtZXRob2Qgd2hpY2ggZm9yY2VzIGphc21pbmUgdG8gYWx3YXlzXG4gIC8vIGRyYWluIHRoZSBzdGFjayBiZWZvcmUgbmV4dCB0ZXN0IGdldHMgZXhlY3V0ZWQuXG4gICg8YW55Pmphc21pbmUpLlF1ZXVlUnVubmVyID0gKGZ1bmN0aW9uIChTdXBlclF1ZXVlUnVubmVyKSB7XG4gICAgLy8gU3ViY2xhc3MgdGhlIGBRdWV1ZVJ1bm5lcmAgYW5kIG92ZXJyaWRlIHRoZSBgY2xlYXJTdGFja2AgbW90aGVkLlxuXG4gICAgZnVuY3Rpb24gYWx3YXlzQ2xlYXJTdGFjayhmbikge1xuICAgICAgZ2xvYmFsLnpvbmUuc2V0VGltZW91dFVucGF0Y2hlZChmbiwgMCk7XG4gICAgfVxuXG4gICAgZnVuY3Rpb24gUXVldWVSdW5uZXIob3B0aW9ucykge1xuICAgICAgb3B0aW9ucy5jbGVhclN0YWNrID0gYWx3YXlzQ2xlYXJTdGFjaztcbiAgICAgIFN1cGVyUXVldWVSdW5uZXIuY2FsbCh0aGlzLCBvcHRpb25zKTtcbiAgICB9XG4gICAgUXVldWVSdW5uZXIucHJvdG90eXBlID0gU3VwZXJRdWV1ZVJ1bm5lci5wcm90b3R5cGU7XG4gICAgcmV0dXJuIFF1ZXVlUnVubmVyO1xuICB9KSgoPGFueT5qYXNtaW5lKS5RdWV1ZVJ1bm5lcik7XG5cbn1cblxuaWYgKCg8YW55Pmdsb2JhbCkuamFzbWluZSkge1xuICBtb2R1bGUuZXhwb3J0cyA9IHtcbiAgICBhcHBseTogYXBwbHlcbiAgfTtcbn0gZWxzZSB7XG4gIG1vZHVsZS5leHBvcnRzID0ge1xuICAgIGFwcGx5OiBmdW5jdGlvbigpIHsgfVxuICB9O1xufVxuIl19 |
| 70 | + QueueRunner.prototype = SuperQueueRunner.prototype; |
| 71 | + return QueueRunner; |
| 72 | + })(jasmine.QueueRunner); |
| 73 | + |
97 | 74 | /* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }())))
|
98 | 75 |
|
99 | 76 | /***/ }
|
|
0 commit comments