jpmobile 4.2.5 → 5.0.0.beta1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -2
  3. data/jpmobile.gemspec +1 -2
  4. data/lib/jpmobile.rb +17 -7
  5. data/lib/jpmobile/configuration.rb +1 -1
  6. data/lib/jpmobile/encoding.rb +13 -19
  7. data/lib/jpmobile/{hook_action_controller.rb → fallback_view_selector.rb} +4 -6
  8. data/lib/jpmobile/filter.rb +13 -10
  9. data/lib/jpmobile/mobile/abstract_mobile.rb +2 -2
  10. data/lib/jpmobile/mobile/google_emoticon.rb +2 -2
  11. data/lib/jpmobile/mobile/smart_phone.rb +2 -2
  12. data/lib/jpmobile/mobile/unicode_emoticon.rb +2 -2
  13. data/lib/jpmobile/rack/filter.rb +36 -38
  14. data/lib/jpmobile/rack/mobile_carrier.rb +8 -10
  15. data/lib/jpmobile/rack/params_filter.rb +32 -34
  16. data/lib/jpmobile/rails.rb +17 -4
  17. data/lib/jpmobile/resolver.rb +2 -3
  18. data/lib/jpmobile/trans_sid.rb +58 -78
  19. data/lib/jpmobile/util.rb +0 -17
  20. data/lib/jpmobile/version.rb +1 -1
  21. data/lib/tasks/jpmobile_tasks.rake +31 -37
  22. data/spec/rack/jpmobile/android_spec.rb +2 -2
  23. data/spec/rack/jpmobile/au_spec.rb +17 -17
  24. data/spec/rack/jpmobile/black_berry_spec.rb +2 -2
  25. data/spec/rack/jpmobile/docomo_spec.rb +15 -15
  26. data/spec/rack/jpmobile/emoticon_spec.rb +57 -57
  27. data/spec/rack/jpmobile/filter_spec.rb +25 -25
  28. data/spec/rack/jpmobile/iphone_spec.rb +3 -3
  29. data/spec/rack/jpmobile/mobile_by_ua_spec.rb +3 -3
  30. data/spec/rack/jpmobile/params_filter_spec.rb +10 -10
  31. data/spec/rack/jpmobile/softbank_spec.rb +9 -9
  32. data/spec/rack/jpmobile/willcom_spec.rb +6 -6
  33. data/spec/rack/jpmobile/windows_phone.rb +2 -2
  34. data/spec/rack_helper.rb +0 -1
  35. data/spec/unit/mail_spec.rb +1 -10
  36. data/spec/unit/util_spec.rb +42 -56
  37. data/test/rails/overrides/Gemfile.jpmobile +5 -3
  38. data/test/rails/overrides/app/controllers/filter_controller.rb +0 -1
  39. data/test/rails/overrides/app/controllers/filter_controller_base.rb +14 -9
  40. data/test/rails/overrides/app/controllers/hankaku_input_filter_controller.rb +2 -2
  41. data/test/rails/overrides/app/controllers/trans_sid_metal_controller.rb +0 -1
  42. data/test/rails/overrides/app/views/filter/text_template.html.erb +1 -0
  43. data/test/rails/overrides/spec/controllers/mobile_spec_controller_spec.rb +3 -3
  44. data/test/rails/overrides/spec/controllers/trans_sid_controller_spec.rb +2 -2
  45. data/test/rails/overrides/spec/features/filter_spec.rb +10 -9
  46. data/test/rails/overrides/spec/helpers/helpers_spec.rb +5 -3
  47. data/test/rails/overrides/spec/requests/docomo_spec.rb +6 -6
  48. data/test/rails/overrides/spec/requests/emobile_spec.rb +6 -6
  49. data/test/rails/overrides/spec/requests/pc_spec.rb +3 -3
  50. data/test/rails/overrides/spec/requests/softbank_emulator_spec.rb +4 -4
  51. data/test/rails/overrides/spec/requests/template_path_spec.rb +1 -1
  52. data/test/rails/overrides/spec/requests/trans_sid_spec.rb +7 -9
  53. metadata +12 -28
  54. data/lib/jpmobile/hook_action_dispatch.rb +0 -2
  55. data/lib/jpmobile/rack.rb +0 -14
@@ -1,7 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  require File.join(File.expand_path(File.dirname(__FILE__)), '../../rack_helper.rb')
3
3
 
4
- describe Jpmobile::Rack::MobileCarrier, "Windows Phone" do
4
+ describe Jpmobile::MobileCarrier, "Windows Phone" do
5
5
  include Rack::Test::Methods
6
6
 
7
7
  context "端末種別で" do
@@ -9,7 +9,7 @@ describe Jpmobile::Rack::MobileCarrier, "Windows Phone" do
9
9
  res = Rack::MockRequest.env_for(
10
10
  'http://jpmobile-rails.org/',
11
11
  'HTTP_USER_AGENT' => 'Mozilla/4.0 (Compatible; MSIE 6.0; Windows NT 5.1 T-01A_6.5; Windows Phone 6.5)')
12
- env = Jpmobile::Rack::MobileCarrier.new(UnitApplication.new).call(res)[1]
12
+ env = Jpmobile::MobileCarrier.new(UnitApplication.new).call(res)[1]
13
13
 
14
14
  expect(env['rack.jpmobile'].class).to eq(Jpmobile::Mobile::WindowsPhone)
15
15
  expect(env['rack.jpmobile'].position).to be_nil
data/spec/rack_helper.rb CHANGED
@@ -3,7 +3,6 @@ require 'rubygems'
3
3
  require 'rack/test'
4
4
  require 'rspec'
5
5
  require 'jpmobile'
6
- require 'jpmobile/rack'
7
6
  require 'nkf'
8
7
 
9
8
  begin
@@ -342,16 +342,7 @@ describe "Jpmobile::Mail" do
342
342
  end
343
343
 
344
344
  it "delivers through SMTP" do
345
- @mail.delivery_method :smtp, {
346
- enable_starttls_auto: false,
347
- user_name: ENV['MAILTRAP_USERNAME'],
348
- password: ENV['MAILTRAP_PASSWORD'],
349
- address: 'smtp.mailtrap.io',
350
- domain: 'smtp.mailtrap.io',
351
- port: '2525',
352
- authentication: :cram_md5
353
- }
354
-
345
+ @mail.delivery_method :smtp, {:enable_starttls_auto => false}
355
346
  expect {
356
347
  @mail.deliver
357
348
  }.not_to raise_error
@@ -6,77 +6,63 @@ require 'nkf'
6
6
  describe Jpmobile::Util do
7
7
  include Jpmobile::Util
8
8
 
9
- it 'nilのときはnilを返すこと' do
10
- expect(deep_apply(nil) {|obj| obj }).to equal(nil)
11
- end
12
-
13
- it 'trueのときはtrueを返すこと' do
14
- expect(deep_apply(true) {|obj| obj }).to equal(true)
15
- end
16
-
17
- it 'falseのときはそのまま値を返すこと' do
18
- expect(deep_apply(false) {|obj| obj }).to equal(false)
19
- end
20
-
21
- it 'Tempfileのインスタンスのときはそのまま値を返すこと' do
22
- temp = Tempfile.new('test')
23
- expect(deep_apply(temp) {|obj| obj}.object_id).to equal(temp.object_id)
24
- # 本来 deep_apply(temp) {|obj| obj }.should equal(temp) が通るべきのような。
25
- # 参考 http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-list/41720
26
- end
27
-
28
- it 'StringIOのインスタンスのときはそのまま値を返すこと' do
29
- string_io = StringIO.new('test')
30
- expect(deep_apply(string_io) {|obj| obj }).to equal(string_io)
31
- end
32
-
33
- it "utf8_to_sjis で変換できない文字列が含んでいた場合?に変換される" do
34
- expect(utf8_to_sjis("اللغة العربية")).to eq(sjis("????? ???????"))
35
- end
9
+ describe 'utf8_to_sjis' do
10
+ it "utf8_to_sjis で変換できない文字列が含んでいた場合?に変換される" do
11
+ expect(utf8_to_sjis("اللغة العربية")).to eq(sjis("????? ???????"))
12
+ end
36
13
 
37
- it "utf8_to_sjis ですべての改行コードが CRLF に変更されること" do
38
- expect(utf8_to_sjis("UTF8\rSAMPLE\nTEXT\r\n")).to eq(sjis("UTF8\r\nSAMPLE\r\nTEXT\r\n"))
39
- end
14
+ it "utf8_to_sjis ですべての改行コードが CRLF に変更されること" do
15
+ expect(utf8_to_sjis("UTF8\rSAMPLE\nTEXT\r\n")).to eq(sjis("UTF8\r\nSAMPLE\r\nTEXT\r\n"))
16
+ end
40
17
 
41
- it "0x8150がU+FFE3に変換されること" do
42
- expect(sjis_to_utf8(sjis("\x81\x50"))).to eq([0xffe3].pack("U"))
43
- end
18
+ it "U+FFE3が0x8150に変換されること" do
19
+ expect(utf8_to_sjis([0xffe3].pack("U"))).to eq(sjis("\x81\x50"))
20
+ end
44
21
 
45
- it "U+FFE3が0x8150に変換されること" do
46
- expect(utf8_to_sjis([0xffe3].pack("U"))).to eq(sjis("\x81\x50"))
47
- end
22
+ it "U+203Eが0x8150に変換されること" do
23
+ expect(utf8_to_sjis([0x203e].pack("U"))).to eq(sjis("\x81\x50"))
24
+ end
48
25
 
49
- it "U+203E0x8150に変換されること" do
50
- expect(utf8_to_sjis([0x203e].pack("U"))).to eq(sjis("\x81\x50"))
51
- end
26
+ it "U+20140x815Cに変換されること" do
27
+ expect(utf8_to_sjis([0x2014].pack("U"))).to eq(sjis("\x81\x5C"))
28
+ end
52
29
 
53
- it "U+20140x815Cに変換されること" do
54
- expect(utf8_to_sjis([0x2014].pack("U"))).to eq(sjis("\x81\x5C"))
55
- end
30
+ it "U+22120x817Cに変換されること" do
31
+ expect(utf8_to_sjis([0x2212].pack("U"))).to eq(sjis("\x81\x7C"))
32
+ end
56
33
 
57
- it "U+2212が0x817Cに変換されること" do
58
- expect(utf8_to_sjis([0x2212].pack("U"))).to eq(sjis("\x81\x7C"))
34
+ it "utf8_to_sjis で変換できない文字列が含んでいた場合?に変換される" do
35
+ expect(utf8_to_jis("اللغة العربية")).to eq(jis("????? ???????"))
36
+ end
59
37
  end
60
38
 
61
- it "jis_string_regexpでISO-2022-JPの文字列がマッチすること" do
62
- expect(jis_string_regexp.match(ascii_8bit(utf8_to_jis("abcしからずんばこじをえずdef")))).not_to be_nil
63
- expect(jis_to_utf8(jis("\x1b\x24\x42#{$1}\x1b\x28\x42"))).to eq("しからずんばこじをえず")
64
- end
39
+ describe 'sjis_to_utf8' do
40
+ it "0x8150がU+FFE3に変換されること" do
41
+ expect(sjis_to_utf8(sjis("\x81\x50"))).to eq([0xffe3].pack("U"))
42
+ end
65
43
 
66
- it "sjis_to_utf8 ですべての改行コードが LF に変更されること" do
67
- expect(sjis_to_utf8("SJIS\rSAMPLE\nTEXT\r\n")).to eq(utf8("SJIS\nSAMPLE\nTEXT\n"))
44
+ it "sjis_to_utf8 ですべての改行コードが LF に変更されること" do
45
+ expect(sjis_to_utf8("SJIS\rSAMPLE\nTEXT\r\n")).to eq(utf8("SJIS\nSAMPLE\nTEXT\n"))
46
+ end
68
47
  end
69
48
 
70
- it "utf8_to_sjis で変換できない文字列が含んでいた場合?に変換される" do
71
- expect(utf8_to_jis("اللغة العربية")).to eq(jis("????? ???????"))
49
+ describe 'utf8_to_jis' do
50
+ it "utf8_to_jis ですべての改行コードが CRLF に変更されること" do
51
+ expect(utf8_to_jis("UTF8\rSAMPLE\nTEXT\r\n")).to eq(jis("UTF8\r\nSAMPLE\r\nTEXT\r\n"))
52
+ end
72
53
  end
73
54
 
74
- it "utf8_to_jis ですべての改行コードが CRLF に変更されること" do
75
- expect(utf8_to_jis("UTF8\rSAMPLE\nTEXT\r\n")).to eq(jis("UTF8\r\nSAMPLE\r\nTEXT\r\n"))
55
+ describe 'jis_string_regexp' do
56
+ it "jis_string_regexpでISO-2022-JPの文字列がマッチすること" do
57
+ expect(jis_string_regexp.match(ascii_8bit(utf8_to_jis("abcしからずんばこじをえずdef")))).not_to be_nil
58
+ expect(jis_to_utf8(jis("\x1b\x24\x42#{$1}\x1b\x28\x42"))).to eq("しからずんばこじをえず")
59
+ end
76
60
  end
77
61
 
78
- it "jis_to_utf8 ですべての改行コードが LF に変更されること" do
79
- expect(jis_to_utf8("JIS\rSAMPLE\nTEXT\r\n")).to eq(utf8("JIS\nSAMPLE\nTEXT\n"))
62
+ describe 'jis_to_utf8' do
63
+ it "jis_to_utf8 ですべての改行コードが LF に変更されること" do
64
+ expect(jis_to_utf8("JIS\rSAMPLE\nTEXT\r\n")).to eq(utf8("JIS\nSAMPLE\nTEXT\n"))
65
+ end
80
66
  end
81
67
 
82
68
  describe '#force_encode' do
@@ -4,14 +4,16 @@ gem 'jpmobile', path: './vendor/jpmobile'
4
4
  gem 'jpmobile-terminfo', path: './vendor/jpmobile-terminfo'
5
5
  gem 'jpmobile-ipaddresses', path: './vendor/jpmobile-ipaddresses'
6
6
 
7
- gem 'activerecord-session_store'
7
+ gem 'activerecord-session_store', path: './vendor/activerecord-session_store'
8
8
 
9
- gem 'mail', '2.5.5'
9
+ gem 'pry'
10
+ gem 'pry-byebug'
10
11
 
11
12
  # Bundle gems for certain environments:
12
13
  group :development, :test do
13
14
  gem "rspec"
14
15
  gem "rspec-rails"
16
+ gem 'capybara'
15
17
  gem 'capybara-webkit'
16
- gem 'pry'
18
+ gem 'rails-controller-testing'
17
19
  end
@@ -1,3 +1,2 @@
1
1
  class FilterController < FilterControllerBase
2
- # mobile_filter
3
2
  end
@@ -1,35 +1,40 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  class FilterControllerBase < ApplicationController
3
3
  def abracadabra_utf8
4
- render :text => "アブラカダブラ"
4
+ @text = "アブラカダブラ"
5
+ render 'filter/text_template'
5
6
  end
6
7
  def abracadabra_xhtml_utf8
7
8
  response.content_type = "application/xhtml+xml"
8
- render :text => "アブラカダブラ"
9
+ @text = "アブラカダブラ"
10
+ render 'filter/text_template'
9
11
  end
10
12
  def index
11
13
  @q = params[:q]
12
- render :text => @q
14
+ render plain: @q
13
15
  end
14
16
  def index_hankaku
15
- render :text => 'アブラカダブラ' == params[:q]
17
+ render plain: 'アブラカダブラ' == params[:q]
16
18
  end
17
19
  def index_zenkaku
18
- render :text => 'アブラカダブラ' == params[:q]
20
+ render plain: 'アブラカダブラ' == params[:q]
19
21
  end
20
22
  def empty
21
- render :text => ""
23
+ render plain: ""
22
24
  end
23
25
  def rawdata
24
26
  send_data "アブラカダブラ", :type => 'application/octet-stream'
25
27
  end
26
28
  def textarea
27
- render :text => '<textarea hoge="fuu">アブラカダブラ</textarea>'
29
+ @text = '<textarea hoge="fuu">アブラカダブラ</textarea>'.html_safe
30
+ render 'filter/text_template'
28
31
  end
29
32
  def input_tag
30
- render :text => '<input hoge="fuu" value="アブラカダブラ" />'
33
+ @text = '<input hoge="fuu" value="アブラカダブラ" />'.html_safe
34
+ render 'filter/text_template'
31
35
  end
32
36
  def nbsp_char
33
- render :text => '<a>アブラ&nbsp;カダブラ</a>'
37
+ @text = '<a>アブラ&nbsp;カダブラ</a>'.html_safe
38
+ render 'filter/text_template'
34
39
  end
35
40
  end
@@ -1,8 +1,8 @@
1
1
  class HankakuInputFilterController < FilterControllerBase
2
- hankaku_filter :input => true
2
+ hankaku_filter input: true
3
3
 
4
4
  def index_xhtml
5
- render "index_xhtml", :layout => "xhtml"
5
+ render "index_xhtml", layout: "xhtml"
6
6
  end
7
7
 
8
8
  def with_charset
@@ -1,6 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  class TransSidMetalController < ActionController::Metal
3
- include ActionController::RackDelegation
4
3
  include ActionController::UrlFor
5
4
  include ActionController::Redirecting
6
5
  include Rails.application.routes.url_helpers
@@ -1,6 +1,6 @@
1
1
  require 'rails_helper'
2
2
 
3
- describe MobileSpecController, :type => :controller do
3
+ describe MobileSpecController, type: :controller do
4
4
  render_views
5
5
 
6
6
  describe "GET 'index'" do
@@ -10,7 +10,7 @@ describe MobileSpecController, :type => :controller do
10
10
  get 'index'
11
11
 
12
12
  expect(response).to be_success
13
- expect(response).to render_template('index')
13
+ expect(response.body).to match(/RailsRoot PC/)
14
14
  expect(request.mobile?).to be_falsey
15
15
  end
16
16
  end
@@ -20,7 +20,7 @@ describe MobileSpecController, :type => :controller do
20
20
  request.user_agent = "DoCoMo/2.0 SH902i(c100;TB;W24H12)"
21
21
  get 'index'
22
22
  expect(response).to be_success
23
- expect(response).to render_template('index_mobile')
23
+ expect(response.body).to match(/RailsRoot mobile/)
24
24
  expect(request.mobile?).to be_truthy
25
25
  expect(request.mobile).to be_a(Jpmobile::Mobile::Docomo)
26
26
  end
@@ -1,10 +1,10 @@
1
1
  require 'rails_helper'
2
2
 
3
- describe TransSidAlwaysController, :type => :controller do
3
+ describe TransSidAlwaysController, type: :controller do
4
4
  describe "GET 'redirect_action'" do
5
5
  it "redirects 'form'" do
6
6
  get :redirect_action
7
- expect(response).to redirect_to(:action => 'form')
7
+ expect(response).to redirect_to(action: 'form')
8
8
  end
9
9
  end
10
10
  end
@@ -1,13 +1,14 @@
1
+ # -*- coding: utf-8 -*-
1
2
  require 'rails_helper'
2
3
 
3
- describe "jpmobile integration spec", :type => :feature do
4
+ describe "jpmobile integration spec", type: :feature do
4
5
  include Jpmobile::Util
5
6
 
6
7
  before do
7
8
  page.driver.header('User-Agent', user_agent)
8
9
  end
9
10
 
10
- shared_examples_for "hankaku_filter :input => true のとき" do
11
+ shared_examples_for "hankaku_filter input: true のとき" do
11
12
  it "はtextareaの中では半角に変換されないこと" do
12
13
  visit "/#{controller}/textarea"
13
14
  expect(page.body.encode('UTF-8')).to have_content('アブラカダブラ')
@@ -18,11 +19,11 @@ describe "jpmobile integration spec", :type => :feature do
18
19
  end
19
20
  it "は&nbsp;変換されない" do
20
21
  visit "/#{controller}/nbsp_char"
21
- expect(page.body.encode('UTF-8')).to have_content("アブラ\xc2\xa0カダブラ")
22
+ expect(page.body.encode('UTF-8')).to have_content('アブラ カダブラ')
22
23
  end
23
24
  end
24
25
 
25
- shared_examples_for "hankaku_filter :input => false のとき" do
26
+ shared_examples_for "hankaku_filter input: false のとき" do
26
27
  it "はtextareaの中でも半角に変換されること" do
27
28
  visit "/#{controller}/textarea"
28
29
  expect(page.body.encode('UTF-8')).to have_content('アブラカダブラ')
@@ -33,7 +34,7 @@ describe "jpmobile integration spec", :type => :feature do
33
34
  end
34
35
  it "は&nbsp;変換されない" do
35
36
  visit "/#{controller}/nbsp_char"
36
- expect(page.body.encode('UTF-8')).to have_content("アブラ\xc2\xa0カダブラ")
37
+ expect(page.body.encode('UTF-8')).to have_content('アブラ カダブラ')
37
38
  end
38
39
  end
39
40
 
@@ -188,7 +189,7 @@ describe "jpmobile integration spec", :type => :feature do
188
189
  }
189
190
 
190
191
  it_should_behave_like "Shift_JISで通信する端末との通信(半角変換付き)"
191
- it_should_behave_like "hankaku_filter :input => false のとき"
192
+ it_should_behave_like "hankaku_filter input: false のとき"
192
193
  end
193
194
 
194
195
  describe "SoftBank 910T からのアクセス" do
@@ -197,7 +198,7 @@ describe "jpmobile integration spec", :type => :feature do
197
198
  }
198
199
 
199
200
  it_should_behave_like "UTF-8で通信する端末との通信(半角変換付き)"
200
- it_should_behave_like "hankaku_filter :input => false のとき"
201
+ it_should_behave_like "hankaku_filter input: false のとき"
201
202
  end
202
203
  end
203
204
 
@@ -210,7 +211,7 @@ describe "jpmobile integration spec", :type => :feature do
210
211
  }
211
212
 
212
213
  it_should_behave_like "Shift_JISで通信する端末との通信(半角変換付き)"
213
- it_should_behave_like "hankaku_filter :input => true のとき"
214
+ it_should_behave_like "hankaku_filter input: true のとき"
214
215
 
215
216
  it "Content-Type が Shift_JIS であること" do
216
217
  visit "/#{controller }/with_charset"
@@ -224,7 +225,7 @@ describe "jpmobile integration spec", :type => :feature do
224
225
  end
225
226
 
226
227
  it_should_behave_like "UTF-8で通信する端末との通信(半角変換付き)"
227
- it_should_behave_like "hankaku_filter :input => true のとき"
228
+ it_should_behave_like "hankaku_filter input: true のとき"
228
229
 
229
230
  it "Content-Type が UTF-8 であること" do
230
231
  visit "/#{controller}/with_charset"
@@ -1,13 +1,15 @@
1
1
  require 'rails_helper'
2
2
 
3
- describe Jpmobile::Helpers, :type => :helper do
3
+ describe Jpmobile::Helpers, type: :helper do
4
4
  include Jpmobile::Helpers
5
+ include Rails.application.routes.url_helpers
6
+
5
7
  it "docomo_guid_link_to が guid=ON を付けたリンクを生成すること" do
6
- expect(docomo_guid_link_to("STRING", :controller => "filter", :action => "rawdata")).to eq(%{<a href="/filter/rawdata?guid=ON">STRING</a>})
8
+ expect(docomo_guid_link_to("STRING", host: 'jpmobile.info', controller: "filter", action: "rawdata")).to eq(%{<a href="http://jpmobile.info/filter/rawdata?guid=ON">STRING</a>})
7
9
  end
8
10
 
9
11
  it "softbank_location_link_to がリンク先にパラメータを含んでいても正常に動作すること" do
10
12
  # http://d.hatena.ne.jp/mizincogrammer/20090123/1232702067
11
- expect(softbank_location_link_to("STRING", :controller => "filter", :action => "rawdata", :p => "param")).to eq(%{<a href="location:auto?url=http://test.host/filter/rawdata&amp;p=param">STRING</a>})
13
+ expect(softbank_location_link_to("STRING", host: 'jpmobile.info', controller: "filter", action: "rawdata", p: "param")).to eq(%{<a href="location:auto?url=http://jpmobile.info/filter/rawdata&amp;p=param">STRING</a>})
12
14
  end
13
15
  end
@@ -1,30 +1,30 @@
1
1
  require 'rails_helper'
2
2
 
3
- describe "DoCoMo SH902i からのアクセス", :type => :request do
3
+ describe "DoCoMo SH902i からのアクセス", type: :request do
4
4
  it "request.mobile は Docomo のインスタンスであるべき" do
5
- get "/mobile_spec/index", {}, {"HTTP_USER_AGENT" => "DoCoMo/2.0 SH902i(c100;TB;W24H12)"}
5
+ get "/mobile_spec/index", params: {}, env: {"HTTP_USER_AGENT" => "DoCoMo/2.0 SH902i(c100;TB;W24H12)"}
6
6
 
7
7
  expect(request.mobile).to be_an_instance_of(Jpmobile::Mobile::Docomo)
8
8
  end
9
9
  it "request.mobile? は true であるべき" do
10
- get "/mobile_spec/index", {}, {"HTTP_USER_AGENT" => "DoCoMo/2.0 SH902i(c100;TB;W24H12)"}
10
+ get "/mobile_spec/index", params: {}, env: {"HTTP_USER_AGENT" => "DoCoMo/2.0 SH902i(c100;TB;W24H12)"}
11
11
 
12
12
  expect(request.mobile?).to be_truthy
13
13
  end
14
14
  end
15
15
 
16
- describe "DoCoMo SH902i からguid付きのアクセス", :type => :request do
16
+ describe "DoCoMo SH902i からguid付きのアクセス", type: :request do
17
17
  before(:each) do
18
18
  @headers = {"HTTP_USER_AGENT" => "DoCoMo/2.0 SH902i(c100;TB;W24H12)", 'HTTP_X_DCMGUID' => "000000a"}
19
19
  end
20
20
 
21
21
  it "guidを正しく取得できること" do
22
- get "/mobile_spec/index", {}, @headers
22
+ get "/mobile_spec/index", params: {}, env: @headers
23
23
 
24
24
  expect(request.mobile.guid).to eq("000000a")
25
25
  end
26
26
  it "ident_subscriberでも正しく取得できること" do
27
- get "/mobile_spec/index", {}, @headers
27
+ get "/mobile_spec/index", params: {}, env: @headers
28
28
 
29
29
  expect(request.mobile.ident_subscriber).to eq("000000a")
30
30
  end
@@ -10,22 +10,22 @@ describe "H11T モバイルブラウザからのアクセス" do
10
10
  end
11
11
 
12
12
  it "request.mobile は Emobile のインスタンスであること" do
13
- get "/mobile_spec/index", {}, @headers
13
+ get "/mobile_spec/index", params: {}, env: @headers
14
14
 
15
15
  expect(request.mobile).to be_an_instance_of(Jpmobile::Mobile::Emobile)
16
16
  end
17
17
  it "request.mobile? は true であること" do
18
- get "/mobile_spec/index", {}, @headers
18
+ get "/mobile_spec/index", params: {}, env: @headers
19
19
 
20
20
  expect(request.mobile?).to be_truthy
21
21
  end
22
22
  it "のsubscribe番号を取得できること" do
23
- get "/mobile_spec/index", {}, @headers
23
+ get "/mobile_spec/index", params: {}, env: @headers
24
24
 
25
25
  expect(request.mobile.ident_subscriber).to eq("u00000000000000000")
26
26
  end
27
27
  it "のIPアドレス空間を正しく検証できること" do
28
- get "/mobile_spec/index", {}, @headers
28
+ get "/mobile_spec/index", params: {}, env: @headers
29
29
 
30
30
  expect(request.mobile.valid_ip?).to be_truthy
31
31
  end
@@ -39,12 +39,12 @@ describe "S11HT からのアクセス" do
39
39
  end
40
40
 
41
41
  it "request.mobile は Emobile のインスタンスであること" do
42
- get "/mobile_spec/index", {}, @headers
42
+ get "/mobile_spec/index", params: {}, env: @headers
43
43
 
44
44
  expect(request.mobile).to be_an_instance_of(Jpmobile::Mobile::Emobile)
45
45
  end
46
46
  it "request.mobile? は true であること" do
47
- get "/mobile_spec/index", {}, @headers
47
+ get "/mobile_spec/index", params: {}, env: @headers
48
48
 
49
49
  expect(request.mobile?).to be_truthy
50
50
  end