我正在使用TypeScript创建一个关于向量的库。我的第一个测试失败了:)。
这与TypeScript / JavaScript中的对象相等性有关,但我无法找到一种方法使测试通过。在TypeScript官方文档http://www.typescriptlang.org/Handbook#classes中没有提到任何关于对象相等性的内容。
能否有人帮我一下?
这是源代码。
class Vector {
x: number;
y: number;
constructor(x: number, y: number) {
this.x = x;
this.y = y;
}
add(that: Vector) {
return new Vector(this.x + that.x, this.y + that.y);
}
}
export = Vector;
然后我对这个类编写了一个单元测试,如下所示
var Vector = require("../lib/vector")
describe("vector", function () {
it("should add another vector", function () {
var v1 = new Vector(1, 1);
var v2 = new Vector(2, 3);
expect(v1.add(v2)).toEqual(new Vector(3, 4));
});
});
执行时出现以下错误
Failures:
1) vector should add another vector
1.1) Expected Vector({ x: 3, y: 4 }) to be Vector({ x: 3, y: 4 }).