From d1ba9c912a6b8ad1f891f6ee7aa97ad73f2d78f0 Mon Sep 17 00:00:00 2001 From: Cherif BOUCHELAGHEM Date: Fri, 10 May 2019 18:43:23 +0100 Subject: [PATCH] Landscaper: QUnit2 upgrade --- list/list_test.js | 152 +++++++++++++++++++++++----------------------- package.json | 2 +- 2 files changed, 77 insertions(+), 77 deletions(-) diff --git a/list/list_test.js b/list/list_test.js index b796add..806b192 100644 --- a/list/list_test.js +++ b/list/list_test.js @@ -3,7 +3,7 @@ require("./list"); require('can/map/define/define'); QUnit.module('.dFilter()', { - setup: function () {} + beforeEach: function(assert) {} }); var letters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; @@ -31,11 +31,11 @@ var equalValues = function (list, expectedValues) { return match; }; -test('Method exists', function () { - ok(can.List.prototype.dFilter, 'List has dFilter method'); +QUnit.test('Method exists', function(assert) { + assert.ok(can.List.prototype.dFilter, 'List has dFilter method'); }); -test('The predicate function is executed when a source item changes', function () { +QUnit.test('The predicate function is executed when a source item changes', function(assert) { var values = [true, true, true]; @@ -45,29 +45,29 @@ test('The predicate function is executed when a source item changes', function ( }; var derived = source.dFilter(predicateFn); - equal(derived.attr('length'), 3, 'Initial length is correct'); + assert.equal(derived.attr('length'), 3, 'Initial length is correct'); derived.predicate = function () { - ok(true, 'Predicate should be run for source changes'); + assert.ok(true, 'Predicate should be run for source changes'); return predicateFn.apply(this, arguments); }; source.attr(1, false); - equal(derived.attr('length'), 2, 'Item removed after source change'); + assert.equal(derived.attr('length'), 2, 'Item removed after source change'); }); -test('Derives initial values', function () { +QUnit.test('Derives initial values', function(assert) { var filterFn = function (value, index) { return value ? true : false; }; var source = new can.List(dirtyAlphabet); var expected = dirtyAlphabet.filter(filterFn); var derived = source.dFilter(filterFn); - ok(equalValues(derived, expected), 'Initial values are correct'); + assert.ok(equalValues(derived, expected), 'Initial values are correct'); }); -test('Changes to source list are synced to their derived list', function () { +QUnit.test('Changes to source list are synced to their derived list', function(assert) { var alphabet = dirtyAlphabet.slice(); var filterFn = function (value) { return value ? true : false; }; @@ -80,22 +80,22 @@ test('Changes to source list are synced to their derived list', function () { alphabet[4] = 'DD'; // Update static list expected = alphabet.filter(filterFn); - ok(equalValues(derived, expected), 'Set derived'); // Compare + assert.ok(equalValues(derived, expected), 'Set derived'); // Compare source.attr(10, 'II'); // I -> II alphabet[10] = 'II'; expected = alphabet.filter(filterFn); - ok(equalValues(derived, expected), 'Set derived'); + assert.ok(equalValues(derived, expected), 'Set derived'); source.attr(29, 'XX'); // X -> XX alphabet[29] = 'XX'; expected = alphabet.filter(filterFn); - ok(equalValues(derived, expected), 'Set derived'); + assert.ok(equalValues(derived, expected), 'Set derived'); }); -test('Items added to a source list get added to their derived list', function () { +QUnit.test('Items added to a source list get added to their derived list', function(assert) { var alphabet = dirtyAlphabet.slice(); var filterFn = function (value) { return value ? true : false; }; @@ -105,7 +105,7 @@ test('Items added to a source list get added to their derived list', function () derived.bind('add', function (ev, items, offset) { items.forEach(function (item, index) { - equal(item, expected[offset + index], + assert.equal(item, expected[offset + index], 'Add event reports correct value/index'); }); }); @@ -115,24 +115,24 @@ test('Items added to a source list get added to their derived list', function () expected = alphabet.filter(filterFn); source.unshift('Aey'); - ok(equalValues(derived, expected), 'Item added via .unshift()'); + assert.ok(equalValues(derived, expected), 'Item added via .unshift()'); // Insert between alphabet.splice(20, 0, 'Ohh'); expected = alphabet.filter(filterFn); source.splice(20, 0, 'Ohh'); - ok(equalValues(derived, expected), 'Item added via .splice()'); + assert.ok(equalValues(derived, expected), 'Item added via .splice()'); // Insert after alphabet.push('Zee'); expected = alphabet.filter(filterFn); source.push('Zee'); - ok(equalValues(derived, expected), 'Item added via .push()'); + assert.ok(equalValues(derived, expected), 'Item added via .push()'); }); -test('Items removed from a source list are removed from their derived list', function () { +QUnit.test('Items removed from a source list are removed from their derived list', function(assert) { var alphabet = dirtyAlphabet.slice(); var filterFn = function (value) { return value ? true : false; }; var source = new can.List(alphabet); @@ -144,24 +144,24 @@ test('Items removed from a source list are removed from their derived list', fun alphabet.shift(); expected = alphabet.filter(filterFn); - ok(equalValues(derived, expected), 'Item removed via .shift()'); + assert.ok(equalValues(derived, expected), 'Item removed via .shift()'); // Remove middle source.splice(10, 1); alphabet.splice(10, 1); expected = alphabet.filter(filterFn); - ok(equalValues(derived, expected), 'Item removed via .splice()'); + assert.ok(equalValues(derived, expected), 'Item removed via .splice()'); // Remove last source.pop(); alphabet.pop(); expected = alphabet.filter(filterFn); - ok(equalValues(derived, expected), 'Item removed via .pop()'); + assert.ok(equalValues(derived, expected), 'Item removed via .pop()'); }); -test('Predicate function can be bound to source index', function () { +QUnit.test('Predicate function can be bound to source index', function(assert) { var alphabet = ['a', 'b', 'c', 'd', 'e', 'f', 'g']; var filterFn = function (value, index) { return index % 2 === 0; }; var source = new can.List(alphabet); @@ -169,21 +169,21 @@ test('Predicate function can be bound to source index', function () { var expected = alphabet.filter(filterFn); // Initial values - ok(equalValues(derived, expected), 'Odd indexed items excluded'); + assert.ok(equalValues(derived, expected), 'Odd indexed items excluded'); // Insert at the beginning source.unshift('_a'); alphabet.unshift('_a'); expected = alphabet.filter(filterFn); - ok(equalValues(derived, expected), 'Items are flopped after an insert at the beginning'); + assert.ok(equalValues(derived, expected), 'Items are flopped after an insert at the beginning'); // Remove from the beginning source.shift(); alphabet.shift(); expected = alphabet.filter(filterFn); - ok(equalValues(derived, expected), 'Items are flopped after a remove at the beginning'); + assert.ok(equalValues(derived, expected), 'Items are flopped after a remove at the beginning'); // Insert near the middle // NOTE: Make sure this happens at an even index @@ -191,39 +191,39 @@ test('Predicate function can be bound to source index', function () { alphabet.splice(2, 0, 'b <-> c'); expected = alphabet.filter(filterFn); - ok(equalValues(derived, expected), 'Segment of items are flopped after an insert (in the middle)'); + assert.ok(equalValues(derived, expected), 'Segment of items are flopped after an insert (in the middle)'); // Remove from the middle source.splice(11, 1); alphabet.splice(11, 1); expected = alphabet.filter(filterFn); - ok(equalValues(derived, expected), 'Segment of items are flopped after a remove (in the middle)'); + assert.ok(equalValues(derived, expected), 'Segment of items are flopped after a remove (in the middle)'); // Replace in the middle source.splice(10, 1, '10B'); alphabet.splice(10, 1, '10B'); expected = alphabet.filter(filterFn); - ok(equalValues(derived, expected), 'Items are mostly unchanged after a replace'); + assert.ok(equalValues(derived, expected), 'Items are mostly unchanged after a replace'); // Add at the end source.push('ZZZ'); alphabet.push('ZZZ'); expected = alphabet.filter(filterFn); - ok(equalValues(derived, expected), 'Item is added at the end'); + assert.ok(equalValues(derived, expected), 'Item is added at the end'); // Remove at the end source.pop(); alphabet.pop(); expected = alphabet.filter(filterFn); - ok(equalValues(derived, expected), 'Item is removed from the end'); + assert.ok(equalValues(derived, expected), 'Item is removed from the end'); }); -test('Can derive a filtered list from a filtered list', function () { +QUnit.test('Can derive a filtered list from a filtered list', function(assert) { var letterCollection = []; var total = 4; // 40, because it's evenly divisible by 4 @@ -271,12 +271,12 @@ test('Can derive a filtered list from a filtered list', function () { var expectedThirdQuarter = expectedSecondHalf.filter(firstHalfFilter); var expectedFourthQuarter = expectedSecondHalf.filter(secondHalfFilter); - ok(equalValues(derivedFirstHalf, expectedFirstHalf), '1st half matches expected'); - ok(equalValues(derivedSecondHalf, expectedSecondHalf), '2nd half matches expected'); - ok(equalValues(derivedFirstQuarter, expectedFirstQuarter), '1st quarter matches expected'); - ok(equalValues(derivedSecondQuarter, expectedSecondQuarter), '2nd quarter matches expected'); - ok(equalValues(derivedThirdQuarter, expectedThirdQuarter), '3rd quarter matches expected'); - ok(equalValues(derivedFourthQuarter, expectedFourthQuarter), '4th quarter matches expected'); + assert.ok(equalValues(derivedFirstHalf, expectedFirstHalf), '1st half matches expected'); + assert.ok(equalValues(derivedSecondHalf, expectedSecondHalf), '2nd half matches expected'); + assert.ok(equalValues(derivedFirstQuarter, expectedFirstQuarter), '1st quarter matches expected'); + assert.ok(equalValues(derivedSecondQuarter, expectedSecondQuarter), '2nd quarter matches expected'); + assert.ok(equalValues(derivedThirdQuarter, expectedThirdQuarter), '3rd quarter matches expected'); + assert.ok(equalValues(derivedFourthQuarter, expectedFourthQuarter), '4th quarter matches expected'); }; // Initial values @@ -293,7 +293,7 @@ test('Can derive a filtered list from a filtered list', function () { evaluate(); }); -test('Derived list fires add/remove/length events', function () { +QUnit.test('Derived list fires add/remove/length events', function(assert) { var filterFn = function (value, index) { return value ? true : false; }; @@ -303,20 +303,20 @@ test('Derived list fires add/remove/length events', function () { var expected = alphabet.filter(filterFn); derived.bind('add', function (ev, added, offset) { - ok(true, '"add" event fired'); + assert.ok(true, '"add" event fired'); // NOTE: Use deepEqual to compare values, not list instances - deepEqual(added, ['ZZ'], 'Correct newVal passed to "add" handler'); + assert.deepEqual(added, ['ZZ'], 'Correct newVal passed to "add" handler'); }); derived.bind('remove', function (ev, removed, offset) { - ok(true, '"remove" event fired'); + assert.ok(true, '"remove" event fired'); // NOTE: Use deepEqual to compare values, not list instances - deepEqual(removed, ['D'], 'Correct oldVal passed to "remove" handler'); + assert.deepEqual(removed, ['D'], 'Correct oldVal passed to "remove" handler'); }); derived.bind('length', function (ev, newVal) { - ok('"length" event fired'); - equal(newVal, expected.length, 'Correct newVal passed to "length" handler'); + assert.ok('"length" event fired'); + assert.equal(newVal, expected.length, 'Correct newVal passed to "length" handler'); }); // Add @@ -330,7 +330,7 @@ test('Derived list fires add/remove/length events', function () { source.splice(4, 1); }); -test('Can iterate initial values with .each()', function () { +QUnit.test('Can iterate initial values with .each()', function(assert) { var filterFn = function (value, index) { return value ? true : false; }; @@ -339,11 +339,11 @@ test('Can iterate initial values with .each()', function () { var derived = source.dFilter(filterFn); derived.each(function (value, index) { - equal(value, expected[index], 'Iterated value matches expected value'); + assert.equal(value, expected[index], 'Iterated value matches expected value'); }); }); -test('.attr([index]) returns correct values', function () { +QUnit.test('.attr([index]) returns correct values', function(assert) { var filterFn = function (value, index) { return value ? true : false; }; @@ -352,11 +352,11 @@ test('.attr([index]) returns correct values', function () { var derived = source.dFilter(filterFn); expected.forEach(function (expectedValue, index) { - equal(derived.attr(index), expectedValue, 'Read value matches expected value'); + assert.equal(derived.attr(index), expectedValue, 'Read value matches expected value'); }); }); -test('Predicate function can be passed an object and call a function', function () { +QUnit.test('Predicate function can be passed an object and call a function', function(assert) { var source = new can.List(); var predicateFn = function (value) { var result = value.fullName() === FILTERED_VALUE.fullName(); @@ -380,39 +380,39 @@ test('Predicate function can be passed an object and call a function', function var FILTERED_VALUE = value; var derived = source.dFilter(predicateFn); - equal(derived.attr('length'), 1, 'Length is correct after initial filter'); + assert.equal(derived.attr('length'), 1, 'Length is correct after initial filter'); source.attr(0, FILTERED_VALUE); - equal(derived.attr('length'), 2, 'Length is correct after set'); + assert.equal(derived.attr('length'), 2, 'Length is correct after set'); source.attr('5.id', FILTERED_VALUE.id); - equal(derived.attr('length'), 3, 'Length is correct after change'); + assert.equal(derived.attr('length'), 3, 'Length is correct after change'); }); -test('Get value at index using attr()', function () { +QUnit.test('Get value at index using attr()', function(assert) { var source = new can.List(['a', 'b', 'c']); var derived = source.dFilter(function () { return true; }); - equal(derived.attr(0), 'a', 'Got value using .attr()'); - equal(derived.attr(1), 'b', 'Got value using .attr()'); - equal(derived.attr(2), 'c', 'Got value using .attr()'); + assert.equal(derived.attr(0), 'a', 'Got value using .attr()'); + assert.equal(derived.attr(1), 'b', 'Got value using .attr()'); + assert.equal(derived.attr(2), 'c', 'Got value using .attr()'); }); -test('Emptying a source tree emtpies its filtered tree', function () { +QUnit.test('Emptying a source tree emtpies its filtered tree', function(assert) { var source = new can.List(['a', 'b', 'c', 'd', 'e', 'f']); var filtered = source.dFilter(function () { return true; }); source.splice(0, source.length); - equal(source.length, 0, 'Tree is empty'); - equal(filtered.length, 0, 'Tree is empty'); + assert.equal(source.length, 0, 'Tree is empty'); + assert.equal(filtered.length, 0, 'Tree is empty'); }); -test('Can be used inside a define "get" method', function () { +QUnit.test('Can be used inside a define "get" method', function(assert) { var expectingGet = true; @@ -430,7 +430,7 @@ test('Can be used inside a define "get" method', function () { completed: { get: function () { if (! expectingGet) { - ok(false, '"get" method called unexpectedly'); + assert.ok(false, '"get" method called unexpectedly'); } expectingGet = false; @@ -452,7 +452,7 @@ test('Can be used inside a define "get" method', function () { map.attr('todos').push({ name: 'Pass test', completed: true }); - ok(completed === map.attr('completed'), + assert.ok(completed === map.attr('completed'), 'Derived list instance is the same'); expectingGet = true; @@ -461,11 +461,11 @@ test('Can be used inside a define "get" method', function () { { name: 'Drop mic', completed: true } ])); - ok(completed !== map.attr('completed'), + assert.ok(completed !== map.attr('completed'), 'Derived list instance has changed'); }); -test('Returned list is read-only', function () { +QUnit.test('Returned list is read-only', function(assert) { var list = new can.List(['a', 'b', 'c']); var filtered = list.dFilter(function (value) { return value === 'b'; @@ -473,39 +473,39 @@ test('Returned list is read-only', function () { var expectedLength = filtered.attr('length'); filtered.push({ foo: 'bar'}); - equal(filtered.attr('length'), expectedLength, '.push() had no effect'); + assert.equal(filtered.attr('length'), expectedLength, '.push() had no effect'); filtered.pop(); - equal(filtered.attr('length'), expectedLength, '.pop() had no effect'); + assert.equal(filtered.attr('length'), expectedLength, '.pop() had no effect'); filtered.shift(); - equal(filtered.attr('length'), expectedLength, '.shift() had no effect'); + assert.equal(filtered.attr('length'), expectedLength, '.shift() had no effect'); filtered.unshift({ yo: 'ho' }); - equal(filtered.attr('length'), expectedLength, '.unshift() had no effect'); + assert.equal(filtered.attr('length'), expectedLength, '.unshift() had no effect'); filtered.splice(0, 1); - equal(filtered.attr('length'), expectedLength, '.splice() had no effect'); + assert.equal(filtered.attr('length'), expectedLength, '.splice() had no effect'); filtered.replace(['a', 'b', 'c']); - equal(filtered.attr('length'), expectedLength, '.replace() had no effect'); + assert.equal(filtered.attr('length'), expectedLength, '.replace() had no effect'); }); -test('Derived list can be unbound from source', function () { +QUnit.test('Derived list can be unbound from source', function(assert) { var list = new can.List(['a', 'b', 'c']); var filtered = list.dFilter(function (value) { return value === 'b'; }); - equal(list._bindings, 2, 'Derived list is bound to source list'); + assert.equal(list._bindings, 2, 'Derived list is bound to source list'); // Unbind the derived list from the source (we're not concerned // about the filtered list being bound to the derived list) filtered._source.unbindFromSource(); - equal(list._bindings, 0, + assert.equal(list._bindings, 0, 'Derived list is not bound to the source list'); - equal(list._derivedList, undefined, + assert.equal(list._derivedList, undefined, 'Source list has no reference to the derived list'); -}); \ No newline at end of file +}); diff --git a/package.json b/package.json index cf7a170..b8632ed 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "jshint": "2.7.0", "serve": "1.4.0", "steal": "0.13.0", - "steal-qunit": "0.0.2", + "steal-qunit": "^2.0.0", "steal-tools": "0.13.0", "system-npm": "0.3.0", "testee": "^0.2.0"