Comparing version 2.2.0-20180207 to 2.2.1
@@ -8,3 +8,2 @@ "use strict"; | ||
var unused_1 = require("../core/unused"); | ||
var remove_item_by_index_1 = require("../core/utils/remove-item-by-index"); | ||
var AlsatianCliOptions = (function () { | ||
@@ -107,3 +106,6 @@ function AlsatianCliOptions(args) { | ||
this._versionRequested = true; | ||
return remove_item_by_index_1.removeItemByIndex(args, versionRequestedIndex); | ||
return args.filter(function (value, index) { | ||
unused_1.Unused(value); | ||
return index !== versionRequestedIndex; | ||
}); | ||
} | ||
@@ -116,3 +118,6 @@ return args; | ||
this._helpRequested = true; | ||
return remove_item_by_index_1.removeItemByIndex(args, helpRequestedIndex); | ||
return args.filter(function (value, index) { | ||
unused_1.Unused(value); | ||
return index !== helpRequestedIndex; | ||
}); | ||
} | ||
@@ -119,0 +124,0 @@ return args; |
@@ -52,17 +52,12 @@ "use strict"; | ||
Matcher.prototype.toEqual = function (expectedValue) { | ||
var valueMatch; | ||
if (expectedValue instanceof spying_1.TypeMatcher) { | ||
valueMatch = expectedValue.test(this._actualValue); | ||
} | ||
else if (expectedValue instanceof Object) { | ||
valueMatch = this._checkObjectsAreDeepEqual(expectedValue, this._actualValue); | ||
} | ||
else { | ||
// exclude the double equals in this case from review | ||
// as this is what we want to do | ||
// tslint:disable-next-line:triple-equals | ||
valueMatch = expectedValue == this._actualValue; | ||
} | ||
var valueMatch = expectedValue instanceof spying_1.TypeMatcher | ||
? expectedValue.test(this._actualValue) | ||
: | ||
expectedValue == this._actualValue; // tslint:disable-line:triple-equals | ||
if (valueMatch !== this.shouldMatch) { | ||
throw new errors_1.EqualMatchError(this._actualValue, expectedValue, this.shouldMatch); | ||
if (typeof expectedValue !== "object" || | ||
this._checkObjectsAreDeepEqual(expectedValue, this._actualValue) !== | ||
this.shouldMatch) { | ||
throw new errors_1.EqualMatchError(this._actualValue, expectedValue, this.shouldMatch); | ||
} | ||
} | ||
@@ -69,0 +64,0 @@ }; |
@@ -16,3 +16,2 @@ import { Matcher } from "./matcher"; | ||
toBeGreaterThan(lowerLimit: number): void; | ||
private _validateValues(limit, functionName, limitType); | ||
} |
@@ -28,3 +28,8 @@ "use strict"; | ||
NumberMatcher.prototype.toBeLessThan = function (upperLimit) { | ||
this._validateValues(upperLimit, "toBeLessThan", "upper limit"); | ||
if (upperLimit === null || upperLimit === undefined) { | ||
throw new TypeError("toBeLessThan upper limit must not be null or undefined."); | ||
} | ||
if (typeof this.actualValue !== "number") { | ||
throw new TypeError("toBeLessThan can only check numbers."); | ||
} | ||
if (this.actualValue < upperLimit !== this.shouldMatch) { | ||
@@ -39,3 +44,8 @@ throw new errors_1.LessThanMatchError(this.actualValue, upperLimit, this.shouldMatch); | ||
NumberMatcher.prototype.toBeGreaterThan = function (lowerLimit) { | ||
this._validateValues(lowerLimit, "toBeGreaterThan", "lower limit"); | ||
if (lowerLimit === null || lowerLimit === undefined) { | ||
throw new TypeError("toBeGreaterThan lower limit must not be null or undefined."); | ||
} | ||
if (typeof this.actualValue !== "number") { | ||
throw new TypeError("toBeGreaterThan can only check numbers."); | ||
} | ||
if (this.actualValue > lowerLimit !== this.shouldMatch) { | ||
@@ -45,10 +55,2 @@ throw new errors_1.GreaterThanMatchError(this.actualValue, lowerLimit, this.shouldMatch); | ||
}; | ||
NumberMatcher.prototype._validateValues = function (limit, functionName, limitType) { | ||
if (limit === null || limit === undefined) { | ||
throw new TypeError(functionName + " " + limitType + " must not be null or undefined."); | ||
} | ||
if (typeof this.actualValue !== "number") { | ||
throw new TypeError(functionName + " can only check numbers."); | ||
} | ||
}; | ||
return NumberMatcher; | ||
@@ -55,0 +57,0 @@ }(matcher_1.Matcher)); |
import { ITest } from "../_interfaces/test.i"; | ||
import { TestOutcome } from "./test-outcome"; | ||
import { IResultWithOutcome } from "./result-with-outcome.i"; | ||
export declare class TestCaseResult implements IResultWithOutcome { | ||
export declare class TestCaseResult { | ||
private _test; | ||
@@ -6,0 +5,0 @@ private _arguments; |
@@ -5,4 +5,3 @@ import { ITestFixture } from "../_interfaces/test-fixture.i"; | ||
import { TestResults } from "./test-results"; | ||
import { IResultWithOutcome } from "./result-with-outcome.i"; | ||
export declare class TestFixtureResults implements IResultWithOutcome { | ||
export declare class TestFixtureResults { | ||
private _testFixture; | ||
@@ -9,0 +8,0 @@ private _testResults; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
var test_outcome_1 = require("./test-outcome"); | ||
var test_results_1 = require("./test-results"); | ||
var get_overall_outcome_1 = require("./get-overall-outcome"); | ||
var TestFixtureResults = (function () { | ||
@@ -26,3 +26,13 @@ function TestFixtureResults(_testFixture) { | ||
get: function () { | ||
return get_overall_outcome_1.getOverallOutcome(this._testResults); | ||
var outcomes = this._testResults.map(function (testResult) { return testResult.outcome; }); | ||
if (outcomes.indexOf(test_outcome_1.TestOutcome.Error) !== -1) { | ||
return test_outcome_1.TestOutcome.Error; | ||
} | ||
if (outcomes.indexOf(test_outcome_1.TestOutcome.Fail) !== -1) { | ||
return test_outcome_1.TestOutcome.Fail; | ||
} | ||
if (outcomes.indexOf(test_outcome_1.TestOutcome.Pass) !== -1) { | ||
return test_outcome_1.TestOutcome.Pass; | ||
} | ||
return test_outcome_1.TestOutcome.Skip; | ||
}, | ||
@@ -29,0 +39,0 @@ enumerable: true, |
import { ITest } from "../_interfaces/test.i"; | ||
import { TestCaseResult } from "./test-case-result"; | ||
import { TestOutcome } from "./test-outcome"; | ||
import { IResultWithOutcome } from "./result-with-outcome.i"; | ||
export declare class TestResults implements IResultWithOutcome { | ||
export declare class TestResults { | ||
private _test; | ||
@@ -7,0 +6,0 @@ private _testCaseResults; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
var test_case_result_1 = require("./test-case-result"); | ||
var get_overall_outcome_1 = require("./get-overall-outcome"); | ||
var test_outcome_1 = require("./test-outcome"); | ||
var TestResults = (function () { | ||
@@ -19,3 +19,13 @@ function TestResults(_test) { | ||
get: function () { | ||
return get_overall_outcome_1.getOverallOutcome(this._testCaseResults); | ||
var outcomes = this._testCaseResults.map(function (testCaseResult) { return testCaseResult.outcome; }); | ||
if (outcomes.indexOf(test_outcome_1.TestOutcome.Error) !== -1) { | ||
return test_outcome_1.TestOutcome.Error; | ||
} | ||
if (outcomes.indexOf(test_outcome_1.TestOutcome.Fail) !== -1) { | ||
return test_outcome_1.TestOutcome.Fail; | ||
} | ||
if (outcomes.indexOf(test_outcome_1.TestOutcome.Pass) !== -1) { | ||
return test_outcome_1.TestOutcome.Pass; | ||
} | ||
return test_outcome_1.TestOutcome.Skip; | ||
}, | ||
@@ -22,0 +32,0 @@ enumerable: true, |
import { ITestFixture } from "../_interfaces/test-fixture.i"; | ||
import { TestFixtureResults } from "./test-fixture-results"; | ||
import { TestOutcome } from "./test-outcome"; | ||
import { IResultWithOutcome } from "./result-with-outcome.i"; | ||
export declare class TestSetResults implements IResultWithOutcome { | ||
export declare class TestSetResults { | ||
private _testFixtureResults; | ||
@@ -7,0 +6,0 @@ readonly testFixtureResults: TestFixtureResults[]; |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
var test_fixture_results_1 = require("./test-fixture-results"); | ||
var get_overall_outcome_1 = require("./get-overall-outcome"); | ||
var test_outcome_1 = require("./test-outcome"); | ||
var TestSetResults = (function () { | ||
@@ -18,3 +18,13 @@ function TestSetResults() { | ||
get: function () { | ||
return get_overall_outcome_1.getOverallOutcome(this._testFixtureResults); | ||
var outcomes = this._testFixtureResults.map(function (testFixtureResult) { return testFixtureResult.outcome; }); | ||
if (outcomes.indexOf(test_outcome_1.TestOutcome.Error) !== -1) { | ||
return test_outcome_1.TestOutcome.Error; | ||
} | ||
if (outcomes.indexOf(test_outcome_1.TestOutcome.Fail) !== -1) { | ||
return test_outcome_1.TestOutcome.Fail; | ||
} | ||
if (outcomes.indexOf(test_outcome_1.TestOutcome.Pass) !== -1) { | ||
return test_outcome_1.TestOutcome.Pass; | ||
} | ||
return test_outcome_1.TestOutcome.Skip; | ||
}, | ||
@@ -21,0 +31,0 @@ enumerable: true, |
@@ -15,4 +15,2 @@ import "reflect-metadata"; | ||
private _runTests(testSetRunInfo, results); | ||
private _getTestFixtures(testItems); | ||
private _getTestItemResult(testItem, testSetRunInfo, testFixtureResults); | ||
private _setupFixture(fixture); | ||
@@ -19,0 +17,0 @@ private _teardownFixture(fixture); |
@@ -93,56 +93,58 @@ "use strict"; | ||
return __awaiter(this, void 0, void 0, function () { | ||
var testItems, testFixtures, _loop_1, this_1, _i, testFixtures_1, testFixture; | ||
return __generator(this, function (_a) { | ||
switch (_a.label) { | ||
var currentTestFixtureResults, currentTestResults, errorOccurredRunningTest, _loop_1, this_1, _i, _a, testItem, lastTestItem; | ||
return __generator(this, function (_b) { | ||
switch (_b.label) { | ||
case 0: | ||
testItems = testSetRunInfo.testPlan.testItems; | ||
testFixtures = this._getTestFixtures(testItems); | ||
_loop_1 = function (testFixture) { | ||
var testFixtureItems, testFixtureResults, _loop_2, _i, testFixtureItems_1, testItem; | ||
_loop_1 = function (testItem) { | ||
var testItemIndex, previousTestItem, result, error_1; | ||
return __generator(this, function (_a) { | ||
switch (_a.label) { | ||
case 0: | ||
testFixtureItems = testItems.filter(function (testItem) { return testItem.testFixture === testFixture; }); | ||
return [4 /*yield*/, this_1._setupFixture(testFixture.fixture)]; | ||
testItemIndex = testSetRunInfo.testPlan.testItems.indexOf(testItem); | ||
previousTestItem = testSetRunInfo.testPlan.testItems[testItemIndex - 1]; | ||
if (!(!previousTestItem || | ||
previousTestItem.testFixture !== testItem.testFixture)) return [3 /*break*/, 4]; | ||
if (!previousTestItem) return [3 /*break*/, 2]; | ||
return [4 /*yield*/, this_1._teardownFixture(previousTestItem.testFixture.fixture)]; | ||
case 1: | ||
_a.sent(); | ||
this_1._outputStream.emitFixture(testFixture); | ||
testFixtureResults = results.addTestFixtureResult(testFixture); | ||
_loop_2 = function (testItem) { | ||
var result; | ||
return __generator(this, function (_a) { | ||
switch (_a.label) { | ||
case 0: return [4 /*yield*/, this_1._getTestItemResult(testItem, testSetRunInfo, testFixtureResults)]; | ||
case 1: | ||
result = _a.sent(); | ||
this_1._onTestCompleteCBs.forEach(function (onTestCompleteCB) { | ||
onTestCompleteCB({ | ||
error: result.error, | ||
outcome: result.outcome, | ||
test: testItem.test, | ||
testCase: testItem.testCase, | ||
testFixture: testItem.testFixture, | ||
testId: testSetRunInfo.testPlan.testItems.indexOf(testItem) + 1 | ||
}); | ||
}); | ||
this_1._outputStream.emitResult(testItems.indexOf(testItem) + 1, result); | ||
return [2 /*return*/]; | ||
} | ||
}); | ||
}; | ||
_i = 0, testFixtureItems_1 = testFixtureItems; | ||
_a.label = 2; | ||
case 2: | ||
if (!(_i < testFixtureItems_1.length)) return [3 /*break*/, 5]; | ||
testItem = testFixtureItems_1[_i]; | ||
return [5 /*yield**/, _loop_2(testItem)]; | ||
case 2: return [4 /*yield*/, this_1._setupFixture(testItem.testFixture.fixture)]; | ||
case 3: | ||
_a.sent(); | ||
this_1._outputStream.emitFixture(testItem.testFixture); | ||
currentTestFixtureResults = results.addTestFixtureResult(testItem.testFixture); | ||
_a.label = 4; | ||
case 4: | ||
_i++; | ||
return [3 /*break*/, 2]; | ||
case 5: return [4 /*yield*/, this_1._teardownFixture(testFixture.fixture)]; | ||
// if new test | ||
if (!previousTestItem || previousTestItem.test !== testItem.test) { | ||
currentTestResults = currentTestFixtureResults.addTestResult(testItem.test); | ||
} | ||
_a.label = 5; | ||
case 5: | ||
_a.trys.push([5, 7, , 8]); | ||
return [4 /*yield*/, testItem.run(testSetRunInfo.timeout)]; | ||
case 6: | ||
_a.sent(); | ||
result = currentTestResults.addTestCaseResult(testItem.testCase.caseArguments); | ||
errorOccurredRunningTest = null; | ||
return [3 /*break*/, 8]; | ||
case 7: | ||
error_1 = _a.sent(); | ||
result = currentTestResults.addTestCaseResult(testItem.testCase.caseArguments, error_1); | ||
errorOccurredRunningTest = error_1; | ||
return [3 /*break*/, 8]; | ||
case 8: | ||
// emit onComplete event | ||
this_1._onTestCompleteCBs.forEach(function (onTestCompleteCB) { | ||
onTestCompleteCB({ | ||
error: errorOccurredRunningTest, | ||
outcome: result.outcome, | ||
test: testItem.test, | ||
testCase: testItem.testCase, | ||
testFixture: testItem.testFixture, | ||
testId: testSetRunInfo.testPlan.testItems.indexOf(testItem) + 1 | ||
}); | ||
}); | ||
this_1._outputStream.emitResult(testItemIndex + 1, result); | ||
return [2 /*return*/]; | ||
@@ -153,11 +155,11 @@ } | ||
this_1 = this; | ||
_i = 0, testFixtures_1 = testFixtures; | ||
_a.label = 1; | ||
_i = 0, _a = testSetRunInfo.testPlan.testItems; | ||
_b.label = 1; | ||
case 1: | ||
if (!(_i < testFixtures_1.length)) return [3 /*break*/, 4]; | ||
testFixture = testFixtures_1[_i]; | ||
return [5 /*yield**/, _loop_1(testFixture)]; | ||
if (!(_i < _a.length)) return [3 /*break*/, 4]; | ||
testItem = _a[_i]; | ||
return [5 /*yield**/, _loop_1(testItem)]; | ||
case 2: | ||
_a.sent(); | ||
_a.label = 3; | ||
_b.sent(); | ||
_b.label = 3; | ||
case 3: | ||
@@ -167,2 +169,6 @@ _i++; | ||
case 4: | ||
lastTestItem = testSetRunInfo.testPlan.testItems[testSetRunInfo.testPlan.testItems.length - 1]; | ||
return [4 /*yield*/, this._teardownFixture(lastTestItem.testFixture.fixture)]; | ||
case 5: | ||
_b.sent(); | ||
this._outputStream.end(); | ||
@@ -174,32 +180,2 @@ return [2 /*return*/]; | ||
}; | ||
TestRunner.prototype._getTestFixtures = function (testItems) { | ||
return testItems | ||
.map(function (testItem) { return testItem.testFixture; }) | ||
.filter(function (fixture, index, array) { return array.indexOf(fixture) === index; }); | ||
}; | ||
TestRunner.prototype._getTestItemResult = function (testItem, testSetRunInfo, testFixtureResults) { | ||
return __awaiter(this, void 0, void 0, function () { | ||
var error, e_1, testResults; | ||
return __generator(this, function (_a) { | ||
switch (_a.label) { | ||
case 0: | ||
_a.trys.push([0, 2, , 3]); | ||
return [4 /*yield*/, testItem.run(testSetRunInfo.timeout)]; | ||
case 1: | ||
_a.sent(); | ||
return [3 /*break*/, 3]; | ||
case 2: | ||
e_1 = _a.sent(); | ||
error = e_1; | ||
return [3 /*break*/, 3]; | ||
case 3: | ||
testResults = testFixtureResults.testResults.find(function (result) { return result.test === testItem.test; }); | ||
if (testResults === undefined) { | ||
testResults = testFixtureResults.addTestResult(testItem.test); | ||
} | ||
return [2 /*return*/, testResults.addTestCaseResult(testItem.testCase.caseArguments, error)]; | ||
} | ||
}); | ||
}); | ||
}; | ||
TestRunner.prototype._setupFixture = function (fixture) { | ||
@@ -206,0 +182,0 @@ return __awaiter(this, void 0, void 0, function () { |
237
package.json
{ | ||
"name": "alsatian", | ||
"version": "2.2.0-20180207", | ||
"description": "TypeScript and JavaScript testing framework for beautiful and readable tests", | ||
"author": "James Richford <=> (=)", | ||
"contributors": [ | ||
{ | ||
"name": "James Richford", | ||
"url": "https://github.com/jamesrichford" | ||
}, | ||
{ | ||
"name": "James Monger", | ||
"url": "https://github.com/jameskmonger" | ||
} | ||
], | ||
"main": "./core/alsatian-core.js", | ||
"typings": "./core/alsatian-core.d.ts", | ||
"bin": { | ||
"alsatian": "./cli/alsatian-cli.js" | ||
}, | ||
"engines": { | ||
"node": ">=4.0.0" | ||
}, | ||
"scripts": { | ||
"build": "tsc", | ||
"build-publish": "tsc --newLine \"LF\"", | ||
"clean": "npm run clean-core && npm run clean-cli && npm run clean-test", | ||
"clean-core": "rimraf core/**/*.js core/**/*.js.map core/**/*.d.ts", | ||
"clean-cli": "rimraf cli/**/*.js cli/**/*.js.map cli/**/*.d.ts", | ||
"clean-test": "rimraf test/**/*.js test/**/*.js.map test/**/*.d.ts", | ||
"publish-nightly": "npm run build && node ./scripts/build-nightly", | ||
"prepublishOnly": "npm run clean && npm install && npm test && npm run build-publish", | ||
"postpublish": "node ./scripts/tag-release", | ||
"review": "npm run review-code & npm run review-tests", | ||
"review-code": "tslint \"./**/*.ts\" --exclude \"./**/*.d.ts\" --exclude \"./test/**/*.ts\" --exclude \"./node_modules/**/*.ts\"", | ||
"review-tests": "tslint --config \"./tslint.test.json\" \"./test/**/*.ts\" --exclude \"./**/*.d.ts\"", | ||
"fix-linting-issues": "npm run fix-code-linting-issues & npm run fix-tests-linting-issues", | ||
"fix-code-linting-issues": "tslint --fix \"./**/*.ts\" --exclude \"./**/*.d.ts\" --exclude \"./test/**/*.ts\" --exclude \"./node_modules/**/*.ts\"", | ||
"fix-tests-linting-issues": "tslint --fix --config \"./tslint.test.json\" \"./test/**/*.ts\" --exclude \"./**/*.d.ts\"", | ||
"pretest": "npm run build", | ||
"test": "npm run review && npm run check-coverage && npm run integration-tests", | ||
"unit-tests": "node ./cli/alsatian-cli.js \"./test/unit-tests/**/*.spec.js\"", | ||
"check-coverage": "npm run build & nyc --reporter=lcov --reporter=html npm run unit-tests && npm run output-test-coverage", | ||
"output-test-coverage": "nyc report", | ||
"install-self": "npm link && install-self", | ||
"integration-tests": "npm run install-self && tsc -p \"./test/integration-tests\" && npm run cli-integration-tests && npm run node-integration-tests && npm run tsnode-integration-tests && npm run gulp-integration-tests&& npm run babel-integration-tests && npm run expect-extension-integration-tests", | ||
"expect-extension-integration-tests": "alsatian \"./test/integration-tests/extending-expect/**/*.spec.js\"", | ||
"cli-integration-tests": "alsatian \"./test/integration-tests/cli/runner\"", | ||
"tsnode-integration-tests": "ts-node \"./test/integration-tests/ts-node/runner.ts\"", | ||
"node-integration-tests": "node \"./test/integration-tests/node/runner\"", | ||
"gulp-integration-tests": "alsatian \"./test/integration-tests/gulp/runner\"", | ||
"debug-unit-tests": "node-debug ./cli/alsatian-cli.js \"./test/unit-tests/**/*.spec.js\"", | ||
"build-es6-tests": "babel test/integration-tests/javascript/test-sets -d test/integration-tests/javascript/test-sets", | ||
"babel-integration-tests": "npm run build-es6-tests && alsatian \"./test/integration-tests/javascript/babel/babel-compatibility.spec\"", | ||
"typescript-integration-tests": "alsatian \"./test/integration-tests/typescript/compile.spec\"", | ||
"selenium-integration-tests": "alsatian \"./test/integration-tests/selenium/**/*.spec.js\"" | ||
}, | ||
"repository": { | ||
"type": "git", | ||
"url": "git+https://github.com/alsatian-test/alsatian.git" | ||
}, | ||
"keywords": [ | ||
"test", | ||
"framework", | ||
"test framework", | ||
"TypeScript", | ||
"JavaScript", | ||
"babel", | ||
"alsatian", | ||
"decorators", | ||
"annotations", | ||
"readable", | ||
"simple", | ||
"powerful", | ||
"node", | ||
"test case", | ||
"case", | ||
"unit test", | ||
"tap", | ||
"tsunit", | ||
"junit", | ||
"nunit", | ||
"xunit", | ||
"tdd" | ||
], | ||
"license": "MIT", | ||
"bugs": { | ||
"url": "https://github.com/alsatian-test/alsatian/issues" | ||
}, | ||
"homepage": "https://github.com/alsatian-test/alsatian#readme", | ||
"devDependencies": { | ||
"@types/glob": "^5.0.30", | ||
"@types/gulp": "^4.0.0", | ||
"@types/selenium-webdriver": "^3.0.0", | ||
"babel-cli": "^6.18.0", | ||
"babel-plugin-transform-decorators-legacy": "^1.3.4", | ||
"babel-preset-es2015": "^6.18.0", | ||
"codeclimate-test-reporter": "^0.5.0", | ||
"coveralls": "^3.0.0", | ||
"dugite": "^1.29.0", | ||
"gulp": "^3.9.1", | ||
"install-self": "^1.0.0-beta.7", | ||
"mock-require": "^3.0.0", | ||
"nyc": "^11.0.1", | ||
"prettier": "^1.10.2", | ||
"rimraf": "^2.5.4", | ||
"selenium-webdriver": "^3.0.1", | ||
"ts-node": "^3.3.0", | ||
"tslint": "^5.9.1", | ||
"tslint-plugin-prettier": "^1.3.0", | ||
"typescript": "^2.0.3" | ||
}, | ||
"dependencies": { | ||
"@types/node": ">=4.0.0", | ||
"extendo-error": "^1.0.1", | ||
"glob": "^7.0.3", | ||
"reflect-metadata": "^0.1.3", | ||
"tap-bark": "1.0.0" | ||
} | ||
"name": "alsatian", | ||
"version": "2.2.1", | ||
"description": "TypeScript and JavaScript testing framework for beautiful and readable tests", | ||
"author": "James Richford <=> (=)", | ||
"contributors": [ | ||
{ | ||
"name": "James Richford", | ||
"url": "https://github.com/jamesrichford" | ||
}, | ||
{ | ||
"name": "James Monger", | ||
"url": "https://github.com/jameskmonger" | ||
} | ||
], | ||
"main": "./core/alsatian-core.js", | ||
"typings": "./core/alsatian-core.d.ts", | ||
"bin": { | ||
"alsatian": "./cli/alsatian-cli.js" | ||
}, | ||
"engines": { | ||
"node": ">=4.0.0" | ||
}, | ||
"scripts": { | ||
"build": "tsc", | ||
"build-publish": "tsc --newLine \"LF\"", | ||
"clean": "npm run clean-core && npm run clean-cli && npm run clean-test", | ||
"clean-core": "rimraf core/**/*.js core/**/*.js.map core/**/*.d.ts", | ||
"clean-cli": "rimraf cli/**/*.js cli/**/*.js.map cli/**/*.d.ts", | ||
"clean-test": "rimraf test/**/*.js test/**/*.js.map test/**/*.d.ts", | ||
"publish-nightly": "npm run build && node ./scripts/build-nightly", | ||
"prepublishOnly": "npm run clean && npm install && npm test && npm run build-publish", | ||
"postpublish": "node ./scripts/tag-release", | ||
"review": "npm run review-code & npm run review-tests", | ||
"review-code": "tslint \"./**/*.ts\" --exclude \"./**/*.d.ts\" --exclude \"./test/**/*.ts\" --exclude \"./node_modules/**/*.ts\"", | ||
"review-tests": "tslint --config \"./tslint.test.json\" \"./test/**/*.ts\" --exclude \"./**/*.d.ts\"", | ||
"fix-linting-issues": "npm run fix-code-linting-issues & npm run fix-tests-linting-issues", | ||
"fix-code-linting-issues": "tslint --fix \"./**/*.ts\" --exclude \"./**/*.d.ts\" --exclude \"./test/**/*.ts\" --exclude \"./node_modules/**/*.ts\"", | ||
"fix-tests-linting-issues": "tslint --fix --config \"./tslint.test.json\" \"./test/**/*.ts\" --exclude \"./**/*.d.ts\"", | ||
"pretest": "npm run build", | ||
"test": "npm run review && npm run check-coverage && npm run integration-tests", | ||
"unit-tests": "node ./cli/alsatian-cli.js \"./test/unit-tests/**/*.spec.js\"", | ||
"check-coverage": "npm run build & nyc --reporter=lcov --reporter=html npm run unit-tests && npm run output-test-coverage", | ||
"output-test-coverage": "nyc report", | ||
"install-self": "npm link && install-self", | ||
"integration-tests": "npm run install-self && tsc -p \"./test/integration-tests\" && npm run cli-integration-tests && npm run node-integration-tests && npm run tsnode-integration-tests && npm run gulp-integration-tests&& npm run babel-integration-tests && npm run expect-extension-integration-tests", | ||
"expect-extension-integration-tests": "alsatian \"./test/integration-tests/extending-expect/**/*.spec.js\"", | ||
"cli-integration-tests": "alsatian \"./test/integration-tests/cli/runner\"", | ||
"tsnode-integration-tests": "ts-node \"./test/integration-tests/ts-node/runner.ts\"", | ||
"node-integration-tests": "node \"./test/integration-tests/node/runner\"", | ||
"gulp-integration-tests": "alsatian \"./test/integration-tests/gulp/runner\"", | ||
"debug-unit-tests": "node-debug ./cli/alsatian-cli.js \"./test/unit-tests/**/*.spec.js\"", | ||
"build-es6-tests": "babel test/integration-tests/javascript/test-sets -d test/integration-tests/javascript/test-sets", | ||
"babel-integration-tests": "npm run build-es6-tests && alsatian \"./test/integration-tests/javascript/babel/babel-compatibility.spec\"", | ||
"typescript-integration-tests": "alsatian \"./test/integration-tests/typescript/compile.spec\"", | ||
"selenium-integration-tests": "alsatian \"./test/integration-tests/selenium/**/*.spec.js\"" | ||
}, | ||
"repository": { | ||
"type": "git", | ||
"url": "git+https://github.com/alsatian-test/alsatian.git" | ||
}, | ||
"keywords": [ | ||
"test", | ||
"framework", | ||
"test framework", | ||
"TypeScript", | ||
"JavaScript", | ||
"babel", | ||
"alsatian", | ||
"decorators", | ||
"annotations", | ||
"readable", | ||
"simple", | ||
"powerful", | ||
"node", | ||
"test case", | ||
"case", | ||
"unit test", | ||
"tap", | ||
"tsunit", | ||
"junit", | ||
"nunit", | ||
"xunit", | ||
"tdd" | ||
], | ||
"license": "MIT", | ||
"bugs": { | ||
"url": "https://github.com/alsatian-test/alsatian/issues" | ||
}, | ||
"homepage": "https://github.com/alsatian-test/alsatian#readme", | ||
"devDependencies": { | ||
"@types/glob": "^5.0.30", | ||
"@types/gulp": "^4.0.0", | ||
"@types/selenium-webdriver": "^3.0.0", | ||
"babel-cli": "^6.18.0", | ||
"babel-plugin-transform-decorators-legacy": "^1.3.4", | ||
"babel-preset-es2015": "^6.18.0", | ||
"codeclimate-test-reporter": "^0.5.0", | ||
"coveralls": "^3.0.0", | ||
"dugite": "^1.29.0", | ||
"gulp": "^3.9.1", | ||
"install-self": "^1.0.0-beta.7", | ||
"mock-require": "^3.0.0", | ||
"nyc": "^11.0.1", | ||
"prettier": "^1.10.2", | ||
"rimraf": "^2.5.4", | ||
"selenium-webdriver": "^3.0.1", | ||
"ts-node": "^4.0.0", | ||
"ts-node": "^3.3.0", | ||
"tslint": "^5.9.1", | ||
"tslint-plugin-prettier": "^1.3.0", | ||
"typescript": "^2.0.3" | ||
}, | ||
"dependencies": { | ||
"@types/node": ">=4.0.0", | ||
"extendo-error": "^1.0.1", | ||
"glob": "^7.0.3", | ||
"reflect-metadata": "^0.1.3", | ||
"tap-bark": "1.0.0" | ||
} | ||
} |
@@ -0,0 +0,0 @@ <p id="banner" align="center"> |
@@ -0,0 +0,0 @@ { |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
370429
8698
0
219