You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
32 lines
882 B
32 lines
882 B
import assert from 'assert'; |
|
import { testMethodProperty } from './properties.js'; |
|
|
|
describe('of', () => { |
|
it('is a method on Observable', () => { |
|
testMethodProperty(Observable, 'of', { |
|
configurable: true, |
|
writable: true, |
|
length: 0, |
|
}); |
|
}); |
|
|
|
it('uses the this value if it is a function', () => { |
|
let usesThis = false; |
|
Observable.of.call(function() { usesThis = true; }); |
|
assert.ok(usesThis); |
|
}); |
|
|
|
it('uses Observable if the this value is not a function', () => { |
|
let result = Observable.of.call({}, 1, 2, 3, 4); |
|
assert.ok(result instanceof Observable); |
|
}); |
|
|
|
it('delivers arguments to next in a job', async () => { |
|
let values = []; |
|
let turns = 0; |
|
Observable.of(1, 2, 3, 4).subscribe(v => values.push(v)); |
|
assert.equal(values.length, 0); |
|
await null; |
|
assert.deepEqual(values, [1, 2, 3, 4]); |
|
}); |
|
});
|
|
|