keydown 0.5.0
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/.gitignore +5 -0
- data/.rspec +2 -0
- data/.rvmrc +1 -0
- data/Gemfile +4 -0
- data/Gemfile.lock +41 -0
- data/LICENSE +20 -0
- data/README.md +183 -0
- data/Rakefile +9 -0
- data/VERSION +1 -0
- data/bin/keydown +7 -0
- data/keydown.gemspec +27 -0
- data/lib/keydown/lib/slide.rb +125 -0
- data/lib/keydown/lib/slidedeck.rb +55 -0
- data/lib/keydown/tasks/generate.rb +12 -0
- data/lib/keydown/tasks/slides.rb +36 -0
- data/lib/keydown.rb +22 -0
- data/lib/version.rb +3 -0
- data/spec/fixtures/custom.css +5 -0
- data/spec/fixtures/custom.js +3 -0
- data/spec/fixtures/with_backgrounds.md +29 -0
- data/spec/fixtures/with_code.md +26 -0
- data/spec/fixtures/with_title.md +21 -0
- data/spec/fixtures/without_title.md +21 -0
- data/spec/lib/slide_spec.rb +365 -0
- data/spec/lib/slidedeck_spec.rb +133 -0
- data/spec/output/results.html +545 -0
- data/spec/spec_helper.rb +18 -0
- data/spec/tasks/generate_spec.rb +50 -0
- data/spec/tasks/slides_spec.rb +171 -0
- data/templates/generate/%presentation_name%.md.tt +27 -0
- data/templates/generate/css/%presentation_name%.css +1 -0
- data/templates/generate/css/rocks.css +392 -0
- data/templates/generate/images/cc.large.png +0 -0
- data/templates/generate/images/flickr.png +0 -0
- data/templates/generate/js/%presentation_name%.js +1 -0
- data/templates/generate/js/rocks.js +415 -0
- data/templates/keydown.css.erb +104 -0
- data/templates/rocks/index.rhtml +125 -0
- data/templates/rocks/slide.rhtml +10 -0
- metadata +206 -0
@@ -0,0 +1,545 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<!DOCTYPE html
|
3
|
+
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
4
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
5
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
6
|
+
<head>
|
7
|
+
<title>RSpec results</title>
|
8
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
9
|
+
<meta http-equiv="Expires" content="-1" />
|
10
|
+
<meta http-equiv="Pragma" content="no-cache" />
|
11
|
+
<style type="text/css">
|
12
|
+
body {
|
13
|
+
margin: 0;
|
14
|
+
padding: 0;
|
15
|
+
background: #fff;
|
16
|
+
font-size: 80%;
|
17
|
+
}
|
18
|
+
</style>
|
19
|
+
<script type="text/javascript">
|
20
|
+
// <![CDATA[
|
21
|
+
function moveProgressBar(percentDone) {
|
22
|
+
document.getElementById("rspec-header").style.width = percentDone +"%";
|
23
|
+
}
|
24
|
+
function makeRed(element_id) {
|
25
|
+
document.getElementById(element_id).style.background = '#C40D0D';
|
26
|
+
document.getElementById(element_id).style.color = '#FFFFFF';
|
27
|
+
}
|
28
|
+
|
29
|
+
function makeYellow(element_id) {
|
30
|
+
if (element_id == "rspec-header" && document.getElementById(element_id).style.background != '#C40D0D')
|
31
|
+
{
|
32
|
+
document.getElementById(element_id).style.background = '#FAF834';
|
33
|
+
document.getElementById(element_id).style.color = '#000000';
|
34
|
+
}
|
35
|
+
else
|
36
|
+
{
|
37
|
+
document.getElementById(element_id).style.background = '#FAF834';
|
38
|
+
document.getElementById(element_id).style.color = '#000000';
|
39
|
+
}
|
40
|
+
}
|
41
|
+
|
42
|
+
// ]]>
|
43
|
+
</script>
|
44
|
+
<style type="text/css">
|
45
|
+
#rspec-header {
|
46
|
+
background: #65C400; color: #fff; height: 4em;
|
47
|
+
}
|
48
|
+
|
49
|
+
.rspec-report h1 {
|
50
|
+
margin: 0px 10px 0px 10px;
|
51
|
+
padding: 10px;
|
52
|
+
font-family: "Lucida Grande", Helvetica, sans-serif;
|
53
|
+
font-size: 1.8em;
|
54
|
+
position: absolute;
|
55
|
+
}
|
56
|
+
|
57
|
+
#summary {
|
58
|
+
margin: 0; padding: 5px 10px;
|
59
|
+
font-family: "Lucida Grande", Helvetica, sans-serif;
|
60
|
+
text-align: right;
|
61
|
+
top: 0px;
|
62
|
+
right: 0px;
|
63
|
+
float:right;
|
64
|
+
}
|
65
|
+
|
66
|
+
#summary p {
|
67
|
+
margin: 0 0 0 2px;
|
68
|
+
}
|
69
|
+
|
70
|
+
#summary #totals {
|
71
|
+
font-size: 1.2em;
|
72
|
+
}
|
73
|
+
|
74
|
+
.example_group {
|
75
|
+
margin: 0 10px 5px;
|
76
|
+
background: #fff;
|
77
|
+
}
|
78
|
+
|
79
|
+
dl {
|
80
|
+
margin: 0; padding: 0 0 5px;
|
81
|
+
font: normal 11px "Lucida Grande", Helvetica, sans-serif;
|
82
|
+
}
|
83
|
+
|
84
|
+
dt {
|
85
|
+
padding: 3px;
|
86
|
+
background: #65C400;
|
87
|
+
color: #fff;
|
88
|
+
font-weight: bold;
|
89
|
+
}
|
90
|
+
|
91
|
+
dd {
|
92
|
+
margin: 5px 0 5px 5px;
|
93
|
+
padding: 3px 3px 3px 18px;
|
94
|
+
}
|
95
|
+
|
96
|
+
dd.spec.passed {
|
97
|
+
border-left: 5px solid #65C400;
|
98
|
+
border-bottom: 1px solid #65C400;
|
99
|
+
background: #DBFFB4; color: #3D7700;
|
100
|
+
}
|
101
|
+
|
102
|
+
dd.spec.failed {
|
103
|
+
border-left: 5px solid #C20000;
|
104
|
+
border-bottom: 1px solid #C20000;
|
105
|
+
color: #C20000; background: #FFFBD3;
|
106
|
+
}
|
107
|
+
|
108
|
+
dd.spec.not_implemented {
|
109
|
+
border-left: 5px solid #FAF834;
|
110
|
+
border-bottom: 1px solid #FAF834;
|
111
|
+
background: #FCFB98; color: #131313;
|
112
|
+
}
|
113
|
+
|
114
|
+
dd.spec.pending_fixed {
|
115
|
+
border-left: 5px solid #0000C2;
|
116
|
+
border-bottom: 1px solid #0000C2;
|
117
|
+
color: #0000C2; background: #D3FBFF;
|
118
|
+
}
|
119
|
+
|
120
|
+
.backtrace {
|
121
|
+
color: #000;
|
122
|
+
font-size: 12px;
|
123
|
+
}
|
124
|
+
|
125
|
+
a {
|
126
|
+
color: #BE5C00;
|
127
|
+
}
|
128
|
+
|
129
|
+
/* Ruby code, style similar to vibrant ink */
|
130
|
+
.ruby {
|
131
|
+
font-size: 12px;
|
132
|
+
font-family: monospace;
|
133
|
+
color: white;
|
134
|
+
background-color: black;
|
135
|
+
padding: 0.1em 0 0.2em 0;
|
136
|
+
}
|
137
|
+
|
138
|
+
.ruby .keyword { color: #FF6600; }
|
139
|
+
.ruby .constant { color: #339999; }
|
140
|
+
.ruby .attribute { color: white; }
|
141
|
+
.ruby .global { color: white; }
|
142
|
+
.ruby .module { color: white; }
|
143
|
+
.ruby .class { color: white; }
|
144
|
+
.ruby .string { color: #66FF00; }
|
145
|
+
.ruby .ident { color: white; }
|
146
|
+
.ruby .method { color: #FFCC00; }
|
147
|
+
.ruby .number { color: white; }
|
148
|
+
.ruby .char { color: white; }
|
149
|
+
.ruby .comment { color: #9933CC; }
|
150
|
+
.ruby .symbol { color: white; }
|
151
|
+
.ruby .regex { color: #44B4CC; }
|
152
|
+
.ruby .punct { color: white; }
|
153
|
+
.ruby .escape { color: white; }
|
154
|
+
.ruby .interp { color: white; }
|
155
|
+
.ruby .expr { color: white; }
|
156
|
+
|
157
|
+
.ruby .offending { background-color: gray; }
|
158
|
+
.ruby .linenum {
|
159
|
+
width: 75px;
|
160
|
+
padding: 0.1em 1em 0.2em 0;
|
161
|
+
color: #000000;
|
162
|
+
background-color: #FFFBD3;
|
163
|
+
}
|
164
|
+
|
165
|
+
</style>
|
166
|
+
</head>
|
167
|
+
<body>
|
168
|
+
<div class="rspec-report">
|
169
|
+
|
170
|
+
<div id="rspec-header">
|
171
|
+
<div id="label">
|
172
|
+
<h1>RSpec Code Examples</h1>
|
173
|
+
</div>
|
174
|
+
|
175
|
+
<div id="summary">
|
176
|
+
<p id="totals"> </p>
|
177
|
+
<p id="duration"> </p>
|
178
|
+
</div>
|
179
|
+
</div>
|
180
|
+
|
181
|
+
<div class="results">
|
182
|
+
<div class="example_group">
|
183
|
+
<dl>
|
184
|
+
<dt id="example_group_1">Keydown::Slide without a CSS classname</dt>
|
185
|
+
<script type="text/javascript">moveProgressBar('0.9');</script>
|
186
|
+
<dd class="spec passed"><span class="passed_spec_name">should set the CSS classnames</span></dd>
|
187
|
+
<script type="text/javascript">moveProgressBar('1.8');</script>
|
188
|
+
<dd class="spec passed"><span class="passed_spec_name">should extract the slide content</span></dd>
|
189
|
+
<script type="text/javascript">moveProgressBar('2.7');</script>
|
190
|
+
<dd class="spec passed"><span class="passed_spec_name">should remove the notes from the content</span></dd>
|
191
|
+
<script type="text/javascript">moveProgressBar('3.6');</script>
|
192
|
+
<dd class="spec passed"><span class="passed_spec_name">should extract the notes</span></dd>
|
193
|
+
</dl>
|
194
|
+
</div>
|
195
|
+
<div class="example_group">
|
196
|
+
<dl>
|
197
|
+
<dt id="example_group_2">Keydown::Slide without a CSS classname when generating HTML</dt>
|
198
|
+
<script type="text/javascript">moveProgressBar('4.5');</script>
|
199
|
+
<dd class="spec passed"><span class="passed_spec_name">should assign the classname(s) to the section</span></dd>
|
200
|
+
<script type="text/javascript">moveProgressBar('5.5');</script>
|
201
|
+
<dd class="spec passed"><span class="passed_spec_name">should convert the content via Markdown</span></dd>
|
202
|
+
<script type="text/javascript">moveProgressBar('6.4');</script>
|
203
|
+
<dd class="spec passed"><span class="passed_spec_name">should not include the notes in the HTML</span></dd>
|
204
|
+
</dl>
|
205
|
+
</div>
|
206
|
+
<div class="example_group">
|
207
|
+
<dl>
|
208
|
+
<dt id="example_group_3">Keydown::Slide with a single CSS classname</dt>
|
209
|
+
<script type="text/javascript">moveProgressBar('7.3');</script>
|
210
|
+
<dd class="spec passed"><span class="passed_spec_name">should set the CSS classnames</span></dd>
|
211
|
+
<script type="text/javascript">moveProgressBar('8.2');</script>
|
212
|
+
<dd class="spec passed"><span class="passed_spec_name">should extract the slide content</span></dd>
|
213
|
+
<script type="text/javascript">moveProgressBar('9.1');</script>
|
214
|
+
<dd class="spec passed"><span class="passed_spec_name">should remove the notes from the content</span></dd>
|
215
|
+
<script type="text/javascript">moveProgressBar('10.0');</script>
|
216
|
+
<dd class="spec passed"><span class="passed_spec_name">should extract the notes</span></dd>
|
217
|
+
</dl>
|
218
|
+
</div>
|
219
|
+
<div class="example_group">
|
220
|
+
<dl>
|
221
|
+
<dt id="example_group_4">Keydown::Slide with a single CSS classname when generating HTML</dt>
|
222
|
+
<script type="text/javascript">moveProgressBar('11.0');</script>
|
223
|
+
<dd class="spec passed"><span class="passed_spec_name">should assign the classname(s) to the section</span></dd>
|
224
|
+
<script type="text/javascript">moveProgressBar('11.9');</script>
|
225
|
+
<dd class="spec passed"><span class="passed_spec_name">should convert the content via Markdown</span></dd>
|
226
|
+
<script type="text/javascript">moveProgressBar('12.8');</script>
|
227
|
+
<dd class="spec passed"><span class="passed_spec_name">should not include the notes in the HTML</span></dd>
|
228
|
+
</dl>
|
229
|
+
</div>
|
230
|
+
<div class="example_group">
|
231
|
+
<dl>
|
232
|
+
<dt id="example_group_5">Keydown::Slide with multiple CSS classnames</dt>
|
233
|
+
<script type="text/javascript">moveProgressBar('13.7');</script>
|
234
|
+
<dd class="spec passed"><span class="passed_spec_name">should set the CSS classnames</span></dd>
|
235
|
+
<script type="text/javascript">moveProgressBar('14.6');</script>
|
236
|
+
<dd class="spec passed"><span class="passed_spec_name">should extract the slide content</span></dd>
|
237
|
+
<script type="text/javascript">moveProgressBar('15.5');</script>
|
238
|
+
<dd class="spec passed"><span class="passed_spec_name">should remove the notes from the content</span></dd>
|
239
|
+
<script type="text/javascript">moveProgressBar('16.5');</script>
|
240
|
+
<dd class="spec passed"><span class="passed_spec_name">should extract the notes</span></dd>
|
241
|
+
</dl>
|
242
|
+
</div>
|
243
|
+
<div class="example_group">
|
244
|
+
<dl>
|
245
|
+
<dt id="example_group_6">Keydown::Slide with multiple CSS classnames generating HTML</dt>
|
246
|
+
<script type="text/javascript">moveProgressBar('17.4');</script>
|
247
|
+
<dd class="spec passed"><span class="passed_spec_name">should assign the classname(s) to the section</span></dd>
|
248
|
+
<script type="text/javascript">moveProgressBar('18.3');</script>
|
249
|
+
<dd class="spec passed"><span class="passed_spec_name">should convert the content via Markdown</span></dd>
|
250
|
+
<script type="text/javascript">moveProgressBar('19.2');</script>
|
251
|
+
<dd class="spec passed"><span class="passed_spec_name">should not include the notes in the HTML</span></dd>
|
252
|
+
</dl>
|
253
|
+
</div>
|
254
|
+
<div class="example_group">
|
255
|
+
<dl>
|
256
|
+
<dt id="example_group_7">Keydown::Slide without a note</dt>
|
257
|
+
<script type="text/javascript">moveProgressBar('20.1');</script>
|
258
|
+
<dd class="spec passed"><span class="passed_spec_name">should set the CSS classnames</span></dd>
|
259
|
+
<script type="text/javascript">moveProgressBar('21.1');</script>
|
260
|
+
<dd class="spec passed"><span class="passed_spec_name">should extract the slide content</span></dd>
|
261
|
+
</dl>
|
262
|
+
</div>
|
263
|
+
<div class="example_group">
|
264
|
+
<dl>
|
265
|
+
<dt id="example_group_8">Keydown::Slide without a note when generating HTML</dt>
|
266
|
+
<script type="text/javascript">moveProgressBar('22.0');</script>
|
267
|
+
<dd class="spec passed"><span class="passed_spec_name">should assign the classname(s) to the section</span></dd>
|
268
|
+
<script type="text/javascript">moveProgressBar('22.9');</script>
|
269
|
+
<dd class="spec passed"><span class="passed_spec_name">should convert the content via Markdown</span></dd>
|
270
|
+
<script type="text/javascript">moveProgressBar('23.8');</script>
|
271
|
+
<dd class="spec passed"><span class="passed_spec_name">should not include the notes in the HTML</span></dd>
|
272
|
+
</dl>
|
273
|
+
</div>
|
274
|
+
<div class="example_group">
|
275
|
+
<dl>
|
276
|
+
<dt id="example_group_9">Keydown::Slide with code to higlight using the Slidedown syntax</dt>
|
277
|
+
<script type="text/javascript">moveProgressBar('24.7');</script>
|
278
|
+
<dd class="spec passed"><span class="passed_spec_name">should set the CSS classnames</span></dd>
|
279
|
+
<script type="text/javascript">moveProgressBar('25.6');</script>
|
280
|
+
<dd class="spec passed"><span class="passed_spec_name">should extract the slide content</span></dd>
|
281
|
+
<script type="text/javascript">moveProgressBar('26.6');</script>
|
282
|
+
<dd class="spec passed"><span class="passed_spec_name">should remove the notes from the content</span></dd>
|
283
|
+
<script type="text/javascript">moveProgressBar('27.5');</script>
|
284
|
+
<dd class="spec passed"><span class="passed_spec_name">should extract the notes</span></dd>
|
285
|
+
</dl>
|
286
|
+
</div>
|
287
|
+
<div class="example_group">
|
288
|
+
<dl>
|
289
|
+
<dt id="example_group_10">Keydown::Slide with code to higlight using the Slidedown syntax when generating HTML</dt>
|
290
|
+
<script type="text/javascript">moveProgressBar('28.4');</script>
|
291
|
+
<dd class="spec passed"><span class="passed_spec_name">should assign the classname(s) to the section</span></dd>
|
292
|
+
<script type="text/javascript">moveProgressBar('29.3');</script>
|
293
|
+
<dd class="spec passed"><span class="passed_spec_name">should convert the content via Markdown</span></dd>
|
294
|
+
<script type="text/javascript">moveProgressBar('30.2');</script>
|
295
|
+
<dd class="spec passed"><span class="passed_spec_name">should not include the notes in the HTML</span></dd>
|
296
|
+
<script type="text/javascript">moveProgressBar('31.1');</script>
|
297
|
+
<dd class="spec passed"><span class="passed_spec_name">should colorize the code fragments</span></dd>
|
298
|
+
</dl>
|
299
|
+
</div>
|
300
|
+
<div class="example_group">
|
301
|
+
<dl>
|
302
|
+
<dt id="example_group_11">Keydown::Slide with code to higlight using the Github markup syntax</dt>
|
303
|
+
<script type="text/javascript">moveProgressBar('32.1');</script>
|
304
|
+
<dd class="spec passed"><span class="passed_spec_name">should set the CSS classnames</span></dd>
|
305
|
+
<script type="text/javascript">moveProgressBar('33.0');</script>
|
306
|
+
<dd class="spec passed"><span class="passed_spec_name">should extract the slide content</span></dd>
|
307
|
+
<script type="text/javascript">moveProgressBar('33.9');</script>
|
308
|
+
<dd class="spec passed"><span class="passed_spec_name">should remove the notes from the content</span></dd>
|
309
|
+
<script type="text/javascript">moveProgressBar('34.8');</script>
|
310
|
+
<dd class="spec passed"><span class="passed_spec_name">should extract the notes</span></dd>
|
311
|
+
</dl>
|
312
|
+
</div>
|
313
|
+
<div class="example_group">
|
314
|
+
<dl>
|
315
|
+
<dt id="example_group_12">Keydown::Slide with code to higlight using the Github markup syntax when generating HTML</dt>
|
316
|
+
<script type="text/javascript">moveProgressBar('35.7');</script>
|
317
|
+
<dd class="spec passed"><span class="passed_spec_name">should assign the classname(s) to the section</span></dd>
|
318
|
+
<script type="text/javascript">moveProgressBar('36.6');</script>
|
319
|
+
<dd class="spec passed"><span class="passed_spec_name">should convert the content via Markdown</span></dd>
|
320
|
+
<script type="text/javascript">moveProgressBar('37.6');</script>
|
321
|
+
<dd class="spec passed"><span class="passed_spec_name">should not include the notes in the HTML</span></dd>
|
322
|
+
<script type="text/javascript">moveProgressBar('38.5');</script>
|
323
|
+
<dd class="spec passed"><span class="passed_spec_name">should colorize the code fragments</span></dd>
|
324
|
+
</dl>
|
325
|
+
</div>
|
326
|
+
<div class="example_group">
|
327
|
+
<dl>
|
328
|
+
<dt id="example_group_13">Keydown::Slide with an image for a full-bleed background</dt>
|
329
|
+
<script type="text/javascript">moveProgressBar('39.4');</script>
|
330
|
+
<dd class="spec passed"><span class="passed_spec_name">should set the CSS classnames</span></dd>
|
331
|
+
<script type="text/javascript">moveProgressBar('40.3');</script>
|
332
|
+
<dd class="spec passed"><span class="passed_spec_name">should extract the slide content</span></dd>
|
333
|
+
<script type="text/javascript">moveProgressBar('41.2');</script>
|
334
|
+
<dd class="spec passed"><span class="passed_spec_name">should remove the notes from the content</span></dd>
|
335
|
+
<script type="text/javascript">moveProgressBar('42.2');</script>
|
336
|
+
<dd class="spec passed"><span class="passed_spec_name">should extract the notes</span></dd>
|
337
|
+
</dl>
|
338
|
+
</div>
|
339
|
+
<div class="example_group">
|
340
|
+
<dl>
|
341
|
+
<dt id="example_group_14">Keydown::Slide with an image for a full-bleed background when generating HTML</dt>
|
342
|
+
<script type="text/javascript">moveProgressBar('43.1');</script>
|
343
|
+
<dd class="spec passed"><span class="passed_spec_name">should assign the classname(s) to the section</span></dd>
|
344
|
+
<script type="text/javascript">moveProgressBar('44.0');</script>
|
345
|
+
<dd class="spec passed"><span class="passed_spec_name">should convert the content via Markdown</span></dd>
|
346
|
+
<script type="text/javascript">moveProgressBar('44.9');</script>
|
347
|
+
<dd class="spec passed"><span class="passed_spec_name">should not include the notes in the HTML</span></dd>
|
348
|
+
<script type="text/javascript">moveProgressBar('45.8');</script>
|
349
|
+
<dd class="spec passed"><span class="passed_spec_name">should remove any declaration of a background image</span></dd>
|
350
|
+
<script type="text/javascript">moveProgressBar('46.7');</script>
|
351
|
+
<dd class="spec passed"><span class="passed_spec_name">should save off the background image info for use when generating the HTML</span></dd>
|
352
|
+
<script type="text/javascript">moveProgressBar('47.7');</script>
|
353
|
+
<dd class="spec passed"><span class="passed_spec_name">should add the full-background class to the containing div</span></dd>
|
354
|
+
<script type="text/javascript">moveProgressBar('48.6');</script>
|
355
|
+
<dd class="spec passed"><span class="passed_spec_name">should add the background image class to the containing div</span></dd>
|
356
|
+
</dl>
|
357
|
+
</div>
|
358
|
+
<div class="example_group">
|
359
|
+
<dl>
|
360
|
+
<dt id="example_group_15">Keydown::Slide with an image for a full-bleed background with a Flickr attribution</dt>
|
361
|
+
<script type="text/javascript">moveProgressBar('49.5');</script>
|
362
|
+
<dd class="spec passed"><span class="passed_spec_name">should set the CSS classnames</span></dd>
|
363
|
+
<script type="text/javascript">moveProgressBar('50.4');</script>
|
364
|
+
<dd class="spec passed"><span class="passed_spec_name">should extract the slide content</span></dd>
|
365
|
+
<script type="text/javascript">moveProgressBar('51.3');</script>
|
366
|
+
<dd class="spec passed"><span class="passed_spec_name">should remove the notes from the content</span></dd>
|
367
|
+
<script type="text/javascript">moveProgressBar('52.2');</script>
|
368
|
+
<dd class="spec passed"><span class="passed_spec_name">should extract the notes</span></dd>
|
369
|
+
</dl>
|
370
|
+
</div>
|
371
|
+
<div class="example_group">
|
372
|
+
<dl>
|
373
|
+
<dt id="example_group_16">Keydown::Slide with an image for a full-bleed background with a Flickr attribution when generating HTML</dt>
|
374
|
+
<script type="text/javascript">moveProgressBar('53.2');</script>
|
375
|
+
<dd class="spec passed"><span class="passed_spec_name">should assign the classname(s) to the section</span></dd>
|
376
|
+
<script type="text/javascript">moveProgressBar('54.1');</script>
|
377
|
+
<dd class="spec passed"><span class="passed_spec_name">should convert the content via Markdown</span></dd>
|
378
|
+
<script type="text/javascript">moveProgressBar('55.0');</script>
|
379
|
+
<dd class="spec passed"><span class="passed_spec_name">should not include the notes in the HTML</span></dd>
|
380
|
+
<script type="text/javascript">moveProgressBar('55.9');</script>
|
381
|
+
<dd class="spec passed"><span class="passed_spec_name">should remove any declaration of a background image</span></dd>
|
382
|
+
<script type="text/javascript">moveProgressBar('56.8');</script>
|
383
|
+
<dd class="spec passed"><span class="passed_spec_name">should save off the background image info for use when generating the HTML</span></dd>
|
384
|
+
<script type="text/javascript">moveProgressBar('57.7');</script>
|
385
|
+
<dd class="spec passed"><span class="passed_spec_name">should add the full-background class to the containing div</span></dd>
|
386
|
+
<script type="text/javascript">moveProgressBar('58.7');</script>
|
387
|
+
<dd class="spec passed"><span class="passed_spec_name">should add the background image class to the containing div</span></dd>
|
388
|
+
</dl>
|
389
|
+
</div>
|
390
|
+
<div class="example_group">
|
391
|
+
<dl>
|
392
|
+
<dt id="example_group_17">Keydown::Slide with an image for a full-bleed background with a Flickr attribution when generating HTML it makes an attribution element that</dt>
|
393
|
+
<script type="text/javascript">moveProgressBar('59.6');</script>
|
394
|
+
<dd class="spec passed"><span class="passed_spec_name">should have the specified CSS class</span></dd>
|
395
|
+
<script type="text/javascript">moveProgressBar('60.5');</script>
|
396
|
+
<dd class="spec passed"><span class="passed_spec_name">should have the specified text</span></dd>
|
397
|
+
<script type="text/javascript">moveProgressBar('61.4');</script>
|
398
|
+
<dd class="spec passed"><span class="passed_spec_name">should have the specified link</span></dd>
|
399
|
+
</dl>
|
400
|
+
</div>
|
401
|
+
<div class="example_group">
|
402
|
+
<dl>
|
403
|
+
<dt id="example_group_18">Keydown::SlideDeck with a title when building slides</dt>
|
404
|
+
<script type="text/javascript">moveProgressBar('62.3');</script>
|
405
|
+
<dd class="spec passed"><span class="passed_spec_name">should find the document's title</span></dd>
|
406
|
+
<script type="text/javascript">moveProgressBar('63.3');</script>
|
407
|
+
<dd class="spec passed"><span class="passed_spec_name">should find all the slides in the markdown</span></dd>
|
408
|
+
</dl>
|
409
|
+
</div>
|
410
|
+
<div class="example_group">
|
411
|
+
<dl>
|
412
|
+
<dt id="example_group_19">Keydown::SlideDeck with a title when generating HTML</dt>
|
413
|
+
<script type="text/javascript">moveProgressBar('64.2');</script>
|
414
|
+
<dd class="spec passed"><span class="passed_spec_name">should set the document's title</span></dd>
|
415
|
+
<script type="text/javascript">moveProgressBar('65.1');</script>
|
416
|
+
<dd class="spec passed"><span class="passed_spec_name">should generate the correct number of slides</span></dd>
|
417
|
+
<script type="text/javascript">moveProgressBar('66.0');</script>
|
418
|
+
<dd class="spec passed"><span class="passed_spec_name">should set the CSS classnames of each slide</span></dd>
|
419
|
+
</dl>
|
420
|
+
</div>
|
421
|
+
<div class="example_group">
|
422
|
+
<dl>
|
423
|
+
<dt id="example_group_20">Keydown::SlideDeck with a background image when building slides</dt>
|
424
|
+
<script type="text/javascript">moveProgressBar('66.9');</script>
|
425
|
+
<dd class="spec passed"><span class="passed_spec_name">should find the document's title</span></dd>
|
426
|
+
<script type="text/javascript">moveProgressBar('67.8');</script>
|
427
|
+
<dd class="spec passed"><span class="passed_spec_name">should find all the slides in the markdown</span></dd>
|
428
|
+
</dl>
|
429
|
+
</div>
|
430
|
+
<div class="example_group">
|
431
|
+
<dl>
|
432
|
+
<dt id="example_group_21">Keydown::SlideDeck with a background image when generating HTML</dt>
|
433
|
+
<script type="text/javascript">moveProgressBar('68.8');</script>
|
434
|
+
<dd class="spec passed"><span class="passed_spec_name">should add the full-bleed background CSS classname to any slide that specifies a background</span></dd>
|
435
|
+
<script type="text/javascript">moveProgressBar('69.7');</script>
|
436
|
+
<dd class="spec passed"><span class="passed_spec_name">should add a custom classname to a slide that specifies a background</span></dd>
|
437
|
+
</dl>
|
438
|
+
</div>
|
439
|
+
<div class="example_group">
|
440
|
+
<dl>
|
441
|
+
<dt id="example_group_22">Keydown generate command</dt>
|
442
|
+
<script type="text/javascript">moveProgressBar('70.6');</script>
|
443
|
+
<dd class="spec passed"><span class="passed_spec_name">should generate a directory for the presentation</span></dd>
|
444
|
+
<script type="text/javascript">moveProgressBar('71.5');</script>
|
445
|
+
<dd class="spec passed"><span class="passed_spec_name">should generate a sample Markdown file</span></dd>
|
446
|
+
<script type="text/javascript">moveProgressBar('72.4');</script>
|
447
|
+
<dd class="spec passed"><span class="passed_spec_name">should create the support directories for the presentation</span></dd>
|
448
|
+
<script type="text/javascript">moveProgressBar('73.3');</script>
|
449
|
+
<dd class="spec passed"><span class="passed_spec_name">should copy the HTML5 Rocks default CSS file</span></dd>
|
450
|
+
<script type="text/javascript">moveProgressBar('74.3');</script>
|
451
|
+
<dd class="spec passed"><span class="passed_spec_name">should copy the HTML5 Rocks default JS file</span></dd>
|
452
|
+
</dl>
|
453
|
+
</div>
|
454
|
+
<div class="example_group">
|
455
|
+
<dl>
|
456
|
+
<dt id="example_group_23">Keydown `slides` when file cannot be found</dt>
|
457
|
+
<script type="text/javascript">moveProgressBar('75.2');</script>
|
458
|
+
<dd class="spec passed"><span class="passed_spec_name">should warn the user</span></dd>
|
459
|
+
<script type="text/javascript">moveProgressBar('76.1');</script>
|
460
|
+
<dd class="spec passed"><span class="passed_spec_name">should not write out a file</span></dd>
|
461
|
+
</dl>
|
462
|
+
</div>
|
463
|
+
<div class="example_group">
|
464
|
+
<dl>
|
465
|
+
<dt id="example_group_24">Keydown `slides` with defaults should generate an html file that</dt>
|
466
|
+
<script type="text/javascript">moveProgressBar('77.0');</script>
|
467
|
+
<dd class="spec passed"><span class="passed_spec_name">should have the correct file name</span></dd>
|
468
|
+
<script type="text/javascript">moveProgressBar('77.9');</script>
|
469
|
+
<dd class="spec passed"><span class="passed_spec_name">should set the document's title</span></dd>
|
470
|
+
<script type="text/javascript">moveProgressBar('78.8');</script>
|
471
|
+
<dd class="spec passed"><span class="passed_spec_name">should generate the correct number of slides</span></dd>
|
472
|
+
<script type="text/javascript">moveProgressBar('79.8');</script>
|
473
|
+
<dd class="spec passed"><span class="passed_spec_name">should include the HTML5 Rocks CSS only once</span></dd>
|
474
|
+
<script type="text/javascript">moveProgressBar('80.7');</script>
|
475
|
+
<dd class="spec passed"><span class="passed_spec_name">should include the HTML5 Rocks JavaScript only once</span></dd>
|
476
|
+
</dl>
|
477
|
+
</div>
|
478
|
+
<div class="example_group">
|
479
|
+
<dl>
|
480
|
+
<dt id="example_group_25">Keydown `slides` with defaults should generate an html file that should have one slide that</dt>
|
481
|
+
<script type="text/javascript">moveProgressBar('81.6');</script>
|
482
|
+
<dd class="spec passed"><span class="passed_spec_name">should have the correct css class(es)</span></dd>
|
483
|
+
<script type="text/javascript">moveProgressBar('82.5');</script>
|
484
|
+
<dd class="spec passed"><span class="passed_spec_name">should have the correct content</span></dd>
|
485
|
+
</dl>
|
486
|
+
</div>
|
487
|
+
<div class="example_group">
|
488
|
+
<dl>
|
489
|
+
<dt id="example_group_26">Keydown `slides` with defaults should add an .md extention if one isn't specified</dt>
|
490
|
+
<script type="text/javascript">moveProgressBar('83.4');</script>
|
491
|
+
<dd class="spec passed"><span class="passed_spec_name">should have the correct file name</span></dd>
|
492
|
+
<script type="text/javascript">moveProgressBar('84.4');</script>
|
493
|
+
<dd class="spec passed"><span class="passed_spec_name">should set the document's title</span></dd>
|
494
|
+
<script type="text/javascript">moveProgressBar('85.3');</script>
|
495
|
+
<dd class="spec passed"><span class="passed_spec_name">should generate the correct number of slides</span></dd>
|
496
|
+
<script type="text/javascript">moveProgressBar('86.2');</script>
|
497
|
+
<dd class="spec passed"><span class="passed_spec_name">should include the HTML5 Rocks CSS only once</span></dd>
|
498
|
+
<script type="text/javascript">moveProgressBar('87.1');</script>
|
499
|
+
<dd class="spec passed"><span class="passed_spec_name">should include the HTML5 Rocks JavaScript only once</span></dd>
|
500
|
+
</dl>
|
501
|
+
</div>
|
502
|
+
<div class="example_group">
|
503
|
+
<dl>
|
504
|
+
<dt id="example_group_27">Keydown `slides` with directory tree with custom CSS & JS</dt>
|
505
|
+
<script type="text/javascript">moveProgressBar('88.0');</script>
|
506
|
+
<dd class="spec passed"><span class="passed_spec_name">should have the correct file name</span></dd>
|
507
|
+
<script type="text/javascript">moveProgressBar('88.9');</script>
|
508
|
+
<dd class="spec passed"><span class="passed_spec_name">should set the document's title</span></dd>
|
509
|
+
<script type="text/javascript">moveProgressBar('89.9');</script>
|
510
|
+
<dd class="spec passed"><span class="passed_spec_name">should generate the correct number of slides</span></dd>
|
511
|
+
<script type="text/javascript">moveProgressBar('90.8');</script>
|
512
|
+
<dd class="spec passed"><span class="passed_spec_name">should include the HTML5 Rocks CSS only once</span></dd>
|
513
|
+
<script type="text/javascript">moveProgressBar('91.7');</script>
|
514
|
+
<dd class="spec passed"><span class="passed_spec_name">should include the HTML5 Rocks JavaScript only once</span></dd>
|
515
|
+
<script type="text/javascript">moveProgressBar('92.6');</script>
|
516
|
+
<dd class="spec passed"><span class="passed_spec_name">should include any custom CSS file from the css directory</span></dd>
|
517
|
+
<script type="text/javascript">moveProgressBar('93.5');</script>
|
518
|
+
<dd class="spec passed"><span class="passed_spec_name">should include any custom JavaScript files from the js directory</span></dd>
|
519
|
+
</dl>
|
520
|
+
</div>
|
521
|
+
<div class="example_group">
|
522
|
+
<dl>
|
523
|
+
<dt id="example_group_28">Keydown `slides` for a presentation that has background images</dt>
|
524
|
+
<script type="text/javascript">moveProgressBar('94.4');</script>
|
525
|
+
<dd class="spec passed"><span class="passed_spec_name">should have the correct file name</span></dd>
|
526
|
+
<script type="text/javascript">moveProgressBar('95.4');</script>
|
527
|
+
<dd class="spec passed"><span class="passed_spec_name">should set the document's title</span></dd>
|
528
|
+
<script type="text/javascript">moveProgressBar('96.3');</script>
|
529
|
+
<dd class="spec passed"><span class="passed_spec_name">should generate the correct number of slides</span></dd>
|
530
|
+
<script type="text/javascript">moveProgressBar('97.2');</script>
|
531
|
+
<dd class="spec passed"><span class="passed_spec_name">should include the HTML5 Rocks CSS only once</span></dd>
|
532
|
+
<script type="text/javascript">moveProgressBar('98.1');</script>
|
533
|
+
<dd class="spec passed"><span class="passed_spec_name">should include the HTML5 Rocks JavaScript only once</span></dd>
|
534
|
+
<script type="text/javascript">moveProgressBar('99.0');</script>
|
535
|
+
<dd class="spec passed"><span class="passed_spec_name">should add the keydown.css file (which has the backgrounds) to the css directory</span></dd>
|
536
|
+
<script type="text/javascript">moveProgressBar('100.0');</script>
|
537
|
+
<dd class="spec passed"><span class="passed_spec_name">should add the keydown.css file to the HTML file</span></dd>
|
538
|
+
</dl>
|
539
|
+
</div>
|
540
|
+
<script type="text/javascript">document.getElementById('duration').innerHTML = "Finished in <strong>3.964342 seconds</strong>";</script>
|
541
|
+
<script type="text/javascript">document.getElementById('totals').innerHTML = "109 examples, 0 failures";</script>
|
542
|
+
</div>
|
543
|
+
</div>
|
544
|
+
</body>
|
545
|
+
</html>
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
2
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
3
|
+
require 'rubygems'
|
4
|
+
require 'keydown'
|
5
|
+
require 'rspec'
|
6
|
+
require 'pp'
|
7
|
+
|
8
|
+
require 'nokogiri'
|
9
|
+
require 'tmpdir'
|
10
|
+
|
11
|
+
def capture_output
|
12
|
+
output = StringIO.new
|
13
|
+
$stdout = output
|
14
|
+
yield
|
15
|
+
output.string
|
16
|
+
ensure
|
17
|
+
$stdout = STDOUT
|
18
|
+
end
|
@@ -0,0 +1,50 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe Keydown do
|
4
|
+
before :each do
|
5
|
+
@tmp_dir = "#{Dir.tmpdir}/keydown"
|
6
|
+
FileUtils.rm_r @tmp_dir if File.exists?(@tmp_dir)
|
7
|
+
FileUtils.mkdir_p @tmp_dir
|
8
|
+
|
9
|
+
@thor = Thor.new
|
10
|
+
end
|
11
|
+
|
12
|
+
describe "generate command" do
|
13
|
+
before :each do
|
14
|
+
capture_output do
|
15
|
+
Dir.chdir @tmp_dir do
|
16
|
+
@thor.invoke Keydown::Tasks, "generate", "sample"
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
it "should generate a directory for the presentation" do
|
22
|
+
Dir.chdir "#{@tmp_dir}" do
|
23
|
+
File.directory?('sample').should be_true
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
it "should generate a sample Markdown file" do
|
28
|
+
Dir.chdir "#{@tmp_dir}/sample" do
|
29
|
+
File.exist?("sample.md").should be_true
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
it "should create the support directories for the presentation" do
|
34
|
+
Dir.chdir "#{@tmp_dir}/sample" do
|
35
|
+
File.directory?("css").should be_true
|
36
|
+
File.directory?("images").should be_true
|
37
|
+
File.directory?("js").should be_true
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
it "should copy the HTML5 Rocks default CSS file" do
|
42
|
+
File.exist?("#{@tmp_dir}/sample/css/rocks.css").should be_true
|
43
|
+
end
|
44
|
+
|
45
|
+
it "should copy the HTML5 Rocks default JS file" do
|
46
|
+
File.exist?("#{@tmp_dir}/sample/js/rocks.js").should be_true
|
47
|
+
end
|
48
|
+
|
49
|
+
end
|
50
|
+
end
|