blitline 1.2.0 → 1.2.2

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -41,8 +41,7 @@ Rcov::RcovTask.new do |test|
41
41
  end
42
42
 
43
43
  task :default => :test
44
-
45
- require 'rake/rdoctask'
44
+ require 'rdoc/task'
46
45
  Rake::RDocTask.new do |rdoc|
47
46
  version = File.exist?('VERSION') ? File.read('VERSION') : ""
48
47
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.2.0
1
+ 1.2.2
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "blitline"
8
- s.version = "1.2.0"
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 = "2011-12-18"
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"]
@@ -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
@@ -17,10 +17,10 @@ class Blitline
17
17
  @save = save
18
18
  end
19
19
 
20
- def add_function(function_name, function_params, image_identifier = nil)
20
+ def add_function(function_name, function_params)
21
21
  function = Blitline::Function.new(function_name, function_params)
22
22
  @functions << function
23
- function.add_save(image_identifier) if image_identifier
23
+ return function
24
24
  end
25
25
 
26
26
  def validate
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.0
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: 2011-12-18 00:00:00.000000000 Z
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: &8518100 !ruby/object:Gem::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: *8518100
24
+ version_requirements: *18256580
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: shoulda
27
- requirement: &8517540 !ruby/object:Gem::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: *8517540
35
+ version_requirements: *18254180
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: bundler
38
- requirement: &8516620 !ruby/object:Gem::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: *8516620
46
+ version_requirements: *18253420
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: jeweler
49
- requirement: &8515600 !ruby/object:Gem::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: *8515600
57
+ version_requirements: *18252180
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rcov
60
- requirement: &8513440 !ruby/object:Gem::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: *8513440
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: -1300062068295652826
111
+ hash: 2063341646104889258
111
112
  required_rubygems_version: !ruby/object:Gem::Requirement
112
113
  none: false
113
114
  requirements: