browshot 1.6.0 → 1.7.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/VERSION +1 -1
- data/lib/browshot.rb +4 -3
- data/test/test_browshot.rb +157 -27
- metadata +19 -19
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.7.0
|
data/lib/browshot.rb
CHANGED
@@ -34,7 +34,7 @@ class Browshot
|
|
34
34
|
|
35
35
|
# Return the API version handled by the library. Note that this library can usually handle new arguments in requests without requiring an update.
|
36
36
|
def api_version()
|
37
|
-
return "1.
|
37
|
+
return "1.7"
|
38
38
|
end
|
39
39
|
|
40
40
|
# Retrieve a screenshot with one call. See http://browshot.com/api/documentation#simple for the full list of possible arguments.
|
@@ -116,8 +116,9 @@ class Browshot
|
|
116
116
|
# Get information about a screenshot requested previously. See http://browshot.com/api/documentation#screenshot_info for the response format.
|
117
117
|
#
|
118
118
|
# +id+:: screenshot ID
|
119
|
-
def screenshot_info(id=0)
|
120
|
-
|
119
|
+
def screenshot_info(id=0, parameters={})
|
120
|
+
parameters[:id] = id
|
121
|
+
return return_reply('screenshot/info', parameters)
|
121
122
|
end
|
122
123
|
|
123
124
|
# Get details about screenshots requested. See http://browshot.com/api/documentation#screenshot_list for the response format.
|
data/test/test_browshot.rb
CHANGED
@@ -14,7 +14,7 @@ class TestBrowshot < Test::Unit::TestCase
|
|
14
14
|
end
|
15
15
|
|
16
16
|
should "get the API version" do
|
17
|
-
assert_equal '1.
|
17
|
+
assert_equal '1.7', @browshot.api_version()
|
18
18
|
end
|
19
19
|
|
20
20
|
should "get a screenshot with the simple method" do
|
@@ -56,8 +56,6 @@ class TestBrowshot < Test::Unit::TestCase
|
|
56
56
|
assert_equal false, free['browser']['flash'].nil?, "Missing instance browser flash capability"
|
57
57
|
assert_equal false, free['browser']['mobile'].nil?, "Missing instance browser mobile capability"
|
58
58
|
assert_equal false, free['type'].nil?, "Missing instance type"
|
59
|
-
assert_equal false, free['active'].nil?, "Missing instance active"
|
60
|
-
assert_equal 1, free['active'].to_i, "Free instance should be active"
|
61
59
|
assert_equal false, free['screenshot_cost'].nil?, "Missing instance cost"
|
62
60
|
assert_equal 0, free['screenshot_cost'].to_i, "Cost should be 0"
|
63
61
|
end
|
@@ -77,7 +75,6 @@ class TestBrowshot < Test::Unit::TestCase
|
|
77
75
|
assert_equal free['browser']['flash'], instance['browser']['flash'], "Mismatch instance browser flash capability"
|
78
76
|
assert_equal free['browser']['mobile'], instance['browser']['mobile'], "Mismatch instance browser mobile capability"
|
79
77
|
assert_equal free['type'], instance['type'], "Mismatch instance type"
|
80
|
-
assert_equal free['active'], instance['active'], "Mismatch instance active"
|
81
78
|
assert_equal free['screenshot_cost'], instance['screenshot_cost'], "Mismatch instance cost"
|
82
79
|
end
|
83
80
|
|
@@ -99,17 +96,17 @@ class TestBrowshot < Test::Unit::TestCase
|
|
99
96
|
assert_equal false, instance['error'].nil?, "Instance browser ID should be invalid"
|
100
97
|
end
|
101
98
|
|
102
|
-
should "create a new instance
|
103
|
-
#
|
99
|
+
should "create a new instance" do
|
100
|
+
# Option disabled for most accounts
|
104
101
|
instance = @browshot.instance_create()
|
105
102
|
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
103
|
+
# assert_equal false, instance['error'].nil?, "Instance cannot be created for this account"
|
104
|
+
# assert_equal false, instance['id'].nil?, "Instance ID should be present"
|
105
|
+
# assert_equal false, instance['width'].nil?, "Instance screen width should be present"
|
106
|
+
# assert_equal false, instance['height'].nil?, "Instance screen height should be present"
|
107
|
+
# assert_equal 1, instance['active'].to_i, "Instance should be active"
|
108
|
+
# assert_equal false, instance['browser'].nil?, "Instance browser should be present"
|
109
|
+
# assert_equal false, instance['browser']['id'].nil?, "Instance browser ID should be present"
|
113
110
|
end
|
114
111
|
|
115
112
|
should "get the list of browsers" do
|
@@ -122,7 +119,7 @@ class TestBrowshot < Test::Unit::TestCase
|
|
122
119
|
break
|
123
120
|
end
|
124
121
|
|
125
|
-
assert_equal true, browser_id.to_i > 0,
|
122
|
+
assert_equal true, browser_id.to_i > 0, "Browser ID should be positive"
|
126
123
|
browser = browsers[browser_id]
|
127
124
|
|
128
125
|
assert_equal false, browser['name'].nil?, "Browser name should be present"
|
@@ -139,20 +136,21 @@ class TestBrowshot < Test::Unit::TestCase
|
|
139
136
|
end
|
140
137
|
|
141
138
|
should "create a browser" do
|
142
|
-
#
|
139
|
+
# Option disabled for most accounts
|
143
140
|
browser = @browshot.browser_create({'mobile' => 1, 'flash' => 1, 'user_agent' => 'test'})
|
144
141
|
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
142
|
+
# assert_equal false, browser['error'].nil?, "Browser cannot be created for this account"
|
143
|
+
# assert_equal false, browser['name'].nil?, "Browser name should be present"
|
144
|
+
# assert_equal false, browser['user_agent'].nil?, "Browser user_agent should be present"
|
145
|
+
# assert_equal false, browser['appname'].nil?, "Browser appname should be present"
|
146
|
+
# assert_equal false, browser['vendorsub'].nil?, "Browser vendorsub should be present"
|
147
|
+
# assert_equal false, browser['appcodename'].nil?, "Browser appcodename should be present"
|
148
|
+
# assert_equal false, browser['platform'].nil?, "Browser platform should be present"
|
149
|
+
# assert_equal false, browser['vendor'].nil?, "Browser vendor should be present"
|
150
|
+
# assert_equal false, browser['appversion'].nil?, "Browser appversion should be present"
|
151
|
+
# assert_equal false, browser['javascript'].nil?, "Browser javascript capability should be present"
|
152
|
+
# assert_equal false, browser['mobile'].nil?, "Browser mobile capability should be present"
|
153
|
+
# assert_equal false, browser['flash'].nil?, "Browser flash capability should be present"
|
156
154
|
end
|
157
155
|
|
158
156
|
should "fail to create screenshot" do
|
@@ -197,7 +195,7 @@ class TestBrowshot < Test::Unit::TestCase
|
|
197
195
|
assert_equal false, screenshot['error'].nil?, "Screenshot should have failed"
|
198
196
|
end
|
199
197
|
|
200
|
-
should "
|
198
|
+
should "retrieve a screenshot" do
|
201
199
|
screenshot = @browshot.screenshot_create('http://browshot.com/')
|
202
200
|
info = @browshot.screenshot_info(screenshot['id'])
|
203
201
|
|
@@ -225,6 +223,138 @@ class TestBrowshot < Test::Unit::TestCase
|
|
225
223
|
end
|
226
224
|
end
|
227
225
|
|
226
|
+
should "to retrieve a screenshot with details==0" do
|
227
|
+
screenshot = @browshot.screenshot_create('http://browshot.com/')
|
228
|
+
info = @browshot.screenshot_info(screenshot['id'], { 'details' => 0 })
|
229
|
+
|
230
|
+
assert_equal false, info['id'].nil?, "Screenshot ID should be present"
|
231
|
+
assert_equal false, info['status'].nil?, "Screenshot status should be present"
|
232
|
+
assert_equal false, info['priority'].nil?, "Screenshot priority should be present"
|
233
|
+
assert_equal false, info['cost'].nil?, "Screenshot cost should be present"
|
234
|
+
|
235
|
+
if (info['status'] == 'finished')
|
236
|
+
assert_equal false, info['screenshot_url'].nil?, "Screenshot screenshot_url should be present"
|
237
|
+
assert_equal false, info['url'].nil?, "Screenshot url should be present"
|
238
|
+
assert_equal false, info['size'].nil?, "Screenshot size should be present"
|
239
|
+
assert_equal false, info['width'].nil?, "Screenshot width should be present"
|
240
|
+
assert_equal false, info['height'].nil?, "Screenshot height should be present"
|
241
|
+
assert_equal false, info['instance_id'].nil?, "Screenshot instance_id should be present"
|
242
|
+
assert_equal false, info['final_url'].nil?, "Screenshot final_url should be present"
|
243
|
+
assert_equal false, info['scale'].nil?, "Screenshot scale should be present"
|
244
|
+
|
245
|
+
assert_equal true, info['response_code'].nil?, "Screenshot response_code should NOT be present"
|
246
|
+
assert_equal true, info['content_type'].nil?, "Screenshot content_type should NOT be present"
|
247
|
+
|
248
|
+
assert_equal true, info['started'].nil?, "Screenshot started should NOT be present"
|
249
|
+
assert_equal true, info['finished'].nil?, "Screenshot finished should NOT be present"
|
250
|
+
assert_equal true, info['load'].nil?, "Screenshot load should NOT be present"
|
251
|
+
assert_equal true, info['request_time'].nil?, "Screenshot request_time should NOT be present"
|
252
|
+
assert_equal true, info['content'].nil?, "Screenshot content should NOT be present"
|
253
|
+
|
254
|
+
assert_equal true, info['images'].nil?, "Screenshot images should NOT be present"
|
255
|
+
end
|
256
|
+
end
|
257
|
+
|
258
|
+
should "to retrieve a screenshot with details==1" do
|
259
|
+
screenshot = @browshot.screenshot_create('http://browshot.com/')
|
260
|
+
info = @browshot.screenshot_info(screenshot['id'], { 'details' => 1 })
|
261
|
+
|
262
|
+
assert_equal false, info['id'].nil?, "Screenshot ID should be present"
|
263
|
+
assert_equal false, info['status'].nil?, "Screenshot status should be present"
|
264
|
+
assert_equal false, info['priority'].nil?, "Screenshot priority should be present"
|
265
|
+
assert_equal false, info['cost'].nil?, "Screenshot cost should be present"
|
266
|
+
|
267
|
+
if (info['status'] == 'finished')
|
268
|
+
assert_equal false, info['screenshot_url'].nil?, "Screenshot screenshot_url should be present"
|
269
|
+
assert_equal false, info['url'].nil?, "Screenshot url should be present"
|
270
|
+
assert_equal false, info['size'].nil?, "Screenshot size should be present"
|
271
|
+
assert_equal false, info['width'].nil?, "Screenshot width should be present"
|
272
|
+
assert_equal false, info['height'].nil?, "Screenshot height should be present"
|
273
|
+
assert_equal false, info['instance_id'].nil?, "Screenshot instance_id should be present"
|
274
|
+
assert_equal false, info['final_url'].nil?, "Screenshot final_url should be present"
|
275
|
+
assert_equal false, info['scale'].nil?, "Screenshot scale should be present"
|
276
|
+
|
277
|
+
assert_equal false, info['response_code'].nil?, "Screenshot response_code should be present"
|
278
|
+
assert_equal false, info['content_type'].nil?, "Screenshot content_type should be present"
|
279
|
+
|
280
|
+
assert_equal true, info['started'].nil?, "Screenshot started should NOT be present"
|
281
|
+
assert_equal true, info['finished'].nil?, "Screenshot finished should NOT be present"
|
282
|
+
assert_equal true, info['load'].nil?, "Screenshot load should NOT be present"
|
283
|
+
assert_equal true, info['request_time'].nil?, "Screenshot request_time should NOT be present"
|
284
|
+
assert_equal true, info['content'].nil?, "Screenshot content should NOT be present"
|
285
|
+
|
286
|
+
assert_equal true, info['images'].nil?, "Screenshot images should NOT be present"
|
287
|
+
end
|
288
|
+
end
|
289
|
+
|
290
|
+
should "to retrieve a screenshot with details==2" do
|
291
|
+
screenshot = @browshot.screenshot_create('http://browshot.com/')
|
292
|
+
info = @browshot.screenshot_info(screenshot['id'], { 'details' => 2 })
|
293
|
+
|
294
|
+
assert_equal false, info['id'].nil?, "Screenshot ID should be present"
|
295
|
+
assert_equal false, info['status'].nil?, "Screenshot status should be present"
|
296
|
+
assert_equal false, info['priority'].nil?, "Screenshot priority should be present"
|
297
|
+
assert_equal false, info['cost'].nil?, "Screenshot cost should be present"
|
298
|
+
|
299
|
+
if (info['status'] == 'finished')
|
300
|
+
assert_equal false, info['screenshot_url'].nil?, "Screenshot screenshot_url should be present"
|
301
|
+
assert_equal false, info['url'].nil?, "Screenshot url should be present"
|
302
|
+
assert_equal false, info['size'].nil?, "Screenshot size should be present"
|
303
|
+
assert_equal false, info['width'].nil?, "Screenshot width should be present"
|
304
|
+
assert_equal false, info['height'].nil?, "Screenshot height should be present"
|
305
|
+
assert_equal false, info['instance_id'].nil?, "Screenshot instance_id should be present"
|
306
|
+
assert_equal false, info['final_url'].nil?, "Screenshot final_url should be present"
|
307
|
+
assert_equal false, info['scale'].nil?, "Screenshot scale should be present"
|
308
|
+
|
309
|
+
assert_equal false, info['response_code'].nil?, "Screenshot response_code should be present"
|
310
|
+
assert_equal false, info['content_type'].nil?, "Screenshot content_type should be present"
|
311
|
+
|
312
|
+
assert_equal false, info['started'].nil?, "Screenshot started should be present"
|
313
|
+
assert_equal false, info['finished'].nil?, "Screenshot finished should be present"
|
314
|
+
assert_equal false, info['load'].nil?, "Screenshot load should be present"
|
315
|
+
assert_equal false, info['request_time'].nil?, "Screenshot request_time should be present"
|
316
|
+
assert_equal false, info['content'].nil?, "Screenshot content should be present"
|
317
|
+
|
318
|
+
assert_equal true, info['images'].nil?, "Screenshot images should NOT be present"
|
319
|
+
end
|
320
|
+
end
|
321
|
+
|
322
|
+
should "to retrieve a screenshot with details==3" do
|
323
|
+
screenshot = @browshot.screenshot_create('http://browshot.com/')
|
324
|
+
info = @browshot.screenshot_info(screenshot['id'], { 'details' => 3 })
|
325
|
+
|
326
|
+
assert_equal false, info['id'].nil?, "Screenshot ID should be present"
|
327
|
+
assert_equal false, info['status'].nil?, "Screenshot status should be present"
|
328
|
+
assert_equal false, info['priority'].nil?, "Screenshot priority should be present"
|
329
|
+
assert_equal false, info['cost'].nil?, "Screenshot cost should be present"
|
330
|
+
|
331
|
+
if (info['status'] == 'finished')
|
332
|
+
assert_equal false, info['screenshot_url'].nil?, "Screenshot screenshot_url should be present"
|
333
|
+
assert_equal false, info['url'].nil?, "Screenshot url should be present"
|
334
|
+
assert_equal false, info['size'].nil?, "Screenshot size should be present"
|
335
|
+
assert_equal false, info['width'].nil?, "Screenshot width should be present"
|
336
|
+
assert_equal false, info['height'].nil?, "Screenshot height should be present"
|
337
|
+
assert_equal false, info['instance_id'].nil?, "Screenshot instance_id should be present"
|
338
|
+
assert_equal false, info['final_url'].nil?, "Screenshot final_url should be present"
|
339
|
+
assert_equal false, info['scale'].nil?, "Screenshot scale should be present"
|
340
|
+
|
341
|
+
assert_equal false, info['response_code'].nil?, "Screenshot response_code should be present"
|
342
|
+
assert_equal false, info['content_type'].nil?, "Screenshot content_type should be present"
|
343
|
+
|
344
|
+
assert_equal false, info['started'].nil?, "Screenshot started should be present"
|
345
|
+
assert_equal false, info['finished'].nil?, "Screenshot finished should be present"
|
346
|
+
assert_equal false, info['load'].nil?, "Screenshot load should be present"
|
347
|
+
assert_equal false, info['request_time'].nil?, "Screenshot request_time should be present"
|
348
|
+
assert_equal false, info['content'].nil?, "Screenshot content should be present"
|
349
|
+
|
350
|
+
assert_equal false, info['images'].nil?, "Screenshot images should be present"
|
351
|
+
assert_equal true, info['images'].length > 0, "Screenshot images should be present"
|
352
|
+
assert_equal false, info['scripts'].nil?, "Screenshot scripts should be present"
|
353
|
+
assert_equal false, info['iframes'].nil?, "Screenshot iframes should be present"
|
354
|
+
assert_equal false, info['embeds'].nil?, "Screenshot embeds should be present"
|
355
|
+
end
|
356
|
+
end
|
357
|
+
|
228
358
|
should "retrieve the list of screenshots" do
|
229
359
|
screenshots = @browshot.screenshot_list()
|
230
360
|
assert_equal true, screenshots.length > 0, "There should be multiple screenshots"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: browshot
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.7.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-04-14 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: json
|
16
|
-
requirement: &
|
16
|
+
requirement: &96980520 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *96980520
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: url
|
27
|
-
requirement: &
|
27
|
+
requirement: &96979780 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *96979780
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: json
|
38
|
-
requirement: &
|
38
|
+
requirement: &96979040 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *96979040
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: url
|
49
|
-
requirement: &
|
49
|
+
requirement: &96978400 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *96978400
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: shoulda
|
60
|
-
requirement: &
|
60
|
+
requirement: &96977720 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *96977720
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: bundler
|
71
|
-
requirement: &
|
71
|
+
requirement: &97827640 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ~>
|
@@ -76,10 +76,10 @@ dependencies:
|
|
76
76
|
version: 1.0.0
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *97827640
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: jeweler
|
82
|
-
requirement: &
|
82
|
+
requirement: &97826880 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ~>
|
@@ -87,10 +87,10 @@ dependencies:
|
|
87
87
|
version: 1.6.4
|
88
88
|
type: :development
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *97826880
|
91
91
|
- !ruby/object:Gem::Dependency
|
92
92
|
name: rcov
|
93
|
-
requirement: &
|
93
|
+
requirement: &97826140 !ruby/object:Gem::Requirement
|
94
94
|
none: false
|
95
95
|
requirements:
|
96
96
|
- - ! '>='
|
@@ -98,7 +98,7 @@ dependencies:
|
|
98
98
|
version: '0'
|
99
99
|
type: :development
|
100
100
|
prerelease: false
|
101
|
-
version_requirements: *
|
101
|
+
version_requirements: *97826140
|
102
102
|
description: ! 'Browshot (http://www.browshot.com/) is a web service to easily make
|
103
103
|
screenshots of web pages in any screen size, as any device: iPhone©, iPad©, Android©,
|
104
104
|
Nook©, PC, etc. Browshot has full Flash, JavaScript, CSS, & HTML5 support. The latest
|
@@ -141,7 +141,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
141
141
|
version: '0'
|
142
142
|
segments:
|
143
143
|
- 0
|
144
|
-
hash:
|
144
|
+
hash: -653828520181139472
|
145
145
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
146
146
|
none: false
|
147
147
|
requirements:
|