update qunit definition

Tests added. Resolved some bugs.
This commit is contained in:
Diullei Gomes
2013-01-22 23:13:18 -02:00
parent e8f8afacbe
commit 632cb655d9
2 changed files with 1581 additions and 25 deletions
+1529
View File
File diff suppressed because it is too large Load Diff
+52 -25
View File
@@ -48,24 +48,31 @@ interface Config {
reorder: bool;
requireExpects: bool;
urlConfig: Array;
done: any;
}
interface LifecycleObject {
setup: () => any;
teardown: () => any;
setup?: () => any;
teardown?: () => any;
}
interface QUnitAssert {
/* ASSERT */
deepEqual(actual: Object, expected: Object, message: string);
equal(actual: Object, expected: Object, message: string);
notDeepEqual(actual: Object, expected: Object, message: string);
notEqual(actual: Object, expected: Object, message: string);
notStrictEqual(actual: Object, expected: Object, message: string);
ok(state: any, message: string);
strictEqual(actual: Object, expected: Object, message: string);
throws(block: () => any, expected: Object, message: string);
throws(block: () => any, message: string);
assert: any;
current_testEnvironment: any;
jsDump: any;
deepEqual(actual: any, expected: any, message?: string);
equal(actual: any, expected: any, message?: string);
notDeepEqual(actual: any, expected: any, message?: string);
notEqual(actual: any, expected: any, message?: string);
notPropEqual(actual: any, expected: any, message?: string);
propEqual(actual: any, expected: any, message?: string);
notStrictEqual(actual: any, expected: any, message?: string);
ok(state: any, message?: string);
strictEqual(actual: any, expected: any, message?: string);
throws(block: () => any, expected: any, message?: string);
throws(block: () => any, message?: string);
}
interface QUnitStatic extends QUnitAssert{
@@ -90,21 +97,33 @@ interface QUnitStatic extends QUnitAssert{
asyncTest(name: string, test: () => any);
expect(amount: number);
module(name: string, lifecycle?: LifecycleObject);
test(title: string, expected: number, test: (assert: any) => any);
test(title: string, test: (assert: any) => any);
test(title: string, expected: number, test: (assert: QUnitAssert) => any);
test(title: string, test: (assert: QUnitAssert) => any);
// https://github.com/jquery/qunit/blob/master/qunit/qunit.js#L1568
equiv(a: any, b: any);
// https://github.com/jquery/qunit/blob/master/qunit/qunit.js#L661
raises: any;
// https://github.com/jquery/qunit/blob/master/qunit/qunit.js#L897
push(result, actual, expected, message): any;
// https://github.com/jquery/qunit/blob/master/qunit/qunit.js#L839
reset(): any;
}
/* ASSERT */
declare var deepEqual: (actual: Object, expected: Object, message: string) => any;
declare var equal: (actual: Object, expected: Object, message: string) => any;
declare var notDeepEqual: (actual: Object, expected: Object, message: string) => any;
declare var notEqual: (actual: Object, expected: Object, message: string) => any;
declare var notStrictEqual: (actual: Object, expected: Object, message: string) => any;
declare var ok: (state: any, message: string) => any;
declare var strictEqual: (actual: Object, expected: Object, message: string) => any;
// ** I Can't make overload here! :(
declare var deepEqual: (actual: any, expected: any, message?: string) => any;
declare var equal: (actual: any, expected: any, message?: string) => any;
declare var notDeepEqual: (actual: any, expected: any, message?: string) => any;
declare var notEqual: (actual: any, expected: any, message?: string) => any;
declare var notStrictEqual: (actual: any, expected: any, message?: string) => any;
declare var ok: (state: any, message?: string) => any;
declare var strictEqual: (actual: any, expected: any, message?: string) => any;
// ** I Can't make overload here! :(s
//declare var throws: (block: () => void, expected: Object, message: string) => any;
declare var throws: (block: () => void, message: string) => any;
declare var throws: (block: () => void, expected?: any, message?: string) => any;
/* ASYNC CONTROL */
declare var start: (decrement?: number) => any;
@@ -120,13 +139,21 @@ declare var testDone: (callback: (details: TestDoneCallbackObject) => any) => an
declare var testStart: (callback: (details: TestStartCallbackObject) => any) => any;
/* TEST */
declare var asyncTest: (name: string, /*expected?: number, */test: () => any) => any;
declare var asyncTest: (name: string, expected?: any, test?: () => any) => any;
declare var expect: (amount: number) => any;
// ** conflict with TypeScript module keyword. Must be used on QUnit namespace
//declare var module: (name: string, lifecycle?: LifecycleObject) => any;
// ** I can't make an overload here! :(
//declare var test: (title: string, expected: number, test: (assert?: any) => any) => any;
declare var test: (title: string, test: (assert?: any) => any) => any;
//declare var test: (title: string, expected?: any, test?: (assert?: any) => any) => any;
declare var test: (title: string, test: (assert?: QUnitAssert) => any) => any;
declare var notPropEqual: (actual: any, expected: any, message?: string) => any;
declare var propEqual: (actual: any, expected: any, message?: string) => any;
// https://github.com/jquery/qunit/blob/master/qunit/qunit.js#L1568
declare var equiv: (a: any, b: any) => any;
// https://github.com/jquery/qunit/blob/master/qunit/qunit.js#L661
declare var raises: any;
/* QUNIT */
declare var QUnit: QUnitStatic;