123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 |
- module('select2(data)');
- var $ = require('jquery');
- var Select2 = require('select2/core');
- var Options = require('select2/options');
- test('single default selection returned', function (assert) {
- var $select = $(
- '<select>' +
- '<option>One</option>' +
- '<option>Two</option>' +
- '<option value="3" selected>Three</option>' +
- '</select>'
- );
- var options = new Options({});
- var select = new Select2($select, options);
- var items = select.data();
- assert.equal(
- items.length,
- 1,
- 'The one selected item should be returned'
- );
- var first = items[0];
- assert.equal(
- first.id,
- '3',
- 'The first option was correct'
- );
- assert.equal(
- first.text,
- 'Three',
- 'The first option was correct'
- );
- });
- test('multiple default selections returned', function (assert) {
- var $select = $(
- '<select multiple>' +
- '<option selected>One</option>' +
- '<option>Two</option>' +
- '<option value="3" selected>Three</option>' +
- '</select>'
- );
- var options = new Options({});
- var select = new Select2($select, options);
- var items = select.data();
- assert.equal(
- items.length,
- 2,
- 'The two selected items should be returned'
- );
- var first = items[0];
- assert.equal(
- first.id,
- 'One',
- 'The first option was correct'
- );
- var second = items[1];
- assert.equal(
- second.id,
- '3',
- 'The option value should be pulled correctly'
- );
- });
- module('select2(val)');
- test('single value matches jquery value', function (assert) {
- var $select = $(
- '<select>' +
- '<option>One</option>' +
- '<option>Two</option>' +
- '<option value="3" selected>Three</option>' +
- '</select>'
- );
- var options = new Options({});
- var select = new Select2($select, options);
- var value = select.val();
- assert.equal(
- value,
- '3',
- 'The value should match the option tag attribute'
- );
- assert.equal(
- value,
- $select.val(),
- 'The value should match the jquery value'
- );
- });
- test('multiple value matches the jquery value', function (assert) {
- var $select = $(
- '<select multiple>' +
- '<option selected>One</option>' +
- '<option>Two</option>' +
- '<option value="3" selected>Three</option>' +
- '</select>'
- );
- var options = new Options({});
- var select = new Select2($select, options);
- var value = select.val();
- assert.equal(
- value.length,
- 2,
- 'Two options should be selected'
- );
- assert.deepEqual(
- value,
- ['One', '3'],
- 'The values should match the option tag attribute'
- );
- assert.deepEqual(
- value,
- $select.val(),
- 'The values should match the jquery values'
- );
- });
|