Ich erhalte die folgende scheitern Nachricht von Mocha zu sein:Kann nicht erhalten Objekte gleich
Uncaught AssertionError: expected Object { name: 'John Doe' } to be Object { name: 'John Doe' }
+ expected - actual
Hier ist mein Testcode:
describe("A user gets registered", function() {
it('should create a SINGLE user on /api/register POST', function (done) {
//calling REGISTER api
server
.post('/api/register')
.send({
name: "John Doe",
username: "john",
password: "open"
})
.expect("Content-type", /json/)
.expect(200)
.end(function (err, res) {
var data = {
"name": "John Doe"
};
res.status.should.equal(200);
res.body.should.equal(data);
done();
});
});
});
Und hier ist meine eigentliche Code:
Allerdings sollte ich keine Fehlermeldung von Mocha bekommen, weil beide Objekte gleich sind. Aber irgendwie sind sie nicht so, ich weiß wirklich nicht, was ich falsch mache.
Ich habe bereits den Abstand der beiden Objekte überprüft, so dass dies nicht der Fall sein sollte.
Versuchen Sie 'deepEqual'? http://stackoverflow.com/questions/13225274/the-difference-between-assert-equal-and-assert-deepequal-in-japascript-testing-w – evolutionxbox
in Javascript '({} === {})' zurück 'false' impliziert, dass kein 2-Objekt direkt verglichen werden kann, aber ihre Schlüsselwertpaare könnten verglichen werden. –