QUnit.module('Options - Width'); var $ = require('jquery'); var Select2 = require('select2/core'); var select = new Select2($('')); QUnit.test('string passed as width', function (assert) { var $test = $(''); var width = select._resolveWidth($test, '80%'); assert.equal(width, '80%'); }); QUnit.test('width from style attribute', function (assert) { var $test = $(''); var width = select._resolveWidth($test, 'style'); assert.equal(width, null); }); QUnit.test('width from computed element width', function (assert) { var $style = $( '' ); var $test = $(''); $('#qunit-fixture').append($style); $('#qunit-fixture').append($test); var width = select._resolveWidth($test, 'element'); assert.equal(width, '500px'); }); QUnit.test('resolve gets the style if it is there', function (assert) { var $test = $(''); $('#qunit-fixture').append($style); $('#qunit-fixture').append($test); var width = select._resolveWidth($test, 'resolve'); assert.equal(width, '500px'); }); QUnit.test('computedstyle gets the style if parent is invisible', function (assert) { var $style = $( '' ); var $test = $( '
' + '' + '
' ); $('#qunit-fixture').append($style); $('#qunit-fixture').append($test); var width = select._resolveWidth($test.find('select'), 'computedstyle'); assert.equal(width, '500px'); });