From 1ae80ee1efa039bdb58687377da2ccd1792d0846 Mon Sep 17 00:00:00 2001 From: Ben Farr Date: Sun, 13 Sep 2015 21:49:01 +0100 Subject: [PATCH] Different arguments for new Request Request can be constructed with a connection, preparedStatment, transaction or no arguments --- mssql/mssql-tests.ts | 13 +++++++++++++ mssql/mssql.d.ts | 30 ++++++++++++++++-------------- 2 files changed, 29 insertions(+), 14 deletions(-) diff --git a/mssql/mssql-tests.ts b/mssql/mssql-tests.ts index d4cf834b0a..3f4adcd415 100644 --- a/mssql/mssql-tests.ts +++ b/mssql/mssql-tests.ts @@ -113,3 +113,16 @@ function test_promise_returns() { request.query('SELECT 1').then((recordset) => { }); request.execute('procedure_name').then((recordset) => { }); } + + +function test_request_constructor() { + // Request can be constructed with a connection, preparedStatment, transaction or no arguments + var connection: sql.Connection = new sql.Connection(config); + var preparedStatment = new sql.PreparedStatement(connection); + var transaction = new sql.Transaction(connection); + + var request1 = new sql.Request(connection); + var request2 = new sql.Request(preparedStatment); + var request3 = new sql.Request(transaction); + var request4 = new sql.Request(); +} diff --git a/mssql/mssql.d.ts b/mssql/mssql.d.ts index f5bdd72c53..e0e58237c8 100644 --- a/mssql/mssql.d.ts +++ b/mssql/mssql.d.ts @@ -117,20 +117,22 @@ declare module "mssql" { export class Request { public constructor(connection?: Connection); - public pipe(stream: any): void; - execute(procedure: string): Promise; - execute(procedure: string, callback: (err?: any, recordsets?: any, returnValue?: any) => void): void; - input(name: string, value: any): void; - input(name: string, type: any, value: any): void; - output(name: string, type: any, value?: any): void; - query(command: string): Promise; - query(command: string, callback: (err?: any, recordset?: any) => void): void; - batch(batch: string): Promise; - batch(batch: string, callback: (err?: any, recordset?: any) => void): void; - bulk(table: Table): Promise; - bulk(table: Table, callback: (err: any, rowCount: any) => void): void; - cancel(): void; - parameters: any; + public constructor(transaction: Transaction); + public constructor(preparedStatement: PreparedStatement); + public execute(procedure: string): Promise; + public execute(procedure: string, callback: (err?: any, recordsets?: any, returnValue?: any) => void): void; + public input(name: string, value: any): void; + public input(name: string, type: any, value: any): void; + public output(name: string, type: any, value?: any): void; + public pipe(stream: NodeJS.WritableStream): void; + public query(command: string): Promise; + public query(command: string, callback: (err?: any, recordset?: any) => void): void; + public batch(batch: string): Promise; + public batch(batch: string, callback: (err?: any, recordset?: any) => void): void; + public bulk(table: Table): Promise; + public bulk(table: Table, callback: (err: any, rowCount: any) => void): void; + public cancel(): void; + public parameters: any; } export class Transaction {