Files
habitica/test/spec/controllers/sortableInventoryCtrlSpec.js
Matt Harrington a6fb945120 inventory sorting
Add inventory sorting buttons based on name, attribute, and set (armoire):
-  Each gear[klass] has its own sorting buttons and sorting state including costume classes
-  The attributes sort descending when selected, then by sum of all attributes
-  There is no default sort
-  The armoire also sorts by set which sorts by item[set] descending, it does not sort within a set (ex "1 of 3" vs "2 of 3")
-  Name sorts by .text() ascending
2016-03-15 19:41:11 -05:00

33 lines
837 B
JavaScript

'use strict';
describe('Sortable Inventory Controller', function() {
var scope;
beforeEach(inject(function($rootScope, $controller) {
scope = $rootScope.$new();
$controller('SortableInventoryController', {$scope: scope});
}));
it('has no default sort order', function(){
expect(scope.order).to.not.exist;
});
it('sets sort criteria for all standard attributes', function(){
var oldOrder = scope.order;
var attrs = ['con', 'int', 'per', 'str', 'name', 'set'];
attrs.forEach(function (attribute) {
scope.setOrder(attribute);
expect(scope.order).to.exist;
expect(scope.order).to.not.eql(oldOrder);
oldOrder = scope.order;
});
});
it('does nothing when missing sort criteria', function(){
scope.setOrder('foooo');
expect(scope.order).to.not.exist;
});
});