js_spec 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGES +2 -0
- data/README +9 -0
- data/Rakefile +72 -0
- data/bin/js_spec_server +9 -0
- data/core/COPYING +459 -0
- data/core/JSSpec.css +216 -0
- data/core/JSSpec.js +1506 -0
- data/core/JSSpecExtensions.js +27 -0
- data/core/demo.html +182 -0
- data/core/diff_match_patch.js +1 -0
- data/lib/js_spec/dir.rb +58 -0
- data/lib/js_spec/file.rb +26 -0
- data/lib/js_spec/server.rb +77 -0
- data/lib/js_spec/spec_dir_runner.rb +13 -0
- data/lib/js_spec/spec_file_runner.rb +13 -0
- data/lib/js_spec/spec_runner.rb +27 -0
- data/lib/js_spec/suite_result.rb +11 -0
- data/lib/js_spec/web_root.rb +18 -0
- data/lib/js_spec.rb +13 -0
- data/spec/functional/functional_spec_helper.rb +18 -0
- data/spec/functional/server_spec.rb +5 -0
- data/spec/functional_spec_suite.rb +10 -0
- data/spec/spec_suite.rb +3 -0
- data/spec/unit/dir_spec.rb +82 -0
- data/spec/unit/file_spec.rb +78 -0
- data/spec/unit/server_spec.rb +156 -0
- data/spec/unit/spec_dir_runner_spec.rb +41 -0
- data/spec/unit/spec_file_runner_spec.rb +18 -0
- data/spec/unit/suite_result_spec.rb +31 -0
- data/spec/unit/unit_spec_helper.rb +84 -0
- data/spec/unit/web_root_spec.rb +39 -0
- data/spec/unit_spec_suite.rb +10 -0
- metadata +82 -0
data/core/JSSpec.css
ADDED
@@ -0,0 +1,216 @@
|
|
1
|
+
@CHARSET "UTF-8";
|
2
|
+
|
3
|
+
/* --------------------
|
4
|
+
* @Layout
|
5
|
+
*/
|
6
|
+
|
7
|
+
html {
|
8
|
+
overflow: hidden;
|
9
|
+
}
|
10
|
+
|
11
|
+
body, #jsspec_container {
|
12
|
+
overflow: hidden;
|
13
|
+
padding: 0;
|
14
|
+
margin: 0;
|
15
|
+
width: 100%;
|
16
|
+
height: 100%;
|
17
|
+
}
|
18
|
+
|
19
|
+
#title {
|
20
|
+
padding: 0;
|
21
|
+
margin: 0;
|
22
|
+
position: absolute;
|
23
|
+
top: 0px;
|
24
|
+
left: 0px;
|
25
|
+
width: 100%;
|
26
|
+
height: 40px;
|
27
|
+
overflow: hidden;
|
28
|
+
}
|
29
|
+
|
30
|
+
#list {
|
31
|
+
padding: 0;
|
32
|
+
margin: 0;
|
33
|
+
position: absolute;
|
34
|
+
top: 40px;
|
35
|
+
left: 0px;
|
36
|
+
bottom: 0px;
|
37
|
+
overflow: auto;
|
38
|
+
width: 250px;
|
39
|
+
_height:expression(document.body.clientHeight-40);
|
40
|
+
}
|
41
|
+
|
42
|
+
#log {
|
43
|
+
padding: 0;
|
44
|
+
margin: 0;
|
45
|
+
position: absolute;
|
46
|
+
top: 40px;
|
47
|
+
left: 250px;
|
48
|
+
right: 0px;
|
49
|
+
bottom: 0px;
|
50
|
+
overflow: auto;
|
51
|
+
_height:expression(document.body.clientHeight-40);
|
52
|
+
_width:expression(document.body.clientWidth-250);
|
53
|
+
}
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
/* --------------------
|
58
|
+
* @Decorations and colors
|
59
|
+
*/
|
60
|
+
* {
|
61
|
+
padding: 0;
|
62
|
+
margin: 0;
|
63
|
+
font-family: "Lucida Grande", Helvetica, sans-serif;
|
64
|
+
}
|
65
|
+
|
66
|
+
li {
|
67
|
+
list-style: none;
|
68
|
+
}
|
69
|
+
|
70
|
+
/* hiding subtitles */
|
71
|
+
h2 {
|
72
|
+
display: none;
|
73
|
+
}
|
74
|
+
|
75
|
+
/* title section */
|
76
|
+
div#title {
|
77
|
+
padding: 0em 0.5em;
|
78
|
+
}
|
79
|
+
|
80
|
+
div#title h1 {
|
81
|
+
font-size: 1.5em;
|
82
|
+
float: left;
|
83
|
+
}
|
84
|
+
|
85
|
+
div#title ul li {
|
86
|
+
float: left;
|
87
|
+
padding: 0.5em 0em 0.5em 0.75em;
|
88
|
+
}
|
89
|
+
|
90
|
+
div#title p {
|
91
|
+
float:right;
|
92
|
+
margin-right:1em;
|
93
|
+
font-size: 0.75em;
|
94
|
+
}
|
95
|
+
|
96
|
+
/* spec container */
|
97
|
+
ul.specs {
|
98
|
+
margin: 0.5em;
|
99
|
+
}
|
100
|
+
ul.specs li {
|
101
|
+
margin-bottom: 0.1em;
|
102
|
+
}
|
103
|
+
|
104
|
+
/* spec title */
|
105
|
+
ul.specs li h3 {
|
106
|
+
font-weight: bold;
|
107
|
+
font-size: 0.75em;
|
108
|
+
padding: 0.2em 1em;
|
109
|
+
cursor: pointer;
|
110
|
+
_cursor: hand;
|
111
|
+
}
|
112
|
+
|
113
|
+
/* example container */
|
114
|
+
ul.examples li {
|
115
|
+
border-style: solid;
|
116
|
+
border-width: 0px 0px 1px 5px;
|
117
|
+
margin: 0.2em 0em 0.2em 1em;
|
118
|
+
}
|
119
|
+
|
120
|
+
/* example title */
|
121
|
+
ul.examples li h4 {
|
122
|
+
font-weight: normal;
|
123
|
+
font-size: 0.75em;
|
124
|
+
margin-left: 1em;
|
125
|
+
}
|
126
|
+
|
127
|
+
/* example explaination */
|
128
|
+
ul.examples li div {
|
129
|
+
padding: 1em 2em;
|
130
|
+
font-size: 0.75em;
|
131
|
+
}
|
132
|
+
|
133
|
+
/* styles for ongoing, success, failure, error */
|
134
|
+
div.success, div.success a {
|
135
|
+
color: #FFFFFF;
|
136
|
+
background-color: #65C400;
|
137
|
+
}
|
138
|
+
|
139
|
+
ul.specs li.success h3, ul.specs li.success h3 a {
|
140
|
+
color: #FFFFFF;
|
141
|
+
background-color: #65C400;
|
142
|
+
}
|
143
|
+
|
144
|
+
ul.examples li.success, ul.examples li.success a {
|
145
|
+
color: #3D7700;
|
146
|
+
background-color: #DBFFB4;
|
147
|
+
border-color: #65C400;
|
148
|
+
}
|
149
|
+
|
150
|
+
div.exception, div.exception a {
|
151
|
+
color: #FFFFFF;
|
152
|
+
background-color: #C20000;
|
153
|
+
}
|
154
|
+
|
155
|
+
ul.specs li.exception h3, ul.specs li.exception h3 a {
|
156
|
+
color: #FFFFFF;
|
157
|
+
background-color: #C20000;
|
158
|
+
}
|
159
|
+
|
160
|
+
ul.examples li.exception, ul.examples li.exception a {
|
161
|
+
color: #C20000;
|
162
|
+
background-color: #FFFBD3;
|
163
|
+
border-color: #C20000;
|
164
|
+
}
|
165
|
+
|
166
|
+
div.ongoing, div.ongoing a {
|
167
|
+
color: #000000;
|
168
|
+
background-color: #FFFF80;
|
169
|
+
}
|
170
|
+
|
171
|
+
ul.specs li.ongoing h3, ul.specs li.ongoing h3 a {
|
172
|
+
color: #000000;
|
173
|
+
background-color: #FFFF80;
|
174
|
+
}
|
175
|
+
|
176
|
+
ul.examples li.ongoing, ul.examples li.ongoing a {
|
177
|
+
color: #000000;
|
178
|
+
background-color: #FFFF80;
|
179
|
+
border-color: #DDDD00;
|
180
|
+
}
|
181
|
+
|
182
|
+
|
183
|
+
|
184
|
+
/* --------------------
|
185
|
+
* values
|
186
|
+
*/
|
187
|
+
.number_value, .string_value, .regexp_value, .boolean_value, .dom_value {
|
188
|
+
font-family: monospace;
|
189
|
+
color: blue;
|
190
|
+
}
|
191
|
+
.object_value, .array_value {
|
192
|
+
line-height: 2em;
|
193
|
+
padding: 0.1em 0.2em;
|
194
|
+
margin: 0.1em 0;
|
195
|
+
}
|
196
|
+
.date_value {
|
197
|
+
font-family: monospace;
|
198
|
+
color: olive;
|
199
|
+
}
|
200
|
+
.undefined_value, .null_value {
|
201
|
+
font-style: italic;
|
202
|
+
color: blue;
|
203
|
+
}
|
204
|
+
.dom_attr_name {
|
205
|
+
}
|
206
|
+
.dom_attr_value {
|
207
|
+
color: red;
|
208
|
+
}
|
209
|
+
.dom_path {
|
210
|
+
font-size: 0.75em;
|
211
|
+
color: gray;
|
212
|
+
}
|
213
|
+
strong {
|
214
|
+
font-weight: normal;
|
215
|
+
background-color: #FFC6C6;
|
216
|
+
}
|