cdnget 1.0.2 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/CHANGES.md +12 -0
- data/README.md +2 -1
- data/Rakefile +1 -1
- data/bin/cdnget +155 -105
- data/cdnget.gemspec +4 -5
- data/lib/cdnget.rb +155 -105
- data/test/cdnget_test.rb +707 -410
- metadata +11 -26
data/test/cdnget_test.rb
CHANGED
@@ -1,56 +1,54 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
|
3
3
|
require 'stringio'
|
4
|
-
|
5
|
-
require 'minitest'
|
6
|
-
require 'minitest/spec'
|
7
|
-
require 'minitest/autorun'
|
8
|
-
require 'minitest/ok'
|
4
|
+
require 'oktest'
|
9
5
|
|
10
6
|
require 'cdnget'
|
11
7
|
|
12
8
|
|
13
|
-
|
9
|
+
Oktest.scope do
|
14
10
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
11
|
+
CDN_NAMES = ['cdnjs', 'jsdelivr', 'unpkg', 'google']
|
12
|
+
|
13
|
+
def run(*args)
|
14
|
+
return CDNGet::Main.new("cdnget").run(*args)
|
15
|
+
end
|
16
|
+
|
17
|
+
before do
|
18
|
+
@tmpdir = "tmpdir1"
|
19
|
+
Dir.mkdir @tmpdir
|
20
|
+
end
|
21
|
+
|
22
|
+
after do
|
23
|
+
FileUtils.rm_rf @tmpdir
|
26
24
|
end
|
27
25
|
|
28
26
|
|
29
|
-
|
27
|
+
topic 'cdnget [-h][--help]' do
|
30
28
|
|
31
|
-
|
29
|
+
spec "prints help message." do
|
32
30
|
expected = CDNGet::Main.new("cdnget").help_message()
|
33
|
-
ok {
|
34
|
-
ok {
|
31
|
+
ok {run("-h")} == expected
|
32
|
+
ok {run("--help")} == expected
|
35
33
|
end
|
36
34
|
|
37
35
|
end
|
38
36
|
|
39
37
|
|
40
|
-
|
38
|
+
topic 'cdnget [-v][--version]' do
|
41
39
|
|
42
|
-
|
40
|
+
spec "prints help message." do
|
43
41
|
expected = CDNGet::RELEASE + "\n"
|
44
|
-
ok {
|
45
|
-
ok {
|
42
|
+
ok {run("-v")} == expected
|
43
|
+
ok {run("--version")} == expected
|
46
44
|
end
|
47
45
|
|
48
46
|
end
|
49
47
|
|
50
48
|
|
51
|
-
|
49
|
+
topic 'cdnget' do
|
52
50
|
|
53
|
-
|
51
|
+
spec "lists CDN." do
|
54
52
|
expected = <<END
|
55
53
|
cdnjs # https://cdnjs.com/
|
56
54
|
jsdelivr # https://www.jsdelivr.com/
|
@@ -59,51 +57,49 @@ google # https://developers.google.com/speed/libraries/
|
|
59
57
|
#jquery # https://code.jquery.com/
|
60
58
|
#aspnet # https://www.asp.net/ajax/cdn/
|
61
59
|
END
|
62
|
-
actual =
|
60
|
+
actual = run()
|
63
61
|
ok {actual} == expected.gsub(/^\#.*\n/, '')
|
64
62
|
end
|
65
63
|
|
66
64
|
end
|
67
65
|
|
68
66
|
|
69
|
-
|
67
|
+
topic 'cdnget <CDN>' do
|
70
68
|
|
71
|
-
|
72
|
-
actual =
|
69
|
+
spec "(cdnjs) lists librareis." do
|
70
|
+
actual = run("cdnjs")
|
73
71
|
ok {actual} =~ /^jquery # JavaScript library for DOM operations$/
|
74
72
|
ok {actual} =~ /^angular\.js # AngularJS is an MVC framework for building web applications\./
|
75
73
|
ok {actual} =~ /^ember\.js # Ember is a JavaScript framework for creating ambitious web applications that eliminates boilerplate and provides a standard application architecture\./
|
76
74
|
end
|
77
75
|
|
78
|
-
|
79
|
-
|
80
|
-
ok {
|
81
|
-
|
82
|
-
ok {actual} =~ /^swfobject /
|
83
|
-
ok {actual} =~ /^webfont /
|
76
|
+
spec "(jsdelivr) lists librareis." do
|
77
|
+
pr = proc { run("jsdelivr") }
|
78
|
+
ok {pr}.raise?(CDNGet::CommandError,
|
79
|
+
"jsdelivr: cannot list libraries; please specify pattern such as 'jquery*'.")
|
84
80
|
end
|
85
81
|
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
ok {exc.message} == "jsdelivr: cannot list libraries; please specify pattern such as 'jquery*'."
|
82
|
+
spec "(unpkg) lists librareis." do
|
83
|
+
pr = proc { run("unpkg") }
|
84
|
+
ok {pr}.raise?(CDNGet::CommandError,
|
85
|
+
"unpkg: cannot list libraries; please specify pattern such as 'jquery*'.")
|
91
86
|
end
|
92
87
|
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
ok {
|
88
|
+
spec "(google) lists librareis." do
|
89
|
+
actual = run("google")
|
90
|
+
ok {actual} =~ /^jquery /
|
91
|
+
#ok {actual} =~ /^angularjs /
|
92
|
+
ok {actual} =~ /^swfobject /
|
93
|
+
ok {actual} =~ /^webfont /
|
98
94
|
end
|
99
95
|
|
100
96
|
end
|
101
97
|
|
102
98
|
|
103
|
-
|
99
|
+
topic 'cdnget <CDN> <pattern> (#1)' do
|
104
100
|
|
105
|
-
|
106
|
-
actual =
|
101
|
+
spec "(cdnjs) lists libraries starting to pattern." do
|
102
|
+
actual = run("cdnjs", "jquery*")
|
107
103
|
ok {actual} =~ /^jquery #/
|
108
104
|
ok {actual} =~ /^jqueryui #/ # match
|
109
105
|
ok {actual} !~ /^require-jquery #/ # not match
|
@@ -112,36 +108,36 @@ END
|
|
112
108
|
ok {actual} !~ /^ember\.js/
|
113
109
|
end
|
114
110
|
|
115
|
-
|
116
|
-
actual =
|
117
|
-
ok {actual} =~ /^jquery #/
|
118
|
-
ok {actual} =~ /^jqueryui #/ # match
|
119
|
-
ok {actual} !~ /^angularjs/
|
120
|
-
end
|
121
|
-
|
122
|
-
it "(jsdelivr) lists libraries starting to pattern." do
|
123
|
-
actual = CDNGet::Main.new().run("jsdelivr", "jquery*")
|
111
|
+
spec "(jsdelivr) lists libraries starting to pattern." do
|
112
|
+
actual = run("jsdelivr", "jquery*")
|
124
113
|
ok {actual} =~ /^jquery #/
|
125
114
|
ok {actual} =~ /^jquery-datepicker #/ # match
|
126
115
|
ok {actual} !~ /^angularjs/
|
127
116
|
ok {actual} !~ /^bootstrap/
|
128
117
|
end
|
129
118
|
|
130
|
-
|
131
|
-
actual =
|
119
|
+
spec "(unpkg) lists libraries starting to pattern." do
|
120
|
+
actual = run("unpkg", "jquery*")
|
132
121
|
ok {actual} =~ /^jquery #/
|
133
122
|
ok {actual} =~ /^jquery-ui #/ # match
|
134
123
|
ok {actual} !~ /^jquery\.ui /
|
135
124
|
ok {actual} !~ /^bootstrap/
|
136
125
|
end
|
137
126
|
|
127
|
+
spec "(google) lists libraries starting to pattern." do
|
128
|
+
actual = run("google", "jquery*")
|
129
|
+
ok {actual} =~ /^jquery #/
|
130
|
+
ok {actual} =~ /^jqueryui #/ # match
|
131
|
+
ok {actual} !~ /^angularjs/
|
132
|
+
end
|
133
|
+
|
138
134
|
end
|
139
135
|
|
140
136
|
|
141
|
-
|
137
|
+
topic 'cdnget <CDN> <pattern> (#2)' do
|
142
138
|
|
143
|
-
|
144
|
-
actual =
|
139
|
+
spec "(cdnjs) lists libraries ending to pattern." do
|
140
|
+
actual = run("cdnjs", "*jquery")
|
145
141
|
ok {actual} =~ /^jquery #/
|
146
142
|
ok {actual} !~ /^jqueryui #/ # not match
|
147
143
|
ok {actual} =~ /^require-jquery #/ # match
|
@@ -150,36 +146,36 @@ END
|
|
150
146
|
ok {actual} !~ /^ember\.js/
|
151
147
|
end
|
152
148
|
|
153
|
-
|
154
|
-
actual =
|
149
|
+
spec "(jsdelivr) lists libraries ending to pattern." do
|
150
|
+
actual = run("jsdelivr", "*jquery")
|
155
151
|
ok {actual} =~ /^jquery #/
|
156
|
-
ok {actual} !~ /^
|
152
|
+
ok {actual} !~ /^jquery-datepicker / # not match
|
157
153
|
ok {actual} !~ /^angularjs/
|
154
|
+
ok {actual} !~ /^bootstrap/
|
158
155
|
end
|
159
156
|
|
160
|
-
|
161
|
-
actual =
|
157
|
+
spec "(unpkg) lists libraries ending to pattern." do
|
158
|
+
actual = run("unpkg", "*jquery")
|
162
159
|
ok {actual} =~ /^jquery #/
|
163
|
-
ok {actual} !~ /^jquery-
|
160
|
+
ok {actual} !~ /^jquery-ui #/ # not match
|
164
161
|
ok {actual} !~ /^angularjs/
|
165
162
|
ok {actual} !~ /^bootstrap/
|
166
163
|
end
|
167
164
|
|
168
|
-
|
169
|
-
actual =
|
165
|
+
spec "(google) lists libraries ending to pattern." do
|
166
|
+
actual = run("google", "*jquery")
|
170
167
|
ok {actual} =~ /^jquery #/
|
171
|
-
ok {actual} !~ /^
|
168
|
+
ok {actual} !~ /^jqueryui #/ # not match
|
172
169
|
ok {actual} !~ /^angularjs/
|
173
|
-
ok {actual} !~ /^bootstrap/
|
174
170
|
end
|
175
171
|
|
176
172
|
end
|
177
173
|
|
178
174
|
|
179
|
-
|
175
|
+
topic 'cdnget <CDN> <pattern> (#3)' do
|
180
176
|
|
181
|
-
|
182
|
-
actual =
|
177
|
+
spec "(cdnjs) lists libraries including pattern." do
|
178
|
+
actual = run("cdnjs", "*jquery*")
|
183
179
|
ok {actual} =~ /^jquery #/
|
184
180
|
ok {actual} =~ /^jqueryui #/ # match
|
185
181
|
ok {actual} =~ /^require-jquery #/ # match
|
@@ -188,16 +184,8 @@ END
|
|
188
184
|
ok {actual} !~ /^ember\.js/
|
189
185
|
end
|
190
186
|
|
191
|
-
|
192
|
-
actual =
|
193
|
-
ok {actual} !~ /^jquery /
|
194
|
-
ok {actual} !~ /^angularjs /
|
195
|
-
ok {actual} =~ /^mootools /
|
196
|
-
ok {actual} =~ /^swfobject /
|
197
|
-
end
|
198
|
-
|
199
|
-
it "(jsdelivr) lists libraries including pattern." do
|
200
|
-
actual = CDNGet::Main.new().run("jsdelivr", "*jquery*")
|
187
|
+
spec "(jsdelivr) lists libraries including pattern." do
|
188
|
+
actual = run("jsdelivr", "*jquery*")
|
201
189
|
ok {actual} =~ /^jquery /
|
202
190
|
ok {actual} =~ /^jasmine-jquery /
|
203
191
|
ok {actual} =~ /^jquery-form /
|
@@ -205,8 +193,8 @@ END
|
|
205
193
|
ok {actual} !~ /^react/
|
206
194
|
end
|
207
195
|
|
208
|
-
|
209
|
-
actual =
|
196
|
+
spec "(unpkg) lists libraries including pattern." do
|
197
|
+
actual = run("unpkg", "*jquery*")
|
210
198
|
ok {actual} =~ /^jquery /
|
211
199
|
ok {actual} =~ /^jquery-csv /
|
212
200
|
ok {actual} =~ /^jquery\.terminal /
|
@@ -215,13 +203,21 @@ END
|
|
215
203
|
ok {actual} !~ /^bootstrap/
|
216
204
|
end
|
217
205
|
|
206
|
+
spec "(google) lists libraries including pattern." do
|
207
|
+
actual = run("google", "*o*")
|
208
|
+
ok {actual} !~ /^jquery /
|
209
|
+
ok {actual} !~ /^angularjs /
|
210
|
+
ok {actual} =~ /^mootools /
|
211
|
+
ok {actual} =~ /^swfobject /
|
212
|
+
end
|
213
|
+
|
218
214
|
end
|
219
215
|
|
220
216
|
|
221
|
-
|
217
|
+
topic "cdnget <CDN> <library> (exists)" do
|
222
218
|
|
223
|
-
|
224
|
-
actual =
|
219
|
+
spec "(cdnjs) lists versions of library." do
|
220
|
+
actual = run("cdnjs", "jquery")
|
225
221
|
text1 = <<END
|
226
222
|
name: jquery
|
227
223
|
desc: JavaScript library for DOM operations
|
@@ -244,29 +240,8 @@ END
|
|
244
240
|
ok {actual} =~ /^ - 1\.12\.0$/
|
245
241
|
end
|
246
242
|
|
247
|
-
|
248
|
-
actual =
|
249
|
-
text1 = <<END
|
250
|
-
name: jquery
|
251
|
-
site: http://jquery.com/
|
252
|
-
info: https://developers.google.com/speed/libraries/#jquery
|
253
|
-
versions:
|
254
|
-
END
|
255
|
-
ok {actual}.start_with?(text1)
|
256
|
-
text2 = <<END
|
257
|
-
- 1.3.2
|
258
|
-
- 1.3.1
|
259
|
-
- 1.3.0
|
260
|
-
- 1.2.6
|
261
|
-
- 1.2.3
|
262
|
-
END
|
263
|
-
ok {actual}.end_with?(text2)
|
264
|
-
ok {actual} =~ /^ - 2\.2\.0$/
|
265
|
-
ok {actual} =~ /^ - 1\.12\.0$/
|
266
|
-
end
|
267
|
-
|
268
|
-
it "(jsdelivr) lists versions of library." do
|
269
|
-
actual = CDNGet::Main.new().run("jsdelivr", "jquery")
|
243
|
+
spec "(jsdelivr) lists versions of library." do
|
244
|
+
actual = run("jsdelivr", "jquery")
|
270
245
|
text1 = <<END
|
271
246
|
name: jquery
|
272
247
|
desc: JavaScript library for DOM operations
|
@@ -290,8 +265,8 @@ END
|
|
290
265
|
ok {actual} =~ /^ - 1\.12\.0$/
|
291
266
|
end
|
292
267
|
|
293
|
-
|
294
|
-
actual =
|
268
|
+
spec "(unpkg) lists versions of library." do
|
269
|
+
actual = run("unpkg", "jquery")
|
295
270
|
text1 = <<END
|
296
271
|
name: jquery
|
297
272
|
desc: JavaScript library for DOM operations
|
@@ -314,35 +289,61 @@ END
|
|
314
289
|
ok {actual} =~ /^ - 1\.12\.0$/
|
315
290
|
end
|
316
291
|
|
317
|
-
|
318
|
-
|
292
|
+
spec "(google) lists versions of library." do
|
293
|
+
actual = run("google", "jquery")
|
294
|
+
text1 = <<END
|
295
|
+
name: jquery
|
296
|
+
site: http://jquery.com/
|
297
|
+
info: https://developers.google.com/speed/libraries/#jquery
|
298
|
+
versions:
|
299
|
+
END
|
300
|
+
ok {actual}.start_with?(text1)
|
301
|
+
text2 = <<END
|
302
|
+
- 1.3.2
|
303
|
+
- 1.3.1
|
304
|
+
- 1.3.0
|
305
|
+
- 1.2.6
|
306
|
+
- 1.2.3
|
307
|
+
END
|
308
|
+
ok {actual}.end_with?(text2)
|
309
|
+
ok {actual} =~ /^ - 2\.2\.0$/
|
310
|
+
ok {actual} =~ /^ - 1\.12\.0$/
|
311
|
+
end
|
312
|
+
|
313
|
+
end
|
314
|
+
|
315
|
+
|
316
|
+
topic "cdnget <CDN> <library> (not exist)" do
|
317
|
+
|
318
|
+
spec "(cdnjs) raises error when library name is wrong." do
|
319
|
+
pr = proc { run("cdnjs", "jquery-ui") }
|
319
320
|
ok {pr}.raise?(CDNGet::CommandError, "jquery-ui: Library not found.")
|
320
321
|
#
|
321
|
-
pr = proc {
|
322
|
+
pr = proc { run("cdnjs", "emberjs", "2.2.1") }
|
322
323
|
ok {pr}.raise?(CDNGet::CommandError, "emberjs: Library not found (maybe 'ember.js'?).")
|
323
324
|
end
|
324
325
|
|
325
|
-
|
326
|
-
pr = proc {
|
327
|
-
ok {pr}.raise?(CDNGet::CommandError, "jquery-
|
326
|
+
spec "(jsdelivr) raises error when library name is wrong." do
|
327
|
+
pr = proc { run("jsdelivr", "jquery-foobar") }
|
328
|
+
ok {pr}.raise?(CDNGet::CommandError, "jquery-foobar: Library not found.")
|
328
329
|
end
|
329
330
|
|
330
|
-
|
331
|
-
pr = proc {
|
331
|
+
spec "(unpkg) raises error when library name is wrong." do
|
332
|
+
pr = proc { run("unpkg", "jquery-foobar") }
|
332
333
|
ok {pr}.raise?(CDNGet::CommandError, "jquery-foobar: Library not found.")
|
333
334
|
end
|
334
335
|
|
335
|
-
|
336
|
-
pr = proc {
|
337
|
-
ok {pr}.raise?(CDNGet::CommandError, "jquery-
|
336
|
+
spec "(google) raises error when library name is wrong." do
|
337
|
+
pr = proc { run("google", "jquery-ui") }
|
338
|
+
ok {pr}.raise?(CDNGet::CommandError, "jquery-ui: Library not found.")
|
338
339
|
end
|
339
340
|
|
340
341
|
end
|
341
342
|
|
342
343
|
|
343
|
-
|
344
|
+
topic "cdnget <CDN> <library> <version> (only files)" do
|
344
345
|
|
345
|
-
|
346
|
+
spec "(cdnjs) lists files." do
|
346
347
|
expected = <<END
|
347
348
|
name: jquery
|
348
349
|
version: 2.2.0
|
@@ -356,24 +357,11 @@ urls:
|
|
356
357
|
- https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/jquery.min.js
|
357
358
|
- https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/jquery.min.map
|
358
359
|
END
|
359
|
-
actual =
|
360
|
-
ok {actual} == expected
|
361
|
-
end
|
362
|
-
|
363
|
-
it "(google) lists files." do
|
364
|
-
expected = <<END
|
365
|
-
name: jquery
|
366
|
-
version: 2.2.0
|
367
|
-
site: http://jquery.com/
|
368
|
-
info: https://developers.google.com/speed/libraries/#jquery
|
369
|
-
urls:
|
370
|
-
- https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js
|
371
|
-
END
|
372
|
-
actual = CDNGet::Main.new().run("google", "jquery", "2.2.0")
|
360
|
+
actual = run("cdnjs", "jquery", "2.2.0")
|
373
361
|
ok {actual} == expected
|
374
362
|
end
|
375
363
|
|
376
|
-
|
364
|
+
spec "(jsdelivr) lists files." do
|
377
365
|
expected = <<END
|
378
366
|
name: jquery
|
379
367
|
version: 2.2.0
|
@@ -392,11 +380,11 @@ urls:
|
|
392
380
|
- https://cdn.jsdelivr.net/npm/jquery@2.2.0/dist/jquery.min.map
|
393
381
|
- https://cdn.jsdelivr.net/npm/jquery@2.2.0/LICENSE.txt
|
394
382
|
END
|
395
|
-
actual =
|
383
|
+
actual = run("jsdelivr", "jquery", "2.2.0")
|
396
384
|
ok {actual}.start_with?(expected)
|
397
385
|
end
|
398
386
|
|
399
|
-
|
387
|
+
spec "(unpkg) lists files." do
|
400
388
|
expected = <<END
|
401
389
|
name: jquery
|
402
390
|
version: 3.6.0
|
@@ -405,40 +393,20 @@ tags: jquery, javascript, browser, library
|
|
405
393
|
site: https://jquery.com
|
406
394
|
info: https://unpkg.com/browse/jquery@3.6.0/
|
407
395
|
npmpkg: https://registry.npmjs.org/jquery/-/jquery-3.6.0.tgz
|
408
|
-
default: /dist/jquery.min.js
|
409
396
|
license: MIT
|
410
397
|
urls:
|
411
|
-
- https://unpkg.com/jquery@3.6.0/
|
412
|
-
- https://unpkg.com/jquery@3.6.0/
|
413
|
-
- https://unpkg.com/jquery@3.6.0/
|
414
|
-
- https://unpkg.com/jquery@3.6.0/
|
415
|
-
- https://unpkg.com/jquery@3.6.0/
|
416
|
-
- https://unpkg.com/jquery@3.6.0/
|
417
|
-
- https://unpkg.com/jquery@3.6.0/
|
418
|
-
- https://unpkg.com/jquery@3.6.0/
|
419
|
-
- https://unpkg.com/jquery@3.6.0/
|
420
|
-
- https://unpkg.com/jquery@3.6.0/
|
421
|
-
- https://unpkg.com/jquery@3.6.0/
|
422
|
-
- https://unpkg.com/jquery@3.6.0/
|
423
|
-
- https://unpkg.com/jquery@3.6.0/LICENSE.txt
|
424
|
-
- https://unpkg.com/jquery@3.6.0/package.json
|
425
|
-
- https://unpkg.com/jquery@3.6.0/README.md
|
426
|
-
- https://unpkg.com/jquery@3.6.0/src/ajax.js
|
427
|
-
- https://unpkg.com/jquery@3.6.0/src/ajax/jsonp.js
|
428
|
-
- https://unpkg.com/jquery@3.6.0/src/ajax/load.js
|
429
|
-
- https://unpkg.com/jquery@3.6.0/src/ajax/script.js
|
430
|
-
- https://unpkg.com/jquery@3.6.0/src/ajax/var/location.js
|
431
|
-
- https://unpkg.com/jquery@3.6.0/src/ajax/var/nonce.js
|
432
|
-
- https://unpkg.com/jquery@3.6.0/src/ajax/var/rquery.js
|
433
|
-
- https://unpkg.com/jquery@3.6.0/src/ajax/xhr.js
|
434
|
-
- https://unpkg.com/jquery@3.6.0/src/attributes.js
|
435
|
-
- https://unpkg.com/jquery@3.6.0/src/attributes/attr.js
|
436
|
-
- https://unpkg.com/jquery@3.6.0/src/attributes/classes.js
|
437
|
-
- https://unpkg.com/jquery@3.6.0/src/attributes/prop.js
|
438
|
-
- https://unpkg.com/jquery@3.6.0/src/attributes/support.js
|
439
|
-
- https://unpkg.com/jquery@3.6.0/src/attributes/val.js
|
440
|
-
- https://unpkg.com/jquery@3.6.0/src/callbacks.js
|
441
|
-
- https://unpkg.com/jquery@3.6.0/src/core.js
|
398
|
+
- https://unpkg.com/jquery@3.6.0/src/manipulation/_evalUrl.js
|
399
|
+
- https://unpkg.com/jquery@3.6.0/src/manipulation/buildFragment.js
|
400
|
+
- https://unpkg.com/jquery@3.6.0/src/manipulation/getAll.js
|
401
|
+
- https://unpkg.com/jquery@3.6.0/src/manipulation/var/rscriptType.js
|
402
|
+
- https://unpkg.com/jquery@3.6.0/src/manipulation/var/rtagName.js
|
403
|
+
- https://unpkg.com/jquery@3.6.0/src/manipulation/setGlobalEval.js
|
404
|
+
- https://unpkg.com/jquery@3.6.0/src/manipulation/support.js
|
405
|
+
- https://unpkg.com/jquery@3.6.0/src/manipulation/wrapMap.js
|
406
|
+
- https://unpkg.com/jquery@3.6.0/src/data/var/acceptData.js
|
407
|
+
- https://unpkg.com/jquery@3.6.0/src/data/var/dataPriv.js
|
408
|
+
- https://unpkg.com/jquery@3.6.0/src/data/var/dataUser.js
|
409
|
+
- https://unpkg.com/jquery@3.6.0/src/data/Data.js
|
442
410
|
- https://unpkg.com/jquery@3.6.0/src/core/access.js
|
443
411
|
- https://unpkg.com/jquery@3.6.0/src/core/camelCase.js
|
444
412
|
- https://unpkg.com/jquery@3.6.0/src/core/DOMEval.js
|
@@ -447,69 +415,33 @@ urls:
|
|
447
415
|
- https://unpkg.com/jquery@3.6.0/src/core/nodeName.js
|
448
416
|
- https://unpkg.com/jquery@3.6.0/src/core/parseHTML.js
|
449
417
|
- https://unpkg.com/jquery@3.6.0/src/core/parseXML.js
|
450
|
-
- https://unpkg.com/jquery@3.6.0/src/core/ready.js
|
451
418
|
- https://unpkg.com/jquery@3.6.0/src/core/ready-no-deferred.js
|
419
|
+
- https://unpkg.com/jquery@3.6.0/src/core/ready.js
|
452
420
|
- https://unpkg.com/jquery@3.6.0/src/core/readyException.js
|
421
|
+
- https://unpkg.com/jquery@3.6.0/src/core/var/rsingleTag.js
|
453
422
|
- https://unpkg.com/jquery@3.6.0/src/core/stripAndCollapse.js
|
454
423
|
- https://unpkg.com/jquery@3.6.0/src/core/support.js
|
455
424
|
- https://unpkg.com/jquery@3.6.0/src/core/toType.js
|
456
|
-
- https://unpkg.com/jquery@3.6.0/src/core/var/rsingleTag.js
|
457
|
-
- https://unpkg.com/jquery@3.6.0/src/css.js
|
458
425
|
- https://unpkg.com/jquery@3.6.0/src/css/addGetHookIf.js
|
459
426
|
- https://unpkg.com/jquery@3.6.0/src/css/adjustCSS.js
|
460
|
-
- https://unpkg.com/jquery@3.6.0/src/css/curCSS.js
|
461
|
-
- https://unpkg.com/jquery@3.6.0/src/css/finalPropName.js
|
462
|
-
- https://unpkg.com/jquery@3.6.0/src/css/hiddenVisibleSelectors.js
|
463
|
-
- https://unpkg.com/jquery@3.6.0/src/css/showHide.js
|
464
|
-
- https://unpkg.com/jquery@3.6.0/src/css/support.js
|
465
427
|
- https://unpkg.com/jquery@3.6.0/src/css/var/cssExpand.js
|
466
428
|
- https://unpkg.com/jquery@3.6.0/src/css/var/getStyles.js
|
467
429
|
- https://unpkg.com/jquery@3.6.0/src/css/var/isHiddenWithinTree.js
|
468
430
|
- https://unpkg.com/jquery@3.6.0/src/css/var/rboxStyle.js
|
469
431
|
- https://unpkg.com/jquery@3.6.0/src/css/var/rnumnonpx.js
|
470
432
|
- https://unpkg.com/jquery@3.6.0/src/css/var/swap.js
|
471
|
-
- https://unpkg.com/jquery@3.6.0/src/
|
472
|
-
- https://unpkg.com/jquery@3.6.0/src/
|
473
|
-
- https://unpkg.com/jquery@3.6.0/src/
|
474
|
-
- https://unpkg.com/jquery@3.6.0/src/
|
475
|
-
- https://unpkg.com/jquery@3.6.0/src/
|
476
|
-
- https://unpkg.com/jquery@3.6.0/src/deferred.js
|
477
|
-
- https://unpkg.com/jquery@3.6.0/src/deferred/exceptionHook.js
|
478
|
-
- https://unpkg.com/jquery@3.6.0/src/deprecated.js
|
433
|
+
- https://unpkg.com/jquery@3.6.0/src/css/curCSS.js
|
434
|
+
- https://unpkg.com/jquery@3.6.0/src/css/finalPropName.js
|
435
|
+
- https://unpkg.com/jquery@3.6.0/src/css/hiddenVisibleSelectors.js
|
436
|
+
- https://unpkg.com/jquery@3.6.0/src/css/showHide.js
|
437
|
+
- https://unpkg.com/jquery@3.6.0/src/css/support.js
|
479
438
|
- https://unpkg.com/jquery@3.6.0/src/deprecated/ajax-event-alias.js
|
480
439
|
- https://unpkg.com/jquery@3.6.0/src/deprecated/event.js
|
481
|
-
- https://unpkg.com/jquery@3.6.0/src/
|
482
|
-
- https://unpkg.com/jquery@3.6.0/src/effects.js
|
483
|
-
- https://unpkg.com/jquery@3.6.0/src/effects/animatedSelector.js
|
484
|
-
- https://unpkg.com/jquery@3.6.0/src/effects/Tween.js
|
485
|
-
- https://unpkg.com/jquery@3.6.0/src/event.js
|
486
|
-
- https://unpkg.com/jquery@3.6.0/src/event/focusin.js
|
487
|
-
- https://unpkg.com/jquery@3.6.0/src/event/support.js
|
488
|
-
- https://unpkg.com/jquery@3.6.0/src/event/trigger.js
|
440
|
+
- https://unpkg.com/jquery@3.6.0/src/ajax.js
|
489
441
|
- https://unpkg.com/jquery@3.6.0/src/exports/amd.js
|
490
442
|
- https://unpkg.com/jquery@3.6.0/src/exports/global.js
|
491
|
-
- https://unpkg.com/jquery@3.6.0/src/
|
492
|
-
- https://unpkg.com/jquery@3.6.0/src/
|
493
|
-
- https://unpkg.com/jquery@3.6.0/src/manipulation/_evalUrl.js
|
494
|
-
- https://unpkg.com/jquery@3.6.0/src/manipulation/buildFragment.js
|
495
|
-
- https://unpkg.com/jquery@3.6.0/src/manipulation/getAll.js
|
496
|
-
- https://unpkg.com/jquery@3.6.0/src/manipulation/setGlobalEval.js
|
497
|
-
- https://unpkg.com/jquery@3.6.0/src/manipulation/support.js
|
498
|
-
- https://unpkg.com/jquery@3.6.0/src/manipulation/var/rscriptType.js
|
499
|
-
- https://unpkg.com/jquery@3.6.0/src/manipulation/var/rtagName.js
|
500
|
-
- https://unpkg.com/jquery@3.6.0/src/manipulation/wrapMap.js
|
501
|
-
- https://unpkg.com/jquery@3.6.0/src/offset.js
|
502
|
-
- https://unpkg.com/jquery@3.6.0/src/queue.js
|
503
|
-
- https://unpkg.com/jquery@3.6.0/src/queue/delay.js
|
504
|
-
- https://unpkg.com/jquery@3.6.0/src/selector.js
|
505
|
-
- https://unpkg.com/jquery@3.6.0/src/selector-native.js
|
506
|
-
- https://unpkg.com/jquery@3.6.0/src/selector-sizzle.js
|
507
|
-
- https://unpkg.com/jquery@3.6.0/src/serialize.js
|
508
|
-
- https://unpkg.com/jquery@3.6.0/src/traversing.js
|
509
|
-
- https://unpkg.com/jquery@3.6.0/src/traversing/findFilter.js
|
510
|
-
- https://unpkg.com/jquery@3.6.0/src/traversing/var/dir.js
|
511
|
-
- https://unpkg.com/jquery@3.6.0/src/traversing/var/rneedsContext.js
|
512
|
-
- https://unpkg.com/jquery@3.6.0/src/traversing/var/siblings.js
|
443
|
+
- https://unpkg.com/jquery@3.6.0/src/effects/animatedSelector.js
|
444
|
+
- https://unpkg.com/jquery@3.6.0/src/effects/Tween.js
|
513
445
|
- https://unpkg.com/jquery@3.6.0/src/var/arr.js
|
514
446
|
- https://unpkg.com/jquery@3.6.0/src/var/class2type.js
|
515
447
|
- https://unpkg.com/jquery@3.6.0/src/var/document.js
|
@@ -530,13 +462,86 @@ urls:
|
|
530
462
|
- https://unpkg.com/jquery@3.6.0/src/var/slice.js
|
531
463
|
- https://unpkg.com/jquery@3.6.0/src/var/support.js
|
532
464
|
- https://unpkg.com/jquery@3.6.0/src/var/toString.js
|
465
|
+
- https://unpkg.com/jquery@3.6.0/src/attributes/attr.js
|
466
|
+
- https://unpkg.com/jquery@3.6.0/src/attributes/classes.js
|
467
|
+
- https://unpkg.com/jquery@3.6.0/src/attributes/prop.js
|
468
|
+
- https://unpkg.com/jquery@3.6.0/src/attributes/support.js
|
469
|
+
- https://unpkg.com/jquery@3.6.0/src/attributes/val.js
|
470
|
+
- https://unpkg.com/jquery@3.6.0/src/attributes.js
|
471
|
+
- https://unpkg.com/jquery@3.6.0/src/callbacks.js
|
472
|
+
- https://unpkg.com/jquery@3.6.0/src/core.js
|
473
|
+
- https://unpkg.com/jquery@3.6.0/src/css.js
|
474
|
+
- https://unpkg.com/jquery@3.6.0/src/data.js
|
475
|
+
- https://unpkg.com/jquery@3.6.0/src/deferred.js
|
476
|
+
- https://unpkg.com/jquery@3.6.0/src/queue/delay.js
|
477
|
+
- https://unpkg.com/jquery@3.6.0/src/deprecated.js
|
478
|
+
- https://unpkg.com/jquery@3.6.0/src/dimensions.js
|
479
|
+
- https://unpkg.com/jquery@3.6.0/src/traversing/var/dir.js
|
480
|
+
- https://unpkg.com/jquery@3.6.0/src/traversing/var/rneedsContext.js
|
481
|
+
- https://unpkg.com/jquery@3.6.0/src/traversing/var/siblings.js
|
482
|
+
- https://unpkg.com/jquery@3.6.0/src/traversing/findFilter.js
|
483
|
+
- https://unpkg.com/jquery@3.6.0/src/effects.js
|
484
|
+
- https://unpkg.com/jquery@3.6.0/src/event.js
|
485
|
+
- https://unpkg.com/jquery@3.6.0/src/deferred/exceptionHook.js
|
486
|
+
- https://unpkg.com/jquery@3.6.0/src/event/focusin.js
|
487
|
+
- https://unpkg.com/jquery@3.6.0/src/event/support.js
|
488
|
+
- https://unpkg.com/jquery@3.6.0/src/event/trigger.js
|
489
|
+
- https://unpkg.com/jquery@3.6.0/src/jquery.js
|
490
|
+
- https://unpkg.com/jquery@3.6.0/src/ajax/jsonp.js
|
491
|
+
- https://unpkg.com/jquery@3.6.0/src/ajax/load.js
|
492
|
+
- https://unpkg.com/jquery@3.6.0/src/ajax/var/location.js
|
493
|
+
- https://unpkg.com/jquery@3.6.0/src/ajax/var/nonce.js
|
494
|
+
- https://unpkg.com/jquery@3.6.0/src/ajax/var/rquery.js
|
495
|
+
- https://unpkg.com/jquery@3.6.0/src/ajax/script.js
|
496
|
+
- https://unpkg.com/jquery@3.6.0/src/ajax/xhr.js
|
497
|
+
- https://unpkg.com/jquery@3.6.0/src/manipulation.js
|
498
|
+
- https://unpkg.com/jquery@3.6.0/src/offset.js
|
499
|
+
- https://unpkg.com/jquery@3.6.0/src/queue.js
|
500
|
+
- https://unpkg.com/jquery@3.6.0/src/selector-native.js
|
501
|
+
- https://unpkg.com/jquery@3.6.0/src/selector-sizzle.js
|
502
|
+
- https://unpkg.com/jquery@3.6.0/src/selector.js
|
503
|
+
- https://unpkg.com/jquery@3.6.0/src/serialize.js
|
504
|
+
- https://unpkg.com/jquery@3.6.0/src/traversing.js
|
533
505
|
- https://unpkg.com/jquery@3.6.0/src/wrap.js
|
506
|
+
- https://unpkg.com/jquery@3.6.0/dist/jquery.js
|
507
|
+
- https://unpkg.com/jquery@3.6.0/dist/jquery.min.js
|
508
|
+
- https://unpkg.com/jquery@3.6.0/dist/jquery.slim.js
|
509
|
+
- https://unpkg.com/jquery@3.6.0/dist/jquery.slim.min.js
|
510
|
+
- https://unpkg.com/jquery@3.6.0/dist/jquery.min.map
|
511
|
+
- https://unpkg.com/jquery@3.6.0/dist/jquery.slim.min.map
|
512
|
+
- https://unpkg.com/jquery@3.6.0/external/sizzle/dist/sizzle.js
|
513
|
+
- https://unpkg.com/jquery@3.6.0/external/sizzle/dist/sizzle.min.js
|
514
|
+
- https://unpkg.com/jquery@3.6.0/external/sizzle/dist/sizzle.min.map
|
515
|
+
- https://unpkg.com/jquery@3.6.0/external/sizzle/LICENSE.txt
|
516
|
+
- https://unpkg.com/jquery@3.6.0/bower.json
|
517
|
+
- https://unpkg.com/jquery@3.6.0/package.json
|
518
|
+
- https://unpkg.com/jquery@3.6.0/README.md
|
519
|
+
- https://unpkg.com/jquery@3.6.0/AUTHORS.txt
|
520
|
+
- https://unpkg.com/jquery@3.6.0/LICENSE.txt
|
521
|
+
END
|
522
|
+
actual = run("unpkg", "jquery", "3.6.0")
|
523
|
+
ok {actual} == expected
|
524
|
+
end
|
525
|
+
|
526
|
+
spec "(google) lists files." do
|
527
|
+
expected = <<END
|
528
|
+
name: jquery
|
529
|
+
version: 2.2.0
|
530
|
+
site: http://jquery.com/
|
531
|
+
info: https://developers.google.com/speed/libraries/#jquery
|
532
|
+
urls:
|
533
|
+
- https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js
|
534
534
|
END
|
535
|
-
actual =
|
535
|
+
actual = run("google", "jquery", "2.2.0")
|
536
536
|
ok {actual} == expected
|
537
537
|
end
|
538
538
|
|
539
|
-
|
539
|
+
end
|
540
|
+
|
541
|
+
|
542
|
+
topic "cdnget <CDN> <library> <version> (containing subdirectory)" do
|
543
|
+
|
544
|
+
spec "(cdnjs) lists files containing subdirectory." do
|
540
545
|
expected = <<END
|
541
546
|
name: jquery-jcrop
|
542
547
|
version: 0.9.12
|
@@ -555,92 +560,90 @@ urls:
|
|
555
560
|
- https://cdnjs.cloudflare.com/ajax/libs/jquery-jcrop/0.9.12/js/jquery.color.min.js
|
556
561
|
- https://cdnjs.cloudflare.com/ajax/libs/jquery-jcrop/0.9.12/js/jquery.min.js
|
557
562
|
END
|
558
|
-
actual =
|
563
|
+
actual = run("cdnjs", "jquery-jcrop", "0.9.12")
|
559
564
|
ok {actual} == expected
|
560
565
|
end
|
561
566
|
|
562
|
-
|
563
|
-
|
567
|
+
spec "(google) lists files containing subdirectory." do
|
568
|
+
skip_when true, "no libraries containing subdirectory"
|
564
569
|
end
|
565
570
|
|
566
|
-
|
567
|
-
|
571
|
+
end
|
572
|
+
|
573
|
+
|
574
|
+
topic "cdnget <CDN> <not-existing-library> <version>" do
|
575
|
+
|
576
|
+
spec "(cdnjs) raises error when library name is wrong." do
|
577
|
+
pr = proc { run("cdnjs", "jquery-ui", "1.9.2") }
|
568
578
|
ok {pr}.raise?(CDNGet::CommandError, "jquery-ui: Library not found.")
|
569
579
|
#
|
570
|
-
pr = proc {
|
580
|
+
pr = proc { run("cdnjs", "emberjs", "2.2.1") }
|
571
581
|
ok {pr}.raise?(CDNGet::CommandError, "emberjs: Library not found (maybe 'ember.js'?).")
|
572
582
|
end
|
573
583
|
|
574
|
-
|
575
|
-
pr = proc {
|
576
|
-
ok {pr}.raise?(CDNGet::CommandError, "jquery-ui: Library not found.")
|
577
|
-
end
|
578
|
-
|
579
|
-
it "(jsdelivr) raises error when library name is wrong." do
|
580
|
-
pr = proc { CDNGet::Main.new().run("jsdelivr", "jquery-ui", "1.9.2") }
|
584
|
+
spec "(jsdelivr) raises error when library name is wrong." do
|
585
|
+
pr = proc { run("jsdelivr", "jquery-ui", "1.9.2") }
|
581
586
|
ok {pr}.raise?(CDNGet::CommandError, "jquery-ui@1.9.2: Library or version not found.")
|
582
587
|
end
|
583
588
|
|
584
|
-
|
585
|
-
pr = proc {
|
589
|
+
spec "(unpkg) raises error when library name is wrong." do
|
590
|
+
pr = proc { run("unpkg", "jquery-foobar", "1.9.2") }
|
586
591
|
ok {pr}.raise?(CDNGet::CommandError, "jquery-foobar: Library not found.")
|
587
592
|
end
|
588
593
|
|
594
|
+
spec "(google) raises error when library name is wrong." do
|
595
|
+
pr = proc { run("google", "jquery-ui", "1.9.2") }
|
596
|
+
ok {pr}.raise?(CDNGet::CommandError, "jquery-ui: Library not found.")
|
597
|
+
end
|
598
|
+
|
589
599
|
end
|
590
600
|
|
591
601
|
|
592
|
-
|
602
|
+
topic "cdnget <CDN> <library> <not-existing-version>" do
|
593
603
|
|
594
|
-
|
595
|
-
|
596
|
-
|
597
|
-
|
598
|
-
|
599
|
-
end
|
600
|
-
yield tmpdir, sout, serr
|
601
|
-
ensure
|
602
|
-
FileUtils.rm_r(tmpdir) if File.directory?(tmpdir)
|
604
|
+
spec "(cdnjs) raises error when version is wrong." do
|
605
|
+
pr = proc { run("cdnjs", "jquery", "1.0.0") }
|
606
|
+
ok {pr}.raise?(CDNGet::CommandError, "jquery/1.0.0: Library or version not found.")
|
607
|
+
pr = proc { run("cdnjs", "jquery", "blabla") }
|
608
|
+
ok {pr}.raise?(CDNGet::CommandError, "blabla: Invalid version number.")
|
603
609
|
end
|
604
610
|
|
605
|
-
|
606
|
-
|
607
|
-
|
608
|
-
|
609
|
-
|
610
|
-
end
|
611
|
-
yield tmpdir, sout, serr
|
612
|
-
ensure
|
613
|
-
FileUtils.rm_r(tmpdir) if File.directory?(tmpdir)
|
611
|
+
spec "(jsdelivr) raises error when version is wrong." do
|
612
|
+
pr = proc { run("jsdelivr", "jquery", "1.0.0") }
|
613
|
+
ok {pr}.raise?(CDNGet::CommandError, "jquery@1.0.0: Library or version not found.")
|
614
|
+
pr = proc { run("jsdelivr", "jquery", "blabla") }
|
615
|
+
ok {pr}.raise?(CDNGet::CommandError, "blabla: Invalid version number.")
|
614
616
|
end
|
615
617
|
|
616
|
-
|
617
|
-
|
618
|
-
|
619
|
-
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
|
625
|
-
ok {
|
626
|
-
|
627
|
-
|
628
|
-
|
618
|
+
spec "(unpkg) raises error when version is wrong." do
|
619
|
+
pr = proc { run("unpkg", "jquery", "1.0.0") }
|
620
|
+
ok {pr}.raise?(CDNGet::CommandError, "jquery@1.0.0: Version not found.")
|
621
|
+
pr = proc { run("unpkg", "jquery", "blabla") }
|
622
|
+
ok {pr}.raise?(CDNGet::CommandError, "blabla: Invalid version number.")
|
623
|
+
end
|
624
|
+
|
625
|
+
spec "(google) raises error when version is wrong." do
|
626
|
+
pr = proc { run("google", "jquery", "1.0.0") }
|
627
|
+
ok {pr}.raise?(CDNGet::CommandError, "jquery 1.0.0: Version not found.")
|
628
|
+
pr = proc { run("google", "jquery", "blabla") }
|
629
|
+
ok {pr}.raise?(CDNGet::CommandError, "blabla: Invalid version number.")
|
630
|
+
end
|
631
|
+
|
632
|
+
end
|
633
|
+
|
634
|
+
|
635
|
+
topic "cdnget <CDN> <library> <version> <dir> (only files)" do
|
636
|
+
|
637
|
+
def _do_download_test1(cdn_code, library="jquery", version="2.2.0")
|
638
|
+
sout, serr = capture_sio() do
|
639
|
+
actual = run(cdn_code, library, version, @tmpdir)
|
629
640
|
end
|
630
|
-
|
631
|
-
ok {sout} == expected.gsub(/(\(Created\))?\n/) {
|
632
|
-
if $1
|
633
|
-
"(Already exists)\n"
|
634
|
-
else
|
635
|
-
" (Unchanged)\n"
|
636
|
-
end
|
637
|
-
}
|
638
|
-
ensure
|
639
|
-
FileUtils.rm_r(tmpdir)
|
641
|
+
yield sout, serr
|
640
642
|
end
|
641
643
|
|
642
|
-
|
643
|
-
|
644
|
+
spec "(cdnjs) downloads files into dir." do
|
645
|
+
tmpdir = @tmpdir
|
646
|
+
_do_download_test1("cdnjs", "jquery", "2.2.0") do |sout, serr|
|
644
647
|
ok {"#{tmpdir}/jquery/2.2.0/jquery.js" }.file_exist?
|
645
648
|
ok {"#{tmpdir}/jquery/2.2.0/jquery.min.js" }.file_exist?
|
646
649
|
ok {"#{tmpdir}/jquery/2.2.0/jquery.min.map"}.file_exist?
|
@@ -652,17 +655,9 @@ END
|
|
652
655
|
end
|
653
656
|
end
|
654
657
|
|
655
|
-
|
656
|
-
|
657
|
-
|
658
|
-
ok {sout} == <<END
|
659
|
-
#{tmpdir}/jquery/2.2.0/jquery.min.js ... Done (85,589 byte)
|
660
|
-
END
|
661
|
-
end
|
662
|
-
end
|
663
|
-
|
664
|
-
it "(jsdelivr) downloads files into dir." do
|
665
|
-
_do_download_test1("jsdelivr", "chibijs", "3.0.9") do |tmpdir, sout, serr|
|
658
|
+
spec "(jsdelivr) downloads files into dir." do
|
659
|
+
tmpdir = @tmpdir
|
660
|
+
_do_download_test1("jsdelivr", "chibijs", "3.0.9") do |sout, serr|
|
666
661
|
ok {"#{tmpdir}/chibijs@3.0.9/.jshintrc" }.file_exist?
|
667
662
|
ok {"#{tmpdir}/chibijs@3.0.9/.npmignore" }.file_exist?
|
668
663
|
ok {"#{tmpdir}/chibijs@3.0.9/chibi.js" }.file_exist?
|
@@ -684,8 +679,9 @@ END
|
|
684
679
|
end
|
685
680
|
end
|
686
681
|
|
687
|
-
|
688
|
-
|
682
|
+
spec "(unpkg) downloads files into dir." do
|
683
|
+
tmpdir = @tmpdir
|
684
|
+
_do_download_test1("unpkg", "chibijs", "3.0.9") do |sout, serr|
|
689
685
|
ok {"#{tmpdir}/chibijs@3.0.9/.jshintrc" }.file_exist?
|
690
686
|
ok {"#{tmpdir}/chibijs@3.0.9/.npmignore" }.file_exist?
|
691
687
|
ok {"#{tmpdir}/chibijs@3.0.9/chibi.js" }.file_exist?
|
@@ -695,20 +691,43 @@ END
|
|
695
691
|
ok {"#{tmpdir}/chibijs@3.0.9/README.md" }.file_exist?
|
696
692
|
ok {"#{tmpdir}/chibijs@3.0.9/tests/runner.html"}.file_exist?
|
697
693
|
ok {sout} == <<END
|
698
|
-
#{tmpdir}/chibijs@3.0.9
|
694
|
+
#{tmpdir}/chibijs@3.0.9/package.json ... Done (756 byte)
|
699
695
|
#{tmpdir}/chibijs@3.0.9/.npmignore ... Done (46 byte)
|
700
|
-
#{tmpdir}/chibijs@3.0.9/
|
696
|
+
#{tmpdir}/chibijs@3.0.9/README.md ... Done (21,283 byte)
|
701
697
|
#{tmpdir}/chibijs@3.0.9/chibi-min.js ... Done (7,321 byte)
|
698
|
+
#{tmpdir}/chibijs@3.0.9/chibi.js ... Done (18,429 byte)
|
702
699
|
#{tmpdir}/chibijs@3.0.9/gulpfile.js ... Done (1,395 byte)
|
703
|
-
#{tmpdir}/chibijs@3.0.9
|
704
|
-
#{tmpdir}/chibijs@3.0.9/README.md ... Done (21,283 byte)
|
700
|
+
#{tmpdir}/chibijs@3.0.9/.jshintrc ... Done (5,323 byte)
|
705
701
|
#{tmpdir}/chibijs@3.0.9/tests/runner.html ... Done (14,302 byte)
|
706
702
|
END
|
707
703
|
end
|
708
704
|
end
|
709
705
|
|
710
|
-
|
711
|
-
|
706
|
+
spec "(google) downloads files into dir." do
|
707
|
+
tmpdir = @tmpdir
|
708
|
+
_do_download_test1("google", "jquery", "2.2.0") do |sout, serr|
|
709
|
+
ok {"#{tmpdir}/jquery/2.2.0/jquery.min.js" }.file_exist?
|
710
|
+
ok {sout} == <<END
|
711
|
+
#{tmpdir}/jquery/2.2.0/jquery.min.js ... Done (85,589 byte)
|
712
|
+
END
|
713
|
+
end
|
714
|
+
end
|
715
|
+
|
716
|
+
end
|
717
|
+
|
718
|
+
|
719
|
+
topic "cdnget <CDN> <library> <version> <dir> (containing subdirectory)" do
|
720
|
+
|
721
|
+
def _do_download_test2(cdn_code, library="jquery-jcrop", version="0.9.12")
|
722
|
+
sout, serr = capture_sio() do
|
723
|
+
actual = run(cdn_code, library, version, @tmpdir)
|
724
|
+
end
|
725
|
+
yield sout, serr
|
726
|
+
end
|
727
|
+
|
728
|
+
spec "(cdnjs) downloads files (containing subdir) into dir." do
|
729
|
+
tmpdir = @tmpdir
|
730
|
+
_do_download_test2("cdnjs", "jquery-jcrop", "0.9.12") do |sout, serr|
|
712
731
|
ok {"#{tmpdir}/jquery-jcrop/0.9.12/css/Jcrop.gif" }.file_exist?
|
713
732
|
ok {"#{tmpdir}/jquery-jcrop/0.9.12/css/jquery.Jcrop.css" }.file_exist?
|
714
733
|
ok {"#{tmpdir}/jquery-jcrop/0.9.12/css/jquery.Jcrop.min.css" }.file_exist?
|
@@ -730,12 +749,9 @@ END
|
|
730
749
|
end
|
731
750
|
end
|
732
751
|
|
733
|
-
|
734
|
-
|
735
|
-
|
736
|
-
|
737
|
-
it "(jsdelivr) downloads files (containing subdir) into dir." do
|
738
|
-
_do_download_test2("jsdelivr", "zepto", "1.2.0") do |tmpdir, sout, serr|
|
752
|
+
spec "(jsdelivr) downloads files (containing subdir) into dir." do
|
753
|
+
tmpdir = @tmpdir
|
754
|
+
_do_download_test2("jsdelivr", "zepto", "1.2.0") do |sout, serr|
|
739
755
|
ok {"#{tmpdir}/zepto@1.2.0/dist/zepto.js" }.file_exist?
|
740
756
|
ok {"#{tmpdir}/zepto@1.2.0/dist/zepto.min.js"}.file_exist?
|
741
757
|
ok {"#{tmpdir}/zepto@1.2.0/MIT-LICENSE" }.file_exist?
|
@@ -785,8 +801,9 @@ END
|
|
785
801
|
end
|
786
802
|
end
|
787
803
|
|
788
|
-
|
789
|
-
|
804
|
+
spec "(unpkg) downloads files (containing subdir) into dir." do
|
805
|
+
tmpdir = @tmpdir
|
806
|
+
_do_download_test2("unpkg", "react", "17.0.2") do |sout, serr|
|
790
807
|
ok {"#{tmpdir}/react@17.0.2/build-info.json" }.file_exist?
|
791
808
|
ok {"#{tmpdir}/react@17.0.2/cjs/react.development.js" }.file_exist?
|
792
809
|
ok {"#{tmpdir}/react@17.0.2/cjs/react.production.min.js"}.file_exist?
|
@@ -806,31 +823,63 @@ END
|
|
806
823
|
ok {"#{tmpdir}/react@17.0.2/umd/react.production.min.js"}.file_exist?
|
807
824
|
ok {"#{tmpdir}/react@17.0.2/umd/react.profiling.min.js" }.file_exist?
|
808
825
|
expected = <<END
|
809
|
-
#{tmpdir}/react@17.0.2/
|
810
|
-
#{tmpdir}/react@17.0.2/
|
811
|
-
#{tmpdir}/react@17.0.2/
|
826
|
+
#{tmpdir}/react@17.0.2/LICENSE ... Done (1,086 byte)
|
827
|
+
#{tmpdir}/react@17.0.2/index.js ... Done (190 byte)
|
828
|
+
#{tmpdir}/react@17.0.2/jsx-dev-runtime.js ... Done (222 byte)
|
829
|
+
#{tmpdir}/react@17.0.2/jsx-runtime.js ... Done (214 byte)
|
812
830
|
#{tmpdir}/react@17.0.2/cjs/react-jsx-dev-runtime.development.js ... Done (37,753 byte)
|
813
831
|
#{tmpdir}/react@17.0.2/cjs/react-jsx-dev-runtime.production.min.js ... Done (456 byte)
|
814
832
|
#{tmpdir}/react@17.0.2/cjs/react-jsx-dev-runtime.profiling.min.js ... Done (455 byte)
|
815
833
|
#{tmpdir}/react@17.0.2/cjs/react-jsx-runtime.development.js ... Done (38,352 byte)
|
816
834
|
#{tmpdir}/react@17.0.2/cjs/react-jsx-runtime.production.min.js ... Done (962 byte)
|
817
835
|
#{tmpdir}/react@17.0.2/cjs/react-jsx-runtime.profiling.min.js ... Done (961 byte)
|
818
|
-
#{tmpdir}/react@17.0.2/
|
819
|
-
#{tmpdir}/react@17.0.2/
|
820
|
-
#{tmpdir}/react@17.0.2/jsx-runtime.js ... Done (214 byte)
|
821
|
-
#{tmpdir}/react@17.0.2/LICENSE ... Done (1,086 byte)
|
822
|
-
#{tmpdir}/react@17.0.2/package.json ... Done (777 byte)
|
823
|
-
#{tmpdir}/react@17.0.2/README.md ... Done (737 byte)
|
836
|
+
#{tmpdir}/react@17.0.2/cjs/react.development.js ... Done (72,141 byte)
|
837
|
+
#{tmpdir}/react@17.0.2/cjs/react.production.min.js ... Done (6,450 byte)
|
824
838
|
#{tmpdir}/react@17.0.2/umd/react.development.js ... Done (105,096 byte)
|
825
839
|
#{tmpdir}/react@17.0.2/umd/react.production.min.js ... Done (11,440 byte)
|
826
840
|
#{tmpdir}/react@17.0.2/umd/react.profiling.min.js ... Done (13,668 byte)
|
841
|
+
#{tmpdir}/react@17.0.2/build-info.json ... Done (167 byte)
|
842
|
+
#{tmpdir}/react@17.0.2/package.json ... Done (777 byte)
|
843
|
+
#{tmpdir}/react@17.0.2/README.md ... Done (737 byte)
|
827
844
|
END
|
828
845
|
ok {sout} == expected
|
829
846
|
end
|
830
847
|
end
|
831
848
|
|
832
|
-
|
833
|
-
|
849
|
+
spec "(google) downloads files (containing subdir) into dir." do
|
850
|
+
skip_when true, "no libraries containing subdirectory"
|
851
|
+
end
|
852
|
+
|
853
|
+
end
|
854
|
+
|
855
|
+
|
856
|
+
topic "cdnget <CDN> <library> <version> <dir> (not override existing files)" do
|
857
|
+
|
858
|
+
def _do_download_test3(cdn_code, libname, version, expected)
|
859
|
+
tmpdir = @tmpdir
|
860
|
+
path = "#{tmpdir}/#{libname}/#{version}"
|
861
|
+
# 1st
|
862
|
+
sout, serr = capture_sio() do
|
863
|
+
actual = run(cdn_code, libname, version, tmpdir)
|
864
|
+
end
|
865
|
+
ok {serr} == ""
|
866
|
+
ok {sout} == expected
|
867
|
+
# 2nd
|
868
|
+
sout, serr = capture_sio() do
|
869
|
+
actual = run(cdn_code, libname, version, tmpdir)
|
870
|
+
end
|
871
|
+
ok {serr} == ""
|
872
|
+
ok {sout} == expected.gsub(/(\(Created\))?\n/) {
|
873
|
+
if $1
|
874
|
+
"(Already exists)\n"
|
875
|
+
else
|
876
|
+
" (Unchanged)\n"
|
877
|
+
end
|
878
|
+
}
|
879
|
+
end
|
880
|
+
|
881
|
+
spec "(cdnjs) doesn't override existing files when they are identical to downloaded files." do
|
882
|
+
tmpdir = @tmpdir
|
834
883
|
expected = <<END
|
835
884
|
#{tmpdir}/jquery-jcrop/2.0.4/css/Jcrop.css ... Done (7,401 byte)
|
836
885
|
#{tmpdir}/jquery-jcrop/2.0.4/css/Jcrop.gif ... Done (329 byte)
|
@@ -841,16 +890,8 @@ END
|
|
841
890
|
_do_download_test3("cdnjs", "jquery-jcrop", "2.0.4", expected)
|
842
891
|
end
|
843
892
|
|
844
|
-
|
845
|
-
tmpdir =
|
846
|
-
expected = <<END
|
847
|
-
#{tmpdir}/jquery/3.6.0/jquery.min.js ... Done (89,501 byte)
|
848
|
-
END
|
849
|
-
_do_download_test3("google", "jquery", "3.6.0", expected)
|
850
|
-
end
|
851
|
-
|
852
|
-
it "(jsdelivr) doesn't override existing files when they are identical to downloaded files." do
|
853
|
-
tmpdir = "tmpdir1"
|
893
|
+
spec "(jsdelivr) doesn't override existing files when they are identical to downloaded files." do
|
894
|
+
tmpdir = @tmpdir
|
854
895
|
expected = <<END
|
855
896
|
#{tmpdir}/chibijs@3.0.9/.jshintrc ... Done (5,323 byte)
|
856
897
|
#{tmpdir}/chibijs@3.0.9/.npmignore ... Done (46 byte)
|
@@ -864,28 +905,36 @@ END
|
|
864
905
|
_do_download_test3("jsdelivr", "chibijs", "3.0.9", expected)
|
865
906
|
end
|
866
907
|
|
867
|
-
|
868
|
-
tmpdir =
|
908
|
+
spec "(unpkg) doesn't override existing files when they are identical to downloaded files." do
|
909
|
+
tmpdir = @tmpdir
|
869
910
|
expected = <<END
|
870
|
-
#{tmpdir}/chibijs@3.0.9
|
911
|
+
#{tmpdir}/chibijs@3.0.9/package.json ... Done (756 byte)
|
871
912
|
#{tmpdir}/chibijs@3.0.9/.npmignore ... Done (46 byte)
|
872
|
-
#{tmpdir}/chibijs@3.0.9/
|
913
|
+
#{tmpdir}/chibijs@3.0.9/README.md ... Done (21,283 byte)
|
873
914
|
#{tmpdir}/chibijs@3.0.9/chibi-min.js ... Done (7,321 byte)
|
915
|
+
#{tmpdir}/chibijs@3.0.9/chibi.js ... Done (18,429 byte)
|
874
916
|
#{tmpdir}/chibijs@3.0.9/gulpfile.js ... Done (1,395 byte)
|
875
|
-
#{tmpdir}/chibijs@3.0.9
|
876
|
-
#{tmpdir}/chibijs@3.0.9/README.md ... Done (21,283 byte)
|
917
|
+
#{tmpdir}/chibijs@3.0.9/.jshintrc ... Done (5,323 byte)
|
877
918
|
#{tmpdir}/chibijs@3.0.9/tests/runner.html ... Done (14,302 byte)
|
878
919
|
END
|
879
920
|
_do_download_test3("unpkg", "chibijs", "3.0.9", expected)
|
880
921
|
end
|
881
922
|
|
923
|
+
spec "(google) doesn't override existing files when they are identical to downloaded files." do
|
924
|
+
tmpdir = @tmpdir
|
925
|
+
expected = <<END
|
926
|
+
#{tmpdir}/jquery/3.6.0/jquery.min.js ... Done (89,501 byte)
|
927
|
+
END
|
928
|
+
_do_download_test3("google", "jquery", "3.6.0", expected)
|
929
|
+
end
|
930
|
+
|
882
931
|
end
|
883
932
|
|
884
933
|
|
885
|
-
|
934
|
+
topic "cdnget <CDN> <library> latest" do
|
886
935
|
|
887
|
-
|
888
|
-
actual =
|
936
|
+
spec "(cdnjs) shows latest version." do
|
937
|
+
actual = run("cdnjs", "swfobject", "latest")
|
889
938
|
ok {actual} == <<END
|
890
939
|
name: swfobject
|
891
940
|
version: 2.2
|
@@ -900,20 +949,8 @@ urls:
|
|
900
949
|
END
|
901
950
|
end
|
902
951
|
|
903
|
-
|
904
|
-
actual =
|
905
|
-
ok {actual} == <<END
|
906
|
-
name: swfobject
|
907
|
-
version: 2.2
|
908
|
-
site: https://github.com/swfobject/swfobject
|
909
|
-
info: https://developers.google.com/speed/libraries/#swfobject
|
910
|
-
urls:
|
911
|
-
- https://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js
|
912
|
-
END
|
913
|
-
end
|
914
|
-
|
915
|
-
it "(jsdelivr) shows latest version." do
|
916
|
-
actual = CDNGet::Main.new("cdnget").run("jsdelivr", "swfobject", "latest")
|
952
|
+
spec "(jsdelivr) shows latest version." do
|
953
|
+
actual = run("jsdelivr", "swfobject", "latest")
|
917
954
|
ok {actual} == <<END
|
918
955
|
name: swfobject
|
919
956
|
version: 2.2.1
|
@@ -934,8 +971,8 @@ urls:
|
|
934
971
|
END
|
935
972
|
end
|
936
973
|
|
937
|
-
|
938
|
-
actual =
|
974
|
+
spec "(unpkg) shows latest version." do
|
975
|
+
actual = run("unpkg", "swfobject", "latest")
|
939
976
|
ok {actual} == <<END
|
940
977
|
name: swfobject
|
941
978
|
version: 2.2.1
|
@@ -944,36 +981,38 @@ tags: SWFObject, swf, object, flash, embed, content
|
|
944
981
|
site: https://github.com/unshiftio/swfobject
|
945
982
|
info: https://unpkg.com/browse/swfobject@2.2.1/
|
946
983
|
npmpkg: https://registry.npmjs.org/swfobject/-/swfobject-2.2.1.tgz
|
947
|
-
default: /index.min.js
|
948
984
|
license: MIT
|
949
985
|
urls:
|
986
|
+
- https://unpkg.com/swfobject@2.2.1/package.json
|
950
987
|
- https://unpkg.com/swfobject@2.2.1/.npmignore
|
951
|
-
- https://unpkg.com/swfobject@2.2.1/
|
952
|
-
- https://unpkg.com/swfobject@2.2.1/expressInstall.swf
|
988
|
+
- https://unpkg.com/swfobject@2.2.1/README.md
|
953
989
|
- https://unpkg.com/swfobject@2.2.1/index.js
|
954
|
-
- https://unpkg.com/swfobject@2.2.1/package.json
|
955
990
|
- https://unpkg.com/swfobject@2.2.1/patch.js
|
956
|
-
- https://unpkg.com/swfobject@2.2.1/
|
991
|
+
- https://unpkg.com/swfobject@2.2.1/download.sh
|
992
|
+
- https://unpkg.com/swfobject@2.2.1/expressInstall.swf
|
957
993
|
END
|
958
994
|
end
|
959
995
|
|
960
|
-
|
961
|
-
|
996
|
+
spec "(google) shows latest version." do
|
997
|
+
actual = run("google", "swfobject", "latest")
|
998
|
+
ok {actual} == <<END
|
999
|
+
name: swfobject
|
1000
|
+
version: 2.2
|
1001
|
+
site: https://github.com/swfobject/swfobject
|
1002
|
+
info: https://developers.google.com/speed/libraries/#swfobject
|
1003
|
+
urls:
|
1004
|
+
- https://ajax.googleapis.com/ajax/libs/swfobject/2.2/swfobject.js
|
1005
|
+
END
|
1006
|
+
end
|
962
1007
|
|
963
|
-
|
1008
|
+
end
|
964
1009
|
|
965
|
-
before do
|
966
|
-
@tmpdir = "tmpdir1"
|
967
|
-
Dir.mkdir @tmpdir
|
968
|
-
end
|
969
1010
|
|
970
|
-
|
971
|
-
FileUtils.rm_rf @tmpdir
|
972
|
-
end
|
1011
|
+
topic "cdnget CDN <library> latest <dir>" do
|
973
1012
|
|
974
|
-
|
975
|
-
sout, serr =
|
976
|
-
|
1013
|
+
spec "(cdnjs) downlaods latest version." do
|
1014
|
+
sout, serr = capture_sio do()
|
1015
|
+
run("cdnjs", "swfobject", "latest", @tmpdir)
|
977
1016
|
end
|
978
1017
|
ok {sout} == <<"END"
|
979
1018
|
#{@tmpdir}/swfobject/2.2/swfobject.js ... Done (10,220 byte)
|
@@ -981,18 +1020,9 @@ END
|
|
981
1020
|
END
|
982
1021
|
end
|
983
1022
|
|
984
|
-
|
985
|
-
sout, serr =
|
986
|
-
|
987
|
-
end
|
988
|
-
ok {sout} == <<"END"
|
989
|
-
#{@tmpdir}/swfobject/2.2/swfobject.js ... Done (10,220 byte)
|
990
|
-
END
|
991
|
-
end
|
992
|
-
|
993
|
-
it "(jsdelivr) downlaods latest version." do
|
994
|
-
sout, serr = capture_io do()
|
995
|
-
CDNGet::Main.new("cdnget").run("jsdelivr", "swfobject", "latest", @tmpdir)
|
1023
|
+
spec "(jsdelivr) downlaods latest version." do
|
1024
|
+
sout, serr = capture_sio do()
|
1025
|
+
run("jsdelivr", "swfobject", "latest", @tmpdir)
|
996
1026
|
end
|
997
1027
|
ok {sout} == <<"END"
|
998
1028
|
#{@tmpdir}/swfobject@2.2.1/.npmignore ... Done (13 byte)
|
@@ -1005,38 +1035,303 @@ END
|
|
1005
1035
|
END
|
1006
1036
|
end
|
1007
1037
|
|
1008
|
-
|
1009
|
-
sout, serr =
|
1010
|
-
|
1038
|
+
spec "(unpkg) downlaods latest version." do
|
1039
|
+
sout, serr = capture_sio do()
|
1040
|
+
run("unpkg", "swfobject", "latest", @tmpdir)
|
1011
1041
|
end
|
1012
1042
|
ok {sout} == <<"END"
|
1043
|
+
#{@tmpdir}/swfobject@2.2.1/package.json ... Done (524 byte)
|
1013
1044
|
#{@tmpdir}/swfobject@2.2.1/.npmignore ... Done (13 byte)
|
1014
|
-
#{@tmpdir}/swfobject@2.2.1/
|
1015
|
-
#{@tmpdir}/swfobject@2.2.1/expressInstall.swf ... Done (727 byte)
|
1045
|
+
#{@tmpdir}/swfobject@2.2.1/README.md ... Done (764 byte)
|
1016
1046
|
#{@tmpdir}/swfobject@2.2.1/index.js ... Done (10,331 byte)
|
1017
|
-
#{@tmpdir}/swfobject@2.2.1/package.json ... Done (524 byte)
|
1018
1047
|
#{@tmpdir}/swfobject@2.2.1/patch.js ... Done (277 byte)
|
1019
|
-
#{@tmpdir}/swfobject@2.2.1/
|
1048
|
+
#{@tmpdir}/swfobject@2.2.1/download.sh ... Done (517 byte)
|
1049
|
+
#{@tmpdir}/swfobject@2.2.1/expressInstall.swf ... Done (727 byte)
|
1050
|
+
END
|
1051
|
+
end
|
1052
|
+
|
1053
|
+
spec "(google) downlaods latest version." do
|
1054
|
+
sout, serr = capture_sio do()
|
1055
|
+
run("google", "swfobject", "latest", @tmpdir)
|
1056
|
+
end
|
1057
|
+
ok {sout} == <<"END"
|
1058
|
+
#{@tmpdir}/swfobject/2.2/swfobject.js ... Done (10,220 byte)
|
1059
|
+
END
|
1060
|
+
end
|
1061
|
+
|
1062
|
+
end
|
1063
|
+
|
1064
|
+
|
1065
|
+
topic "cdnget <CDN> @babel/core" do
|
1066
|
+
|
1067
|
+
spec "(cdnjs) raises error." do
|
1068
|
+
pr = proc { run("cdnjs", "@babel/core") }
|
1069
|
+
ok {pr}.raise?(CDNGet::CommandError, "@babel/core: Invalid library name.")
|
1070
|
+
end
|
1071
|
+
|
1072
|
+
spec "(jsdelivr) show details of package." do
|
1073
|
+
output = run("jsdelivr", "@babel/core")
|
1074
|
+
ok {output}.start_with? <<'END'
|
1075
|
+
name: @babel/core
|
1076
|
+
desc: Babel compiler core.
|
1077
|
+
tags: 6to5, babel, classes, const, es6, harmony, let, modules, transpile, transpiler, var, babel-core, compiler
|
1078
|
+
site: https://babel.dev/docs/en/next/babel-core
|
1079
|
+
info: https://www.jsdelivr.com/package/npm/@babel/core
|
1080
|
+
license: MIT
|
1081
|
+
versions:
|
1082
|
+
END
|
1083
|
+
ok {output}.end_with? <<'END'
|
1084
|
+
- 7.0.0-beta.33
|
1085
|
+
- 7.0.0-beta.32
|
1086
|
+
- 7.0.0-beta.31
|
1087
|
+
- 7.0.0-beta.5
|
1088
|
+
- 7.0.0-beta.4
|
1089
|
+
- 6.0.0-bridge.1
|
1090
|
+
END
|
1091
|
+
end
|
1092
|
+
|
1093
|
+
spec "(unpkg) show details of package." do
|
1094
|
+
output = run("unpkg", "@babel/core")
|
1095
|
+
ok {output}.start_with? <<'END'
|
1096
|
+
name: @babel/core
|
1097
|
+
desc: Babel compiler core.
|
1098
|
+
tags: 6to5, babel, classes, const, es6, harmony, let, modules, transpile, transpiler, var, babel-core, compiler
|
1099
|
+
site: https://babel.dev/docs/en/next/babel-core
|
1100
|
+
info: https://unpkg.com/browse/@babel/core/
|
1101
|
+
license: MIT
|
1102
|
+
versions:
|
1103
|
+
END
|
1104
|
+
ok {output}.end_with? <<'END'
|
1105
|
+
- 7.0.0-beta.33
|
1106
|
+
- 7.0.0-beta.32
|
1107
|
+
- 7.0.0-beta.31
|
1108
|
+
- 7.0.0-beta.5
|
1109
|
+
- 7.0.0-beta.4
|
1110
|
+
- 6.0.0-bridge.1
|
1111
|
+
END
|
1112
|
+
end
|
1113
|
+
|
1114
|
+
spec "(google) raises error." do
|
1115
|
+
pr = proc { run("google", "@babel/core") }
|
1116
|
+
ok {pr}.raise?(CDNGet::CommandError, "@babel/core: Invalid library name.")
|
1117
|
+
end
|
1118
|
+
|
1119
|
+
end
|
1120
|
+
|
1121
|
+
|
1122
|
+
topic "cdnget <CDN> @babel/core <version>"do
|
1123
|
+
|
1124
|
+
spec "(cdnjs) raises error." do
|
1125
|
+
pr = proc { run("cdnjs", "@babel/core", "7.15.5") }
|
1126
|
+
ok {pr}.raise?(CDNGet::CommandError, "@babel/core: Invalid library name.")
|
1127
|
+
end
|
1128
|
+
|
1129
|
+
spec "(jsdelivr) lists files." do
|
1130
|
+
output = run("jsdelivr", "@babel/core", "7.15.5")
|
1131
|
+
ok {output}.start_with? <<'END'
|
1132
|
+
name: @babel/core
|
1133
|
+
version: 7.15.5
|
1134
|
+
desc: Babel compiler core.
|
1135
|
+
tags: 6to5, babel, classes, const, es6, harmony, let, modules, transpile, transpiler, var, babel-core, compiler
|
1136
|
+
site: https://babel.dev/docs/en/next/babel-core
|
1137
|
+
info: https://www.jsdelivr.com/package/npm/@babel/core?version=7.15.5
|
1138
|
+
npmpkg: https://registry.npmjs.org/@babel%2fcore/-//core-7.15.5.tgz
|
1139
|
+
default: /lib/index.min.js
|
1140
|
+
license: MIT
|
1141
|
+
urls:
|
1142
|
+
- https://cdn.jsdelivr.net/npm/@babel/core@7.15.5/lib/config/cache-contexts.js
|
1143
|
+
- https://cdn.jsdelivr.net/npm/@babel/core@7.15.5/lib/config/caching.js
|
1144
|
+
- https://cdn.jsdelivr.net/npm/@babel/core@7.15.5/lib/config/config-chain.js
|
1145
|
+
- https://cdn.jsdelivr.net/npm/@babel/core@7.15.5/lib/config/config-descriptors.js
|
1146
|
+
END
|
1147
|
+
end
|
1148
|
+
|
1149
|
+
spec "(unpkg) lists files" do
|
1150
|
+
output = run("unpkg", "@babel/core", "7.15.5")
|
1151
|
+
ok {output}.start_with? <<'END'
|
1152
|
+
name: @babel/core
|
1153
|
+
version: 7.15.5
|
1154
|
+
desc: Babel compiler core.
|
1155
|
+
tags: 6to5, babel, classes, const, es6, harmony, let, modules, transpile, transpiler, var, babel-core, compiler
|
1156
|
+
site: https://babel.dev/docs/en/next/babel-core
|
1157
|
+
info: https://unpkg.com/browse/@babel/core@7.15.5/
|
1158
|
+
npmpkg: https://registry.npmjs.org/@babel%2fcore/-//core-7.15.5.tgz
|
1159
|
+
license: MIT
|
1160
|
+
urls:
|
1161
|
+
- https://unpkg.com/@babel/core@7.15.5/LICENSE
|
1162
|
+
- https://unpkg.com/@babel/core@7.15.5/README.md
|
1163
|
+
- https://unpkg.com/@babel/core@7.15.5/lib/config/cache-contexts.js
|
1164
|
+
- https://unpkg.com/@babel/core@7.15.5/lib/config/caching.js
|
1165
|
+
- https://unpkg.com/@babel/core@7.15.5/lib/config/config-chain.js
|
1020
1166
|
END
|
1021
1167
|
end
|
1022
1168
|
|
1169
|
+
spec "(google) raises error." do
|
1170
|
+
pr = proc { run("google", "@babel/core", "7.15.5") }
|
1171
|
+
ok {pr}.raise?(CDNGet::CommandError, "@babel/core: Invalid library name.")
|
1172
|
+
end
|
1173
|
+
|
1023
1174
|
end
|
1024
1175
|
|
1025
1176
|
|
1026
|
-
|
1177
|
+
topic "cdnget <CDN> @babel/core <version> <dir>" do
|
1178
|
+
|
1179
|
+
spec "(cdnjs) raises error." do
|
1180
|
+
pr = proc { run("cdnjs", "@babel/core", "7.15.5", @tmpdir) }
|
1181
|
+
ok {pr}.raise?(CDNGet::CommandError, "@babel/core: Invalid library name.")
|
1182
|
+
end
|
1183
|
+
|
1184
|
+
spec "(jsdelivr) download files." do
|
1185
|
+
sout, serr = capture_sio do
|
1186
|
+
run("jsdelivr", "@babel/core", "7.15.5", @tmpdir)
|
1187
|
+
end
|
1188
|
+
ok {sout} == <<"END"
|
1189
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/cache-contexts.js ... Done (0 byte)
|
1190
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/caching.js ... Done (7,327 byte)
|
1191
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/config-chain.js ... Done (17,871 byte)
|
1192
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/config-descriptors.js ... Done (6,756 byte)
|
1193
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/configuration.js ... Done (9,975 byte)
|
1194
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/import.js ... Done (165 byte)
|
1195
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/index.js ... Done (1,760 byte)
|
1196
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/index-browser.js ... Done (1,550 byte)
|
1197
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/module-types.js ... Done (2,731 byte)
|
1198
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/package.js ... Done (1,509 byte)
|
1199
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/plugins.js ... Done (6,287 byte)
|
1200
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/types.js ... Done (0 byte)
|
1201
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/utils.js ... Done (856 byte)
|
1202
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/full.js ... Done (9,211 byte)
|
1203
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/helpers/config-api.js ... Done (2,593 byte)
|
1204
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/helpers/environment.js ... Done (227 byte)
|
1205
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/index.js ... Done (2,462 byte)
|
1206
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/item.js ... Done (1,802 byte)
|
1207
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/partial.js ... Done (5,647 byte)
|
1208
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/pattern-to-regex.js ... Done (1,143 byte)
|
1209
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/plugin.js ... Done (744 byte)
|
1210
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/printer.js ... Done (2,893 byte)
|
1211
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/resolve-targets.js ... Done (1,430 byte)
|
1212
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/resolve-targets-browser.js ... Done (945 byte)
|
1213
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/util.js ... Done (887 byte)
|
1214
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/validation/option-assertions.js ... Done (9,985 byte)
|
1215
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/validation/options.js ... Done (7,749 byte)
|
1216
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/validation/plugins.js ... Done (1,982 byte)
|
1217
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/validation/removed.js ... Done (2,374 byte)
|
1218
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/gensync-utils/async.js ... Done (1,775 byte)
|
1219
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/gensync-utils/fs.js ... Done (576 byte)
|
1220
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/index.js ... Done (5,697 byte)
|
1221
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/parse.js ... Done (1,085 byte)
|
1222
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/parser/index.js ... Done (2,260 byte)
|
1223
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/parser/util/missing-plugin-helper.js ... Done (7,985 byte)
|
1224
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/tools/build-external-helpers.js ... Done (4,331 byte)
|
1225
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transform.js ... Done (1,059 byte)
|
1226
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transform-ast.js ... Done (1,257 byte)
|
1227
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transform-file.js ... Done (1,059 byte)
|
1228
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transform-file-browser.js ... Done (692 byte)
|
1229
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/block-hoist-plugin.js ... Done (1,802 byte)
|
1230
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/file/file.js ... Done (5,864 byte)
|
1231
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/file/generate.js ... Done (1,903 byte)
|
1232
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/file/merge-map.js ... Done (5,412 byte)
|
1233
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/index.js ... Done (3,296 byte)
|
1234
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/normalize-file.js ... Done (3,796 byte)
|
1235
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/normalize-opts.js ... Done (1,543 byte)
|
1236
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/plugin-pass.js ... Done (1,035 byte)
|
1237
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/util/clone-deep.js ... Done (453 byte)
|
1238
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/util/clone-deep-browser.js ... Done (599 byte)
|
1239
|
+
#{@tmpdir}/@babel/core@7.15.5/LICENSE ... Done (1,106 byte)
|
1240
|
+
#{@tmpdir}/@babel/core@7.15.5/package.json ... Done (2,395 byte)
|
1241
|
+
#{@tmpdir}/@babel/core@7.15.5/README.md ... Done (404 byte)
|
1242
|
+
#{@tmpdir}/@babel/core@7.15.5/src/config/files/index.ts ... Done (735 byte)
|
1243
|
+
#{@tmpdir}/@babel/core@7.15.5/src/config/files/index-browser.ts ... Done (2,846 byte)
|
1244
|
+
#{@tmpdir}/@babel/core@7.15.5/src/config/resolve-targets.ts ... Done (1,612 byte)
|
1245
|
+
#{@tmpdir}/@babel/core@7.15.5/src/config/resolve-targets-browser.ts ... Done (1,074 byte)
|
1246
|
+
#{@tmpdir}/@babel/core@7.15.5/src/transform-file.ts ... Done (1,475 byte)
|
1247
|
+
#{@tmpdir}/@babel/core@7.15.5/src/transform-file-browser.ts ... Done (716 byte)
|
1248
|
+
#{@tmpdir}/@babel/core@7.15.5/src/transformation/util/clone-deep.ts ... Done (223 byte)
|
1249
|
+
#{@tmpdir}/@babel/core@7.15.5/src/transformation/util/clone-deep-browser.ts ... Done (500 byte)
|
1250
|
+
END
|
1251
|
+
end
|
1027
1252
|
|
1028
|
-
|
1029
|
-
|
1030
|
-
|
1253
|
+
spec "(unpkg) download files" do
|
1254
|
+
sout, serr = capture_sio do
|
1255
|
+
run("unpkg", "@babel/core", "7.15.5", @tmpdir)
|
1256
|
+
end
|
1257
|
+
ok {sout} == <<"END"
|
1258
|
+
#{@tmpdir}/@babel/core@7.15.5/LICENSE ... Done (1,106 byte)
|
1259
|
+
#{@tmpdir}/@babel/core@7.15.5/README.md ... Done (404 byte)
|
1260
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/cache-contexts.js ... Done (0 byte)
|
1261
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/caching.js ... Done (7,327 byte)
|
1262
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/config-chain.js ... Done (17,871 byte)
|
1263
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/config-descriptors.js ... Done (6,756 byte)
|
1264
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/configuration.js ... Done (9,975 byte)
|
1265
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/import.js ... Done (165 byte)
|
1266
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/index-browser.js ... Done (1,550 byte)
|
1267
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/index.js ... Done (1,760 byte)
|
1268
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/module-types.js ... Done (2,731 byte)
|
1269
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/package.js ... Done (1,509 byte)
|
1270
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/plugins.js ... Done (6,287 byte)
|
1271
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/types.js ... Done (0 byte)
|
1272
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/files/utils.js ... Done (856 byte)
|
1273
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/full.js ... Done (9,211 byte)
|
1274
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/helpers/config-api.js ... Done (2,593 byte)
|
1275
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/helpers/environment.js ... Done (227 byte)
|
1276
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/index.js ... Done (2,462 byte)
|
1277
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/item.js ... Done (1,802 byte)
|
1278
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/partial.js ... Done (5,647 byte)
|
1279
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/pattern-to-regex.js ... Done (1,143 byte)
|
1280
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/plugin.js ... Done (744 byte)
|
1281
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/printer.js ... Done (2,893 byte)
|
1282
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/resolve-targets-browser.js ... Done (945 byte)
|
1283
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/resolve-targets.js ... Done (1,430 byte)
|
1284
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/util.js ... Done (887 byte)
|
1285
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/validation/option-assertions.js ... Done (9,985 byte)
|
1286
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/validation/options.js ... Done (7,749 byte)
|
1287
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/validation/plugins.js ... Done (1,982 byte)
|
1288
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/config/validation/removed.js ... Done (2,374 byte)
|
1289
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/gensync-utils/async.js ... Done (1,775 byte)
|
1290
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/gensync-utils/fs.js ... Done (576 byte)
|
1291
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/index.js ... Done (5,697 byte)
|
1292
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/parse.js ... Done (1,085 byte)
|
1293
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/parser/index.js ... Done (2,260 byte)
|
1294
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/parser/util/missing-plugin-helper.js ... Done (7,985 byte)
|
1295
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/tools/build-external-helpers.js ... Done (4,331 byte)
|
1296
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transform-ast.js ... Done (1,257 byte)
|
1297
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transform-file-browser.js ... Done (692 byte)
|
1298
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transform-file.js ... Done (1,059 byte)
|
1299
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transform.js ... Done (1,059 byte)
|
1300
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/block-hoist-plugin.js ... Done (1,802 byte)
|
1301
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/file/file.js ... Done (5,864 byte)
|
1302
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/file/generate.js ... Done (1,903 byte)
|
1303
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/file/merge-map.js ... Done (5,412 byte)
|
1304
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/index.js ... Done (3,296 byte)
|
1305
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/normalize-file.js ... Done (3,796 byte)
|
1306
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/normalize-opts.js ... Done (1,543 byte)
|
1307
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/plugin-pass.js ... Done (1,035 byte)
|
1308
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/util/clone-deep-browser.js ... Done (599 byte)
|
1309
|
+
#{@tmpdir}/@babel/core@7.15.5/lib/transformation/util/clone-deep.js ... Done (453 byte)
|
1310
|
+
#{@tmpdir}/@babel/core@7.15.5/package.json ... Done (2,395 byte)
|
1311
|
+
#{@tmpdir}/@babel/core@7.15.5/src/config/files/index-browser.ts ... Done (2,846 byte)
|
1312
|
+
#{@tmpdir}/@babel/core@7.15.5/src/config/files/index.ts ... Done (735 byte)
|
1313
|
+
#{@tmpdir}/@babel/core@7.15.5/src/config/resolve-targets-browser.ts ... Done (1,074 byte)
|
1314
|
+
#{@tmpdir}/@babel/core@7.15.5/src/config/resolve-targets.ts ... Done (1,612 byte)
|
1315
|
+
#{@tmpdir}/@babel/core@7.15.5/src/transform-file-browser.ts ... Done (716 byte)
|
1316
|
+
#{@tmpdir}/@babel/core@7.15.5/src/transform-file.ts ... Done (1,475 byte)
|
1317
|
+
#{@tmpdir}/@babel/core@7.15.5/src/transformation/util/clone-deep-browser.ts ... Done (500 byte)
|
1318
|
+
#{@tmpdir}/@babel/core@7.15.5/src/transformation/util/clone-deep.ts ... Done (223 byte)
|
1319
|
+
END
|
1031
1320
|
end
|
1032
1321
|
|
1033
|
-
|
1034
|
-
|
1322
|
+
spec "(google) raises error." do
|
1323
|
+
pr = proc { run("google", "@babel/core", "7.15.5", @tmpdir) }
|
1324
|
+
ok {pr}.raise?(CDNGet::CommandError, "@babel/core: Invalid library name.")
|
1035
1325
|
end
|
1036
1326
|
|
1037
|
-
|
1038
|
-
|
1039
|
-
|
1327
|
+
end
|
1328
|
+
|
1329
|
+
|
1330
|
+
topic "cdnget <CDN> bulma 0.9.3 <dir> (containing '.DS_Store')" do
|
1331
|
+
|
1332
|
+
spec "(unpkg) skips '.DS_Store' files." do
|
1333
|
+
sout, serr = capture_sio do()
|
1334
|
+
run("unpkg", "bulma", "0.9.3", @tmpdir)
|
1040
1335
|
end
|
1041
1336
|
ok {sout}.include?("#{@tmpdir}/bulma@0.9.3/sass/.DS_Store ... Skipped\n")
|
1042
1337
|
ok {sout}.include?("#{@tmpdir}/bulma@0.9.3/sass/base/.DS_Store ... Skipped\n")
|
@@ -1045,12 +1340,14 @@ END
|
|
1045
1340
|
end
|
1046
1341
|
|
1047
1342
|
|
1048
|
-
|
1343
|
+
topic "cdnget <CDN> <library> <version> <dir> foo bar" do
|
1049
1344
|
|
1050
|
-
|
1051
|
-
|
1052
|
-
|
1053
|
-
|
1345
|
+
spec "results in argument error." do
|
1346
|
+
CDN_NAMES.each do |cdn|
|
1347
|
+
args = [cdn, "jquery", "2.2.0", "foo", "bar"]
|
1348
|
+
pr = proc { run(*args) }
|
1349
|
+
ok {pr}.raise?(CDNGet::CommandError, "'bar': Too many arguments.")
|
1350
|
+
end
|
1054
1351
|
end
|
1055
1352
|
|
1056
1353
|
end
|