diff options
author | Yehuda Katz <wycats@gmail.com> | 2009-07-12 15:14:01 +0000 |
---|---|---|
committer | Yehuda Katz <wycats@gmail.com> | 2009-07-12 15:14:01 +0000 |
commit | d857315967a1cc07b73924bbdf2eb12f4f910c45 (patch) | |
tree | 3fc74e29ff61cc0e78f257d5c92cce1dda7a742b /test | |
parent | 89b4bc53ca0ca3d4e5c80b94ce92b09cc34af8ef (diff) | |
download | jquery-d857315967a1cc07b73924bbdf2eb12f4f910c45.tar.gz jquery-d857315967a1cc07b73924bbdf2eb12f4f910c45.zip |
Add clearQueue for clearing non-fx queues
Diffstat (limited to 'test')
-rw-r--r-- | test/unit/data.js | 98 |
1 files changed, 97 insertions, 1 deletions
diff --git a/test/unit/data.js b/test/unit/data.js index 3389ef3d7..5d390e1a2 100644 --- a/test/unit/data.js +++ b/test/unit/data.js @@ -159,7 +159,7 @@ test("queue() with other types",function() { $div.removeData();
});
-test("queue() passes in the next item in the queue as a parameter", function() {
+test("queue(name) passes in the next item in the queue as a parameter", function() {
expect(2);
var div = jQuery({});
@@ -178,4 +178,100 @@ test("queue() passes in the next item in the queue as a parameter", function() { div.dequeue("foo");
div.removeData();
+});
+
+ expect(1);
+
+ var div = jQuery({});
+ var counter = 0;
+
+ div.queue("foo", function(next) {
+ counter++;
+ jQuery(this).clearQueue("foo");
+ next();
+ }).queue("foo", function(next) {
+ counter++;
+ });
+
+ div.dequeue("foo");
+
+ equals(counter, 1, "the queue was cleared");
+test("queue(name) passes in the next item in the queue as a parameter", function() {
+ expect(2);
+
+ var div = jQuery({});
+ var counter = 0;
+
+ div.queue("foo", function(next) {
+ equals(++counter, 1, "Dequeueing");
+ next();
+ }).queue("foo", function(next) {
+ equals(++counter, 2, "Next was called");
+ next();
+ }).queue("bar", function() {
+ equals(++counter, 3, "Other queues are not triggered by next()")
+ });
+
+ div.dequeue("foo");
+
+ div.removeData();
+});
+
+test("queue() passes in the next item in the queue as a parameter to fx queues", function() {
+ expect(2);
+
+ var div = jQuery({});
+ var counter = 0;
+
+ div.queue(function(next) {
+ equals(++counter, 1, "Dequeueing");
+ next();
+ }).queue(function(next) {
+ equals(++counter, 2, "Next was called");
+ next();
+ }).queue(function() {
+ equals(++counter, 3, "Other queues are not triggered by next()")
+ });
+
+ div.dequeue();
+
+ div.removeData();
+});
+
+test("clearQueue(name) clears the queue", function() {
+ expect(1);
+
+ var div = jQuery({});
+ var counter = 0;
+
+ div.queue("foo", function(next) {
+ counter++;
+ jQuery(this).clearQueue("foo");
+ next();
+ }).queue("foo", function(next) {
+ counter++;
+ });
+
+ div.dequeue("foo");
+
+ equals(counter, 1, "the queue was cleared");
+});
+
+test("clearQueue() clears the fx queue", function() {
+ expect(1);
+
+ var div = jQuery({});
+ var counter = 0;
+
+ div.queue(function(next) {
+ counter++;
+ jQuery(this).clearQueue();
+ next();
+ }).queue(function(next) {
+ counter++;
+ });
+
+ div.dequeue();
+
+ equals(counter, 1, "the queue was cleared");
})
|