From e03ab669e35e4d4f324e9b9a23a0d9945ff49817 Mon Sep 17 00:00:00 2001 From: Bradley Ayers Date: Tue, 31 Mar 2015 14:25:46 +1100 Subject: [PATCH] Add squirejs. --- squirejs/squirejs-tests.ts | 37 +++++++++++++++++++++++++++++++++++++ squirejs/squirejs.d.ts | 28 ++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 squirejs/squirejs-tests.ts create mode 100644 squirejs/squirejs.d.ts diff --git a/squirejs/squirejs-tests.ts b/squirejs/squirejs-tests.ts new file mode 100644 index 000000000..fc1701fbf --- /dev/null +++ b/squirejs/squirejs-tests.ts @@ -0,0 +1,37 @@ +/// + +import Squire = require('Squire'); + +// Default Configuration +var injector = new Squire(); + +// Different Context +injector = new Squire('other-requirejs-context'); + +// require(Array dependencies, Function callback, Function errback) +injector.require(['a'], function(A: any) {}, function(err: any) {}); + +// mock(String name | Object(name: mock), Object mock) +injector.mock("a", {}); +injector.mock({a: {}}); + +// store(String name | Array names) +injector.store('a'); +injector.store(['a', 'b']); + +// clean(Optional (String name | Array names)) +injector.clean('a'); +injector.clean(['a', 'b']); +injector.clean(); + +// remove() +injector.remove(); + +// run() +injector.run(['a'], function test(a: any) {})(function done() {}); + +// Squire.Helpers.returns(Any what) +Squire.Helpers.returns({}); + +// Squire.Helpers.constructs(Any what) +Squire.Helpers.constructs({}); diff --git a/squirejs/squirejs.d.ts b/squirejs/squirejs.d.ts new file mode 100644 index 000000000..693ca7d90 --- /dev/null +++ b/squirejs/squirejs.d.ts @@ -0,0 +1,28 @@ +// Type definitions for Squire 0.2.1 +// Project: https://github.com/iammerrick/Squire.js +// Definitions by: Bradley Ayers +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +declare module 'Squire' { + class Squire { + constructor(); + constructor(context: string); + mock(name: string, mock: any): Squire; + mock(mocks: {[name: string]: any}): Squire; + require(dependencies: string[], callback: Function, errback: Function): Squire; + store(name: string | string[]): Squire; + clean(): Squire; + clean(name: string | string[]): Squire; + remove(): String; + run(dependencies: string[], test: Function): (done: Function) => void; + } + + module Squire { + module Helpers { + export function returns(what: T): () => T; + export function constructs(what: T): () => (() => T); + } + } + + export = Squire; +}