#node.js #typescript #mocha.js #chai
#node.js #машинопись #mocha.js #chai
Вопрос:
Я пытаюсь написать тестовый файл, используя Mocha и Chai, но, похоже, библиотеки Chai не хотят работать. Я, конечно, делаю что-то не так, но я не могу понять, где.
Это код
function byte() {}
describe("byteToSignedShort()", function()
{
context("in b argument with the first bit set to 1", function()
{
it("should return a negative number", function()
{
assert.isBelow(byte(), 0, "");
})
})
context("in b argument with the first bit set to 0", function()
{
it("should return a positive number", function()
{
assert.isAtLeast(byte(), 0, "");
})
})
})
Я не знаю, может ли это быть полезно, но вот package.json
{
"name": "learing_typescript",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "mocha -r ts-node/register test/**.ts --recursive --no-deprecation"
},
"author": "",
"license": "UNLICENSED",
"devDependencies": {
"@types/expect": "^24.3.0",
"@types/mocha": "^8.0.3",
"chai": "^4.2.0",
"mocha": "^8.1.3",
"ts-mocha": "^7.0.0",
"ts-node": "^9.0.0",
"typescript": "^4.0.3"
},
"dependencies": {
"@babel/cli": "^7.11.6",
"@babel/core": "^7.11.6",
"@babel/preset-env": "^7.11.5",
"@babel/register": "^7.11.5"
}
}
И когда я запускаю его с помощью «npm test», выдает мне эту ошибку
byteToSignedShort()
in b argument with the first bit set to 1
1) should return a negative number
in b argument with the first bit set to 0
2) should return a positive number
0 passing (16ms)
2 failing
1) byteToSignedShort()
in b argument with the first bit set to 1
should return a negative number:
TypeError: assert.isBelow is not a function
at Context.<anonymous> (testbyteTestDC.ts:10:20)
at processImmediate (internal/timers.js:456:21)
2) byteToSignedShort()
in b argument with the first bit set to 0
should return a positive number:
TypeError: assert.isAtLeast is not a function
at Context.<anonymous> (testbyteTestDC.ts:17:20)
at processImmediate (internal/timers.js:456:21)
Ответ №1:
Возможно, вам потребуется добавить assert
оператор импорта из chai
пакета
import { assert } from 'chai'; // add import statement
function byte() {}
describe("byteToSignedShort()", function()
{
...
}