Skip to content

Instantly share code, notes, and snippets.

@subtubes-io
Created April 17, 2014 04:03
Show Gist options
  • Select an option

  • Save subtubes-io/10952068 to your computer and use it in GitHub Desktop.

Select an option

Save subtubes-io/10952068 to your computer and use it in GitHub Desktop.
A suite of jasmine tests for the Array.prototype methods.
(function () {
describe("Array", function () {
it("Array reverse()", function () {
expect("sgniht").toBe("things".split("").reverse().join(""));
});
it("Array sort()", function () {
var arr = [5, 0, 100, 10, 1, 11, 7];
var arr2 = [5, 0, 100, 10, 1, 11, 7];
arr.sort(function (one, two) {
return one - two;
});
expect(arr).toEqual([0, 1, 5, 7, 10, 11, 100]);
expect(arr2.sort()).toEqual([0, 1, 10, 100, 11, 5, 7]);
});
it("Array forEach()", function () {
var arr = [1, 2, 3, 4, 5];
var sum = 0;
arr.forEach(function (curr) {
sum += curr;
});
expect(sum).toEqual(15);
});
it("Array reduce()", function () {
var arr = [1, 2, 3, 4, 5];
var total = arr.reduce(function (one, two) {
return one + two;
});
expect(total).toBe(15);
});
it("Array reduce()", function () {
var arr = [1, 2, 3, 4, 5];
var total = arr.reduce(function (one, two) {
return one + two;
});
expect(total).toBe(15);
});
it("Array map()", function () {
var arr = [1, 2, 3, 4, 5];
var mapped = arr.map(function (val) {
return val * val;
});
expect(mapped).toEqual([1, 4, 9, 16, 25]);
});
it("Array some()", function () {
var arr = [1, 2, 3, 4];
var contains4 = arr.some(function (num) {
return num === 4;
});
var contains5 = arr.some(function (num) {
return num === 5;
});
expect(contains5).not.toBe(true);
expect(contains4).toBe(true);
});
it("Array every()", function () {
var arr = [1, 2, 3, 4, 5];
var areLessThan6 = arr.every(function (num) {
return num < 6;
});
expect(areLessThan6).toBe(true);
});
it("Array filter()", function () {
var arr = [0, 1, 2, 3];
var result = arr.filter(function (num) {
return num % 2 == 0;
});
expect(result).toEqual([0, 2]);
});
});
}());
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment