roadie-rails 1.1.0.rc1 → 1.1.0.rc2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b6e069d2ab9315717c52c90b8546ceaed0e11886
4
- data.tar.gz: ef744fe87053f03b4f01d4c30433b4bc1bb57e6c
3
+ metadata.gz: dcb900b0ff648dc35539039d535cd4b1ab7a67d9
4
+ data.tar.gz: 8ef1f9b9bfae0fc65f6e7d383a6147f68afad7ec
5
5
  SHA512:
6
- metadata.gz: 5a92864739208eab2125a21d3b89de11a113c784bf48ee44ed51b41a227109addb71ad98eab4898914f58657a3c909ba8cc5eba7da6c1f279e36ca79371329c3
7
- data.tar.gz: 74da180802daf9f9ed9c73d1e8de4dd21461dc9be39fc64514e8f7fca6eecf0c10090aa9974cce6deed3e787d6179d816054e4491bf9587e09312ac55291efd3
6
+ metadata.gz: 2f208d03f3541bbd090e849b95807dc73fcd572063dbec96b99e78262ccc11232126fa17f672ed30752d97d80e330fdff1535df7fc3444d8baad344f4617dd93
7
+ data.tar.gz: f84b45b790fddbae358a14049b8ee34008b175c949d2f5ca405659f5353f24c5b51176a7c8150af4a8ffbb0cd8ab8c6e6e5f25c093189b0e7cbeb7d17f7d1ace
@@ -1,6 +1,12 @@
1
1
  ### development version
2
2
 
3
- [full changelog](https://github.com/Mange/roadie-rails/compare/v1.1.0.rc1...master)
3
+ [full changelog](https://github.com/Mange/roadie-rails/compare/v1.1.0.rc2...master)
4
+
5
+ ### development version
6
+
7
+ [full changelog](https://github.com/Mange/roadie-rails/compare/v1.1.0.rc1...v1.1.0.rc2)
8
+
9
+ * Add support for `roadie`'s `external_asset_providers` option.
4
10
 
5
11
  ### 1.1.0.rc1
6
12
 
data/README.md CHANGED
@@ -15,7 +15,7 @@ This gem hooks up your Rails application with Roadie to help you generate HTML e
15
15
  [Add this gem to your Gemfile as recommended by Rubygems][gem] and run `bundle install`.
16
16
 
17
17
  ```ruby
18
- gem 'roadie-rails', '~> 3.1'
18
+ gem 'roadie-rails', '~> 1.0'
19
19
  ```
20
20
 
21
21
  ## Usage ##
@@ -5,6 +5,7 @@ module Roadie
5
5
  :after_transformation,
6
6
  :asset_providers,
7
7
  :before_transformation,
8
+ :external_asset_providers,
8
9
  :keep_uninlinable_css,
9
10
  :url_options,
10
11
  ]
@@ -13,11 +14,12 @@ module Roadie
13
14
 
14
15
  def initialize(options = {})
15
16
  complain_about_unknown_keys options.keys
16
- self.after_transformation = options[:after_transformation]
17
- self.asset_providers = options[:asset_providers]
18
- self.before_transformation = options[:before_transformation]
19
- self.keep_uninlinable_css = options[:keep_uninlinable_css]
20
- self.url_options = options[:url_options]
17
+ self.after_transformation = options[:after_transformation]
18
+ self.asset_providers = options[:asset_providers]
19
+ self.before_transformation = options[:before_transformation]
20
+ self.external_asset_providers = options[:external_asset_providers]
21
+ self.keep_uninlinable_css = options[:keep_uninlinable_css]
22
+ self.url_options = options[:url_options]
21
23
  end
22
24
 
23
25
  def url_options=(options)
@@ -45,13 +47,23 @@ module Roadie
45
47
  end
46
48
  end
47
49
 
50
+ def external_asset_providers=(providers)
51
+ if providers
52
+ @external_asset_providers = ProviderList.wrap providers
53
+ # TODO: Raise an error when setting to nil in order to make this not a silent error.
54
+ # else
55
+ # raise ArgumentError, "Cannot set asset_providers to nil. Set to Roadie::NullProvider if you want no external assets inlined."
56
+ end
57
+ end
58
+
48
59
  def apply_to(document)
49
60
  document.url_options = url_options
50
61
  document.before_transformation = before_transformation
51
62
  document.after_transformation = after_transformation
52
- # #asset_providers default to nil in this class and it's the one option
53
- # that is not allowed to be nil on Document.
63
+
54
64
  document.asset_providers = asset_providers if asset_providers
65
+ document.external_asset_providers = external_asset_providers if external_asset_providers
66
+
55
67
  document.keep_uninlinable_css = keep_uninlinable_css unless keep_uninlinable_css.nil?
56
68
  end
57
69
 
@@ -83,6 +95,10 @@ module Roadie
83
95
  before_transformation, options[:before_transformation]
84
96
  )
85
97
 
98
+ self.external_asset_providers = combine_providers(
99
+ external_asset_providers, options[:external_asset_providers]
100
+ )
101
+
86
102
  self.keep_uninlinable_css =
87
103
  options[:keep_uninlinable_css] if options.has_key?(:keep_uninlinable_css)
88
104
 
@@ -1,5 +1,5 @@
1
1
  module Roadie
2
2
  module Rails
3
- VERSION = "1.1.0.rc1"
3
+ VERSION = "1.1.0.rc2"
4
4
  end
5
5
  end
@@ -138,6 +138,19 @@ module Roadie
138
138
  end
139
139
  end
140
140
 
141
+ it_behaves_like "attribute", :external_asset_providers do
142
+ let(:provider1) { double "Asset provider 1" }
143
+ let(:provider2) { double "Asset provider 2" }
144
+
145
+ let(:valid_value) { ProviderList.new([provider1]) }
146
+ let(:other_valid_value) { ProviderList.new([provider2]) }
147
+
148
+ def expect_combinated_value(value)
149
+ expect(value).to be_instance_of(ProviderList)
150
+ expect(value.to_a).to eq([provider1, provider2])
151
+ end
152
+ end
153
+
141
154
  describe "asset_providers" do
142
155
  it "automatically wraps values in a ProviderList" do
143
156
  provider = double "Asset provider"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: roadie-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0.rc1
4
+ version: 1.1.0.rc2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Magnus Bergmark