%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
module('Dropdown - selectOnClose'); var $ = require('jquery'); var Utils = require('select2/utils'); var Options = require('select2/options'); var SelectData = require('select2/data/select'); var Results = require('select2/results'); var SelectOnClose = require('select2/dropdown/selectOnClose'); var ModifiedResults = Utils.Decorate(Results, SelectOnClose); var options = new Options({ selectOnClose: true }); test('will not trigger if no results were given', function (assert) { assert.expect(0); var $element = $('<select></select>'); var select = new ModifiedResults($element, options, new SelectData($element)); var $dropdown = select.render(); var container = new MockContainer(); select.bind(container, $('<div></div>')); select.on('select', function () { assert.ok(false, 'The select event should not have been triggered'); }); container.trigger('close'); }); test('will not trigger if the results list is empty', function (assert) { assert.expect(1); var $element = $('<select></select>'); var select = new ModifiedResults($element, options, new SelectData($element)); var $dropdown = select.render(); var container = new MockContainer(); select.bind(container, $('<div></div>')); select.on('select', function () { assert.ok(false, 'The select event should not have been triggered'); }); select.append({ results: [] }); assert.equal( $dropdown.find('li').length, 0, 'There should not be any results in the dropdown' ); container.trigger('close'); }); test('will not trigger if no results here highlighted', function (assert) { assert.expect(2); var $element = $('<select></select>'); var select = new ModifiedResults($element, options, new SelectData($element)); var $dropdown = select.render(); var container = new MockContainer(); select.bind(container, $('<div></div>')); select.on('select', function () { assert.ok(false, 'The select event should not have been triggered'); }); select.append({ results: [ { id: '1', text: 'Test' } ] }); assert.equal( $dropdown.find('li').length, 1, 'There should be one result in the dropdown' ); assert.equal( $.trim($dropdown.find('li').text()), 'Test', 'The result should be the same as the one we appended' ); container.trigger('close'); }); test('will trigger if there is a highlighted result', function (assert) { assert.expect(2); var $element = $('<select></select>'); var select = new ModifiedResults($element, options, new SelectData($element)); var $dropdown = select.render(); var container = new MockContainer(); select.bind(container, $('<div></div>')); select.on('select', function () { assert.ok(true, 'The select event should have been triggered'); }); select.append({ results: [ { id: '1', text: 'Test' } ] }); assert.equal( $dropdown.find('li').length, 1, 'There should be one result in the dropdown' ); $dropdown.find('li').addClass('select2-results__option--highlighted'); container.trigger('close'); });