jpmobile 4.1.5 → 4.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/jpmobile.gemspec +2 -1
- data/lib/jpmobile/hook_action_controller.rb +0 -19
- data/lib/jpmobile/mail.rb +2 -4
- data/lib/jpmobile/mailer.rb +1 -1
- data/lib/jpmobile/rack.rb +0 -24
- data/lib/jpmobile/resolver.rb +1 -2
- data/lib/jpmobile/util.rb +13 -3
- data/lib/jpmobile/version.rb +1 -1
- data/lib/tasks/jpmobile_tasks.rake +1 -1
- data/spec/rack/jpmobile/params_filter_spec.rb +18 -18
- data/spec/rack_helper.rb +0 -4
- data/spec/unit/email-fixtures/iphone-cp932.eml +13 -0
- data/spec/unit/email-fixtures/iphone-jis.eml +15 -0
- data/spec/unit/email_spec.rb +11 -2
- data/spec/unit/receive_mail_spec.rb +16 -0
- data/spec/unit/spec_helper.rb +0 -3
- data/spec/unit/util_spec.rb +9 -0
- data/test/rails/overrides/db/migrate/001_add_sessions_table.rb +3 -6
- data/test/rails/overrides/db/migrate/20100824062306_create_users.rb +2 -6
- data/test/rails/overrides/spec/mailers/decorated_mailer_spec.rb +1 -1
- data/test/rails/overrides/spec/mailers/mobile_mailer_spec.rb +32 -32
- data/test/rails/overrides/spec/mailers/normal_mailer_spec.rb +2 -2
- data/test/rails/overrides/spec/rails_helper.rb +9 -11
- data/test/rails/overrides/spec/requests/trans_sid_spec.rb +4 -4
- data/test/rails/overrides/spec/spec_helper.rb +33 -26
- metadata +25 -7
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: e3659619243b8dff1161041cd0ff72c112feebad
|
|
4
|
+
data.tar.gz: c866458af576914e147de23255a34f007a9e87a3
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: da4606fadb165fdfaaee693d00e25f4ba85131cbae645d03f7a3d560f05e21d8d1d1cf64f4752b369a48e4c48b815222d80fa6fa7edfc5cda1fd554e526f3ecb
|
|
7
|
+
data.tar.gz: 79c74f5121aa6d0948171a1847242b323efbb31deafed177d15e279c9e38a14caeb1e973962d2b17eb923cc9f638ee7cf0c72120658d19d4731953ce9df45667
|
data/jpmobile.gemspec
CHANGED
|
@@ -16,7 +16,7 @@ Gem::Specification.new do |gem|
|
|
|
16
16
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
|
17
17
|
gem.require_paths = ["lib"]
|
|
18
18
|
|
|
19
|
-
gem.add_development_dependency 'rails'
|
|
19
|
+
gem.add_development_dependency 'rails', '~> 4.2.0'
|
|
20
20
|
gem.add_development_dependency 'rspec'
|
|
21
21
|
gem.add_development_dependency 'rspec-rails'
|
|
22
22
|
gem.add_development_dependency 'rspec-its'
|
|
@@ -25,4 +25,5 @@ Gem::Specification.new do |gem|
|
|
|
25
25
|
gem.add_development_dependency 'sqlite3-ruby'
|
|
26
26
|
gem.add_development_dependency 'hpricot'
|
|
27
27
|
gem.add_development_dependency 'git'
|
|
28
|
+
gem.add_development_dependency 'pry'
|
|
28
29
|
end
|
|
@@ -1,25 +1,6 @@
|
|
|
1
1
|
# -*- coding: utf-8 -*-
|
|
2
2
|
require 'jpmobile/lookup_context'
|
|
3
3
|
|
|
4
|
-
module ActionController
|
|
5
|
-
class Base
|
|
6
|
-
include Jpmobile::Helpers
|
|
7
|
-
|
|
8
|
-
if Object.const_defined?(:GetText)
|
|
9
|
-
before_action :gettext_force_ja_for_mobile
|
|
10
|
-
# gettextが組み込まれている場合、携帯電話からのアクセスをjaロケールに強制する。
|
|
11
|
-
def gettext_force_ja_for_mobile
|
|
12
|
-
if request.mobile?
|
|
13
|
-
begin
|
|
14
|
-
::GetText.locale = 'ja'
|
|
15
|
-
rescue NameError
|
|
16
|
-
end
|
|
17
|
-
end
|
|
18
|
-
end
|
|
19
|
-
end
|
|
20
|
-
end
|
|
21
|
-
end
|
|
22
|
-
|
|
23
4
|
module ActionController
|
|
24
5
|
module Renderers
|
|
25
6
|
def render_to_body_with_jpmobile(options)
|
data/lib/jpmobile/mail.rb
CHANGED
|
@@ -241,10 +241,8 @@ module Mail
|
|
|
241
241
|
|
|
242
242
|
# override charset
|
|
243
243
|
if self.header[:content_type]
|
|
244
|
-
|
|
245
|
-
@charset
|
|
246
|
-
unless content_type_charset.blank?
|
|
247
|
-
self.header[:content_type].parameters[:charset] = @charset
|
|
244
|
+
@charset = header[:content_type].parameters[:charset] || ''
|
|
245
|
+
unless @charset.blank?
|
|
248
246
|
@mobile_main_type = self.header[:content_type].main_type
|
|
249
247
|
end
|
|
250
248
|
end
|
data/lib/jpmobile/mailer.rb
CHANGED
data/lib/jpmobile/rack.rb
CHANGED
|
@@ -12,27 +12,3 @@ module Jpmobile
|
|
|
12
12
|
end
|
|
13
13
|
end
|
|
14
14
|
end
|
|
15
|
-
|
|
16
|
-
module Rack
|
|
17
|
-
class Request
|
|
18
|
-
def params
|
|
19
|
-
self.GET.merge(self.POST)
|
|
20
|
-
end
|
|
21
|
-
end
|
|
22
|
-
|
|
23
|
-
# UTF-8 で match させるようにする
|
|
24
|
-
module Utils
|
|
25
|
-
def escape(s)
|
|
26
|
-
s.to_s.gsub(/([^ a-zA-Z0-9_.-]+)/) {
|
|
27
|
-
'%'+$1.unpack('H2'*bytesize($1)).join('%').upcase
|
|
28
|
-
}.tr(' ', '+')
|
|
29
|
-
end
|
|
30
|
-
module_function :escape
|
|
31
|
-
def unescape(s)
|
|
32
|
-
s.tr('+', ' ').gsub(/((?:%[0-9a-fA-F]{2})+)/){
|
|
33
|
-
[$1.delete('%')].pack('H*')
|
|
34
|
-
}
|
|
35
|
-
end
|
|
36
|
-
module_function :unescape
|
|
37
|
-
end
|
|
38
|
-
end
|
data/lib/jpmobile/resolver.rb
CHANGED
|
@@ -11,12 +11,11 @@ module Jpmobile
|
|
|
11
11
|
|
|
12
12
|
private
|
|
13
13
|
|
|
14
|
-
def query(path, details, formats
|
|
14
|
+
def query(path, details, formats)
|
|
15
15
|
query = build_query(path, details)
|
|
16
16
|
|
|
17
17
|
begin
|
|
18
18
|
template_paths = find_template_paths query
|
|
19
|
-
template_paths = reject_files_external_to_app(template_paths) unless outside_app_allowed
|
|
20
19
|
rescue NoMethodError
|
|
21
20
|
self.class_eval do
|
|
22
21
|
def find_template_paths(query)
|
data/lib/jpmobile/util.rb
CHANGED
|
@@ -349,15 +349,25 @@ module Jpmobile
|
|
|
349
349
|
|
|
350
350
|
def check_charset(str, charset)
|
|
351
351
|
# use NKF.guess
|
|
352
|
-
::Encoding.compatible?(
|
|
352
|
+
::Encoding.compatible?(guess_encoding(str), ::Encoding.find(charset))
|
|
353
353
|
end
|
|
354
354
|
|
|
355
355
|
def correct_encoding(str)
|
|
356
|
-
if
|
|
357
|
-
str.force_encoding(
|
|
356
|
+
if guess_encoding(str) != str.encoding
|
|
357
|
+
str.force_encoding(guess_encoding(str))
|
|
358
358
|
end
|
|
359
359
|
|
|
360
360
|
str
|
|
361
361
|
end
|
|
362
|
+
|
|
363
|
+
def guess_encoding(str)
|
|
364
|
+
encoding = NKF.guess(str)
|
|
365
|
+
# ISO-2022-JPにおいて、JIS X201半角カナエスケープシーケンスが含まれていたらCP50220とみなす
|
|
366
|
+
if encoding == ::Encoding::ISO2022_JP && str.dup.force_encoding(BINARY).include?("\e(I")
|
|
367
|
+
::Encoding::CP50220
|
|
368
|
+
else
|
|
369
|
+
encoding
|
|
370
|
+
end
|
|
371
|
+
end
|
|
362
372
|
end
|
|
363
373
|
end
|
data/lib/jpmobile/version.rb
CHANGED
|
@@ -41,11 +41,11 @@ describe Jpmobile::Rack::ParamsFilter do
|
|
|
41
41
|
req = Rack::Request.new(res[1])
|
|
42
42
|
expect(req.params.size).to eq(4)
|
|
43
43
|
|
|
44
|
-
expect(req.params[
|
|
45
|
-
expect(req.params[
|
|
44
|
+
expect(req.params[@query_params.keys.first.dup]).to eq(@query_params[@query_params.keys.first])
|
|
45
|
+
expect(req.params[@query_params.keys.last.dup]).to eq(@query_params[@query_params.keys.last])
|
|
46
46
|
|
|
47
|
-
expect(req.params[
|
|
48
|
-
expect(req.params[
|
|
47
|
+
expect(req.params[@form_params.keys.first.dup]).to eq(@form_params[@form_params.keys.first])
|
|
48
|
+
expect(req.params[@form_params.keys.last.dup]).to eq(@form_params[@form_params.keys.last])
|
|
49
49
|
end
|
|
50
50
|
end
|
|
51
51
|
|
|
@@ -62,11 +62,11 @@ describe Jpmobile::Rack::ParamsFilter do
|
|
|
62
62
|
req = Rack::Request.new(res[1])
|
|
63
63
|
expect(req.params.size).to eq(4)
|
|
64
64
|
|
|
65
|
-
expect(req.params[
|
|
66
|
-
expect(req.params[
|
|
65
|
+
expect(req.params[@query_params.keys.first.dup]).to eq(@query_params[@query_params.keys.first])
|
|
66
|
+
expect(req.params[@query_params.keys.last.dup]).to eq(@query_params[@query_params.keys.last])
|
|
67
67
|
|
|
68
|
-
expect(req.params[
|
|
69
|
-
expect(req.params[
|
|
68
|
+
expect(req.params[@form_params.keys.first.dup]).to eq(@form_params[@form_params.keys.first])
|
|
69
|
+
expect(req.params[@form_params.keys.last.dup]).to eq(@form_params[@form_params.keys.last])
|
|
70
70
|
end
|
|
71
71
|
end
|
|
72
72
|
end
|
|
@@ -94,11 +94,11 @@ describe Jpmobile::Rack::ParamsFilter do
|
|
|
94
94
|
req = Rack::Request.new(res[1])
|
|
95
95
|
expect(req.params.size).to eq(4)
|
|
96
96
|
|
|
97
|
-
expect(req.params[
|
|
98
|
-
expect(req.params[
|
|
97
|
+
expect(req.params[@query_params.keys.first.dup]).to eq(@query_params[@query_params.keys.first])
|
|
98
|
+
expect(req.params[@query_params.keys.last.dup]).to eq(@query_params[@query_params.keys.last])
|
|
99
99
|
|
|
100
|
-
expect(req.params[
|
|
101
|
-
expect(req.params[
|
|
100
|
+
expect(req.params[@form_params.keys.first.dup]).to eq(@form_params[@form_params.keys.first])
|
|
101
|
+
expect(req.params[@form_params.keys.last.dup]).to eq(@form_params[@form_params.keys.last])
|
|
102
102
|
end
|
|
103
103
|
end
|
|
104
104
|
end
|
|
@@ -121,8 +121,8 @@ describe Jpmobile::Rack::ParamsFilter do
|
|
|
121
121
|
req = Rack::Request.new(res[1])
|
|
122
122
|
expect(req.params.size).to eq(2)
|
|
123
123
|
|
|
124
|
-
expect(req.params["hoge"]).to eq(
|
|
125
|
-
expect(req.params["foo"]).to eq(
|
|
124
|
+
expect(req.params["hoge"]).to eq("\356\230\276")
|
|
125
|
+
expect(req.params["foo"]).to eq("\356\231\200")
|
|
126
126
|
end
|
|
127
127
|
end
|
|
128
128
|
|
|
@@ -142,8 +142,8 @@ describe Jpmobile::Rack::ParamsFilter do
|
|
|
142
142
|
req = Rack::Request.new(res[1])
|
|
143
143
|
expect(req.params.size).to eq(2)
|
|
144
144
|
|
|
145
|
-
expect(req.params["hoge"]).to eq(
|
|
146
|
-
expect(req.params["foo"]).to eq(
|
|
145
|
+
expect(req.params["hoge"]).to eq("\356\222\201")
|
|
146
|
+
expect(req.params["foo"]).to eq("\356\224\242")
|
|
147
147
|
end
|
|
148
148
|
end
|
|
149
149
|
|
|
@@ -163,8 +163,8 @@ describe Jpmobile::Rack::ParamsFilter do
|
|
|
163
163
|
req = Rack::Request.new(res[1])
|
|
164
164
|
expect(req.params.size).to eq(2)
|
|
165
165
|
|
|
166
|
-
expect(req.params["hoge"]).to eq(
|
|
167
|
-
expect(req.params["foo"]).to eq(
|
|
166
|
+
expect(req.params["hoge"]).to eq("\xef\x80\x81")
|
|
167
|
+
expect(req.params["foo"]).to eq("\xef\x88\x9c")
|
|
168
168
|
end
|
|
169
169
|
end
|
|
170
170
|
end
|
data/spec/rack_helper.rb
CHANGED
|
@@ -5,7 +5,6 @@ require 'rspec'
|
|
|
5
5
|
require 'jpmobile'
|
|
6
6
|
require 'jpmobile/rack'
|
|
7
7
|
require 'nkf'
|
|
8
|
-
require 'pp' # for debug
|
|
9
8
|
|
|
10
9
|
begin
|
|
11
10
|
require File.dirname(__FILE__)+'/../vendor/jpmobile-ipaddresses/lib/jpmobile-ipaddresses'
|
|
@@ -22,9 +21,6 @@ RSpec.configure do |config|
|
|
|
22
21
|
config.filter_run :focus => true
|
|
23
22
|
config.run_all_when_everything_filtered = true
|
|
24
23
|
config.color = true
|
|
25
|
-
config.expect_with :rspec do |c|
|
|
26
|
-
c.syntax = [:should, :expect]
|
|
27
|
-
end
|
|
28
24
|
end
|
|
29
25
|
|
|
30
26
|
class UnitApplication
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
Delivered-To: info@jpmobile.jp
|
|
2
|
+
Content-Transfer-Encoding: base64
|
|
3
|
+
Content-Type: text/plain;
|
|
4
|
+
charset=cp932
|
|
5
|
+
From: "cp932@ezweb.ne.jp" <cp932@ezweb.ne.jp>
|
|
6
|
+
Mime-Version: 1.0 (1.0)
|
|
7
|
+
Subject: =?iso-2022-jp?B?UmU6IBskQiFaGyhCTktTQxskQiFbGyhCdGVzdA==?=
|
|
8
|
+
Message-Id: <3E458B9D-9044-46FE-8A8D-000000000000@ezweb.ne.jp>
|
|
9
|
+
Date: Wed, 10 Dec 2014 17:01:30 +0900
|
|
10
|
+
To: "info@jpmobile.jp" <info@jpmobile.jp>
|
|
11
|
+
X-Mailer: iPhone Mail (12A405)
|
|
12
|
+
|
|
13
|
+
g2WDWINngsWCt4FCh4o=
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
Delivered-To: info@jpmobile.jp
|
|
2
|
+
From: "jis@i.softbank.jp" <jis@i.softbank.jp>
|
|
3
|
+
Content-Type: text/plain;
|
|
4
|
+
charset=iso-2022-jp
|
|
5
|
+
X-Mailer: iPhone Mail (12B435)
|
|
6
|
+
Message-Id: <F574F824-7263-44E6-8423-000000000000@i.softbank.jp>
|
|
7
|
+
Date: Fri, 5 Dec 2014 13:14:37 +0900
|
|
8
|
+
To: "info@jpmobile.jp" <info@jpmobile.jp>
|
|
9
|
+
Content-Transfer-Encoding: 7bit
|
|
10
|
+
Mime-Version: 1.0 (1.0)
|
|
11
|
+
X-SB-Service: Virus-Checked
|
|
12
|
+
|
|
13
|
+
(=(I_$B&X(I_(B)(II(B
|
|
14
|
+
|
|
15
|
+
|
data/spec/unit/email_spec.rb
CHANGED
|
@@ -55,9 +55,18 @@ describe 'Jpmobile::Email' do
|
|
|
55
55
|
end
|
|
56
56
|
|
|
57
57
|
describe "japanese_mail_address_regexp" do
|
|
58
|
-
|
|
59
|
-
Jpmobile::Email.japanese_mail_address_regexp = Regexp.new(/\.jp[^a-zA-Z\.\-]/)
|
|
58
|
+
before do
|
|
59
|
+
Jpmobile::Email.japanese_mail_address_regexp = Regexp.new(/\.jp(?:[^a-zA-Z\.\-]|$)/)
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
it "#detect_from_mail_header should return Jpmobile::Mobile::AbstractMobile when the header contains .jp address" do
|
|
60
63
|
expect(Jpmobile::Email.detect_from_mail_header('From: Hoge Fuga <fuga@hoge.jp>')).to eq(Jpmobile::Mobile::AbstractMobile)
|
|
64
|
+
expect(Jpmobile::Email.detect_from_mail_header('From: fuga@hoge.jp')).to eq(Jpmobile::Mobile::AbstractMobile)
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
it "#detect_from_mail_header should return nil when the header does not contain .jp address" do
|
|
68
|
+
expect(Jpmobile::Email.detect_from_mail_header('From: Hoge Fuga <fuga@example.com>')).to eq(nil)
|
|
69
|
+
expect(Jpmobile::Email.detect_from_mail_header('From: fuga@example.com')).to eq(nil)
|
|
61
70
|
end
|
|
62
71
|
end
|
|
63
72
|
|
|
@@ -275,6 +275,12 @@ describe "Jpmobile::Mail#receive" do
|
|
|
275
275
|
@mail = Mail.new(open(File.join(File.expand_path(File.dirname(__FILE__)), "email-fixtures/iphone-message.eml")).read)
|
|
276
276
|
expect(@mail.encoded).to match(Regexp.escape("%[\e$B1`;yL>\e(B]%\e$B$N\e(B%[\e$BJ]8n<TL>\e(B]%"))
|
|
277
277
|
end
|
|
278
|
+
|
|
279
|
+
it 'should decode cp932-encoded mail correctly' do
|
|
280
|
+
@mail = Mail.new(open(File.join(File.expand_path(File.dirname(__FILE__)), "email-fixtures/iphone-cp932.eml")).read)
|
|
281
|
+
expect(@mail.subject).to eq 'Re: 【NKSC】test'
|
|
282
|
+
expect(@mail.body.to_s).to eq 'テストです。㈱'
|
|
283
|
+
end
|
|
278
284
|
end
|
|
279
285
|
|
|
280
286
|
context 'From iPad' do
|
|
@@ -362,6 +368,16 @@ describe "Jpmobile::Mail#receive" do
|
|
|
362
368
|
expect(@mail.body.to_s).to eq("テスト本文\n\n")
|
|
363
369
|
end
|
|
364
370
|
end
|
|
371
|
+
|
|
372
|
+
context "iPhone" do
|
|
373
|
+
before(:each) do
|
|
374
|
+
@mail = Mail.new(open(File.join(File.expand_path(File.dirname(__FILE__)), "email-fixtures/iphone-jis.eml")).read)
|
|
375
|
+
end
|
|
376
|
+
|
|
377
|
+
it "body should be parsed correctly" do
|
|
378
|
+
expect(@mail.body.to_s).to eq("(=゚ω゚)ノ\n\n\n")
|
|
379
|
+
end
|
|
380
|
+
end
|
|
365
381
|
end
|
|
366
382
|
|
|
367
383
|
describe 'bounced mail' do
|
data/spec/unit/spec_helper.rb
CHANGED
|
@@ -19,8 +19,5 @@ RSpec.configure do |config|
|
|
|
19
19
|
config.run_all_when_everything_filtered = true
|
|
20
20
|
config.color = true
|
|
21
21
|
config.filter_run_excluding :broken => true
|
|
22
|
-
config.expect_with :rspec do |c|
|
|
23
|
-
c.syntax = [:should, :expect]
|
|
24
|
-
end
|
|
25
22
|
# config.full_backtrace = true
|
|
26
23
|
end
|
data/spec/unit/util_spec.rb
CHANGED
|
@@ -151,4 +151,13 @@ describe Jpmobile::Util do
|
|
|
151
151
|
expect(correct_encoding(str).encoding).to eq(Encoding::UTF_8)
|
|
152
152
|
end
|
|
153
153
|
end
|
|
154
|
+
|
|
155
|
+
describe 'guess_encoding' do
|
|
156
|
+
it 'guesses encoding correclty' do
|
|
157
|
+
expect(guess_encoding('テスト')).to eq Encoding::UTF_8
|
|
158
|
+
expect(guess_encoding("\x83\x65\x83\x58\x83\x67")).to eq Encoding::Shift_JIS
|
|
159
|
+
expect(guess_encoding("\e\x24\x42\x25\x46\x25\x39\x25\x48\e\x28\x42")).to eq Encoding::ISO2022_JP
|
|
160
|
+
expect(guess_encoding("\e\x28\x49\x43\x3D\x44\e\x28\x42")).to eq Encoding::CP50220
|
|
161
|
+
end
|
|
162
|
+
end
|
|
154
163
|
end
|
|
@@ -1,16 +1,13 @@
|
|
|
1
1
|
class AddSessionsTable < ActiveRecord::Migration
|
|
2
|
-
def
|
|
2
|
+
def change
|
|
3
3
|
create_table :sessions do |t|
|
|
4
4
|
t.string :session_id, :null => false
|
|
5
5
|
t.text :data
|
|
6
|
-
|
|
6
|
+
|
|
7
|
+
t.timestamps null: false
|
|
7
8
|
end
|
|
8
9
|
|
|
9
10
|
add_index :sessions, :session_id
|
|
10
11
|
add_index :sessions, :updated_at
|
|
11
12
|
end
|
|
12
|
-
|
|
13
|
-
def self.down
|
|
14
|
-
drop_table :sessions
|
|
15
|
-
end
|
|
16
13
|
end
|
|
@@ -9,7 +9,7 @@ describe DecoratedMailer, :type => :mailer do
|
|
|
9
9
|
|
|
10
10
|
shared_examples_for "content-type" do
|
|
11
11
|
it "sends decorated mail successfully" do
|
|
12
|
-
DecoratedMailer.deco_mail(@to).
|
|
12
|
+
DecoratedMailer.deco_mail(@to).deliver_now
|
|
13
13
|
|
|
14
14
|
email = ActionMailer::Base.deliveries.first
|
|
15
15
|
expect(email.header['Content-Type'].main_type).to eq('multipart')
|
|
@@ -15,14 +15,14 @@ describe MobileMailer, :type => :mailer do
|
|
|
15
15
|
|
|
16
16
|
shared_examples_for "PC宛メール" do
|
|
17
17
|
it "正常に送信できること" do
|
|
18
|
-
email = MobileMailer.view_selection(@to, "題名", "本文").
|
|
18
|
+
email = MobileMailer.view_selection(@to, "題名", "本文").deliver_now
|
|
19
19
|
|
|
20
20
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
21
21
|
expect(email.to.include?(@to)).to be_truthy
|
|
22
22
|
end
|
|
23
23
|
|
|
24
24
|
it "ISO-2022-JPに変換されること" do
|
|
25
|
-
email = MobileMailer.view_selection(@to, "題名", "本文").
|
|
25
|
+
email = MobileMailer.view_selection(@to, "題名", "本文").deliver_now
|
|
26
26
|
|
|
27
27
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
28
28
|
|
|
@@ -33,7 +33,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
33
33
|
end
|
|
34
34
|
|
|
35
35
|
it "絵文字がゲタ(〓)に変換されること" do
|
|
36
|
-
email = MobileMailer.view_selection(@to, "題名", "本文".html_safe).
|
|
36
|
+
email = MobileMailer.view_selection(@to, "題名", "本文".html_safe).deliver_now
|
|
37
37
|
|
|
38
38
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
39
39
|
|
|
@@ -44,7 +44,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
44
44
|
|
|
45
45
|
it "quoted-printableではないときに勝手に変換されないこと" do
|
|
46
46
|
email = MobileMailer.view_selection(@to, "題名",
|
|
47
|
-
"本文です\nhttp://test.rails/foo/bar/index?d=430d0d1cea109cdb384ec5554b890e3940f293c7&e=ZVG%0FE%16%5E%07%04%21P%5CZ%06%00%0D%1D%40L").
|
|
47
|
+
"本文です\nhttp://test.rails/foo/bar/index?d=430d0d1cea109cdb384ec5554b890e3940f293c7&e=ZVG%0FE%16%5E%07%04%21P%5CZ%06%00%0D%1D%40L").deliver_now
|
|
48
48
|
|
|
49
49
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
50
50
|
|
|
@@ -54,7 +54,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
54
54
|
|
|
55
55
|
context ":toの指定が" do
|
|
56
56
|
it "ない場合でも正常に送信できること" do
|
|
57
|
-
email = MobileMailer.default_to_mail('題名', '本文').
|
|
57
|
+
email = MobileMailer.default_to_mail('題名', '本文').deliver_now
|
|
58
58
|
|
|
59
59
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
60
60
|
end
|
|
@@ -69,7 +69,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
69
69
|
it_behaves_like "PC宛メール"
|
|
70
70
|
|
|
71
71
|
it "複数に配信するときもISO-2022-JPに変換されること" do
|
|
72
|
-
email = MobileMailer.view_selection(@to, "題名", "本文").
|
|
72
|
+
email = MobileMailer.view_selection(@to, "題名", "本文").deliver_now
|
|
73
73
|
|
|
74
74
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
75
75
|
|
|
@@ -87,7 +87,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
87
87
|
end
|
|
88
88
|
|
|
89
89
|
it "subject/body が Shift-JIS になること" do
|
|
90
|
-
email = MobileMailer.view_selection(@to, @subject, @text).
|
|
90
|
+
email = MobileMailer.view_selection(@to, @subject, @text).deliver_now
|
|
91
91
|
|
|
92
92
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
93
93
|
|
|
@@ -102,7 +102,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
102
102
|
emoji_subject = @subject + ""
|
|
103
103
|
emoji_text = @text + ""
|
|
104
104
|
|
|
105
|
-
email = MobileMailer.view_selection(@to, emoji_subject, emoji_text.html_safe).
|
|
105
|
+
email = MobileMailer.view_selection(@to, emoji_subject, emoji_text.html_safe).deliver_now
|
|
106
106
|
|
|
107
107
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
108
108
|
|
|
@@ -116,7 +116,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
116
116
|
half_kana_subject = @subject + "ゲーム"
|
|
117
117
|
half_kana_text = @text + "ブック"
|
|
118
118
|
|
|
119
|
-
email = MobileMailer.view_selection(@to, half_kana_subject, half_kana_text).
|
|
119
|
+
email = MobileMailer.view_selection(@to, half_kana_subject, half_kana_text).deliver_now
|
|
120
120
|
|
|
121
121
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
122
122
|
|
|
@@ -128,7 +128,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
128
128
|
|
|
129
129
|
it "quoted-printable ではないときに勝手に変換されないこと" do
|
|
130
130
|
email = MobileMailer.view_selection(@to, "題名",
|
|
131
|
-
"本文です\nhttp://test.rails/foo/bar/index?d=430d0d1cea109cdb384ec5554b890e3940f293c7&e=ZVG%0FE%16%5E%07%04%21P%5CZ%06%00%0D%1D%40L").
|
|
131
|
+
"本文です\nhttp://test.rails/foo/bar/index?d=430d0d1cea109cdb384ec5554b890e3940f293c7&e=ZVG%0FE%16%5E%07%04%21P%5CZ%06%00%0D%1D%40L").deliver_now
|
|
132
132
|
|
|
133
133
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
134
134
|
|
|
@@ -143,7 +143,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
143
143
|
end
|
|
144
144
|
|
|
145
145
|
it "subject/body がISO-2022-JPになること" do
|
|
146
|
-
email = MobileMailer.view_selection(@to, @subject, @text).
|
|
146
|
+
email = MobileMailer.view_selection(@to, @subject, @text).deliver_now
|
|
147
147
|
|
|
148
148
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
149
149
|
|
|
@@ -157,7 +157,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
157
157
|
emoji_subject = @subject + ""
|
|
158
158
|
emoji_text = @text + ""
|
|
159
159
|
|
|
160
|
-
email = MobileMailer.view_selection(@to, emoji_subject, emoji_text.html_safe).
|
|
160
|
+
email = MobileMailer.view_selection(@to, emoji_subject, emoji_text.html_safe).deliver_now
|
|
161
161
|
|
|
162
162
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
163
163
|
|
|
@@ -169,7 +169,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
169
169
|
|
|
170
170
|
it "quoted-printable ではないときに勝手に変換されないこと" do
|
|
171
171
|
email = MobileMailer.view_selection(@to, "題名",
|
|
172
|
-
"本文です\nhttp://test.rails/foo/bar/index?d=430d0d1cea109cdb384ec5554b890e3940f293c7&e=ZVG%0FE%16%5E%07%04%21P%5CZ%06%00%0D%1D%40L").
|
|
172
|
+
"本文です\nhttp://test.rails/foo/bar/index?d=430d0d1cea109cdb384ec5554b890e3940f293c7&e=ZVG%0FE%16%5E%07%04%21P%5CZ%06%00%0D%1D%40L").deliver_now
|
|
173
173
|
|
|
174
174
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
175
175
|
|
|
@@ -184,7 +184,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
184
184
|
end
|
|
185
185
|
|
|
186
186
|
it "subject/body が Shift_JIS になること" do
|
|
187
|
-
email = MobileMailer.view_selection(@to, @subject, @text).
|
|
187
|
+
email = MobileMailer.view_selection(@to, @subject, @text).deliver_now
|
|
188
188
|
|
|
189
189
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
190
190
|
|
|
@@ -199,7 +199,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
199
199
|
emoji_subject = @subject + ""
|
|
200
200
|
emoji_text = @text + ""
|
|
201
201
|
|
|
202
|
-
email = MobileMailer.view_selection(@to, emoji_subject, emoji_text.html_safe).
|
|
202
|
+
email = MobileMailer.view_selection(@to, emoji_subject, emoji_text.html_safe).deliver_now
|
|
203
203
|
|
|
204
204
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
205
205
|
|
|
@@ -211,7 +211,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
211
211
|
|
|
212
212
|
it "quoted-printable ではないときに勝手に変換されないこと" do
|
|
213
213
|
email = MobileMailer.view_selection(@to, "題名",
|
|
214
|
-
"本文です\nhttp://test.rails/foo/bar/index?d=430d0d1cea109cdb384ec5554b890e3940f293c7&e=ZVG%0FE%16%5E%07%04%21P%5CZ%06%00%0D%1D%40L").
|
|
214
|
+
"本文です\nhttp://test.rails/foo/bar/index?d=430d0d1cea109cdb384ec5554b890e3940f293c7&e=ZVG%0FE%16%5E%07%04%21P%5CZ%06%00%0D%1D%40L").deliver_now
|
|
215
215
|
|
|
216
216
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
217
217
|
|
|
@@ -226,7 +226,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
226
226
|
end
|
|
227
227
|
|
|
228
228
|
it "subject/body が Shift_JIS になること" do
|
|
229
|
-
email = MobileMailer.view_selection(@to, @subject, @text).
|
|
229
|
+
email = MobileMailer.view_selection(@to, @subject, @text).deliver_now
|
|
230
230
|
|
|
231
231
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
232
232
|
|
|
@@ -241,7 +241,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
241
241
|
emoji_subject = @subject + ""
|
|
242
242
|
emoji_text = @text + ""
|
|
243
243
|
|
|
244
|
-
email = MobileMailer.view_selection(@to, emoji_subject, emoji_text.html_safe).
|
|
244
|
+
email = MobileMailer.view_selection(@to, emoji_subject, emoji_text.html_safe).deliver_now
|
|
245
245
|
|
|
246
246
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
247
247
|
|
|
@@ -253,7 +253,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
253
253
|
|
|
254
254
|
it "quoted-printable ではないときに勝手に変換されないこと" do
|
|
255
255
|
email = MobileMailer.view_selection(@to, "題名",
|
|
256
|
-
"本文です\nhttp://test.rails/foo/bar/index?d=430d0d1cea109cdb384ec5554b890e3940f293c7&e=ZVG%0FE%16%5E%07%04%21P%5CZ%06%00%0D%1D%40L").
|
|
256
|
+
"本文です\nhttp://test.rails/foo/bar/index?d=430d0d1cea109cdb384ec5554b890e3940f293c7&e=ZVG%0FE%16%5E%07%04%21P%5CZ%06%00%0D%1D%40L").deliver_now
|
|
257
257
|
|
|
258
258
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
259
259
|
|
|
@@ -293,7 +293,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
293
293
|
end
|
|
294
294
|
|
|
295
295
|
it "漢字コードが変換されること" do
|
|
296
|
-
email = MobileMailer.multi_message(@to, @subject, @text, @html).
|
|
296
|
+
email = MobileMailer.multi_message(@to, @subject, @text, @html).deliver_now
|
|
297
297
|
|
|
298
298
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
299
299
|
|
|
@@ -311,7 +311,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
311
311
|
end
|
|
312
312
|
|
|
313
313
|
it "漢字コードが変換されること" do
|
|
314
|
-
email = MobileMailer.multi_message(@to, @subject, @text, @html).
|
|
314
|
+
email = MobileMailer.multi_message(@to, @subject, @text, @html).deliver_now
|
|
315
315
|
|
|
316
316
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
317
317
|
|
|
@@ -325,7 +325,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
325
325
|
it "絵文字が変換されること" do
|
|
326
326
|
@text += ""
|
|
327
327
|
@html += ""
|
|
328
|
-
email = MobileMailer.multi_message(@to, @subject, @text, @html).
|
|
328
|
+
email = MobileMailer.multi_message(@to, @subject, @text, @html).deliver_now
|
|
329
329
|
|
|
330
330
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
331
331
|
|
|
@@ -343,7 +343,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
343
343
|
end
|
|
344
344
|
|
|
345
345
|
it "漢字コードが変換されること" do
|
|
346
|
-
email = MobileMailer.multi_message(@to, @subject, @text, @html).
|
|
346
|
+
email = MobileMailer.multi_message(@to, @subject, @text, @html).deliver_now
|
|
347
347
|
|
|
348
348
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
349
349
|
|
|
@@ -357,7 +357,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
357
357
|
it "絵文字が変換されること" do
|
|
358
358
|
@text += ""
|
|
359
359
|
@html += ""
|
|
360
|
-
email = MobileMailer.multi_message(@to, @subject, @text, @html).
|
|
360
|
+
email = MobileMailer.multi_message(@to, @subject, @text, @html).deliver_now
|
|
361
361
|
|
|
362
362
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
363
363
|
|
|
@@ -375,7 +375,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
375
375
|
end
|
|
376
376
|
|
|
377
377
|
it "漢字コードが変換されること" do
|
|
378
|
-
email = MobileMailer.multi_message(@to, @subject, @text, @html).
|
|
378
|
+
email = MobileMailer.multi_message(@to, @subject, @text, @html).deliver_now
|
|
379
379
|
|
|
380
380
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
381
381
|
|
|
@@ -389,7 +389,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
389
389
|
it "絵文字が変換されること" do
|
|
390
390
|
@text += ""
|
|
391
391
|
@html += ""
|
|
392
|
-
email = MobileMailer.multi_message(@to, @subject, @text, @html).
|
|
392
|
+
email = MobileMailer.multi_message(@to, @subject, @text, @html).deliver_now
|
|
393
393
|
|
|
394
394
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
395
395
|
|
|
@@ -407,7 +407,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
407
407
|
end
|
|
408
408
|
|
|
409
409
|
it "漢字コードが変換されること" do
|
|
410
|
-
email = MobileMailer.multi_message(@to, @subject, @text, @html).
|
|
410
|
+
email = MobileMailer.multi_message(@to, @subject, @text, @html).deliver_now
|
|
411
411
|
|
|
412
412
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
413
413
|
|
|
@@ -421,7 +421,7 @@ describe MobileMailer, :type => :mailer do
|
|
|
421
421
|
it "絵文字が変換されること" do
|
|
422
422
|
@text += ""
|
|
423
423
|
@html += ""
|
|
424
|
-
email = MobileMailer.multi_message(@to, @subject, @text, @html).
|
|
424
|
+
email = MobileMailer.multi_message(@to, @subject, @text, @html).deliver_now
|
|
425
425
|
|
|
426
426
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
427
427
|
|
|
@@ -445,7 +445,7 @@ describe MobileMailer, " mail address", :type => :mailer do
|
|
|
445
445
|
|
|
446
446
|
it "ピリオドが3つ以上連続するアドレスが有効になること" do
|
|
447
447
|
to = "ruby...rails@domomo-ezweb.ne.jp"
|
|
448
|
-
MobileMailer.view_selection(to, @subject, @text).
|
|
448
|
+
MobileMailer.view_selection(to, @subject, @text).deliver_now
|
|
449
449
|
|
|
450
450
|
emails = ActionMailer::Base.deliveries
|
|
451
451
|
expect(emails.size).to eq(1)
|
|
@@ -455,7 +455,7 @@ describe MobileMailer, " mail address", :type => :mailer do
|
|
|
455
455
|
|
|
456
456
|
it "@マークの直前にピリオドあるアドレスが有効になること" do
|
|
457
457
|
to = "ruby.rails.@domomo-ezweb.ne.jp"
|
|
458
|
-
MobileMailer.view_selection(to, @subject, @text).
|
|
458
|
+
MobileMailer.view_selection(to, @subject, @text).deliver_now
|
|
459
459
|
|
|
460
460
|
emails = ActionMailer::Base.deliveries
|
|
461
461
|
expect(emails.size).to eq(1)
|
|
@@ -465,7 +465,7 @@ describe MobileMailer, " mail address", :type => :mailer do
|
|
|
465
465
|
|
|
466
466
|
it "ピリオドから始まるアドレスが有効になること" do
|
|
467
467
|
to = ".ruby.rails.@domomo-ezweb.ne.jp"
|
|
468
|
-
MobileMailer.view_selection(to, @subject, @text).
|
|
468
|
+
MobileMailer.view_selection(to, @subject, @text).deliver_now
|
|
469
469
|
|
|
470
470
|
emails = ActionMailer::Base.deliveries
|
|
471
471
|
expect(emails.size).to eq(1)
|
|
@@ -475,7 +475,7 @@ describe MobileMailer, " mail address", :type => :mailer do
|
|
|
475
475
|
|
|
476
476
|
it "複数のアドレスが有効になること" do
|
|
477
477
|
to = [".ruby.rails.@domomo-ezweb.ne.jp", "ruby.rails.@domomo-ezweb.ne.jp", "ruby...rails@domomo-ezweb.ne.jp"]
|
|
478
|
-
MobileMailer.view_selection(to.join(", "), @subject, @text).
|
|
478
|
+
MobileMailer.view_selection(to.join(", "), @subject, @text).deliver_now
|
|
479
479
|
|
|
480
480
|
emails = ActionMailer::Base.deliveries
|
|
481
481
|
expect(emails.size).to eq(1)
|
|
@@ -13,14 +13,14 @@ describe NormalMailer, :type => :mailer do
|
|
|
13
13
|
|
|
14
14
|
context "PC宛メール" do
|
|
15
15
|
it "正常に送信できること" do
|
|
16
|
-
email = NormalMailer.msg(@to, "題名", "本文").
|
|
16
|
+
email = NormalMailer.msg(@to, "題名", "本文").deliver_now
|
|
17
17
|
|
|
18
18
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
19
19
|
expect(email.to - @to).to be_empty
|
|
20
20
|
end
|
|
21
21
|
|
|
22
22
|
it "UTF-8のままであること" do
|
|
23
|
-
email = NormalMailer.msg(@to, @subject, @text).
|
|
23
|
+
email = NormalMailer.msg(@to, @subject, @text).deliver_now
|
|
24
24
|
|
|
25
25
|
expect(ActionMailer::Base.deliveries.size).to eq(1)
|
|
26
26
|
|
|
@@ -3,25 +3,28 @@ ENV["RAILS_ENV"] ||= 'test'
|
|
|
3
3
|
require 'spec_helper'
|
|
4
4
|
require File.expand_path("../../config/environment", __FILE__)
|
|
5
5
|
require 'rspec/rails'
|
|
6
|
-
#
|
|
7
|
-
# require 'capybara/rspec'
|
|
6
|
+
# Add additional requires below this line. Rails is not loaded until this point!
|
|
8
7
|
|
|
9
8
|
# Requires supporting ruby files with custom matchers and macros, etc, in
|
|
10
9
|
# spec/support/ and its subdirectories. Files matching `spec/**/*_spec.rb` are
|
|
11
10
|
# run as spec files by default. This means that files in spec/support that end
|
|
12
11
|
# in _spec.rb will both be required and run as specs, causing the specs to be
|
|
13
12
|
# run twice. It is recommended that you do not name files matching this glob to
|
|
14
|
-
# end with _spec.rb. You can configure this pattern with
|
|
13
|
+
# end with _spec.rb. You can configure this pattern with the --pattern
|
|
15
14
|
# option on the command line or in ~/.rspec, .rspec or `.rspec-local`.
|
|
16
|
-
|
|
15
|
+
#
|
|
16
|
+
# The following line is provided for convenience purposes. It has the downside
|
|
17
|
+
# of increasing the boot-up time by auto-requiring all files in the support
|
|
18
|
+
# directory. Alternatively, in the individual `*_spec.rb` files, manually
|
|
19
|
+
# require only the support files necessary.
|
|
20
|
+
#
|
|
21
|
+
# Dir[Rails.root.join("spec/support/**/*.rb")].each { |f| require f }
|
|
17
22
|
|
|
18
23
|
# Checks for pending migrations before tests are run.
|
|
19
24
|
# If you are not using ActiveRecord, you can remove this line.
|
|
20
25
|
ActiveRecord::Migration.maintain_test_schema!
|
|
21
26
|
|
|
22
27
|
RSpec.configure do |config|
|
|
23
|
-
# config.mock_with :rspec
|
|
24
|
-
|
|
25
28
|
# Remove this line if you're not using ActiveRecord or ActiveRecord fixtures
|
|
26
29
|
config.fixture_path = "#{::Rails.root}/spec/fixtures"
|
|
27
30
|
|
|
@@ -52,9 +55,4 @@ RSpec.configure do |config|
|
|
|
52
55
|
config.color = true
|
|
53
56
|
config.filter_run_excluding broken: true
|
|
54
57
|
# config.full_backtrace = true
|
|
55
|
-
config.expect_with :rspec do |c|
|
|
56
|
-
c.syntax = [:should, :expect]
|
|
57
|
-
end
|
|
58
58
|
end
|
|
59
|
-
|
|
60
|
-
require 'pp'
|
|
@@ -32,7 +32,7 @@ describe "trans_sid functional", :type => :request do
|
|
|
32
32
|
it "で form の自動書き換えが行われない" do
|
|
33
33
|
res = get_with_session(@controller, "form", @user_agent)
|
|
34
34
|
|
|
35
|
-
expect(res.response.body).to match(/<form
|
|
35
|
+
expect(res.response.body).to match(/<form.*action=\"\/.+?\/form\".*accept-charset="#{@charset}"/)
|
|
36
36
|
end
|
|
37
37
|
it "で redirect の自動書き換えが行われない" do
|
|
38
38
|
res = get_with_session(@controller, "redirect", @user_agent)
|
|
@@ -54,7 +54,7 @@ describe "trans_sid functional", :type => :request do
|
|
|
54
54
|
it "で form の自動書き換えが行われる" do
|
|
55
55
|
res = get_with_session(@controller, "form", @user_agent)
|
|
56
56
|
|
|
57
|
-
expect(res.response.body).to match(/<form
|
|
57
|
+
expect(res.response.body).to match(/<form.*action=\"\/.+?\/form\?_session_id=[a-zA-Z0-9]{32}\".*accept-charset="#{@charset}"/)
|
|
58
58
|
end
|
|
59
59
|
it "で redirect の自動書き換えが行われる" do
|
|
60
60
|
res = get_with_session(@controller, "redirect", @user_agent)
|
|
@@ -71,7 +71,7 @@ describe "trans_sid functional", :type => :request do
|
|
|
71
71
|
it "で @user の form の自動書き換えが行われる" do
|
|
72
72
|
res = get_with_session(@controller, "form_path", @user_agent)
|
|
73
73
|
|
|
74
|
-
expect(res.response.body).to match(/<form
|
|
74
|
+
expect(res.response.body).to match(/<form.*action=\"\/users\/1\?_session_id=[a-zA-Z0-9]{32}\".*accept-charset="#{@charset}"/)
|
|
75
75
|
end
|
|
76
76
|
it "で @path の redirect の自動書き換えが行われる" do
|
|
77
77
|
res = get_with_session(@controller, "redirect_path", @user_agent)
|
|
@@ -88,7 +88,7 @@ describe "trans_sid functional", :type => :request do
|
|
|
88
88
|
it "で [:admin, @user] の form の自動書き換えが行われる" do
|
|
89
89
|
res = get_with_session(@controller, "form_path_admin", @user_agent)
|
|
90
90
|
|
|
91
|
-
expect(res.response.body).to match(/<form
|
|
91
|
+
expect(res.response.body).to match(/<form.*action=\"\/admin\/users\/1\?_session_id=[a-zA-Z0-9]{32}\".* accept-charset="#{@charset}"/)
|
|
92
92
|
end
|
|
93
93
|
it "で [:admin, @path] の redirect の自動書き換えが行われる" do
|
|
94
94
|
res = get_with_session(@controller, "redirect_path_admin", @user_agent)
|
|
@@ -6,15 +6,38 @@
|
|
|
6
6
|
# Given that it is always loaded, you are encouraged to keep this file as
|
|
7
7
|
# light-weight as possible. Requiring heavyweight dependencies from this file
|
|
8
8
|
# will add to the boot time of your test suite on EVERY test run, even for an
|
|
9
|
-
# individual file that may not need all of that loaded. Instead,
|
|
10
|
-
# separate helper file that requires
|
|
11
|
-
# that actually need it.
|
|
9
|
+
# individual file that may not need all of that loaded. Instead, consider making
|
|
10
|
+
# a separate helper file that requires the additional dependencies and performs
|
|
11
|
+
# the additional setup, and require it from the spec files that actually need it.
|
|
12
12
|
#
|
|
13
13
|
# The `.rspec` file also contains a few flags that are not defaults but that
|
|
14
14
|
# users commonly want.
|
|
15
15
|
#
|
|
16
16
|
# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
|
|
17
17
|
RSpec.configure do |config|
|
|
18
|
+
# rspec-expectations config goes here. You can use an alternate
|
|
19
|
+
# assertion/expectation library such as wrong or the stdlib/minitest
|
|
20
|
+
# assertions if you prefer.
|
|
21
|
+
config.expect_with :rspec do |expectations|
|
|
22
|
+
# This option will default to `true` in RSpec 4. It makes the `description`
|
|
23
|
+
# and `failure_message` of custom matchers include text for helper methods
|
|
24
|
+
# defined using `chain`, e.g.:
|
|
25
|
+
# be_bigger_than(2).and_smaller_than(4).description
|
|
26
|
+
# # => "be bigger than 2 and smaller than 4"
|
|
27
|
+
# ...rather than:
|
|
28
|
+
# # => "be bigger than 2"
|
|
29
|
+
expectations.include_chain_clauses_in_custom_matcher_descriptions = true
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# rspec-mocks config goes here. You can use an alternate test double
|
|
33
|
+
# library (such as bogus or mocha) by changing the `mock_with` option here.
|
|
34
|
+
config.mock_with :rspec do |mocks|
|
|
35
|
+
# Prevents you from mocking or stubbing a method that does not exist on
|
|
36
|
+
# a real object. This is generally recommended, and will default to
|
|
37
|
+
# `true` in RSpec 4.
|
|
38
|
+
mocks.verify_partial_doubles = true
|
|
39
|
+
end
|
|
40
|
+
|
|
18
41
|
# The settings below are suggested to provide a good initial experience
|
|
19
42
|
# with RSpec, but feel free to customize to your heart's content.
|
|
20
43
|
=begin
|
|
@@ -25,6 +48,13 @@ RSpec.configure do |config|
|
|
|
25
48
|
config.filter_run :focus
|
|
26
49
|
config.run_all_when_everything_filtered = true
|
|
27
50
|
|
|
51
|
+
# Limits the available syntax to the non-monkey patched syntax that is recommended.
|
|
52
|
+
# For more details, see:
|
|
53
|
+
# - http://myronmars.to/n/dev-blog/2012/06/rspecs-new-expectation-syntax
|
|
54
|
+
# - http://teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/
|
|
55
|
+
# - http://myronmars.to/n/dev-blog/2014/05/notable-changes-in-rspec-3#new__config_option_to_disable_rspeccore_monkey_patching
|
|
56
|
+
config.disable_monkey_patching!
|
|
57
|
+
|
|
28
58
|
# Many RSpec users commonly either run the entire suite or an individual
|
|
29
59
|
# file, and it's useful to allow more verbose output when running an
|
|
30
60
|
# individual spec file.
|
|
@@ -51,28 +81,5 @@ RSpec.configure do |config|
|
|
|
51
81
|
# test failures related to randomization by passing the same `--seed` value
|
|
52
82
|
# as the one that triggered the failure.
|
|
53
83
|
Kernel.srand config.seed
|
|
54
|
-
|
|
55
|
-
# rspec-expectations config goes here. You can use an alternate
|
|
56
|
-
# assertion/expectation library such as wrong or the stdlib/minitest
|
|
57
|
-
# assertions if you prefer.
|
|
58
|
-
config.expect_with :rspec do |expectations|
|
|
59
|
-
# Enable only the newer, non-monkey-patching expect syntax.
|
|
60
|
-
# For more details, see:
|
|
61
|
-
# - http://myronmars.to/n/dev-blog/2012/06/rspecs-new-expectation-syntax
|
|
62
|
-
expectations.syntax = :expect
|
|
63
|
-
end
|
|
64
|
-
|
|
65
|
-
# rspec-mocks config goes here. You can use an alternate test double
|
|
66
|
-
# library (such as bogus or mocha) by changing the `mock_with` option here.
|
|
67
|
-
config.mock_with :rspec do |mocks|
|
|
68
|
-
# Enable only the newer, non-monkey-patching expect syntax.
|
|
69
|
-
# For more details, see:
|
|
70
|
-
# - http://teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/
|
|
71
|
-
mocks.syntax = :expect
|
|
72
|
-
|
|
73
|
-
# Prevents you from mocking or stubbing a method that does not exist on
|
|
74
|
-
# a real object. This is generally recommended.
|
|
75
|
-
mocks.verify_partial_doubles = true
|
|
76
|
-
end
|
|
77
84
|
=end
|
|
78
85
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: jpmobile
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 4.
|
|
4
|
+
version: 4.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Shin-ichiro OGAWA
|
|
@@ -9,22 +9,22 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date:
|
|
12
|
+
date: 2014-12-22 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: rails
|
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
|
17
17
|
requirements:
|
|
18
|
-
- - "
|
|
18
|
+
- - "~>"
|
|
19
19
|
- !ruby/object:Gem::Version
|
|
20
|
-
version:
|
|
20
|
+
version: 4.2.0
|
|
21
21
|
type: :development
|
|
22
22
|
prerelease: false
|
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
|
24
24
|
requirements:
|
|
25
|
-
- - "
|
|
25
|
+
- - "~>"
|
|
26
26
|
- !ruby/object:Gem::Version
|
|
27
|
-
version:
|
|
27
|
+
version: 4.2.0
|
|
28
28
|
- !ruby/object:Gem::Dependency
|
|
29
29
|
name: rspec
|
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -137,6 +137,20 @@ dependencies:
|
|
|
137
137
|
- - ">="
|
|
138
138
|
- !ruby/object:Gem::Version
|
|
139
139
|
version: '0'
|
|
140
|
+
- !ruby/object:Gem::Dependency
|
|
141
|
+
name: pry
|
|
142
|
+
requirement: !ruby/object:Gem::Requirement
|
|
143
|
+
requirements:
|
|
144
|
+
- - ">="
|
|
145
|
+
- !ruby/object:Gem::Version
|
|
146
|
+
version: '0'
|
|
147
|
+
type: :development
|
|
148
|
+
prerelease: false
|
|
149
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
150
|
+
requirements:
|
|
151
|
+
- - ">="
|
|
152
|
+
- !ruby/object:Gem::Version
|
|
153
|
+
version: '0'
|
|
140
154
|
description: A Rails plugin for mobile devices in Japan
|
|
141
155
|
email:
|
|
142
156
|
- rust.stnard@gmail.com
|
|
@@ -237,6 +251,8 @@ files:
|
|
|
237
251
|
- spec/unit/email-fixtures/docomo-emoji.eml
|
|
238
252
|
- spec/unit/email-fixtures/docomo-gmail-sjis.eml
|
|
239
253
|
- spec/unit/email-fixtures/docomo-jis.eml
|
|
254
|
+
- spec/unit/email-fixtures/iphone-cp932.eml
|
|
255
|
+
- spec/unit/email-fixtures/iphone-jis.eml
|
|
240
256
|
- spec/unit/email-fixtures/iphone-mail3.eml
|
|
241
257
|
- spec/unit/email-fixtures/iphone-message.eml
|
|
242
258
|
- spec/unit/email-fixtures/pc-mail-attached-without-subject.eml
|
|
@@ -414,7 +430,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
414
430
|
version: '0'
|
|
415
431
|
requirements: []
|
|
416
432
|
rubyforge_project:
|
|
417
|
-
rubygems_version: 2.5
|
|
433
|
+
rubygems_version: 2.4.5
|
|
418
434
|
signing_key:
|
|
419
435
|
specification_version: 4
|
|
420
436
|
summary: A Rails plugin for mobile devices in Japan
|
|
@@ -446,6 +462,8 @@ test_files:
|
|
|
446
462
|
- spec/unit/email-fixtures/docomo-emoji.eml
|
|
447
463
|
- spec/unit/email-fixtures/docomo-gmail-sjis.eml
|
|
448
464
|
- spec/unit/email-fixtures/docomo-jis.eml
|
|
465
|
+
- spec/unit/email-fixtures/iphone-cp932.eml
|
|
466
|
+
- spec/unit/email-fixtures/iphone-jis.eml
|
|
449
467
|
- spec/unit/email-fixtures/iphone-mail3.eml
|
|
450
468
|
- spec/unit/email-fixtures/iphone-message.eml
|
|
451
469
|
- spec/unit/email-fixtures/pc-mail-attached-without-subject.eml
|