*
*/
-function my_click(id, time) {
- setTimeout(function () {
- debug("trigger click on id: " + id);
- $(id).trigger("click");
- }, time * 1000);
-}
-
-function found(time) {
- setTimeout(function () {
- var found = $("#mkwsPager").html().match(/found: ([0-9]+)/);
- debug("mkws pager found records: " + (found != null ? found[0] : "unknown"));
- }, time * 1000);
-}
-
describe("Check pazpar2 search", function () {
it("pazpar2 was successfully initialize", function () {
expect(mkws_config.error).toBe(undefined);
$("input#mkwsButton").trigger("click");
}, 3 * 1000);
});
+});
+
+
+describe("Check pazpar2 navigation", function () {
+ // Asynchronous part
+ it("check running search next/prev", function () {
+ expect($("#mkwsPager").length == 1).toBe(true);
+
+ function my_click(id, time) {
+ setTimeout(function () {
+ debug("trigger click on id: " + id);
+ $(id).trigger("click");
+ expect(time >= 0).toBeTruthy();
+ }, time * 1000);
+ }
+
+ runs(function () {
+ // click next/prev after N seconds
+ my_click("#mkwsNext", 7);
+ my_click("#mkwsNext", 10);
+ my_click("#mkwsPrev", 12);
+ });
+ });
+});
+
+describe("Check pazpar2 hit counter", function () {
+ it("check running search hit counter", function () {
+ var max_time = 13;
+ var j_time = 0;
+ var j_hits = 0;
- it("check running search", function () {
- my_click("#mkwsNext", 10);
- my_click("#mkwsNext", 13);
- my_click("#mkwsPrev", 15);
+ function found(time, none) {
+ describe("found hits", function () {
+ setTimeout(function () {
+ j_time = time;
- if ($("#mkwsPager").length) {
- found(0);
+ var found = $("#mkwsPager").text();
+ var re = /found: ([0-9]+)/;
+ re.exec(found);
+ var hits = -1;
+
+ if (RegExp.$1) {
+ hits = RegExp.$1;
+ expect(hits).toBeGreaterThan(0);
+ }
+
+ // debug("found: " + found);
+ if (none) {
+ expect(hits < 0).toBeTruthy();
+ } else {
+ j_hits = hits;
+ }
+
+ debug("mkws pager found records: '" + hits + "'");
+ debug("time state: " + j_time);
+
+ expect(time >= 0).toBeTruthy();
+ }, time * 1000);
+ });
+ }
+
+ runs(function () {
+ // check hit counter after N seconds
+ found(0, true);
found(5);
found(10);
found(15);
- found(25);
+ found(max_time);
+ });
- } else {
- debug("no mkws page found");
- }
- });
+ waitsFor(function () {
+ return j_time == max_time ? true : false;
+ }, "The Value should be 20 seconds", 30 * 1000); // (max_time + 1) * 1000);
+ runs(function () {
+ expect($("#mkwsPager").length == 1).toBe(true);
+ })
+ runs(function () {
+ expect(j_time <= max_time).toBeTruthy();
+ expect(j_hits > 0).toBeTruthy();
+ });
+ });
});