describe("javascript options", function() { var $multiselect, $multiselect_to; beforeEach(function() { var html = '
'+ '
'+ ' '+ '
'+ ' '+ '
'+ ' '+ ' '+ ' '+ ' '+ '
'+ ' '+ '
'+ ' '+ '
'+ '
'; jasmine.getFixtures().set(html); $multiselect = $('.js-multiselect').multiselect({ right: '#js_multiselect_to_1', rightAll: '#js_right_All_1', rightSelected: '#js_right_Selected_1', leftSelected: '#js_left_Selected_1', leftAll: '#js_left_All_1' }); $multiselect_to = $('#js_multiselect_to_1'); }); it("multiselect is instantiated and contains options", function() { expect($multiselect.hasClass('js-multiselect')).toBe(true); expect($multiselect.find('option').length).toBe(5); expect($multiselect_to.attr('id')).toBe('js_multiselect_to_1'); expect($multiselect_to.find('option').length).toBe(0); }); it("move all to right", function() { // Click move all to right $('#js_right_All_1').trigger('click'); expect($multiselect.find('option').length).toBe(0); expect($multiselect_to.find('option').length).toBe(5); }); it("move one to right", function() { $multiselect.find('option:eq(0)').attr('selected', true); // Click move selected to right $('#js_right_Selected_1').trigger('click'); expect($multiselect.find('option').length).toBe(4); expect($multiselect_to.find('option').length).toBe(1); }); it("move all selected to right", function() { $multiselect.find('option:nth-child(2n)').attr('selected', true); // Click move selected to right $('#js_right_Selected_1').trigger('click'); expect($multiselect.find('option').length).toBe(3); expect($multiselect_to.find('option').length).toBe(2); }); it("move all to left", function() { // Click move all to right $('#js_right_All_1').trigger('click'); // Click move all to left $('#js_left_All_1').trigger('click'); expect($multiselect.find('option').length).toBe(5); expect($multiselect_to.find('option').length).toBe(0); }); it("move one to left", function() { // Click move all to right $('#js_right_All_1').trigger('click'); $multiselect_to.find('option:eq(0)').attr('selected', true); // Click move selected to right $('#js_left_Selected_1').trigger('click'); expect($multiselect.find('option').length).toBe(1); expect($multiselect_to.find('option').length).toBe(4); }); it("move all selected to left", function() { // Click move all to right $('#js_right_All_1').trigger('click'); $multiselect_to.find('option:nth-child(2n)').attr('selected', true); // Click move selected to right $('#js_left_Selected_1').trigger('click'); expect($multiselect.find('option').length).toBe(2); expect($multiselect_to.find('option').length).toBe(3); }); });