2017-01-17 14:28:28 +00:00
|
|
|
import 'typings-test'
|
|
|
|
|
2017-01-28 15:37:54 +00:00
|
|
|
import { expect } from 'smartchai'
|
2017-01-17 14:28:28 +00:00
|
|
|
import * as q from '../dist/index'
|
|
|
|
|
2017-01-28 15:37:54 +00:00
|
|
|
let myCallback = (someValue1: string, cb?) => {
|
|
|
|
cb(null, someValue1)
|
|
|
|
}
|
|
|
|
|
|
|
|
describe('smartq', function () {
|
|
|
|
it('should return a Deferred for .defer()', function () {
|
2017-01-17 14:28:28 +00:00
|
|
|
let myDeferred = q.defer()
|
2017-01-28 15:37:54 +00:00
|
|
|
let expectPromise = expect(myDeferred.promise).to.eventually.be.fulfilled
|
2017-01-17 14:28:28 +00:00
|
|
|
myDeferred.resolve()
|
2017-01-28 15:37:54 +00:00
|
|
|
return expectPromise
|
2017-01-17 14:28:28 +00:00
|
|
|
})
|
|
|
|
|
2017-01-28 15:37:54 +00:00
|
|
|
it('should let types flow through the Promise', function () {
|
2017-01-17 14:28:28 +00:00
|
|
|
let myString = 'someString'
|
|
|
|
let myDeferred = q.defer<string>()
|
2017-01-28 15:37:54 +00:00
|
|
|
let expectPromise = expect(myDeferred.promise).to.eventually.equal('someString')
|
2017-01-17 14:28:28 +00:00
|
|
|
myDeferred.resolve(myString)
|
2017-01-28 15:37:54 +00:00
|
|
|
return expectPromise
|
|
|
|
})
|
|
|
|
|
|
|
|
it('should promisify a callback', function () {
|
|
|
|
let myPromisified = q.promisify(myCallback)
|
|
|
|
let expectPromise = expect(myPromisified('hi')).to.eventually.equal('hi')
|
|
|
|
return expectPromise
|
|
|
|
})
|
|
|
|
|
|
|
|
it('should map callbacks', function() {
|
|
|
|
let inputArray = ['hi', 'awesome']
|
|
|
|
let myPromisified = q.promisify(myCallback)
|
|
|
|
let expectPromise = expect(q.map(inputArray, myPromisified)).to.eventually.deep.equal(inputArray)
|
|
|
|
return expectPromise
|
2017-01-17 14:28:28 +00:00
|
|
|
})
|
2017-01-28 15:37:54 +00:00
|
|
|
})
|