Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This adds three tests related to focusing selected items in the results. The tests are for e897d00 and 9f58128.
- Loading branch information
1 parent
9f58128
commit acd3306
Showing
2 changed files
with
140 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,138 @@ | ||
module('Results - highlighting results'); | ||
|
||
test('results:all with no data skips results:focus', function (assert) { | ||
expect(0); | ||
|
||
var $ = require('jquery'); | ||
|
||
var $select = $('<select></select>'); | ||
var $parent = $('<div></div>'); | ||
|
||
var $container = $('<span></span>'); | ||
var container = new MockContainer(); | ||
|
||
$parent.appendTo($('#qunit-fixture')); | ||
$select.appendTo($parent); | ||
|
||
var Utils = require('select2/utils'); | ||
var Options = require('select2/options'); | ||
|
||
var Results = require('select2/results'); | ||
|
||
var results = new Results($select, new Options({})); | ||
|
||
// Fake the data adapter for the `setClasses` method | ||
results.data = {}; | ||
results.data.current = function (callback) { | ||
callback([{ id: 'test' }]); | ||
}; | ||
|
||
results.render(); | ||
|
||
results.bind(container, $container); | ||
|
||
results.on('results:focus', function (params) { | ||
assert.ok(false, 'The results:focus event was triggered'); | ||
}); | ||
|
||
container.trigger('results:all', { | ||
data: { | ||
results: [] | ||
} | ||
}); | ||
}); | ||
|
||
test('results:all triggers results:focus on the first item', function (assert) { | ||
expect(2); | ||
|
||
var $ = require('jquery'); | ||
|
||
var $select = $('<select></select>'); | ||
var $parent = $('<div></div>'); | ||
|
||
var $container = $('<span></span>'); | ||
var container = new MockContainer(); | ||
|
||
$parent.appendTo($('#qunit-fixture')); | ||
$select.appendTo($parent); | ||
|
||
var Utils = require('select2/utils'); | ||
var Options = require('select2/options'); | ||
|
||
var Results = require('select2/results'); | ||
|
||
var results = new Results($select, new Options({})); | ||
|
||
// Fake the data adapter for the `setClasses` method | ||
results.data = {}; | ||
results.data.current = function (callback) { | ||
callback([{ id: 'test' }]); | ||
}; | ||
|
||
results.render(); | ||
|
||
results.bind(container, $container); | ||
|
||
results.on('results:focus', function (params) { | ||
assert.equal(params.data.id, 'test'); | ||
assert.equal(params.data.text, 'Test'); | ||
}); | ||
|
||
container.trigger('results:all', { | ||
data: { | ||
results: [ | ||
{ | ||
id: 'test', | ||
text: 'Test' | ||
} | ||
] | ||
} | ||
}); | ||
}); | ||
|
||
test('results:append does not trigger results:focus', function (assert) { | ||
expect(0); | ||
|
||
var $ = require('jquery'); | ||
|
||
var $select = $('<select></select>'); | ||
var $parent = $('<div></div>'); | ||
|
||
var $container = $('<span></span>'); | ||
var container = new MockContainer(); | ||
|
||
$parent.appendTo($('#qunit-fixture')); | ||
$select.appendTo($parent); | ||
|
||
var Utils = require('select2/utils'); | ||
var Options = require('select2/options'); | ||
|
||
var Results = require('select2/results'); | ||
|
||
var results = new Results($select, new Options({})); | ||
|
||
// Fake the data adapter for the `setClasses` method | ||
results.data = {}; | ||
results.data.current = function (callback) { | ||
callback([{ id: 'test' }]); | ||
}; | ||
|
||
results.render(); | ||
|
||
results.bind(container, $container); | ||
|
||
results.on('results:focus', function () { | ||
assert.ok(false, 'The results:focus event was triggered'); | ||
}); | ||
|
||
container.trigger('results:append', { | ||
data: { | ||
results: [ | ||
{ | ||
id: 'test', | ||
text: 'Test' | ||
} | ||
] | ||
} | ||
}); | ||
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters