HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/SBogers10/shop.komma.nl/node_modules/zen-observable/test/constructor.js
import assert from 'assert';
import { testMethodProperty } from './properties.js';

describe('constructor', () => {
  it('throws if called as a function', () => {
    assert.throws(() => Observable(() => {}));
    assert.throws(() => Observable.call({}, () => {}));
  });

  it('throws if the argument is not callable', () => {
    assert.throws(() => new Observable({}));
    assert.throws(() => new Observable());
    assert.throws(() => new Observable(1));
    assert.throws(() => new Observable('string'));
  });

  it('accepts a function argument', () => {
    let result = new Observable(() => {});
    assert.ok(result instanceof Observable);
  });

  it('is the value of Observable.prototype.constructor', () => {
    testMethodProperty(Observable.prototype, 'constructor', {
      configurable: true,
      writable: true,
      length: 1,
    });
  });

  it('does not call the subscriber function', () => {
    let called = 0;
    new Observable(() => { called++ });
    assert.equal(called, 0);
  });

});