mirror of
https://github.com/pulsar-edit/pulsar.git
synced 2024-09-11 19:17:09 +03:00
44 lines
972 B
JavaScript
44 lines
972 B
JavaScript
exports.beforeEach = function beforeEach (fn) {
|
|
global.beforeEach(function () {
|
|
const result = fn()
|
|
if (result instanceof Promise) {
|
|
waitsForPromise(() => result)
|
|
}
|
|
})
|
|
}
|
|
|
|
exports.afterEach = function afterEach (fn) {
|
|
global.afterEach(function () {
|
|
const result = fn()
|
|
if (result instanceof Promise) {
|
|
waitsForPromise(() => result)
|
|
}
|
|
})
|
|
}
|
|
|
|
;['it', 'fit', 'ffit', 'fffit'].forEach(function (name) {
|
|
exports[name] = function (description, fn) {
|
|
if (fn === undefined) {
|
|
global[name](description)
|
|
return
|
|
}
|
|
|
|
global[name](description, function () {
|
|
const result = fn()
|
|
if (result instanceof Promise) {
|
|
waitsForPromise(() => result)
|
|
}
|
|
})
|
|
}
|
|
})
|
|
|
|
function waitsForPromise (fn) {
|
|
const promise = fn()
|
|
global.waitsFor('spec promise to resolve', function (done) {
|
|
promise.then(done, function (error) {
|
|
jasmine.getEnv().currentSpec.fail(error)
|
|
done()
|
|
})
|
|
})
|
|
}
|