72 lines
2.5 KiB
JavaScript
72 lines
2.5 KiB
JavaScript
"use strict";
|
|
|
|
var match = require("./sinon/match");
|
|
var deepEqual = require("./sinon/util/core/deep-equal");
|
|
var deprecated = require("./sinon/util/core/deprecated");
|
|
|
|
function exposeCoreUtils(target, utils) {
|
|
var keys = Object.keys(utils);
|
|
|
|
keys.forEach(function (key) {
|
|
var value = utils[key];
|
|
|
|
// allow deepEqual to check equality of matchers through dependency injection. Otherwise we get a circular
|
|
// dependency
|
|
if (key === "deepEqual") {
|
|
value = deepEqual.use(match);
|
|
}
|
|
if (typeof value === "function") {
|
|
value = deprecated.wrap(value, deprecated.defaultMsg(key));
|
|
}
|
|
target[key] = value;
|
|
});
|
|
}
|
|
|
|
function exposeEventTarget(target, eventTarget) {
|
|
var keys = Object.keys(eventTarget);
|
|
|
|
keys.forEach(function (key) {
|
|
target[key] = deprecated.wrap(eventTarget[key], deprecated.defaultMsg("EventTarget"));
|
|
});
|
|
}
|
|
|
|
// Expose internal utilities on `sinon` global for backwards compatibility.
|
|
exposeCoreUtils(exports, require("./sinon/util/core/index"));
|
|
|
|
exports.assert = require("./sinon/assert");
|
|
exports.collection = require("./sinon/collection");
|
|
exports.match = match;
|
|
exports.spy = require("./sinon/spy");
|
|
exports.spyCall = require("./sinon/call");
|
|
exports.stub = require("./sinon/stub");
|
|
exports.mock = require("./sinon/mock");
|
|
exports.sandbox = require("./sinon/sandbox");
|
|
exports.expectation = require("./sinon/mock-expectation");
|
|
exports.createStubInstance = require("./sinon/stub").createStubInstance;
|
|
|
|
var fakeTimers = require("./sinon/util/fake_timers");
|
|
exports.useFakeTimers = fakeTimers.useFakeTimers;
|
|
exports.clock = fakeTimers.clock;
|
|
exports.timers = fakeTimers.timers;
|
|
|
|
var event = require("./sinon/util/event");
|
|
exports.Event = deprecated.wrap(event.Event, deprecated.defaultMsg("Event"));
|
|
exports.CustomEvent = deprecated.wrap(event.CustomEvent, deprecated.defaultMsg("CustomEvent"));
|
|
exports.ProgressEvent = deprecated.wrap(event.ProgressEvent, deprecated.defaultMsg("ProgressEvent"));
|
|
exports.EventTarget = {};
|
|
exposeEventTarget(exports.EventTarget, event.EventTarget);
|
|
|
|
var fakeXhr = require("./sinon/util/fake_xml_http_request");
|
|
exports.xhr = fakeXhr.xhr;
|
|
exports.FakeXMLHttpRequest = fakeXhr.FakeXMLHttpRequest;
|
|
exports.useFakeXMLHttpRequest = fakeXhr.useFakeXMLHttpRequest;
|
|
|
|
exports.fakeServer = require("./sinon/util/fake_server");
|
|
exports.fakeServerWithClock = require("./sinon/util/fake_server_with_clock");
|
|
|
|
var behavior = require("./sinon/behavior");
|
|
|
|
exports.addBehavior = function (name, fn) {
|
|
behavior.addBehavior(exports.stub, name, fn);
|
|
};
|