mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-17 22:57:21 +01:00
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
33 lines
837 B
JavaScript
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;
|
|
});
|
|
});
|