Browse Source

Added two test cases (zero and empty string check)

This adds two test cases for 16b4840c0e2df0461998e3b464ee0a546173950d.
Kevin Brown 8 years ago
parent
commit
0358ee5287
1 changed files with 32 additions and 0 deletions
  1. 32 0
      tests/data/select-tests.js

+ 32 - 0
tests/data/select-tests.js

@@ -455,3 +455,35 @@ test('data objects use the text of the option', function (assert) {
   assert.equal(item.id, '&');
   assert.equal(item.text, '&');
 });
+
+test('select option construction accepts id=0 (zero) value', function (assert) {
+  var $select = $('#qunit-fixture .single');
+
+  var selectOptions = [{ id: 0, text: 'Zero Value'}];
+  var data = new SelectData($select, selectOptions);
+
+  var optionElem = data.option(selectOptions[0]);
+
+  // If was "Zero Value"", then it ignored id property
+  assert.equal(
+    optionElem[0].value,
+    '0',
+    'Built option value should be "0" (zero as a string).'
+  );
+});
+
+test('select option construction accepts id="" (empty string) value',
+  function (assert) {
+  var $select = $('#qunit-fixture .single');
+
+  var selectOptions = [{ id: '', text: 'Empty String'}];
+  var data = new SelectData($select, selectOptions);
+
+  var optionElem = data.option(selectOptions[0]);
+
+  assert.equal(
+    optionElem[0].value,
+    '',
+    'Built option value should be an empty string.'
+  );
+});