The company name is: Index Data
[mkws-moved-to-github.git] / test / spec / mkws-pazpar2.js
index 4ce2127..10f3336 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (c) 2013-2014 IndexData ApS. http://indexdata.com
+/* Copyright (c) 2013-2014 Index Data ApS. http://indexdata.com
  *
  * perform papzpar2 / pz2.js search & retrieve request in the browser
  *
@@ -56,28 +56,30 @@ function init_jasmine_config() {
     }
 
     mkws.jasmine_done = false;
-}
-
-var get_hit_counter = function () {
-        // not yet here
-        if ($(".mkwsPager").length == 0) return -1;
-
-        var found = $(".mkwsPager").text();
-        var re = /\([A-Za-z]+:\s+([0-9]+)\)/;
-        re.exec(found);
-        var hits = -1;
+};
 
-        if (RegExp.$1) {
-            hits = parseInt(RegExp.$1);
-            if (hits <= 0) {
-                debug("Oooops in get_hit_counter: " + RegExp.$1 + " '" + found + "'");
-            }
+function get_hit_counter() {
+    var $ = mkws.$;
+    // not yet here
+    if ($(".mkwsPager").length == 0) return -1;
+
+    var found = $(".mkwsPager").text();
+    var re = /\([A-Za-z]+:\s+([0-9]+)\)/;
+    re.exec(found);
+    var hits = -1;
+
+    if (RegExp.$1) {
+        hits = parseInt(RegExp.$1);
+        if (hits <= 0) {
+            debug("Oooops in get_hit_counter: " + RegExp.$1 + " '" + found + "'");
         }
-
-        //debug("Hits: " + hits);
-        return hits;
     }
 
+    //debug("Hits: " + hits);
+    return hits;
+};
+
+/******************************************************************************/
 describe("Init jasmine config", function () {
     it("jasmine was successfully initialized", function () {
         init_jasmine_config();
@@ -91,6 +93,8 @@ describe("Init jasmine config", function () {
 
 //disabled
 xdescribe("Check MOTD before search", function () {
+    var $ = mkws.$;
+
     // Check that the MOTD has been moved into its container, and
     // is visible before the search.
     // the mkwsMOTD div was originally inside a testMOTD div, which should
@@ -696,14 +700,14 @@ describe("Check SortBy options", function () {
 
         waitsFor(function () {
             //debug("wait for2: " + waitcount);
-            return waitcount >= per_page_number ? true : false;
+            return waitcount >= (per_page_number + 10) ? true : false;
         }, "DOM change mkwsRecords, by sort page", 3 * jasmine_config.second);
 
         runs(function () {
             $("div.mkwsRecords").unbind("DOMNodeInserted DOMNodeRemoved propertychange");
             debug("unbind by sort");
 
-            var records = $("div.mkwsRecords > div.mkwsSummary a");
+            var records = $("div.mkwsRecords > div.mkwsSummary > a");
             debug("Sort by got now " + records.length + " records");
             expect(records.length).toBe(per_page_number);
         });
@@ -724,6 +728,17 @@ describe("Check SortBy options", function () {
     });
 });
 
+describe("Check async widget discovery", function () {
+  var $ = mkws.$;
+  it("initialises a new widget", function() {
+    $("div.mkwsSearch").after('<div id="asyncSearch"><div id="asyncSearch" class="mkwsSearch mkwsTeam_async"></div></div>');
+    mkws.init("Another search box");
+    // mkws.init("Another search box", "#asyncSearch");
+    waitsFor(function () {
+      return $("#asyncSearch input").length >= 1 ? true : false;
+    }, "Call init() to build an .mkwsSearch", 750);
+  });
+});
 
 /* done */
 describe("All tests are done", function () {