I want to use sinon-test to clean up my tests after using sinon stubs. But I get errors...
How can I fix this?
sinonTest.configureTest is deprecated and will be removed from the public API in a future version of sinon-test /Users/olejensen/WebstormProjects/SAM-api/node_modules/sinon-test/lib/test.js:67 throw new TypeError("expected sinon object"); ^
TypeError: expected sinon object at Object.configure (/Users/olejensen/WebstormProjects/SAM-api/node_modules/sinon-test/lib/test.js:67:15) at Function.sinonTest.configureTest (/Users/olejensen/WebstormProjects/SAM-api/node_modules/sinon-test/lib/index.js:18:17) at Object. (/Users/olejensen/WebstormProjects/SAM-api/test/unit/contract-provider/contracts-routes.spec.js:15:24) at Module._compile (module.js:569:30) at Object.Module._extensions..js (module.js:580:10) at Module.load (module.js:503:32) at tryModuleLoad (module.js:466:12) at Function.Module._load (module.js:458:3) at Module.require (module.js:513:17) at require (internal/module.js:11:18) at /Users/olejensen/WebstormProjects/SAM-api/node_modules/mocha/lib/mocha.js:230:27 at Array.forEach (native) at Mocha.loadFiles (/Users/olejensen/WebstormProjects/SAM-api/node_modules/mocha/lib/mocha.js:227:14) at Mocha.run (/Users/olejensen/WebstormProjects/SAM-api/node_modules/mocha/lib/mocha.js:513:10) at Object. (/Users/olejensen/WebstormProjects/SAM-api/node_modules/mocha/bin/_mocha:480:18) at Module._compile (module.js:569:30) at Object.Module._extensions..js (module.js:580:10) at Module.load (module.js:503:32) at tryModuleLoad (module.js:466:12) at Function.Module._load (module.js:458:3) at Function.Module.runMain (module.js:605:10) at startup (bootstrap_node.js:158:16) at bootstrap_node.js:575:3
contract.spec.ts
import * as chai from "chai";
import chaiDateTime = require('chai-datetime');
import * as sinon from "sinon";
import * as sinonTest from 'sinon-test';
import {ContractOption} from "../../../src/entity/ContractOption";
import {sumOptionsTotalPrice} from "../../../src/contract-provider/contracts-routes";
chai.use(chaiDateTime);
const expect = chai.expect;
const test = sinonTest.configureTest(sinon);
describe('Contracts-routes', function() {
describe("sumOptionsTotalPrice()", function() {
it("should return correct price with 2 options", test(function() {
// arrange
const opt1 = <any> sinon.createStubInstance(ContractOption);
opt1.price = 10;
const opt2 = <any> sinon.createStubInstance(ContractOption);
opt2.price = 20;
const options: ContractOption[] = [opt1, opt2];
// act
const actual = sumOptionsTotalPrice(options)
const expected = 30;
// assert
expect(actual).to.equal(expected)
}));
});
});
package.json
"devDependencies": {
"@types/bcrypt": "^1.0.0",
"@types/body-parser": "^1.16.0",
"@types/chai": "^4.0.1",
"@types/chai-datetime": "0.0.30",
"@types/chai-spies": "0.0.0",
"@types/cors": "^2.8.0",
"@types/csv-parse": "^1.1.7",
"@types/csv-stringify": "^1.4.0",
"@types/express": "^4.0.35",
"@types/express-jwt": "0.0.34",
"@types/html-pdf": "^2.1.2",
"@types/jsonwebtoken": "^7.2.0",
"@types/mocha": "^2.2.41",
"@types/node": "^8.0.12",
"@types/postmark": "^1.3.0",
"@types/sinon": "^2.3.3",
"@types/sinon-test": "^1.0.2",
"@types/stripe-node": "^4.6.7",
"chai": "^4.1.0",
"chai-datetime": "^1.5.0",
"chai-spies": "git+http://ift.tt/2ub44Be",
"mocha": "^3.4.2",
"reflect-metadata": "^0.1.9",
"sinon": "^3.0.0",
"sinon-test": "^2.0.0",
"swagger-parser": "^3.4.1",
"swagger2-ts-codegen": "2.5.0",
"tap-spec": "^4.1.1",
"typescript": "2.3.4",
"typings": "^2.1.1",
"walk-sync": "^0.3.1"
}
Aucun commentaire:
Enregistrer un commentaire