From 7b7eaa25c00c481ca131c5dd66d91e62d372912b Mon Sep 17 00:00:00 2001 From: David DeSandro Date: Tue, 27 Aug 2013 09:38:05 -0400 Subject: [PATCH] sorting test --- notes.md | 11 ------- test/index.html | 2 +- test/sorting.js | 79 ++++++++++++++++++++++++++++++++++++++++++++++++ test/sorting1.js | 44 --------------------------- 4 files changed, 80 insertions(+), 56 deletions(-) create mode 100644 test/sorting.js delete mode 100644 test/sorting1.js diff --git a/notes.md b/notes.md index e94fa7d..e7d45a2 100644 --- a/notes.md +++ b/notes.md @@ -8,20 +8,9 @@ manageStamp ## tests -sortBy an array - -sortBy the history - getSortData shorthand filter -filter on init doesn't do transition - -sortAscending - -sortAscending for object - - ## bugs diff --git a/test/index.html b/test/index.html index d35292a..f736ad9 100644 --- a/test/index.html +++ b/test/index.html @@ -27,7 +27,7 @@ - + diff --git a/test/sorting.js b/test/sorting.js new file mode 100644 index 0000000..f7874f2 --- /dev/null +++ b/test/sorting.js @@ -0,0 +1,79 @@ +( function() { + +'use strict'; + +var docElem = document.documentElement; + +var getText = docElem.textContent ? + function( elem ) { + return elem.textContent; + } : + function( elem ) { + return elem.innerText; + }; + +function getItemsText( iso ) { + var texts = []; + for ( var i=0, len = iso.filteredItems.length; i < len; i++ ) { + var item = iso.filteredItems[i]; + texts.push( getText( item.element ) ); + } + return texts.join(','); +} + +test( 'sorting', function() { + + // sorting with history + ( function() { + var iso = new Isotope( '#sorting1', { + layoutMode: 'fitRows', + transitionDuration: 0, + getSortData: { + letter: 'b', + number: 'i' + }, + sortBy: 'number' + }); + + iso.layout({ sortBy: 'letter' }); + + var texts = getItemsText( iso ); + + equal( texts, 'A1,A2,A3,A4,B1,B2,B4', 'items sorted by letter, then number, via history' ); + + iso.destroy(); + })(); + + // sorting with array + ( function() { + var iso = new Isotope( '#sorting1', { + layoutMode: 'fitRows', + transitionDuration: 0, + getSortData: { + letter: 'b', + number: 'i' + }, + sortBy: [ 'letter', 'number' ] + }); + + equal( getItemsText( iso ), 'A1,A2,A3,A4,B1,B2,B4', 'sortBy array' ); + + iso.layout({ + sortAscending: false + }); + equal( getItemsText( iso ), 'B4,B2,B1,A4,A3,A2,A1', 'sortAscending false' ); + + iso.layout({ + sortAscending: { + letter: true, + number: false + } + }); + equal( getItemsText( iso ), 'A4,A3,A2,A1,B4,B2,B1', 'sortAscending with object' ); + + iso.destroy(); + })(); + +}); + +})(); diff --git a/test/sorting1.js b/test/sorting1.js deleted file mode 100644 index 7a0bec3..0000000 --- a/test/sorting1.js +++ /dev/null @@ -1,44 +0,0 @@ -( function() { - -'use strict'; - -var docElem = document.documentElement; - -var getText = docElem.textContent ? - function( elem ) { - return elem.textContent; - } : - function( elem ) { - return elem.innerText; - }; - -function getItemsText( iso ) { - var texts = []; - for ( var i=0, len = iso.filteredItems.length; i < len; i++ ) { - var item = iso.filteredItems[i]; - texts.push( getText( item.element ) ); - } - return texts.join(','); -} - -test( 'sort uses history', function() { - var iso = new Isotope( '#sorting1', { - layoutMode: 'fitRows', - transitionDuration: 0, - getSortData: { - letter: 'b', - number: 'i' - }, - sortBy: 'number' - }); - - iso.layout({ sortBy: 'letter' }); - - var texts = getItemsText( iso ); - - equal( texts, 'A1,A2,A3,A4,B1,B2,B4', 'items sorted by letter, then number, via history' ); - - iso.destroy(); -}); - -})();