mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2025-10-16 12:05:41 +00:00
Note that this *trivially* updates project urls by adding the NPM url to the end, even when the urls are almost identical or the DT one is outdated. I'll clean up the urls in a later commit. This PR is unfinished! Please do not merge it yet.
157 lines
5.7 KiB
TypeScript
157 lines
5.7 KiB
TypeScript
// Type definitions for yeoman-assert 3.1
|
|
// Project: https://github.com/yeoman/yeoman-assert, http://yeoman.io
|
|
// Definitions by: Toilal <https://github.com/Toilal>
|
|
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
|
// TypeScript Version: 2.4
|
|
|
|
import assert = require('assert');
|
|
|
|
declare module 'assert' {
|
|
/**
|
|
* Assert that a file exists or that each files in the array exists
|
|
* @param path path to a file or an array of paths to files
|
|
* @example
|
|
* assert.file('templates/user.hbs');
|
|
* assert.noFile(['templates/user.hbs', 'templates/user/edit.hbs']);
|
|
*/
|
|
function file(path: string | string[]): void;
|
|
|
|
/**
|
|
* Assert that a file doesn't exist
|
|
* @param file path to a file
|
|
* @example
|
|
* assert.noFile('templates/user.hbs');
|
|
* assert.noFile(['templates/user.hbs', 'templates/user/edit.hbs']);
|
|
*/
|
|
function noFile(file: string | string[]): void;
|
|
|
|
/**
|
|
* Assert that a file's content matches a regex or string
|
|
* @param file path to a file
|
|
* @param reg regex / string that will be used to search the file
|
|
* @example
|
|
* assert.fileContent('models/user.js', /App\.User = DS\.Model\.extend/);
|
|
* assert.fileContent('models/user.js', 'App.User = DS.Model.extend');
|
|
*/
|
|
function fileContent(file: string | string[], reg: string | RegExp): void;
|
|
|
|
/**
|
|
* Assert that each file in an array of file-regex pairs matches its corresponding regex
|
|
* @param pairs an array of arrays, where each subarray is a [String, RegExp] pair
|
|
* @example
|
|
* var arg = [
|
|
* [ 'models/user.js', /App\.User = DS\.Model\.extend/ ],
|
|
* [ 'controllers/user.js', /App\.UserController = Ember\.ObjectController\.extend/ ]
|
|
* ]
|
|
* assert.fileContent(arg);
|
|
*/
|
|
function fileContent(pairs: Array<[string, RegExp]>): void;
|
|
|
|
/**
|
|
* Assert that a file's content is the same as the given string
|
|
* @param file path to a file
|
|
* @param expectedContent the expected content of the file
|
|
* @example
|
|
* assert.equalsFileContent(
|
|
* 'data.js',
|
|
* 'const greeting = "Hello";\nexport default { greeting }'
|
|
* );
|
|
*/
|
|
function equalsFileContent(file: string, expectedContent: string): void;
|
|
|
|
/**
|
|
* Assert that each file in an array of file-string pairs equals its corresponding string
|
|
* @param pairs an array of arrays, where each subarray is a [String, String] pair
|
|
* @example
|
|
* assert.equalsFileContent([
|
|
* ['data.js', 'const greeting = "Hello";\nexport default { greeting }'],
|
|
* ['user.js', 'export default {\n name: 'Coleman',\n age: 0\n}']
|
|
* ]);
|
|
*/
|
|
function equalsFileContent(pairs: Array<[string, string]>): void;
|
|
|
|
/**
|
|
* Assert that a file's content does not match a regex / string
|
|
* @param file path to a file
|
|
* @param reg regex / string that will be used to search the file
|
|
* @example
|
|
* assert.noFileContent('models/user.js', /App\.User = DS\.Model\.extend/);
|
|
* assert.noFileContent('models/user.js', 'App.User = DS.Model.extend');
|
|
*/
|
|
function noFileContent(file: string | string[], reg: RegExp | string): void;
|
|
|
|
/**
|
|
* Assert that each file in an array of file-regex pairs does not match its corresponding regex
|
|
* @param pairs an array of arrays, where each subarray is a [String, RegExp] pair
|
|
* var arg = [
|
|
* [ 'models/user.js', /App\.User \ DS\.Model\.extend/ ],
|
|
* [ 'controllers/user.js', /App\.UserController = Ember\.ObjectController\.extend/ ]
|
|
* ]
|
|
* assert.noFileContent(arg);
|
|
*/
|
|
function noFileContent(pairs: Array<[string, RegExp]>): void;
|
|
|
|
/**
|
|
* Assert that two strings are equal after standardization of newlines
|
|
* @param value a string
|
|
* @param expected the expected value of the string
|
|
* @example
|
|
* assert.textEqual('I have a yellow cat', 'I have a yellow cat');
|
|
*/
|
|
function textEqual(value: string, expected: string): void;
|
|
|
|
/**
|
|
* Assert an Object implements an interface
|
|
* @param subject subject implementing the façade
|
|
* @param methods a façace, hash or array of keys to be implemented
|
|
*/
|
|
function implement(subject: object, methods: object | string[]): void;
|
|
|
|
/**
|
|
* Assert an Object doesn't implements any method of an interface
|
|
* @param subject subject not implementing the methods
|
|
* @param methods hash or array of method names to be implemented
|
|
*/
|
|
function notImplement(subject: object, methods: object | string[]): void;
|
|
|
|
/**
|
|
* Assert an object contains the provided keys
|
|
* @param obj Object that should match the given pattern
|
|
* @param content An object of key/values the object should contains
|
|
*/
|
|
function objectContent(obj: object, content: object): void;
|
|
|
|
/**
|
|
* Assert an object does not contain the provided keys
|
|
* @param obj Object that should not match the given pattern
|
|
* @param content An object of key/values the object should not contain
|
|
*/
|
|
function noObjectContent(obj: object, content: object): void;
|
|
|
|
/**
|
|
* Assert a JSON file contains the provided keys
|
|
* @param filename
|
|
* @param content An object of key/values the file should contains
|
|
*/
|
|
function JSONFileContent(filename: string, content: object): void;
|
|
|
|
/**
|
|
* @see JSONFileContent
|
|
*/
|
|
function jsonFileContent(filename: string, content: object): void;
|
|
|
|
/**
|
|
* Assert a JSON file does not contain the provided keys
|
|
* @param filename
|
|
* @param content An object of key/values the file should not contain
|
|
*/
|
|
function noJSONFileContent(filename: string, content: object): void;
|
|
|
|
/**
|
|
* @see noJSONFileContent
|
|
*/
|
|
function noJsonFileContent(filename: string, content: object): void;
|
|
}
|
|
|
|
export = assert;
|