imgkit 1.3.10 → 1.4.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- imgkit (1.3.10)
4
+ imgkit (1.4.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -1,13 +1,25 @@
1
1
  class IMGKit
2
2
  class Configuration
3
- attr_accessor :meta_tag_prefix, :wkhtmltoimage, :default_options, :default_format
3
+ attr_writer :wkhtmltoimage
4
+ attr_accessor :meta_tag_prefix, :default_options, :default_format
4
5
 
5
6
  def initialize
6
7
  @meta_tag_prefix = 'imgkit-'
7
8
  @default_options = {:height => 1000}
8
9
  @default_format = :jpg
9
- @wkhtmltoimage ||= (defined?(Bundler::GemfileError) ? `bundle exec which wkhtmltoimage` : `which wkhtmltoimage`).chomp
10
- @wkhtmltoimage = '/usr/local/bin/wkhtmltoimage' if @wkhtmltoimage.strip.empty? # Fallback
10
+ end
11
+
12
+ def wkhtmltoimage
13
+ @wkhtmltoimage ||= begin
14
+ path = (using_bundler? ? `bundle exec which wkhtmltoimage` : `which wkhtmltoimage`).chomp
15
+ path = '/usr/local/bin/wkhtmltoimage' if path.strip.empty? # Fallback
16
+ path
17
+ end
18
+ end
19
+
20
+ private
21
+ def using_bundler?
22
+ defined?(Bundler::GemfileError)
11
23
  end
12
24
  end
13
25
 
@@ -1,3 +1,3 @@
1
1
  class IMGKit
2
- VERSION = "1.3.10"
2
+ VERSION = "1.4.0"
3
3
  end
@@ -0,0 +1,59 @@
1
+ require "spec_helper"
2
+
3
+ describe IMGKit::Configuration do
4
+ describe "#wkhtmltoimage" do
5
+ context "system version exists" do
6
+ let(:system_path) { "/path/to/wkhtmltoimage\n" }
7
+
8
+ before(:each) do
9
+ subject.stub :` => system_path
10
+ end
11
+
12
+ context "with Bundler" do
13
+ before(:each) do
14
+ subject.stub :using_bundler? => true
15
+ end
16
+
17
+ it "should return the result of `bundle exec which wkhtmltoimage` with whitespace stripped" do
18
+ subject.should_receive(:`).with("bundle exec which wkhtmltoimage")
19
+ subject.wkhtmltoimage.should == system_path.chomp
20
+ end
21
+ end
22
+
23
+ context "without Bundler" do
24
+ before(:each) do
25
+ subject.stub :using_bundler? => false
26
+ end
27
+
28
+ it "should return the result of `which wkhtmltoimage` with whitespace stripped" do
29
+ subject.should_receive(:`).with("which wkhtmltoimage")
30
+ subject.wkhtmltoimage.should == system_path.chomp
31
+ end
32
+ end
33
+ end
34
+
35
+ context "system version does not exist" do
36
+ before(:each) do
37
+ subject.stub :` => "\n"
38
+ subject.stub :using_bundler? => false
39
+ end
40
+
41
+ it "should return the fallback path" do
42
+ subject.wkhtmltoimage.should == "/usr/local/bin/wkhtmltoimage"
43
+ end
44
+ end
45
+
46
+ context "set explicitly" do
47
+ let(:explicit_path) { "/explicit/path/to/wkhtmltoimage" }
48
+
49
+ before(:each) do
50
+ subject.wkhtmltoimage = explicit_path
51
+ end
52
+
53
+ it "should not check the system version and return the explicit path" do
54
+ subject.should_not_receive(:`)
55
+ subject.wkhtmltoimage.should == explicit_path
56
+ end
57
+ end
58
+ end
59
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: imgkit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.10
4
+ version: 1.4.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-10-29 00:00:00.000000000 Z
12
+ date: 2014-02-14 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: Uses wkhtmltoimage to create Images using HTML
15
15
  email: christopher.continanza@gmail.com
@@ -35,6 +35,7 @@ files:
35
35
  - lib/imgkit/imgkit.rb
36
36
  - lib/imgkit/source.rb
37
37
  - lib/imgkit/version.rb
38
+ - spec/configuration_spec.rb
38
39
  - spec/error_binary
39
40
  - spec/fixtures/example.css
40
41
  - spec/fixtures/example.html
@@ -61,7 +62,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
61
62
  version: '0'
62
63
  segments:
63
64
  - 0
64
- hash: -1737640145783329099
65
+ hash: -2785353123807079228
65
66
  required_rubygems_version: !ruby/object:Gem::Requirement
66
67
  none: false
67
68
  requirements:
@@ -70,7 +71,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
70
71
  version: '0'
71
72
  segments:
72
73
  - 0
73
- hash: -1737640145783329099
74
+ hash: -2785353123807079228
74
75
  requirements: []
75
76
  rubyforge_project: imgkit
76
77
  rubygems_version: 1.8.23
@@ -78,6 +79,7 @@ signing_key:
78
79
  specification_version: 3
79
80
  summary: HTML+CSS -> JPG
80
81
  test_files:
82
+ - spec/configuration_spec.rb
81
83
  - spec/error_binary
82
84
  - spec/fixtures/example.css
83
85
  - spec/fixtures/example.html