double async check
authorWolfram Schneider <wosch@indexdata.dk>
Fri, 23 Aug 2013 12:20:07 +0000 (14:20 +0200)
committerWolfram Schneider <wosch@indexdata.dk>
Fri, 23 Aug 2013 12:20:07 +0000 (14:20 +0200)
test/spec/async.spec.js

index 8aa5bd5..8c84ea8 100644 (file)
@@ -9,7 +9,7 @@ describe("Asynchronous check", function () {
     });
 
     // Asynchronous part
-    it("check running search", function () {
+    it("simple check", function () {
         var max_time = 1;
         var timer = 0;
 
@@ -37,6 +37,47 @@ describe("Asynchronous check", function () {
         runs(function () {
             expect(timer).toEqual(max_time);
         });
+    });
+
+
+    it("double async check", function () {
+        var max_time = 0.5;
+        var timer = 0;
+
+        function found(time, none) {
+            setTimeout(function () {
+                timer = time;
+            }, time * 1000);
+        }
+
+        runs(function () {
+            found(0);
+            found(0.2);
+            found(max_time - 0.1);
+        });
+
+        waitsFor(function () {
+            return timer == max_time - 0.1 ? true : false;
+        }, "The Value should be N seconds", max_time * 1000);
+
+        runs(function () {
+            expect(timer <= max_time).toBeTruthy();
+        });
+
+        timer = 0;
+        runs(function () {
+            found(0.1);
+            found(max_time);
+        });
 
+        waitsFor(function () {
+            // console.log("waits for ... " + timer);
+            return timer == max_time ? true : false;
+        }, "The Value should be N seconds", max_time * 1000);
+
+        runs(function () {
+            expect(timer <= max_time).toBeTruthy();
+        });
     });
+
 });