X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=test%2Fspec%2Fmkws-pazpar2.js;h=211b61c9e2c336a878d33b3d8ecd8b493c53c038;hb=ba4eb503acca0f5208aca788b23437b0101cba86;hp=4ce2127c858eeb4b7c954c8fb21c86c143c62b63;hpb=65d410c83fe9a7dc5279944fa5ebdb4452d3f5d1;p=mkws-moved-to-github.git diff --git a/test/spec/mkws-pazpar2.js b/test/spec/mkws-pazpar2.js index 4ce2127..211b61c 100644 --- a/test/spec/mkws-pazpar2.js +++ b/test/spec/mkws-pazpar2.js @@ -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 @@ -250,7 +254,7 @@ describe("Check Termlist", function () { waitsFor(function () { return $("div.mkwsFacet[data-mkws-facet='author'] div.mkwsTerm").length >= 2 ? true : false; - }, "At least one author link displayed", 4 * jasmine_config.second); + }, "At least two author link displayed", 4 * jasmine_config.second); runs(function () { expect($("div.mkwsFacet[data-mkws-facet='author'] div.mkwsTerm").length).toBeGreaterThan(1); @@ -672,7 +676,7 @@ describe("Check SortBy options", function () { var list = []; var terms = $("div.mkwsRecords > div.mkwsSummary > a"); for (var i = 0; i < terms.length; i++) { - var term = $(terms[i]).text(); + var term = $(terms[i]).text().trim(); list.push(term); // debug(prefix + "title: " + term); } @@ -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); }); @@ -712,7 +716,7 @@ describe("Check SortBy options", function () { var title_list_new = title_list("yyy "); var diff_flag = 0; for (var i = 0; i < title_list_old.length; i++) { - debug(title_list_old[i] + " :: " + title_list_new[i]); + debug((i+1) + ". " + title_list_old[i] + " :: " + title_list_new[i]); if (title_list_old[i] != title_list_new[i]) { diff_flag++; @@ -724,6 +728,24 @@ describe("Check SortBy options", function () { }); }); +describe("Check async widget discovery", function () { + var $ = mkws.$; + it("initialises a new widget", function() { + $("div.mkwsSearch").after('
'); + mkws.init("Another search box", "#asyncSearch"); + waitsFor(function () { + return $("#asyncSearch input").length >= 1 ? true : false; + }, "Call init() to build an .mkwsSearch", 750); + runs(function () { + var numInput = $("div.mkwsSearch input").length; + debug("Input elements present: " + numInput); + expect(numInput).toBe(4); + var numRec = $("div.mkwsRecords > div.mkwsSummary > a").length; + debug("Records should still be present. There are: " + numRec); + expect(numRec).toBeGreaterThan(0); + }); + }); +}); /* done */ describe("All tests are done", function () {