new target check-dev
[mkws-moved-to-github.git] / test / spec-dev / mkws.spec.js
1 xdescribe("jsdom/jQuery suite simple", function () {
2     it("jsdom test", function () {
3         var jsdom = require("jsdom");
4         var DOMParser = require('xmldom').DOMParser;
5
6         var w = undefined;
7         var $ = undefined;
8
9         jsdom.env({
10             url: "http://mkws-dev.indexdata.com/jasmine-local-popup.html",
11             scripts: [""],
12             features: {
13                 FetchExternalResources: ["script"]
14             },
15
16             done: function (errors, window) {
17                 var DOMParser = require('xmldom').DOMParser;
18
19                 w = window;
20                 $ = window.$;
21
22                 $(window).ready(function () {
23                     console.log("document ready event");
24                     console.log("mkws: " + window.mkws_config.pazpar2_url);
25
26                     // setTimeout( function () { console.log("timeer...") }, 1000);
27                 });
28
29                 // spyOn(window, 'alert').andCallFake(function(msg) {  console.log("fake allert: " + msg); });
30                 window.alert = console.log;
31                 window.console = console;
32
33                 console.log("window.DOMParser: " + window.DOMParser);
34                 console.log("window.document: " + window.document);
35
36
37                 var xmlstring = "<rss version='2.0' jsessionId='CD8AFDD3040A81CFFDDD4EC066497139'><channel><title>RSS Title</title></channel></rss>";
38                 $.parseXML = function (data) {
39                     return new DOMParser().parseFromString(data)
40                 };;
41                 console.log("parseXML: " + $.parseXML(xmlstring).documentElement.getAttribute('jsessionId'));
42             }
43         });
44
45         waitsFor(function () {
46             if (!w) {
47                 console.log(".");
48             } else if (w && !w.mkws) {
49                 console.log("*");
50             } else {
51                 // console.log("+");
52             }
53
54             return w && w.mkws && w.mkws.authenticated;
55         }, "window object done", 2 * 1000);
56
57         runs(function () {
58             console.log("got window");
59             console.log("got mkws auth: " + w.mkws.authenticated);
60             console.log("window.DOMParser: " + w.$.parseXML);
61             // console.log("W: " + $("html").text() );
62             expect(w).toBeDefined();
63         });
64
65         waitsFor(function () {
66             // console.log(".");
67             return w.mkws.jasmine_done;
68         }, "jasmine test done", 3 * 1000);
69
70         runs(function () {
71             console.log("jasmine test done: " + w.mkws.jasmine_done);
72             expect(w.mkws.jasmine_done).toBeTruthy();
73         });
74     });
75
76     it("jsdom test2", function () {
77         // expect($).toBeDefined();
78     });
79
80 });
81
82 console.log("EOF");
83
84 /*
85 jsdom.defaultDocumentFeatures = {
86   FetchExternalResources   : ['script'],
87   ProcessExternalResources : ['script'],
88   MutationEvents           : false,
89   QuerySelector            : false
90 };
91 */