]> source.dussan.org Git - jquery-ui.git/commitdiff
Core tests: Tests for :data selector.
authorScott González <scott.gonzalez@gmail.com>
Thu, 22 Jan 2009 01:45:42 +0000 (01:45 +0000)
committerScott González <scott.gonzalez@gmail.com>
Thu, 22 Jan 2009 01:45:42 +0000 (01:45 +0000)
tests/unit/core/selector.js

index 73df0c3fc8e314d6a395c8ad00a7393fa553981c..0e647d4530b3f8d85732f6fb1fd5857e6587a84f 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * core unit tests
+ * selector unit tests
  */
 (function($) {
 
@@ -21,6 +21,63 @@ function isNotTabbable(selector, msg) {
        ok($(selector).length && !$(selector).is(':tabbable'), msg);
 }
 
+test("data", function() {
+       expect(15);
+       
+       var el;
+       function shouldHaveData(msg) {
+               ok(el.is(':data(test)'), msg);
+       }
+       function shouldNotHaveData(msg) {
+               ok(!el.is(':data(test)'), msg);
+       }
+       
+       el = $('<div/>');
+       shouldNotHaveData('data never set');
+       
+       el = $('<div/>').data('test', null);
+       shouldNotHaveData('data is null');
+       
+       el = $('<div/>').data('test', true);
+       shouldHaveData('data set to true');
+       
+       el = $('<div/>').data('test', false);
+       shouldNotHaveData('data set to false');
+       
+       el = $('<div/>').data('test', 0);
+       shouldNotHaveData('data set to 0');
+       
+       el = $('<div/>').data('test', 1);
+       shouldHaveData('data set to 1');
+       
+       el = $('<div/>').data('test', '');
+       shouldNotHaveData('data set to empty string');
+       
+       el = $('<div/>').data('test', 'foo');
+       shouldHaveData('data set to string');
+       
+       el = $('<div/>').data('test', []);
+       shouldHaveData('data set to empty array');
+       
+       el = $('<div/>').data('test', [1]);
+       shouldHaveData('data set to array');
+       
+       el = $('<div/>').data('test', {});
+       shouldHaveData('data set to empty object');
+       
+       el = $('<div/>').data('test', {foo: 'bar'});
+       shouldHaveData('data set to object');
+       
+       el = $('<div/>').data('test', new Date());
+       shouldHaveData('data set to date');
+       
+       el = $('<div/>').data('test', /test/);
+       shouldHaveData('data set to regexp');
+       
+       el = $('<div/>').data('test', function() {});
+       shouldHaveData('data set to function');
+});
+
 test("focusable - visible, enabled elements", function() {
        expect(18);