From 59bb988b6447e019ed1dd53563a06195a9ca756c Mon Sep 17 00:00:00 2001 From: Leo Liang Date: Tue, 16 Feb 2016 18:23:54 +0800 Subject: [PATCH 1/2] New definition for promisify-supertest --- .../promisify-supertest-test.ts | 18 ++++++++ promisify-supertest/promisify-supertest.d.ts | 45 +++++++++++++++++++ 2 files changed, 63 insertions(+) create mode 100644 promisify-supertest/promisify-supertest-test.ts create mode 100644 promisify-supertest/promisify-supertest.d.ts diff --git a/promisify-supertest/promisify-supertest-test.ts b/promisify-supertest/promisify-supertest-test.ts new file mode 100644 index 0000000000..cef9173b18 --- /dev/null +++ b/promisify-supertest/promisify-supertest-test.ts @@ -0,0 +1,18 @@ +/// +/// + +import * as request from 'promisify-supertest'; +import * as express from 'express'; + +let app = express(); + +request(app) + .get('/') + .expect(200) + .end() + .then(function(res) { + // blah blah blah + }) + .catch(function(err) { + throw err; + }); diff --git a/promisify-supertest/promisify-supertest.d.ts b/promisify-supertest/promisify-supertest.d.ts new file mode 100644 index 0000000000..dd9c703b42 --- /dev/null +++ b/promisify-supertest/promisify-supertest.d.ts @@ -0,0 +1,45 @@ +// Type definitions for promisify-supertest v1.0.0 +// Project: https://www.npmjs.com/package/promisify-supertest +// Definitions by: Leo Liang +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +/// +/// + +declare module 'promisify-supertest' { + // Mostly copy-pasted from supertest.d.ts + + import * as superagent from 'superagent'; + import * as express from 'express'; + + type CallbackHandler = (err: any, res: supertest.Response) => void; + + function supertest(app: express.Express): supertest.SuperTest; + + module supertest { + function agent(app?: any): supertest.SuperTest; + + interface SuperTest extends superagent.SuperAgent { + } + + interface Test extends superagent.Request { + url: string; + serverAddress(app: any, path: string): string; + expect(status: number, callback?: CallbackHandler): Test; + expect(status: number, body: string, callback?: CallbackHandler): Test; + expect(body: string, callback?: CallbackHandler): Test; + expect(body: RegExp, callback?: CallbackHandler): Test; + expect(body: Object, callback?: CallbackHandler): Test; + expect(field: string, val: string, callback?: CallbackHandler): Test; + expect(field: string, val: RegExp, callback?: CallbackHandler): Test; + expect(checker: (res: Response) => any): Test; + end(callback: CallbackHandler): Test; + end(): Promise; + } + + interface Response extends superagent.Response { + } + } + + export = supertest; +} From edcfbeb7221bab87e9767ca619d7c517909211a9 Mon Sep 17 00:00:00 2001 From: Leo Liang Date: Fri, 26 Feb 2016 18:55:07 +0800 Subject: [PATCH 2/2] Rename the file --- .../{promisify-supertest-test.ts => promisify-supertest-tests.ts} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename promisify-supertest/{promisify-supertest-test.ts => promisify-supertest-tests.ts} (100%) diff --git a/promisify-supertest/promisify-supertest-test.ts b/promisify-supertest/promisify-supertest-tests.ts similarity index 100% rename from promisify-supertest/promisify-supertest-test.ts rename to promisify-supertest/promisify-supertest-tests.ts