galakei 0.13.2 → 0.13.3

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- galakei (0.13.2)
4
+ galakei (0.13.3)
5
5
  actionpack (>= 3.0.3)
6
6
  css_parser
7
7
  nokogiri
@@ -112,7 +112,7 @@ GEM
112
112
  rspec (~> 2.6.0)
113
113
  rubyzip (0.9.4)
114
114
  sanitize (2.0.3)
115
- nokogiri (< 1.6, >= 1.4.4)
115
+ nokogiri (>= 1.4.4, < 1.6)
116
116
  selenium-webdriver (2.7.0)
117
117
  childprocess (>= 0.2.1)
118
118
  ffi (>= 1.0.7)
@@ -121,7 +121,7 @@ GEM
121
121
  sprockets (2.0.0)
122
122
  hike (~> 1.2)
123
123
  rack (~> 1.0)
124
- tilt (!= 1.3.0, ~> 1.1)
124
+ tilt (~> 1.1, != 1.3.0)
125
125
  steak (2.0.0)
126
126
  capybara (>= 1.0.0)
127
127
  rspec-rails (>= 2.5.0)
@@ -21,15 +21,20 @@ class Galakei::DocomoCss::InlineStylesheet # :nodoc: all
21
21
  def self.parser(href)
22
22
  parser = CssParser::Parser.new
23
23
  uri = URI.parse(href)
24
- if uri.host && uri.scheme && uri.port
25
- parser.load_uri!(uri)
26
- elsif /^\/assets\/([^?]+)/=~ href
27
- asset = Rails.application.assets.find_asset($1)
24
+ asset_host = ActionController::Base.asset_host
25
+ # Hack to handle if asset host is a proc. Call it with nil for all arguments.
26
+ if asset_host.respond_to?(:call)
27
+ asset_host = asset_host.call(*asset_host.arity.times.map { nil })
28
+ end
29
+ if /(#{asset_host}|^)\/assets\/([^?]+)/ =~ href
30
+ asset = Rails.application.assets.find_asset($2)
28
31
  if asset
29
32
  parser.add_block!(asset.to_s, {:media_types => :all, :base_dir => File.dirname(href)})
30
33
  else
31
- Rails.logger.warn("[galakei] asset lookup for #{$1} failed, skipping")
34
+ Rails.logger.warn("[galakei] asset lookup for #{$2} failed, skipping")
32
35
  end
36
+ elsif uri.host && uri.scheme && uri.port && uri.host
37
+ parser.load_uri!(uri)
33
38
  else
34
39
  parser.load_file!(path(href))
35
40
  end
@@ -1,4 +1,4 @@
1
1
  module Galakei
2
2
  # The version of Galakei you are using
3
- VERSION = "0.13.2"
3
+ VERSION = "0.13.3"
4
4
  end
@@ -27,7 +27,6 @@ class DocomoCssController < ApplicationController
27
27
  render :inline => html, :layout => true
28
28
  end
29
29
 
30
-
31
30
  def japanese
32
31
  html = <<-EOD
33
32
  <% content_for(:head, stylesheet_link_tag("docomo_css/simple.css")) %>
@@ -51,6 +50,31 @@ feature 'inlining of css' do
51
50
  page.should_not have_xpath("//link")
52
51
  end
53
52
 
53
+ scenario 'requesting simple page for docomo with asset host', :driver => :docomo do
54
+ old_asset_host = ActionController::Base.asset_host
55
+ begin
56
+ ActionController::Base.asset_host = 'assets.example.com'
57
+ visit '/docomo_css/simple'
58
+ find("span")["style"].should == "color: red;"
59
+ page.should_not have_xpath("//link")
60
+ ensure
61
+ ActionController::Base.asset_host = old_asset_host
62
+ end
63
+ end
64
+
65
+ scenario 'requesting simple page for docomo with proc asset host', :driver => :docomo do
66
+ old_asset_host = ActionController::Base.asset_host
67
+ begin
68
+ ActionController::Base.asset_host = lambda {|scope, req| 'assets.example.com' unless req && req.ssl? }
69
+ visit '/docomo_css/simple'
70
+ find("span")["style"].should == "color: red;"
71
+ page.should_not have_xpath("//link")
72
+ ensure
73
+ ActionController::Base.asset_host = old_asset_host
74
+ end
75
+ end
76
+
77
+
54
78
  %w[au softbank docomo_2_0].each do |carrier|
55
79
  scenario "requesting simple page for #{carrier}", :driver => carrier.to_sym do
56
80
  visit '/docomo_css/simple'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: galakei
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.2
4
+ version: 0.13.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -11,11 +11,11 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2011-11-21 00:00:00.000000000 Z
14
+ date: 2011-11-30 00:00:00.000000000Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: actionpack
18
- requirement: &19282940 !ruby/object:Gem::Requirement
18
+ requirement: &2152194740 !ruby/object:Gem::Requirement
19
19
  none: false
20
20
  requirements:
21
21
  - - ! '>='
@@ -23,10 +23,10 @@ dependencies:
23
23
  version: 3.0.3
24
24
  type: :runtime
25
25
  prerelease: false
26
- version_requirements: *19282940
26
+ version_requirements: *2152194740
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rack
29
- requirement: &19221820 !ruby/object:Gem::Requirement
29
+ requirement: &2152185080 !ruby/object:Gem::Requirement
30
30
  none: false
31
31
  requirements:
32
32
  - - ! '>='
@@ -34,10 +34,10 @@ dependencies:
34
34
  version: 1.2.1
35
35
  type: :runtime
36
36
  prerelease: false
37
- version_requirements: *19221820
37
+ version_requirements: *2152185080
38
38
  - !ruby/object:Gem::Dependency
39
39
  name: css_parser
40
- requirement: &19218900 !ruby/object:Gem::Requirement
40
+ requirement: &2152183620 !ruby/object:Gem::Requirement
41
41
  none: false
42
42
  requirements:
43
43
  - - ! '>='
@@ -45,10 +45,10 @@ dependencies:
45
45
  version: '0'
46
46
  type: :runtime
47
47
  prerelease: false
48
- version_requirements: *19218900
48
+ version_requirements: *2152183620
49
49
  - !ruby/object:Gem::Dependency
50
50
  name: nokogiri
51
- requirement: &18728440 !ruby/object:Gem::Requirement
51
+ requirement: &2152181580 !ruby/object:Gem::Requirement
52
52
  none: false
53
53
  requirements:
54
54
  - - ! '>='
@@ -56,10 +56,10 @@ dependencies:
56
56
  version: '0'
57
57
  type: :runtime
58
58
  prerelease: false
59
- version_requirements: *18728440
59
+ version_requirements: *2152181580
60
60
  - !ruby/object:Gem::Dependency
61
61
  name: sanitize
62
- requirement: &18723820 !ruby/object:Gem::Requirement
62
+ requirement: &2152179600 !ruby/object:Gem::Requirement
63
63
  none: false
64
64
  requirements:
65
65
  - - ! '>='
@@ -67,7 +67,7 @@ dependencies:
67
67
  version: '0'
68
68
  type: :runtime
69
69
  prerelease: false
70
- version_requirements: *18723820
70
+ version_requirements: *2152179600
71
71
  description: Japanese feature phones (a.k.a., keitai, galakei) have a number of restrictions
72
72
  over normal web browsers. This library adds support for them
73
73
  email: info@mobalean.com