diff options
Diffstat (limited to 'public/bower_components/select2/tests/selection/placeholder-tests.js')
-rw-r--r-- | public/bower_components/select2/tests/selection/placeholder-tests.js | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/public/bower_components/select2/tests/selection/placeholder-tests.js b/public/bower_components/select2/tests/selection/placeholder-tests.js new file mode 100644 index 0000000..8a436ff --- /dev/null +++ b/public/bower_components/select2/tests/selection/placeholder-tests.js @@ -0,0 +1,74 @@ +module('Selection containers - Placeholders'); + +var Placeholder = require('select2/selection/placeholder'); +var SingleSelection = require('select2/selection/single'); + +var $ = require('jquery'); +var Options = require('select2/options'); +var Utils = require('select2/utils'); + +var SinglePlaceholder = Utils.Decorate(SingleSelection, Placeholder); + +var placeholderOptions = new Options({ + placeholder: { + id: 'placeholder', + text: 'This is the placeholder' + } +}); + +test('normalizing placeholder ignores objects', function (assert) { + var selection = new SinglePlaceholder( + $('#qunit-fixture .single'), + placeholderOptions + ); + + var original = { + id: 'test', + text: 'testing' + }; + + var normalized = selection.normalizePlaceholder(original); + + assert.equal(original, normalized); +}); + +test('normalizing placeholder gives object for string', function (assert) { + var selection = new SinglePlaceholder( + $('#qunit-fixture .single'), + placeholderOptions + ); + + var normalized = selection.normalizePlaceholder('placeholder'); + + assert.equal(normalized.id, ''); + assert.equal(normalized.text, 'placeholder'); +}); + + +test('text is shown for placeholder option on single', function (assert) { + var selection = new SinglePlaceholder( + $('#qunit-fixture .single'), + placeholderOptions + ); + + var $selection = selection.render(); + + selection.update([{ + id: 'placeholder' + }]); + + assert.equal($selection.text(), 'This is the placeholder'); +}); + +test('placeholder is shown when no options are selected', function (assert) { + var selection = new SinglePlaceholder( + $('#qunit-fixture .multiple'), + placeholderOptions + ); + + var $selection = selection.render(); + + selection.update([]); + + assert.equal($selection.text(), 'This is the placeholder'); +}); |