Ver código fonte

Use a local object for the signals

Steven Silvester 8 anos atrás
pai
commit
6c099bbc10
1 arquivos alterados com 40 adições e 22 exclusões
  1. 40 22
      test/src/common/activitymonitor.spec.ts

+ 40 - 22
test/src/common/activitymonitor.spec.ts

@@ -4,7 +4,7 @@
 import expect = require('expect.js');
 
 import {
-  Signal
+  ISignal, Signal
 } from 'phosphor-signaling';
 
 import {
@@ -12,21 +12,47 @@ import {
 } from '../../../lib/common/activitymonitor';
 
 
+
+class TestObject {
+
+  static oneSignal = new Signal<TestObject, number>();
+
+  static twoSignal = new Signal<TestObject, string[]>();
+
+  get one(): ISignal<TestObject, number> {
+    return TestObject.oneSignal.bind(this);
+  }
+
+  get two(): ISignal<TestObject, string[]> {
+    return TestObject.twoSignal.bind(this);
+  }
+}
+
+
+
 describe('common/activitymonitor', () => {
 
   describe('ActivityMonitor()', () => {
 
+    let testObj: TestObject;
+    let signal: ISignal<TestObject, number>;
+
+    beforeEach(() => {
+      testObj = new TestObject();
+      signal = testObj.one;
+    });
+
     describe('#constructor()', () => {
 
       it('should accept a signal', () => {
-        let signal = new Signal<Window, number>().bind(window);
-        let monitor = new ActivityMonitor<Window, number>({ signal });
+        let monitor = new ActivityMonitor<TestObject, number>({ signal });
         expect(monitor).to.be.an(ActivityMonitor);
       });
 
       it('should accept a timeout', () => {
-        let signal = new Signal<Window, number>().bind(window);
-        let monitor = new ActivityMonitor<Window, number>({ signal, timeout: 100 });
+        let monitor = new ActivityMonitor<TestObject, string[]>({
+          signal: testObj.two, timeout: 100
+        });
         expect(monitor).to.be.an(ActivityMonitor);
       });
 
@@ -35,12 +61,11 @@ describe('common/activitymonitor', () => {
     describe('#activityStopped', () => {
 
       it('should be emitted after the signal has fired and a timeout', (done) => {
-        let signal = new Signal<Window, number>().bind(window);
         let called = false;
         let monitor = new ActivityMonitor({ signal, timeout: 100 });
         monitor.activityStopped.connect((sender, args) => {
           expect(sender).to.be(monitor);
-          expect(args.sender).to.be(window);
+          expect(args.sender).to.be(testObj);
           expect(args.args).to.be(10);
           called = true;
         });
@@ -53,12 +78,11 @@ describe('common/activitymonitor', () => {
       });
 
       it('should collapse during activity', (done) => {
-        let signal = new Signal<Window, number>().bind(window);
         let called = false;
-        let monitor = new ActivityMonitor<Window, number>({ signal, timeout: 100 });
+        let monitor = new ActivityMonitor<TestObject, number>({ signal, timeout: 100 });
         monitor.activityStopped.connect((sender, args) => {
           expect(sender).to.be(monitor);
-          expect(args.sender).to.be(window);
+          expect(args.sender).to.be(testObj);
           expect(args.args).to.be(10);
           called = true;
         });
@@ -81,14 +105,12 @@ describe('common/activitymonitor', () => {
     describe('#timeout', () => {
 
       it('should default to `1000`', () => {
-        let signal = new Signal<Window, number>().bind(window);
-        let monitor = new ActivityMonitor<Window, number>({ signal });
+        let monitor = new ActivityMonitor<TestObject, number>({ signal });
         expect(monitor.timeout).to.be(1000);
       });
 
       it('should be set-able', () => {
-        let signal = new Signal<Window, number>().bind(window);
-        let monitor = new ActivityMonitor<Window, number>({ signal });
+        let monitor = new ActivityMonitor<TestObject, number>({ signal });
         monitor.timeout = 200;
         expect(monitor.timeout).to.be(200);
       });
@@ -98,16 +120,14 @@ describe('common/activitymonitor', () => {
     describe('#isDisposed', () => {
 
       it('should test whether the monitor is disposed', () => {
-        let signal = new Signal<Window, number>().bind(window);
-        let monitor = new ActivityMonitor<Window, number>({ signal });
+        let monitor = new ActivityMonitor<TestObject, number>({ signal });
         expect(monitor.isDisposed).to.be(false);
         monitor.dispose();
         expect(monitor.isDisposed).to.be(true);
       });
 
       it('should be read-only', () => {
-        let signal = new Signal<Window, number>().bind(window);
-        let monitor = new ActivityMonitor<Window, number>({ signal });
+        let monitor = new ActivityMonitor<TestObject, number>({ signal });
         expect(() => { monitor.isDisposed = false; }).to.throwError();
       });
 
@@ -116,15 +136,13 @@ describe('common/activitymonitor', () => {
     describe('#dispose()', () => {
 
       it('should disposed of the resources used by the monitor', () => {
-        let signal = new Signal<Window, number>().bind(window);
-        let monitor = new ActivityMonitor<Window, number>({ signal });
+        let monitor = new ActivityMonitor<TestObject, number>({ signal });
         monitor.dispose();
         expect(monitor.isDisposed).to.be(true);
       });
 
       it('should be a no-op if called more than once', () => {
-        let signal = new Signal<Window, number>().bind(window);
-        let monitor = new ActivityMonitor<Window, number>({ signal });
+        let monitor = new ActivityMonitor<TestObject, number>({ signal });
         monitor.dispose();
         monitor.dispose();
         expect(monitor.isDisposed).to.be(true);