mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2026-10-04 06:47:03 +00:00
Lint finles: remove most exceptions.
Add few JsDoc. Remove old 'Env' properties.
This commit is contained in:
Vendored
+80
-57
@@ -21,7 +21,19 @@
|
||||
* @param specDefinitions Function for Jasmine to invoke that will define inner suites a specs
|
||||
*/
|
||||
declare function describe(description: string, specDefinitions: () => void): void;
|
||||
|
||||
/**
|
||||
* A focused `describe`. If suites or specs are focused, only those that are focused will be executed.
|
||||
* @param description Textual description of the group
|
||||
* @param specDefinitions Function for Jasmine to invoke that will define inner suites a specs
|
||||
*/
|
||||
declare function fdescribe(description: string, specDefinitions: () => void): void;
|
||||
|
||||
/**
|
||||
* A temporarily disabled `describe`. Specs within an xdescribe will be marked pending and not executed.
|
||||
* @param description Textual description of the group
|
||||
* @param specDefinitions Function for Jasmine to invoke that will define inner suites a specs
|
||||
*/
|
||||
declare function xdescribe(description: string, specDefinitions: () => void): void;
|
||||
|
||||
/**
|
||||
@@ -34,20 +46,25 @@ declare function xdescribe(description: string, specDefinitions: () => void): vo
|
||||
declare function it(expectation: string, assertion?: (done: DoneFn) => void, timeout?: number): void;
|
||||
|
||||
/**
|
||||
* A focused it
|
||||
* If suites or specs are focused, only those that are focused will be executed.
|
||||
* @param expectation
|
||||
* @param assertion
|
||||
* @param timeout
|
||||
* A focused `it`. If suites or specs are focused, only those that are focused will be executed.
|
||||
* @param expectation Textual description of what this spec is checking
|
||||
* @param assertion Function that contains the code of your test. If not provided the test will be pending.
|
||||
* @param timeout Custom timeout for an async spec.
|
||||
*/
|
||||
declare function fit(expectation: string, assertion?: (done: DoneFn) => void, timeout?: number): void;
|
||||
|
||||
/**
|
||||
* A temporarily disabled `it`. The spec will report as pending and will not be executed.
|
||||
* @param expectation Textual description of what this spec is checking
|
||||
* @param assertion Function that contains the code of your test. If not provided the test will be pending.
|
||||
* @param timeout Custom timeout for an async spec.
|
||||
*/
|
||||
declare function xit(expectation: string, assertion?: (done: DoneFn) => void, timeout?: number): void;
|
||||
|
||||
/**
|
||||
* Mark a spec as pending, expectation results will be ignored.
|
||||
* If you call the function pending anywhere in the spec body, no matter the expectations, the spec will be marked pending.
|
||||
* @param reason
|
||||
* @returns {}
|
||||
* @param reason Reason the spec is pending.
|
||||
*/
|
||||
declare function pending(reason?: string): void;
|
||||
|
||||
@@ -119,11 +136,13 @@ declare function expectAsync<T, U>(actual: Promise<T>): jasmine.AsyncMatchers<T,
|
||||
|
||||
/**
|
||||
* Explicitly mark a spec as failed.
|
||||
* @param e
|
||||
* @param e Reason for the failure
|
||||
*/
|
||||
declare function fail(e?: any): void;
|
||||
|
||||
/** Action method that should be called when the async work is complete */
|
||||
/**
|
||||
* Action method that should be called when the async work is complete.
|
||||
*/
|
||||
interface DoneFn extends Function {
|
||||
(): void;
|
||||
|
||||
@@ -133,22 +152,22 @@ interface DoneFn extends Function {
|
||||
|
||||
/**
|
||||
* Install a spy onto an existing object.
|
||||
* @param object The object upon which to install the Spy
|
||||
* @param method The name of the method to replace with a Spy.
|
||||
* @param object The object upon which to install the `Spy`.
|
||||
* @param method The name of the method to replace with a `Spy`.
|
||||
*/
|
||||
declare function spyOn<T>(object: T, method: keyof T): jasmine.Spy;
|
||||
|
||||
/**
|
||||
* Install a spy on a property onto an existing object.
|
||||
* @param object The object upon which to install the Spy
|
||||
* @param property The name of the property to replace with a Spy
|
||||
* @param accessType The access type (get|set) of the property to Spy on.
|
||||
* Install a spy on a property installed with `Object.defineProperty` onto an existing object.
|
||||
* @param object The object upon which to install the `Spy`.
|
||||
* @param property The name of the property to replace with a `Spy`.
|
||||
* @param accessType The access type (get|set) of the property to `Spy` on.
|
||||
*/
|
||||
declare function spyOnProperty<T>(object: T, property: keyof T, accessType?: 'get' | 'set'): jasmine.Spy;
|
||||
|
||||
/**
|
||||
* Installs spies on all writable and configurable properties of an object.
|
||||
* @param object The object upon which to install the Spies
|
||||
* @param object The object upon which to install the `Spy`s.
|
||||
*/
|
||||
declare function spyOnAllFunctions(object: object): jasmine.Spy;
|
||||
|
||||
@@ -158,9 +177,12 @@ declare function waits(timeout?: number): void;
|
||||
|
||||
declare namespace jasmine {
|
||||
type Expected<T> = T | ObjectContaining<T> | Any | Spy;
|
||||
type SpyObjMethodNames<T = undefined> = T extends undefined ? (ReadonlyArray<string> | {[methodName: string]: any}) : (ReadonlyArray<keyof T> | {[P in keyof T]?: ReturnType<T[P] extends (...args: any[]) => any ? T[P] : any>});
|
||||
type SpyObjMethodNames<T = undefined> =
|
||||
T extends undefined ?
|
||||
(ReadonlyArray<string> | {[methodName: string]: any}) :
|
||||
(ReadonlyArray<keyof T> | {[P in keyof T]?: ReturnType<T[P] extends (...args: any[]) => any ? T[P] : any>});
|
||||
|
||||
var clock: () => Clock;
|
||||
function clock(): Clock;
|
||||
|
||||
var matchersUtil: MatchersUtil;
|
||||
|
||||
@@ -187,13 +209,12 @@ declare namespace jasmine {
|
||||
|
||||
function addMatchers(matchers: CustomMatcherFactories): void;
|
||||
|
||||
function stringMatching(str: string): Any;
|
||||
function stringMatching(str: RegExp): Any;
|
||||
function stringMatching(str: string | RegExp): Any;
|
||||
|
||||
function formatErrorMsg(domain: string, usage: string): (msg: string) => string;
|
||||
|
||||
interface Any {
|
||||
(...params: any[]):any; // jasmine.Any can also be a function
|
||||
(...params: any[]): any; // jasmine.Any can also be a function
|
||||
new (expectedClass: any): any;
|
||||
|
||||
jasmineMatches(other: any): boolean;
|
||||
@@ -221,7 +242,6 @@ declare namespace jasmine {
|
||||
}
|
||||
|
||||
interface Block {
|
||||
|
||||
new (env: Env, func: SpecFunction, spec: Spec): any;
|
||||
|
||||
execute(onComplete: () => void): void;
|
||||
@@ -271,12 +291,6 @@ declare namespace jasmine {
|
||||
}
|
||||
|
||||
interface Env {
|
||||
setTimeout: any;
|
||||
clearTimeout: void;
|
||||
setInterval: any;
|
||||
clearInterval: void;
|
||||
updateInterval: number;
|
||||
|
||||
currentSpec: Spec;
|
||||
|
||||
matchersClass: Matchers<any>;
|
||||
@@ -284,8 +298,7 @@ declare namespace jasmine {
|
||||
version(): any;
|
||||
versionString(): string;
|
||||
nextSpecId(): number;
|
||||
addReporter(reporter: Reporter): void;
|
||||
addReporter(reporter: CustomReporter): void;
|
||||
addReporter(reporter: Reporter | CustomReporter): void;
|
||||
execute(): void;
|
||||
describe(description: string, specDefinitions: () => void): Suite;
|
||||
// ddescribe(description: string, specDefinitions: () => void): Suite; Not a part of jasmine. Angular team adds these
|
||||
@@ -316,7 +329,6 @@ declare namespace jasmine {
|
||||
}
|
||||
|
||||
interface FakeTimer {
|
||||
|
||||
new (): any;
|
||||
|
||||
reset(): void;
|
||||
@@ -395,7 +407,6 @@ declare namespace jasmine {
|
||||
}
|
||||
|
||||
interface PrettyPrinter {
|
||||
|
||||
new (): any;
|
||||
|
||||
format(value: any): void;
|
||||
@@ -411,7 +422,6 @@ declare namespace jasmine {
|
||||
}
|
||||
|
||||
interface Queue {
|
||||
|
||||
new (env: any): any;
|
||||
|
||||
env: Env;
|
||||
@@ -432,7 +442,6 @@ declare namespace jasmine {
|
||||
}
|
||||
|
||||
interface Matchers<T> {
|
||||
|
||||
new (env: Env, actual: T, spec: Env, isNot?: boolean): any;
|
||||
|
||||
env: Env;
|
||||
@@ -445,7 +454,6 @@ declare namespace jasmine {
|
||||
*
|
||||
* @param expected the actual value to be === to the expected value.
|
||||
* @param expectationFailOutput
|
||||
* @returns {}
|
||||
*/
|
||||
toBe(expected: Expected<T>, expectationFailOutput?: any): boolean;
|
||||
|
||||
@@ -453,7 +461,6 @@ declare namespace jasmine {
|
||||
*
|
||||
* @param expected the actual value to be equal to the expected, using deep equality comparison.
|
||||
* @param expectationFailOutput
|
||||
* @returns {}
|
||||
*/
|
||||
toEqual(expected: Expected<T>, expectationFailOutput?: any): boolean;
|
||||
toMatch(expected: string | RegExp, expectationFailOutput?: any): boolean;
|
||||
@@ -504,7 +511,6 @@ declare namespace jasmine {
|
||||
}
|
||||
|
||||
interface AsyncMatchers<T, U> {
|
||||
|
||||
/**
|
||||
* Expect a promise to be resolved.
|
||||
* @param expectationFailOutput
|
||||
@@ -538,7 +544,7 @@ declare namespace jasmine {
|
||||
/**
|
||||
* Invert the matcher following this expect.
|
||||
*/
|
||||
not: AsyncMatchers<T, U>
|
||||
not: AsyncMatchers<T, U>;
|
||||
}
|
||||
|
||||
interface Reporter {
|
||||
@@ -571,7 +577,6 @@ declare namespace jasmine {
|
||||
}
|
||||
|
||||
interface PassedExpectation extends CustomReportExpectation {
|
||||
|
||||
}
|
||||
|
||||
interface CustomReporterResult {
|
||||
@@ -586,7 +591,7 @@ declare namespace jasmine {
|
||||
|
||||
interface RunDetails {
|
||||
failedExpectations: ExpectationResult[];
|
||||
order: jasmine.Order;
|
||||
order: Order;
|
||||
}
|
||||
|
||||
interface CustomReporter {
|
||||
@@ -599,7 +604,6 @@ declare namespace jasmine {
|
||||
}
|
||||
|
||||
interface Runner {
|
||||
|
||||
new (env: Env): any;
|
||||
|
||||
execute(): void;
|
||||
@@ -626,7 +630,6 @@ declare namespace jasmine {
|
||||
}
|
||||
|
||||
interface Spec extends SuiteOrSpec {
|
||||
|
||||
new (env: Env, suite: Suite, description: string): any;
|
||||
|
||||
suite: Suite;
|
||||
@@ -670,7 +673,6 @@ declare namespace jasmine {
|
||||
}
|
||||
|
||||
interface Suite extends SuiteOrSpec {
|
||||
|
||||
new (env: Env, description: string, specDefinitions: () => void, parentSuite: Suite): any;
|
||||
|
||||
parentSuite: Suite;
|
||||
@@ -703,7 +705,7 @@ declare namespace jasmine {
|
||||
|
||||
type SpyObj<T> = {
|
||||
[k in keyof T]: T[k] extends Function ? T[k] & Spy : T[k];
|
||||
}
|
||||
};
|
||||
|
||||
interface SpyAnd {
|
||||
identity: string;
|
||||
@@ -723,21 +725,21 @@ declare namespace jasmine {
|
||||
}
|
||||
|
||||
interface Calls {
|
||||
/** By chaining the spy with calls.any(), will return false if the spy has not been called at all, and then true once at least one call happens. **/
|
||||
/** By chaining the spy with calls.any(), will return false if the spy has not been called at all, and then true once at least one call happens. */
|
||||
any(): boolean;
|
||||
/** By chaining the spy with calls.count(), will return the number of times the spy was called **/
|
||||
/** By chaining the spy with calls.count(), will return the number of times the spy was called */
|
||||
count(): number;
|
||||
/** By chaining the spy with calls.argsFor(), will return the arguments passed to call number index **/
|
||||
/** By chaining the spy with calls.argsFor(), will return the arguments passed to call number index */
|
||||
argsFor(index: number): any[];
|
||||
/** By chaining the spy with calls.allArgs(), will return the arguments to all calls **/
|
||||
/** By chaining the spy with calls.allArgs(), will return the arguments to all calls */
|
||||
allArgs(): any[];
|
||||
/** By chaining the spy with calls.all(), will return the context (the this) and arguments passed all calls **/
|
||||
/** By chaining the spy with calls.all(), will return the context (the this) and arguments passed all calls */
|
||||
all(): CallInfo[];
|
||||
/** By chaining the spy with calls.mostRecent(), will return the context (the this) and arguments for the most recent call **/
|
||||
/** By chaining the spy with calls.mostRecent(), will return the context (the this) and arguments for the most recent call */
|
||||
mostRecent(): CallInfo;
|
||||
/** By chaining the spy with calls.first(), will return the context (the this) and arguments for the first call **/
|
||||
/** By chaining the spy with calls.first(), will return the context (the this) and arguments for the first call */
|
||||
first(): CallInfo;
|
||||
/** By chaining the spy with calls.reset(), will clears all tracking for a spy **/
|
||||
/** By chaining the spy with calls.reset(), will clears all tracking for a spy */
|
||||
reset(): void;
|
||||
}
|
||||
|
||||
@@ -759,7 +761,6 @@ declare namespace jasmine {
|
||||
}
|
||||
|
||||
interface JsApiReporter extends Reporter {
|
||||
|
||||
started: boolean;
|
||||
finished: boolean;
|
||||
result: any;
|
||||
@@ -783,10 +784,32 @@ declare namespace jasmine {
|
||||
util: Util;
|
||||
}
|
||||
|
||||
export var HtmlReporter: HtmlReporter;
|
||||
export var HtmlSpecFilter: HtmlSpecFilter;
|
||||
export var DEFAULT_TIMEOUT_INTERVAL: number;
|
||||
export var MAX_PRETTY_PRINT_DEPTH: number;
|
||||
var HtmlReporter: HtmlReporter;
|
||||
var HtmlSpecFilter: HtmlSpecFilter;
|
||||
|
||||
/**
|
||||
* Default number of milliseconds Jasmine will wait for an asynchronous spec to complete.
|
||||
*/
|
||||
var DEFAULT_TIMEOUT_INTERVAL: number;
|
||||
|
||||
/**
|
||||
* Maximum number of array elements to display when pretty printing objects.
|
||||
* This will also limit the number of keys and values displayed for an object.
|
||||
* Elements past this number will be ellipised.
|
||||
*/
|
||||
var MAX_PRETTY_PRINT_ARRAY_LENGTH: number;
|
||||
|
||||
/**
|
||||
* Maximum number of charasters to display when pretty printing objects.
|
||||
* Characters past this number will be ellipised.
|
||||
*/
|
||||
var MAX_PRETTY_PRINT_CHARS: number;
|
||||
|
||||
/**
|
||||
* Maximum object depth the pretty printer will print to.
|
||||
* Set this to a lower value to speed up pretty printing if you have large objects.
|
||||
*/
|
||||
var MAX_PRETTY_PRINT_DEPTH: number;
|
||||
}
|
||||
|
||||
declare module "jasmine" {
|
||||
|
||||
@@ -16,7 +16,6 @@ describe("A suite is just a function", () => {
|
||||
});
|
||||
|
||||
describe("The 'toBe' matcher compares with ===", () => {
|
||||
|
||||
it("and has a positive case", () => {
|
||||
expect(true).toBe(true);
|
||||
});
|
||||
@@ -27,28 +26,26 @@ describe("The 'toBe' matcher compares with ===", () => {
|
||||
});
|
||||
|
||||
describe("Included matchers:", () => {
|
||||
|
||||
it("The 'toBe' matcher compares with ===", () => {
|
||||
var a = 12;
|
||||
var b = a;
|
||||
const a = 12;
|
||||
const b = a;
|
||||
|
||||
expect(a).toBe(b);
|
||||
expect(a).not.toBe(24);
|
||||
});
|
||||
|
||||
describe("The 'toEqual' matcher", () => {
|
||||
|
||||
it("works for simple literals and variables", () => {
|
||||
var a = 12;
|
||||
const a = 12;
|
||||
expect(a).toEqual(12);
|
||||
});
|
||||
|
||||
it("should work for objects", () => {
|
||||
var foo = {
|
||||
const foo = {
|
||||
a: 12,
|
||||
b: 34
|
||||
};
|
||||
var bar = {
|
||||
const bar = {
|
||||
a: 12,
|
||||
b: 34
|
||||
};
|
||||
@@ -56,13 +53,13 @@ describe("Included matchers:", () => {
|
||||
});
|
||||
|
||||
it("should work for optional values", () => {
|
||||
var opt: string | undefined = "s";
|
||||
expect(opt as (string | undefined)).toEqual(undefined);
|
||||
const opt: string | undefined = Math.random() > .5 ? "s" : undefined;
|
||||
expect(opt).toEqual(undefined);
|
||||
});
|
||||
});
|
||||
|
||||
it("The 'toMatch' matcher is for regular expressions", () => {
|
||||
var message = "foo bar baz";
|
||||
const message = "foo bar baz";
|
||||
|
||||
expect(message).toMatch(/bar/);
|
||||
expect(message).toMatch("bar");
|
||||
@@ -70,7 +67,7 @@ describe("Included matchers:", () => {
|
||||
});
|
||||
|
||||
it("The 'toBeDefined' matcher compares against `undefined`", () => {
|
||||
var a = {
|
||||
const a = {
|
||||
foo: "foo"
|
||||
};
|
||||
|
||||
@@ -79,7 +76,7 @@ describe("Included matchers:", () => {
|
||||
});
|
||||
|
||||
it("The `toBeUndefined` matcher compares against `undefined`", () => {
|
||||
var a = {
|
||||
const a = {
|
||||
foo: "foo"
|
||||
};
|
||||
|
||||
@@ -88,8 +85,8 @@ describe("Included matchers:", () => {
|
||||
});
|
||||
|
||||
it("The 'toBeNull' matcher compares against null", () => {
|
||||
var a: string | null = null;
|
||||
var foo = "foo";
|
||||
const a: string | null = Math.random() > 0.5 ? "s" : null;
|
||||
const foo = "foo";
|
||||
|
||||
expect(null).toBeNull();
|
||||
expect(a).toBeNull();
|
||||
@@ -97,72 +94,76 @@ describe("Included matchers:", () => {
|
||||
});
|
||||
|
||||
it("The 'toBeTruthy' matcher is for boolean casting testing", () => {
|
||||
var a: string | undefined, foo = "foo";
|
||||
const a: string | undefined = Math.random() > 0.5 ? "s" : undefined;
|
||||
const foo = "foo";
|
||||
|
||||
expect(foo).toBeTruthy();
|
||||
expect(a).not.toBeTruthy();
|
||||
});
|
||||
|
||||
it("The 'toBeFalsy' matcher is for boolean casting testing", () => {
|
||||
var a: string | undefined, foo = "foo";
|
||||
const a: string | undefined = Math.random() > 0.5 ? "s" : undefined;
|
||||
const foo = "foo";
|
||||
|
||||
expect(a).toBeFalsy();
|
||||
expect(foo).not.toBeFalsy();
|
||||
});
|
||||
|
||||
it("The 'toContain' matcher is for finding an item in an Array", () => {
|
||||
var a = ["foo", "bar", "baz"];
|
||||
const a = ["foo", "bar", "baz"];
|
||||
|
||||
expect(a).toContain('foo');
|
||||
expect(a).not.toContain("quux");
|
||||
});
|
||||
|
||||
it("The 'toContain' matcher is also for finding an object containing distinct properties in an Array", () => {
|
||||
var a = [{ a: "foo" }, { a: "bar" }, { b: "baz" }];
|
||||
const a = [{ a: "foo" }, { a: "bar" }, { b: "baz" }];
|
||||
|
||||
expect(a).toContain(jasmine.objectContaining({ a: "foo" }));
|
||||
expect(a).not.toContain({ a: "quux" });
|
||||
});
|
||||
|
||||
it("The 'toBeLessThan' matcher is for mathematical comparisons", () => {
|
||||
var pi = 3.1415926,
|
||||
e = 2.78;
|
||||
const pi = 3.1415926;
|
||||
const e = 2.78;
|
||||
|
||||
expect(e).toBeLessThan(pi);
|
||||
expect(pi).not.toBeLessThan(e);
|
||||
});
|
||||
|
||||
it("The 'toBeGreaterThan' is for mathematical comparisons", () => {
|
||||
var pi = 3.1415926,
|
||||
e = 2.78;
|
||||
const pi = 3.1415926;
|
||||
const e = 2.78;
|
||||
|
||||
expect(pi).toBeGreaterThan(e);
|
||||
expect(e).not.toBeGreaterThan(pi);
|
||||
});
|
||||
|
||||
it("The 'toBeCloseTo' matcher is for precision math comparison", () => {
|
||||
var pi = 3.1415926,
|
||||
e = 2.78;
|
||||
const pi = 3.1415926;
|
||||
const e = 2.78;
|
||||
|
||||
expect(pi).not.toBeCloseTo(e, 2);
|
||||
expect(pi).toBeCloseTo(e, 0);
|
||||
});
|
||||
|
||||
it("The 'toThrow' matcher is for testing if a function throws an exception", () => {
|
||||
var foo = () => {
|
||||
const foo = () => {
|
||||
return 1 + 2;
|
||||
};
|
||||
var bar = () => {
|
||||
var a: any;
|
||||
return a + 1;
|
||||
const bar = () => {
|
||||
throw new Error("message");
|
||||
};
|
||||
|
||||
expect(foo).not.toThrow();
|
||||
expect(foo).toThrow();
|
||||
|
||||
expect(bar).not.toThrow();
|
||||
expect(bar).toThrow();
|
||||
});
|
||||
|
||||
it("The 'toThrowError' matcher is for testing a specific thrown exception", () => {
|
||||
var foo = () => {
|
||||
const foo = () => {
|
||||
throw new TypeError("foo bar baz");
|
||||
};
|
||||
|
||||
@@ -173,7 +174,7 @@ describe("Included matchers:", () => {
|
||||
});
|
||||
|
||||
it("async matchers", async () => {
|
||||
var badness = new Error("badness");
|
||||
const badness = new Error("badness");
|
||||
await expectAsync(Promise.resolve()).toBeResolved();
|
||||
await expectAsync(Promise.resolve()).toBeResolved("good job");
|
||||
await expectAsync(Promise.resolve(true)).toBeResolvedTo(true);
|
||||
@@ -184,8 +185,8 @@ describe("Included matchers:", () => {
|
||||
});
|
||||
|
||||
it("async matchers - not", async () => {
|
||||
var badness = new Error("badness");
|
||||
var malady = new Error("malady");
|
||||
const badness = new Error("badness");
|
||||
const malady = new Error("malady");
|
||||
await expectAsync(Promise.reject(badness)).not.toBeResolved();
|
||||
await expectAsync(Promise.resolve(true)).not.toBeResolvedTo(false);
|
||||
await expectAsync(Promise.resolve()).not.toBeRejected();
|
||||
@@ -198,7 +199,7 @@ describe("Included matchers:", () => {
|
||||
describe("toThrowMatching", () => {
|
||||
expect(() => {
|
||||
({} as any).doSomething();
|
||||
}).toThrowMatching(error => error != undefined);
|
||||
}).toThrowMatching(error => error !== undefined);
|
||||
});
|
||||
|
||||
describe("toBeNegativeInfinity", () => {
|
||||
@@ -306,7 +307,6 @@ xdescribe("A spec", () => {
|
||||
});
|
||||
|
||||
describe("Pending specs", () => {
|
||||
|
||||
xit("can be declared 'xit'", () => {
|
||||
expect(true).toBe(false);
|
||||
});
|
||||
@@ -358,7 +358,7 @@ describe("A spy", () => {
|
||||
expect(bar).toBeNull();
|
||||
});
|
||||
|
||||
it("tracks if it was called at all", function () {
|
||||
it("tracks if it was called at all", function() {
|
||||
foo.setBar();
|
||||
|
||||
expect(foo.setBar.calls.any()).toEqual(true);
|
||||
@@ -767,17 +767,15 @@ describe("Multiple spies, when created manually", () => {
|
||||
|
||||
it("read isPlaying property", () => {
|
||||
expect(tape.isPlaying).toBe(false);
|
||||
})
|
||||
});
|
||||
});
|
||||
|
||||
describe("multiple spies, when created with spyOnAllFunctions", () => {
|
||||
|
||||
it("spies on all functions", () => {
|
||||
|
||||
const obj = {
|
||||
x: (a: number) => a,
|
||||
y: (a: number) => a,
|
||||
}
|
||||
};
|
||||
|
||||
spyOnAllFunctions(obj);
|
||||
|
||||
@@ -809,7 +807,7 @@ describe("jasmine.any", () => {
|
||||
|
||||
const a: Test = {
|
||||
fn1: () => { },
|
||||
fn2: (param1: number) => { return param1; },
|
||||
fn2: (param1: number) => param1,
|
||||
};
|
||||
|
||||
const expected: Test = {
|
||||
@@ -822,7 +820,7 @@ describe("jasmine.any", () => {
|
||||
|
||||
describe("when used with a spy", () => {
|
||||
it("is useful for comparing arguments", () => {
|
||||
var foo = jasmine.createSpy('foo');
|
||||
const foo = jasmine.createSpy('foo');
|
||||
foo(12, () => {
|
||||
return true;
|
||||
});
|
||||
@@ -867,7 +865,7 @@ describe("jasmine.objectContaining", () => {
|
||||
|
||||
describe("when used with a spy", () => {
|
||||
it("is useful for comparing arguments", () => {
|
||||
var callback = jasmine.createSpy('callback');
|
||||
const callback = jasmine.createSpy('callback');
|
||||
|
||||
callback({
|
||||
bar: "baz"
|
||||
@@ -884,7 +882,7 @@ describe("jasmine.objectContaining", () => {
|
||||
});
|
||||
|
||||
describe("jasmine.arrayContaining", () => {
|
||||
var foo: Array<number>;
|
||||
var foo: number[];
|
||||
|
||||
beforeEach(() => {
|
||||
foo = [1, 2, 3, 4];
|
||||
@@ -900,7 +898,7 @@ describe("jasmine.arrayContaining", () => {
|
||||
|
||||
describe("when used with a spy", () => {
|
||||
it("is useful when comparing arguments", () => {
|
||||
var callback = jasmine.createSpy('callback');
|
||||
const callback = jasmine.createSpy('callback');
|
||||
|
||||
callback([1, 2, 3, 4]);
|
||||
|
||||
@@ -911,7 +909,7 @@ describe("jasmine.arrayContaining", () => {
|
||||
});
|
||||
|
||||
describe("jasmine.arrayWithExactContents", () => {
|
||||
var foo: Array<number>;
|
||||
var foo: number[];
|
||||
|
||||
beforeEach(() => {
|
||||
foo = [1, 2, 3, 4];
|
||||
@@ -927,7 +925,7 @@ describe("jasmine.arrayWithExactContents", () => {
|
||||
|
||||
describe("when used with a spy", () => {
|
||||
it("is useful when comparing arguments", () => {
|
||||
var callback = jasmine.createSpy('callback');
|
||||
const callback = jasmine.createSpy('callback');
|
||||
|
||||
callback([1, 2, 3, 4]);
|
||||
|
||||
@@ -980,7 +978,7 @@ describe("Manually ticking the Jasmine Clock", () => {
|
||||
|
||||
describe("Mocking the Date object", () => {
|
||||
it("mocks the Date object and sets it to a given time", () => {
|
||||
var baseTime = new Date(2013, 9, 23);
|
||||
const baseTime = new Date(2013, 9, 23);
|
||||
|
||||
jasmine.clock().mockDate(baseTime);
|
||||
|
||||
@@ -1020,11 +1018,9 @@ describe("Asynchronous specs", () => {
|
||||
done();
|
||||
}, 1000);
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
describe("Fail", () => {
|
||||
|
||||
it("should fail test when called without arguments", () => {
|
||||
fail();
|
||||
});
|
||||
@@ -1036,12 +1032,11 @@ describe("Fail", () => {
|
||||
it("should fail test when called an error", () => {
|
||||
fail(new Error("The test failed with this error"));
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
// test based on http://jasmine.github.io/2.2/custom_equality.html
|
||||
describe("custom equality", () => {
|
||||
var myCustomEquality: jasmine.CustomEqualityTester = function (first: any, second: any): boolean | void {
|
||||
const myCustomEquality: jasmine.CustomEqualityTester = function(first: any, second: any): boolean | void {
|
||||
if (typeof first === "string" && typeof second === "string") {
|
||||
return first[0] === second[1];
|
||||
}
|
||||
@@ -1051,7 +1046,6 @@ describe("custom equality", () => {
|
||||
jasmine.addCustomEqualityTester(myCustomEquality);
|
||||
});
|
||||
|
||||
|
||||
it("should be custom equal", () => {
|
||||
expect("abc").toEqual("aaa");
|
||||
});
|
||||
@@ -1069,15 +1063,13 @@ var customMatchers: jasmine.CustomMatcherFactories = {
|
||||
if (expected === undefined) {
|
||||
expected = '';
|
||||
}
|
||||
var result: jasmine.CustomMatcherResult = { pass: false };
|
||||
const result: jasmine.CustomMatcherResult = { pass: false };
|
||||
|
||||
result.pass = util.equals(actual.hyuk, "gawrsh" + expected, customEqualityTesters);
|
||||
|
||||
if (result.pass) {
|
||||
result.message = "Expected " + actual + " not to be quite so goofy";
|
||||
} else {
|
||||
result.message = "Expected " + actual + " to be goofy, but it was not very goofy";
|
||||
}
|
||||
result.message = result.pass ?
|
||||
`Expected ${actual} not to be quite so goofy` :
|
||||
`Expected ${actual} to be goofy, but it was not very goofy`;
|
||||
|
||||
return result;
|
||||
}
|
||||
@@ -1110,8 +1102,8 @@ var customMatchers: jasmine.CustomMatcherFactories = {
|
||||
// }
|
||||
declare namespace jasmine {
|
||||
interface Matchers<T> {
|
||||
toBeGoofy(expected?: jasmine.Expected<T>): boolean;
|
||||
toBeWithinRange(expected?: jasmine.Expected<T>, floor?: number, ceiling?: number): boolean;
|
||||
toBeGoofy(expected?: Expected<T>): boolean;
|
||||
toBeWithinRange(expected?: Expected<T>, floor?: number, ceiling?: number): boolean;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1157,7 +1149,7 @@ describe("Custom matcher: 'toBeGoofy'", () => {
|
||||
const result = matcher.compare(actual, null);
|
||||
|
||||
expect(result.pass).toBe(false);
|
||||
expect(result.message).toBe("Expected " + actual + " to be goofy, but it was not very goofy");
|
||||
expect(result.message).toBe(`Expected ${actual} to be goofy, but it was not very goofy`);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -1168,16 +1160,16 @@ var myReporter: jasmine.CustomReporter = {
|
||||
},
|
||||
|
||||
suiteStarted: (result: jasmine.CustomReporterResult) => {
|
||||
console.log("Suite started: " + result.description + " whose full description is: " + result.fullName);
|
||||
console.log(`Suite started: ${result.description} whose full description is: ${result.fullName}`);
|
||||
},
|
||||
|
||||
specStarted: (result: jasmine.CustomReporterResult) => {
|
||||
console.log("Spec started: " + result.description + " whose full description is: " + result.fullName);
|
||||
console.log(`Spec started: ${result.description} whose full description is: ${result.fullName}`);
|
||||
},
|
||||
|
||||
specDone: (result: jasmine.CustomReporterResult) => {
|
||||
console.log("Spec: " + result.description + " was " + result.status);
|
||||
//tslint:disable-next-line:prefer-for-of
|
||||
console.log(`Spec: ${result.description} was ${result.status}`);
|
||||
// tslint:disable-next-line:prefer-for-of
|
||||
for (var i = 0; result.failedExpectations && i < result.failedExpectations.length; i += 1) {
|
||||
console.log("Failure: " + result.failedExpectations[i].message);
|
||||
console.log("Actual: " + result.failedExpectations[i].actual);
|
||||
@@ -1188,8 +1180,8 @@ var myReporter: jasmine.CustomReporter = {
|
||||
},
|
||||
|
||||
suiteDone: (result: jasmine.CustomReporterResult) => {
|
||||
console.log('Suite: ' + result.description + ' was ' + result.status);
|
||||
//tslint:disable-next-line:prefer-for-of
|
||||
console.log(`Suite: ${result.description} was ${result.status}`);
|
||||
// tslint:disable-next-line:prefer-for-of
|
||||
for (var i = 0; result.failedExpectations && i < result.failedExpectations.length; i += 1) {
|
||||
console.log('AfterAll ' + result.failedExpectations[i].message);
|
||||
console.log(result.failedExpectations[i].stack);
|
||||
@@ -1207,24 +1199,24 @@ jasmine.getEnv().addReporter(myReporter);
|
||||
describe("Randomize Tests", () => {
|
||||
it("should allow randomization of the order of tests", () => {
|
||||
expect(() => {
|
||||
var env = jasmine.getEnv();
|
||||
return env.randomizeTests(true);
|
||||
const env = jasmine.getEnv();
|
||||
env.randomizeTests(true);
|
||||
}).not.toThrow();
|
||||
});
|
||||
|
||||
it("should allow a seed to be passed in for randomization", () => {
|
||||
expect(() => {
|
||||
var env = jasmine.getEnv();
|
||||
const env = jasmine.getEnv();
|
||||
env.randomizeTests(true);
|
||||
return env.seed(1234);
|
||||
}).not.toThrow();
|
||||
});
|
||||
});
|
||||
|
||||
//dest spces copied from jasmine project (https://github.com/jasmine/jasmine/blob/master/spec/core/SpecSpec.js)
|
||||
describe("createSpyObj", function () {
|
||||
it("should create an object with spy methods and corresponding return values when you call jasmine.createSpyObj() with an object", function () {
|
||||
var spyObj = jasmine.createSpyObj('BaseName', { 'method1': 42, 'method2': 'special sauce' });
|
||||
// Dest spces copied from jasmine project (https://github.com/jasmine/jasmine/blob/master/spec/core/SpecSpec.js)
|
||||
describe("createSpyObj", function() {
|
||||
it("should create an object with spy methods and corresponding return values when you call jasmine.createSpyObj() with an object", function() {
|
||||
const spyObj = jasmine.createSpyObj('BaseName', {method1: 42, method2: 'special sauce'});
|
||||
|
||||
expect(spyObj.method1()).toEqual(42);
|
||||
expect(spyObj.method1.and.identity()).toEqual('BaseName.method1');
|
||||
@@ -1233,17 +1225,16 @@ describe("createSpyObj", function () {
|
||||
expect(spyObj.method2.and.identity()).toEqual('BaseName.method2');
|
||||
});
|
||||
|
||||
|
||||
it("should create an object with a bunch of spy methods when you call jasmine.createSpyObj()", function () {
|
||||
var spyObj = jasmine.createSpyObj('BaseName', ['method1', 'method2']);
|
||||
it("should create an object with a bunch of spy methods when you call jasmine.createSpyObj()", function() {
|
||||
const spyObj = jasmine.createSpyObj('BaseName', ['method1', 'method2']);
|
||||
|
||||
expect(spyObj).toEqual({ method1: jasmine.any(Function), method2: jasmine.any(Function) });
|
||||
expect(spyObj.method1.and.identity()).toEqual('BaseName.method1');
|
||||
expect(spyObj.method2.and.identity()).toEqual('BaseName.method2');
|
||||
});
|
||||
|
||||
it("should allow you to omit the baseName and takes only an object", function () {
|
||||
var spyObj = jasmine.createSpyObj({ 'method1': 42, 'method2': 'special sauce' });
|
||||
it("should allow you to omit the baseName and takes only an object", function() {
|
||||
const spyObj = jasmine.createSpyObj({method1: 42, method2: 'special sauce'});
|
||||
|
||||
expect(spyObj.method1()).toEqual(42);
|
||||
expect(spyObj.method1.and.identity()).toEqual('unknown.method1');
|
||||
@@ -1252,22 +1243,22 @@ describe("createSpyObj", function () {
|
||||
expect(spyObj.method2.and.identity()).toEqual('unknown.method2');
|
||||
});
|
||||
|
||||
it("should allow you to omit the baseName and takes only a list of methods", function () {
|
||||
var spyObj = jasmine.createSpyObj(['method1', 'method2']);
|
||||
it("should allow you to omit the baseName and takes only a list of methods", function() {
|
||||
const spyObj = jasmine.createSpyObj(['method1', 'method2']);
|
||||
|
||||
expect(spyObj).toEqual({ method1: jasmine.any(Function), method2: jasmine.any(Function) });
|
||||
expect(spyObj.method1.and.identity()).toEqual('unknown.method1');
|
||||
expect(spyObj.method2.and.identity()).toEqual('unknown.method2');
|
||||
});
|
||||
|
||||
it("should throw if you pass an empty array argument", function () {
|
||||
expect(function () {
|
||||
it("should throw if you pass an empty array argument", function() {
|
||||
expect(function() {
|
||||
jasmine.createSpyObj('BaseName', []);
|
||||
}).toThrow("createSpyObj requires a non-empty array or object of method names to create spies for");
|
||||
});
|
||||
|
||||
it("should throw if you pass an empty object argument", function () {
|
||||
expect(function () {
|
||||
it("should throw if you pass an empty object argument", function() {
|
||||
expect(function() {
|
||||
jasmine.createSpyObj('BaseName', {});
|
||||
}).toThrow("createSpyObj requires a non-empty array or object of method names to create spies for");
|
||||
});
|
||||
@@ -1275,17 +1266,17 @@ describe("createSpyObj", function () {
|
||||
|
||||
(() => {
|
||||
// from boot.js
|
||||
var env = jasmine.getEnv();
|
||||
const env = jasmine.getEnv();
|
||||
|
||||
var htmlReporter = new jasmine.HtmlReporter();
|
||||
const htmlReporter = new jasmine.HtmlReporter();
|
||||
env.addReporter(htmlReporter);
|
||||
|
||||
var specFilter = new jasmine.HtmlSpecFilter();
|
||||
const specFilter = new jasmine.HtmlSpecFilter();
|
||||
env.specFilter = (spec) => {
|
||||
return specFilter.matches(spec.getFullName());
|
||||
};
|
||||
|
||||
var currentWindowOnload = window.onload;
|
||||
const currentWindowOnload = window.onload;
|
||||
window.onload = () => {
|
||||
if (currentWindowOnload) {
|
||||
(currentWindowOnload as any)(null);
|
||||
@@ -1293,7 +1284,6 @@ describe("createSpyObj", function () {
|
||||
htmlReporter.initialize();
|
||||
env.execute();
|
||||
};
|
||||
|
||||
})();
|
||||
|
||||
jasmine.DEFAULT_TIMEOUT_INTERVAL = 1000;
|
||||
|
||||
@@ -1,80 +1,13 @@
|
||||
{
|
||||
"extends": "dtslint/dt.json",
|
||||
"rules": {
|
||||
"adjacent-overload-signatures": false,
|
||||
"array-type": false,
|
||||
"arrow-return-shorthand": false,
|
||||
"ban-types": false,
|
||||
"callable-types": false,
|
||||
"comment-format": false,
|
||||
"dt-header": true,
|
||||
"eofline": false,
|
||||
"export-just-namespace": false,
|
||||
"file-name-casing": [true, "kebab-case"],
|
||||
"import-spacing": false,
|
||||
"interface-name": false,
|
||||
"interface-over-type-literal": false,
|
||||
"jsdoc-format": false,
|
||||
"max-line-length": false,
|
||||
"member-access": false,
|
||||
"new-parens": false,
|
||||
"no-any-union": false,
|
||||
"no-boolean-literal-compare": false,
|
||||
"no-conditional-assignment": false,
|
||||
"no-consecutive-blank-lines": false,
|
||||
"no-construct": false,
|
||||
"no-declare-current-package": false,
|
||||
"no-duplicate-imports": false,
|
||||
"no-duplicate-variable": false,
|
||||
"no-empty-interface": false,
|
||||
"no-for-in-array": false,
|
||||
"no-inferrable-types": false,
|
||||
"no-internal-module": false,
|
||||
"no-irregular-whitespace": false,
|
||||
"no-mergeable-namespace": false,
|
||||
"no-misused-new": false,
|
||||
"no-namespace": false,
|
||||
"no-object-literal-type-assertion": false,
|
||||
"no-padding": false,
|
||||
"no-redundant-jsdoc": false,
|
||||
"no-redundant-jsdoc-2": false,
|
||||
"no-redundant-undefined": false,
|
||||
"no-reference-import": false,
|
||||
"no-relative-import-in-test": false,
|
||||
"no-self-import": false,
|
||||
"no-single-declare-module": false,
|
||||
"no-string-throw": false,
|
||||
"no-unnecessary-callback-wrapper": false,
|
||||
"no-unnecessary-class": false,
|
||||
"no-unnecessary-generics": false,
|
||||
"no-unnecessary-qualifier": false,
|
||||
"no-unnecessary-type-assertion": false,
|
||||
"no-useless-files": false,
|
||||
"no-var-keyword": false,
|
||||
"no-var-requires": false,
|
||||
"no-void-expression": false,
|
||||
"no-trailing-whitespace": false,
|
||||
"object-literal-key-quotes": false,
|
||||
"object-literal-shorthand": false,
|
||||
"one-line": false,
|
||||
"one-variable-per-declaration": false,
|
||||
"only-arrow-functions": false,
|
||||
"prefer-conditional-expression": false,
|
||||
"prefer-const": false,
|
||||
"prefer-declare-function": false,
|
||||
"prefer-for-of": false,
|
||||
"prefer-method-signature": false,
|
||||
"prefer-template": false,
|
||||
"radix": false,
|
||||
"semicolon": false,
|
||||
"space-before-function-paren": false,
|
||||
"space-within-parens": false,
|
||||
"strict-export-declare-modifiers": false,
|
||||
"trim-file": false,
|
||||
"triple-equals": false,
|
||||
"typedef-whitespace": false,
|
||||
"unified-signatures": false,
|
||||
"void-return": false,
|
||||
"whitespace": false
|
||||
"only-arrow-functions": false
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user