This repository was archived by the owner on Jan 26, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathtemplateLayoutTest.js
69 lines (57 loc) · 3.37 KB
/
templateLayoutTest.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
/*!
* templateLayout tests
* Copyright (c) 2011 Pablo Escalada
* MIT Licensed
*/
var isChrome = /chrome/i.exec(navigator.appVersion);
var defaultTemplate = "body {display: \"ab\"} h1 {position: a} h2 {position: b}";
module("CSSTemplateLayout");
test("namespace", function () {
notEqual(templateLayout, undefined, "is templateLayout namespace defined?");
equal(typeof templateLayout, "function", "is templateLayout a function?");
});
test("templateLayout.fn", function () {
notEqual(typeof templateLayout.fn, undefined, "is templateLayout.fn defined ?");
});
test("constructor", function () {
var templateSource = "body {display: \"ab\"} h1 {position: a} h2 {position: b}";
//can't load remote files from local ones
//equal(templateLayout("http://www.uniovi.es/TemaUniovi2010/css/layout.css").templateSources[0].type, "http", "loading remote css file");
//equal(templateLayout("https://example.com/template.css").templateSources[0].type, "http", "loading remote css file");
//equal(templateLayout("file://localhost/template.css").templateSources[0].type, "file", "loading local css file");
if (!isChrome) {
//Chrome can't load local files from local files
var aux = templateLayout().templateSources[0].type;
ok(aux === "file"||aux === "http", "calling empty constructor");
equal(templateLayout("template.css").templateSources[0].type, "file", "loading local css file");
equal(templateLayout("css/template.css").templateSources[0].type, "file", "loading local css file");
equal(templateLayout("./css/template.css").templateSources[0].type, "file", "loading local css file");
equal(templateLayout("../test/css/template.css").templateSources[0].type, "file", "loading local css file");
}
equal(templateLayout(templateSource).templateSources[0].type, "css", "loading css string");
equal(templateLayout(templateSource, templateSource, templateSource).templateSources[0].type, "css", "loading multiple css string");
//equal(templateLayout(templateSource, "../css/template.css", "https://example.com/template.css").templateSources[0].type, "mixed", "loading multiple css string");
});
test("public properties", function () {
equal(typeof templateLayout.fn.version, "string", "tl().version");
});
test("public methods", function () {
//old ones, deleted
equal(templateLayout(defaultTemplate).setTemplate, undefined, "setTemplate no longer supported");
equal(templateLayout(defaultTemplate).insertTemplate, undefined, "insertTemplate no longer supported");
equal(templateLayout(defaultTemplate).preprocess, undefined, "preprocess no longer supported");
equal(templateLayout(defaultTemplate).compile, undefined, "compile no longer supported");
//testing
notEqual(templateLayout(defaultTemplate).getBuffer, undefined, "getBuffer");
//new ones
notEqual(templateLayout(defaultTemplate).transform, undefined, "transform is a public method");
});
test("transform options", function () {
var templateSource = "body {display: \"ab\"} h1 {position: a} h2 {position: b}",
result;
templateLayout(templateSource).transform({action:"none"});
result = templateLayout(templateSource).transform({action:"parse"}).getBuffer();
wef.logger().info("buffer: ", result);
result = templateLayout(templateSource).transform({action:"compile"}).getTOM();
wef.logger().info("TOM: ", result);
});