From a387de1a859be98a207baf504246b8476678c1f9 Mon Sep 17 00:00:00 2001 From: Michael Nahkies Date: Tue, 20 Oct 2015 22:47:44 +1300 Subject: [PATCH 1/2] Add support for descriptions on hooks - Includes before, after, beforeEach and afterEach --- mocha/mocha-tests.ts | 16 ++++++++++++++++ mocha/mocha.d.ts | 32 +++++++++++++------------------- 2 files changed, 29 insertions(+), 19 deletions(-) diff --git a/mocha/mocha-tests.ts b/mocha/mocha-tests.ts index c50f5feab..d0108263e 100644 --- a/mocha/mocha-tests.ts +++ b/mocha/mocha-tests.ts @@ -70,6 +70,10 @@ function test_before() { before(() => { }); before((done) => { done(); }); + + before("my description", () => { }); + + before("my description", done => { }); } function test_setup() { @@ -82,6 +86,10 @@ function test_after() { after(() => { }); after((done) => { done(); }); + + after("my description", () => { }); + + after("my description", done => { }); } function test_teardown() { @@ -94,6 +102,10 @@ function test_beforeEach() { beforeEach(() => { }); beforeEach((done) => { done(); }); + + beforeEach("my description", () => { }); + + beforeEach("my description", done => { }); } function test_suiteSetup() { @@ -106,6 +118,10 @@ function test_afterEach() { afterEach(() => { }); afterEach((done) => { done(); }); + + afterEach("my description", () => { }); + + afterEach("my description", done => { }); } function test_suiteTeardown() { diff --git a/mocha/mocha.d.ts b/mocha/mocha.d.ts index b4f182aab..622a21926 100644 --- a/mocha/mocha.d.ts +++ b/mocha/mocha.d.ts @@ -45,37 +45,31 @@ declare var xit: Mocha.ITestDefinition; // alias for `it` declare var test: Mocha.ITestDefinition; -declare function before(action: () => void): void; +declare type HookAction = (() => void) | ((done: MochaDone) => void); -declare function before(action: (done: MochaDone) => void): void; +declare function before(action: HookAction): void; -declare function setup(action: () => void): void; +declare function before(description: string, action: HookAction): void; -declare function setup(action: (done: MochaDone) => void): void; +declare function setup(action: HookAction): void; -declare function after(action: () => void): void; +declare function after(action: HookAction): void; -declare function after(action: (done: MochaDone) => void): void; +declare function after(description: string, action: HookAction): void; -declare function teardown(action: () => void): void; +declare function teardown(action: HookAction): void; -declare function teardown(action: (done: MochaDone) => void): void; +declare function beforeEach(action: HookAction): void; -declare function beforeEach(action: () => void): void; +declare function beforeEach(description: string, action: HookAction): void; -declare function beforeEach(action: (done: MochaDone) => void): void; +declare function suiteSetup(action: HookAction): void; -declare function suiteSetup(action: () => void): void; +declare function afterEach(action: HookAction): void; -declare function suiteSetup(action: (done: MochaDone) => void): void; +declare function afterEach(description: string, action: HookAction): void; -declare function afterEach(action: () => void): void; - -declare function afterEach(action: (done: MochaDone) => void): void; - -declare function suiteTeardown(action: () => void): void; - -declare function suiteTeardown(action: (done: MochaDone) => void): void; +declare function suiteTeardown(action: HookAction): void; declare class Mocha { constructor(options?: { From d6dd320291705694ba8e1a79497a908e9f5e6617 Mon Sep 17 00:00:00 2001 From: Michael Nahkies Date: Fri, 23 Oct 2015 23:32:46 +1300 Subject: [PATCH 2/2] Fix implicit any error --- mocha/mocha.d.ts | 48 +++++++++++++++++++++++++++++++++++------------- 1 file changed, 35 insertions(+), 13 deletions(-) diff --git a/mocha/mocha.d.ts b/mocha/mocha.d.ts index 622a21926..1e09d7b53 100644 --- a/mocha/mocha.d.ts +++ b/mocha/mocha.d.ts @@ -45,31 +45,53 @@ declare var xit: Mocha.ITestDefinition; // alias for `it` declare var test: Mocha.ITestDefinition; -declare type HookAction = (() => void) | ((done: MochaDone) => void); +declare function before(action: () => void): void; -declare function before(action: HookAction): void; +declare function before(action: (done: MochaDone) => void): void; -declare function before(description: string, action: HookAction): void; +declare function before(description: string, action: () => void): void; -declare function setup(action: HookAction): void; +declare function before(description: string, action: (done: MochaDone) => void): void; -declare function after(action: HookAction): void; +declare function setup(action: () => void): void; -declare function after(description: string, action: HookAction): void; +declare function setup(action: (done: MochaDone) => void): void; -declare function teardown(action: HookAction): void; +declare function after(action: () => void): void; -declare function beforeEach(action: HookAction): void; +declare function after(action: (done: MochaDone) => void): void; -declare function beforeEach(description: string, action: HookAction): void; +declare function after(description: string, action: () => void): void; -declare function suiteSetup(action: HookAction): void; +declare function after(description: string, action: (done: MochaDone) => void): void; -declare function afterEach(action: HookAction): void; +declare function teardown(action: () => void): void; -declare function afterEach(description: string, action: HookAction): void; +declare function teardown(action: (done: MochaDone) => void): void; -declare function suiteTeardown(action: HookAction): void; +declare function beforeEach(action: () => void): void; + +declare function beforeEach(action: (done: MochaDone) => void): void; + +declare function beforeEach(description: string, action: () => void): void; + +declare function beforeEach(description: string, action: (done: MochaDone) => void): void; + +declare function suiteSetup(action: () => void): void; + +declare function suiteSetup(action: (done: MochaDone) => void): void; + +declare function afterEach(action: () => void): void; + +declare function afterEach(action: (done: MochaDone) => void): void; + +declare function afterEach(description: string, action: () => void): void; + +declare function afterEach(description: string, action: (done: MochaDone) => void): void; + +declare function suiteTeardown(action: () => void): void; + +declare function suiteTeardown(action: (done: MochaDone) => void): void; declare class Mocha { constructor(options?: {