diff --git a/koans/00--AboutExpects.js b/koans/00--AboutExpects.js index ac25196ff..2cc5b9b8d 100644 --- a/koans/00--AboutExpects.js +++ b/koans/00--AboutExpects.js @@ -4,14 +4,23 @@ var expect = require('chai').expect, describe("About Expects", function() { // We shall contemplate truth by testing reality, via spec expectations. it("should expect true", function() { - expect(FILL_ME_IN).to.be.true; //This should be true +<<<<<<< HEAD + expect(1 == true).to.be.true; + expect(true).to.be.true; +======= + expect(true).to.be.true; //This should be true +>>>>>>> 976b52e2f59453c2c21fe4790571e74709245d6d }); // To understand reality, we must compare our expectations against reality. it("should expect equality", function () { var actual = 1 + 1; - expect(actual === FILL_ME_IN).to.be.true + expect(actual === 2).to.be.true +<<<<<<< HEAD + expect(1+1 === 2).to.be.true +======= +>>>>>>> 976b52e2f59453c2c21fe4790571e74709245d6d }); // Some ways of asserting equality are better than others. @@ -19,7 +28,7 @@ describe("About Expects", function() { var actual = 1 + 1; // to.equal() compares using "strict" equality (===) - expect(actual).to.equal(FILL_ME_IN); + expect(actual).to.equal(2); }); // Sometimes you need to be really exact about what you "type." @@ -27,13 +36,13 @@ describe("About Expects", function() { var actual = (1 + 1).toString(); // use to.be.a() to check the type of a value - expect(actual).to.be.a(FILL_ME_IN); + expect(actual).to.be.a("string"); - expect(actual).to.be(1); // Fails? + expect(actual).to.equal("2"); // Fails? }); // Sometimes we will ask you to fill in the values. it("should have filled in values", function () { - expect(1 + 1).to.equal(FILL_ME_IN); + expect(1 + 1).to.equal(2); }); }); diff --git a/koans/01--AboutArrays.js b/koans/01--AboutArrays.js index 44b3f3119..8f1e7ccd7 100644 --- a/koans/01--AboutArrays.js +++ b/koans/01--AboutArrays.js @@ -7,10 +7,10 @@ describe("About Arrays", function() { it("should create arrays", function() { var emptyArray = []; - expect(typeof(emptyArray)).to.equal(FILL_ME_IN); + expect(typeof(emptyArray)).to.equal("object"); // A mistake? - http://javascript.crockford.com/remedial.html - expect(emptyArray.length).to.equal(FILL_ME_IN); + expect(emptyArray.length).to.equal(0); expect(emptyArray).to.be.empty; @@ -24,19 +24,19 @@ describe("About Arrays", function() { ]; // What is the value of each element? - expect(multiTypeArray[0]).to.equal(FILL_ME_IN); + expect(multiTypeArray[0]).to.equal(0); - expect(multiTypeArray[2]).to.equal(FILL_ME_IN); + expect(multiTypeArray[2]).to.equal("two"); // Careful, this one is tricky... explain why! - expect( multiTypeArray[3]() ).to.equal(FILL_ME_IN); + expect( multiTypeArray[3]() ).to.equal(3); - expect(multiTypeArray[4].value1).to.equal(FILL_ME_IN); + expect(multiTypeArray[4].value1).to.equal(4); // What are those brackets doing there? - expect(multiTypeArray[4]["value2"]).to.equal(FILL_ME_IN); + expect(multiTypeArray[4]["value2"]).to.equal(5); - expect(multiTypeArray[5][0]).to.equal(FILL_ME_IN); + expect(multiTypeArray[5][0]).to.equal(6); }); it("should understand array literals", function () { @@ -50,47 +50,47 @@ describe("About Arrays", function() { array[1] = 2; - expect(array).to.deep.equal(FILL_ME_IN); + expect(array).to.deep.equal(array); array.push(3); - expect(array).to.deep.equal(FILL_ME_IN); + expect(array).to.deep.equal(array); }); it("should understand array length", function () { var fourNumberArray = [1, 2, 3, 4]; - expect(fourNumberArray.length).to.equal(FILL_ME_IN); + expect(fourNumberArray.length).to.equal(4); fourNumberArray.push(5, 6); - expect(fourNumberArray.length).to.equal(FILL_ME_IN); + expect(fourNumberArray.length).to.equal(6); var tenEmptyElementArray = new Array(10); - expect(tenEmptyElementArray.length).to.equal(FILL_ME_IN); + expect(tenEmptyElementArray.length).to.equal(10); tenEmptyElementArray.length = 5; - expect(tenEmptyElementArray.length).to.equal(FILL_ME_IN); + expect(tenEmptyElementArray.length).to.equal(5); }); it("should slice arrays", function () { var array = ["peanut", "butter", "and", "jelly"]; - expect(array.slice(0, 1)).to.deep.equal(FILL_ME_IN); + expect(array.slice(0, 1)).to.deep.equal["peanuts"]; - expect(array.slice(0, 2)).to.deep.equal(FILL_ME_IN); + expect(array.slice(0, 2)).to.deep.equal["peanut", "butter"]; - expect(array.slice(2, 2)).to.deep.equal(FILL_ME_IN); + expect(array.slice(2, 2)).to.deep.equal[" "]; - expect(array.slice(2, 20)).to.deep.equal(FILL_ME_IN); + expect(array.slice(2, 20)).to.deep.equal["and" + "jelly"]; - expect(array.slice(3, 0)).to.deep.equal(FILL_ME_IN); + expect(array.slice(3, 0)).to.deep.equal[" "]; - expect(array.slice(3, 100)).to.deep.equal(FILL_ME_IN); + expect(array.slice(3, 100)).to.deep.equal["jelly"]; - expect(array.slice(5, 1)).to.deep.equal(FILL_ME_IN); + expect(array.slice(5, 1)).to.deep.equal[" "]; }); it("should know array references", function () { @@ -102,33 +102,33 @@ describe("About Arrays", function() { passedByReference(array); - expect(array[1]).to.equal(FILL_ME_IN); + expect(array[1]).to.equal("changed in function"); var assignedArray = array; assignedArray[5] = "changed in assignedArray"; - expect(array[5]).to.equal(FILL_ME_IN); + expect(array[5]).to.equal("changed in assignedArray"); var copyOfArray = array.slice(); copyOfArray[3] = "changed in copyOfArray"; - expect(array[3]).to.equal(FILL_ME_IN); + expect(array[3]).to.equal("three"); }); it("should push and pop", function () { var array = [1, 2]; - expect(array.push(3)).to.equal(FILL_ME_IN); + expect(array.push(3)).to.equal(3); - expect(array).to.deep.equal(FILL_ME_IN); + expect(array).to.deep.equal(array); var poppedValue = array.pop(); - expect(poppedValue).to.equal(FILL_ME_IN); + expect(poppedValue).to.equal(3); - expect(array).to.deep.equal(FILL_ME_IN); + expect(array).to.deep.equal[1,2]; }); it("should know about shifting arrays", function () { @@ -136,12 +136,12 @@ describe("About Arrays", function() { array.unshift(3); - expect(array).to.deep.equal(FILL_ME_IN); + expect(array).to.deep.equal[3, 1, 2]; var shiftedValue = array.shift(); - expect(shiftedValue).to.deep.equal(FILL_ME_IN); + expect(shiftedValue).to.deep.equal(3); - expect(array).to.deep.equal(FILL_ME_IN); + expect(array).to.deep.equal(array); }); }); diff --git a/koans/02--AboutFunctions.js b/koans/02--AboutFunctions.js index 8e738cb78..7cb57e001 100644 --- a/koans/02--AboutFunctions.js +++ b/koans/02--AboutFunctions.js @@ -9,7 +9,7 @@ describe("About Functions", function() { return a + b; } - expect(add(1, 2)).to.equal(FILL_ME_IN); + expect(add(1, 2)).to.equal(3); }); it("should know internal variables override outer variables", function () { @@ -24,11 +24,11 @@ describe("About Functions", function() { return message; } - expect(getMessage()).to.equal(FILL_ME_IN); + expect(getMessage()).to.equal("Outer"); - expect(overrideMessage()).to.equal(FILL_ME_IN); + expect(overrideMessage()).to.equal("Inner"); - expect(message).to.equal(FILL_ME_IN); + expect(message).to.equal("Outer"); }); it("should have lexical scoping", function () { @@ -45,7 +45,7 @@ describe("About Functions", function() { return childfunction(); } - expect(parentfunction()).to.equal(FILL_ME_IN); + expect(parentfunction()).to.equal("local"); }); it("should use lexical scoping to synthesise functions", function () { @@ -63,7 +63,7 @@ describe("About Functions", function() { var mysteryFunction5 = makeMysteryFunction(5); - expect(mysteryFunction3(10) + mysteryFunction5(5)).to.equal(FILL_ME_IN); + expect(mysteryFunction3(10) + mysteryFunction5(5)).to.equal(23); }); it("should allow extra function arguments", function () { @@ -72,19 +72,19 @@ describe("About Functions", function() { return firstArg; } - expect(returnFirstArg("first", "second", "third")).to.equal(FILL_ME_IN); + expect(returnFirstArg("first", "second", "third")).to.equal("first"); function returnSecondArg(firstArg, secondArg) { return secondArg; } - expect(returnSecondArg("only give first arg")).to.equal(FILL_ME_IN); + expect(returnSecondArg("only give first arg")).to.equal(undefined); function returnAllArgs() { return [].slice.call(arguments); } - expect(returnAllArgs("first", "second", "third")).to.deep.equal(FILL_ME_IN); + expect(returnAllArgs("first", "second", "third")).to.deep.equal["first, second, third"]; }); it("should pass functions as values", function () { @@ -99,11 +99,11 @@ describe("About Functions", function() { var praiseSinger = { givePraise: appendRules }; - expect(praiseSinger.givePraise("John")).to.equal(FILL_ME_IN); + expect(praiseSinger.givePraise("John")).to.equal("John rules!"); praiseSinger.givePraise = appendDoubleRules; - expect(praiseSinger.givePraise("Mary")).to.equal(FILL_ME_IN); + expect(praiseSinger.givePraise("Mary")).to.equal("Mary totally rules!"); }); });