Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

JavaScript JavaScript Unit Testing Behavior Driven Development with Mocha & Chai A Testing Test!

Contradictory responses from the Code Challenge

In my code, I wrote two expect statements, one "to.deep.equal" and another "to.not.deep.equal". I commented out one and then the other. Both came back with Bummer. However, I did not change clone.js, so how could both of these Bummer responses be true?

*Bummer: We tried your spec with a version of clone.js that DOESN'T work correctly, expecting the test to fail. But it passed! Better try again!

*Bummer: We tried your spec with a version of clone.js that works correctly, but the specs didn't pass!

clone_spec.js
var expect = require('chai').expect;

describe('clone', function () {
    var clone = require('./clone.js');
    it('some description string', function () {
        // YOUR CODE HERE
      var objectForCloning = {};
      expect(clone(objectForCloning)).to.deep.equal(objectForCloning);
//      expect(clone(objectForCloning)).to.not.deep.equal(objectForCloning);        
});
clone.js
function clone (objectForCloning) {
    return Object.assign({}, objectForCloning);
}

module.exports = clone;

1 Answer

Harald N
Harald N
15,843 Points

Hi Nicholas.

Try filling the objectForCloning with some key and values. e.g {a:false, b:true}.

Empty object returns false in their internal test even though everything else is working correctly.

Mark your question as answered if this fixed your problem :)