blitline 1.2.0 → 1.2.2
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/Rakefile +1 -2
- data/VERSION +1 -1
- data/blitline.gemspec +4 -3
- data/lib/blitline.rb +2 -1
- data/lib/blitline/attribute_jsonizer.rb +2 -2
- data/lib/blitline/function.rb +2 -2
- data/test/test_blitline.rb +0 -0
- data/test/test_service.rb +59 -0
- metadata +14 -13
data/Rakefile
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.2.
|
1
|
+
1.2.2
|
data/blitline.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "blitline"
|
8
|
-
s.version = "1.2.
|
8
|
+
s.version = "1.2.2"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Blitline LLC"]
|
12
|
-
s.date = "
|
12
|
+
s.date = "2012-01-23"
|
13
13
|
s.description = "The blitline gems provides a simple easy wrapper to the Blitline.com web api"
|
14
14
|
s.email = "support@blitline.com"
|
15
15
|
s.extra_rdoc_files = [
|
@@ -33,7 +33,8 @@ Gem::Specification.new do |s|
|
|
33
33
|
"lib/blitline/s3_destination.rb",
|
34
34
|
"lib/blitline/save.rb",
|
35
35
|
"test/helper.rb",
|
36
|
-
"test/test_blitline.rb"
|
36
|
+
"test/test_blitline.rb",
|
37
|
+
"test/test_service.rb"
|
37
38
|
]
|
38
39
|
s.homepage = "http://github.com/blitline-dev/blitline"
|
39
40
|
s.licenses = ["MIT"]
|
data/lib/blitline.rb
CHANGED
@@ -40,8 +40,9 @@ class Blitline
|
|
40
40
|
|
41
41
|
def post_jobs
|
42
42
|
validate
|
43
|
+
puts "@jobs = #{Yajl::Encoder.encode(@jobs)}"
|
43
44
|
result = Blitline::HttpPoster.post("http://api.blitline.com/job", { :json => Yajl::Encoder.encode(@jobs)})
|
44
45
|
return Yajl::Parser.parse(result)
|
45
46
|
end
|
46
47
|
|
47
|
-
end
|
48
|
+
end
|
@@ -6,8 +6,8 @@ module AttributeJsonizer
|
|
6
6
|
self.instance_variables.each do |iv|
|
7
7
|
key = iv
|
8
8
|
value = self.instance_variable_get(iv)
|
9
|
-
json_hash[key.to_s.gsub("@","")] = value
|
9
|
+
json_hash[key.to_s.gsub("@","")] = value unless value.kind_of?(Array) && value.length == 0 #Bail on empty arrays
|
10
10
|
end
|
11
11
|
Yajl::Encoder.encode(json_hash)
|
12
12
|
end
|
13
|
-
end
|
13
|
+
end
|
data/lib/blitline/function.rb
CHANGED
@@ -17,10 +17,10 @@ class Blitline
|
|
17
17
|
@save = save
|
18
18
|
end
|
19
19
|
|
20
|
-
def add_function(function_name, function_params
|
20
|
+
def add_function(function_name, function_params)
|
21
21
|
function = Blitline::Function.new(function_name, function_params)
|
22
22
|
@functions << function
|
23
|
-
function
|
23
|
+
return function
|
24
24
|
end
|
25
25
|
|
26
26
|
def validate
|
data/test/test_blitline.rb
CHANGED
File without changes
|
@@ -0,0 +1,59 @@
|
|
1
|
+
require 'helper'
|
2
|
+
|
3
|
+
class TestService < Test::Unit::TestCase
|
4
|
+
if ENV['BLITLINE_APPLICATION_ID']
|
5
|
+
require 'yajl'
|
6
|
+
SAMPLE_IMAGE_SRC = "http://www.google.com/intl/en_com/images/srpr/logo3w.png"
|
7
|
+
|
8
|
+
should "be able to commit a simple job to service" do
|
9
|
+
blitline = Blitline.new
|
10
|
+
job = Blitline::Job.new(SAMPLE_IMAGE_SRC)
|
11
|
+
job.application_id = ENV['BLITLINE_APPLICATION_ID']
|
12
|
+
job.add_function("blur", nil, "my_image")
|
13
|
+
blitline.jobs << job
|
14
|
+
returned_values = blitline.post_jobs
|
15
|
+
assert(returned_values.length > 0, "No results returned")
|
16
|
+
assert(returned_values['results'][0]['images'].length > 0, "No images returned")
|
17
|
+
end
|
18
|
+
|
19
|
+
should "be able to commit a job with multiple embedded functions" do
|
20
|
+
blitline = Blitline.new
|
21
|
+
job = Blitline::Job.new(SAMPLE_IMAGE_SRC)
|
22
|
+
job.application_id = ENV['BLITLINE_APPLICATION_ID']
|
23
|
+
watermark_function = job.add_function("watermark", {text:"Jason"})
|
24
|
+
watermark_function.add_save("watermarked")#, @key, @s3_config['bucket_name'])
|
25
|
+
|
26
|
+
# begin sub-functions
|
27
|
+
original_function = watermark_function.add_function("resize_to_fit", {width:2000, height:2000})
|
28
|
+
original_function.add_save("original")#, key('original'), @s3_config['bucket_name'])
|
29
|
+
|
30
|
+
sm_gallery_function = watermark_function.add_function("resize_to_fill", {width:200, height:200})
|
31
|
+
sm_gallery_function.add_save("smgallery")#, key('sm_gallery'), @s3_config['bucket_name'])
|
32
|
+
|
33
|
+
# if I add a third subfunction, the job appears to fail. If I remove these two lines below, the job works.
|
34
|
+
thumb_function = watermark_function.add_function("resize_to_fit", {width:100, height:100})
|
35
|
+
thumb_function.add_save("thumb")#, key('thumb'), @s3_config['bucket_name'])
|
36
|
+
|
37
|
+
blitline.jobs << job
|
38
|
+
returned_values = blitline.post_jobs
|
39
|
+
assert(returned_values.length > 0, "No results returned")
|
40
|
+
assert(returned_values['results'][0]['images'].length > 0, "No images returned")
|
41
|
+
end
|
42
|
+
|
43
|
+
should "be able to commit a multi-function job to service" do
|
44
|
+
blitline = Blitline.new
|
45
|
+
job = Blitline::Job.new(SAMPLE_IMAGE_SRC)
|
46
|
+
job.application_id = ENV['BLITLINE_APPLICATION_ID']
|
47
|
+
blur_function = job.add_function("blur", nil)
|
48
|
+
blitline.jobs << job
|
49
|
+
# Add a rotate function inside the blur function (so it will blur first, then rotate)
|
50
|
+
rotate_function = blur_function.add_function("rotate", { "amount" => -90 })
|
51
|
+
rotate_function.add_save("rotate_only_result")
|
52
|
+
returned_values = blitline.post_jobs
|
53
|
+
assert(returned_values.length > 0, "No results returned")
|
54
|
+
assert(returned_values['results'][0]['images'].length > 0, "No images returned")
|
55
|
+
end
|
56
|
+
else
|
57
|
+
puts "Cannot test service with ENV['BLITLINE_APPLICATION_ID']"
|
58
|
+
end
|
59
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: blitline
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.2
|
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:
|
12
|
+
date: 2012-01-23 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: yajl-ruby
|
16
|
-
requirement: &
|
16
|
+
requirement: &18256580 !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: *18256580
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: shoulda
|
27
|
-
requirement: &
|
27
|
+
requirement: &18254180 !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: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *18254180
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: bundler
|
38
|
-
requirement: &
|
38
|
+
requirement: &18253420 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 1.0.0
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *18253420
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: jeweler
|
49
|
-
requirement: &
|
49
|
+
requirement: &18252180 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 1.6.4
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *18252180
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: rcov
|
60
|
-
requirement: &
|
60
|
+
requirement: &18249740 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,7 +65,7 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *18249740
|
69
69
|
description: The blitline gems provides a simple easy wrapper to the Blitline.com
|
70
70
|
web api
|
71
71
|
email: support@blitline.com
|
@@ -92,6 +92,7 @@ files:
|
|
92
92
|
- lib/blitline/save.rb
|
93
93
|
- test/helper.rb
|
94
94
|
- test/test_blitline.rb
|
95
|
+
- test/test_service.rb
|
95
96
|
homepage: http://github.com/blitline-dev/blitline
|
96
97
|
licenses:
|
97
98
|
- MIT
|
@@ -107,7 +108,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
107
108
|
version: '0'
|
108
109
|
segments:
|
109
110
|
- 0
|
110
|
-
hash:
|
111
|
+
hash: 2063341646104889258
|
111
112
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
112
113
|
none: false
|
113
114
|
requirements:
|