jpmobile 5.1.0 → 5.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.ruby-version +1 -1
- data/CONTRIBUTING.md +6 -0
- data/Gemfile +2 -1
- data/Gemfile.lock +81 -82
- data/circle.yml +1 -1
- data/jpmobile.gemspec +2 -1
- data/lib/jpmobile.rb +1 -0
- data/lib/jpmobile/filter.rb +20 -6
- data/lib/jpmobile/mail.rb +25 -3
- data/lib/jpmobile/rack/params_filter.rb +8 -8
- data/lib/jpmobile/version.rb +1 -1
- data/lib/tasks/jpmobile_tasks.rake +1 -1
- data/spec/unit/mail_spec.rb +2 -2
- data/spec/unit/receive_mail_spec.rb +2 -2
- data/test/rails/overrides/Gemfile +55 -0
- data/test/rails/overrides/spec/controllers/hankaku_filter_controller_spec.rb +14 -0
- metadata +11 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0f606e8dcfcefaf3f8c8157d08a2ff642f8a89bb
|
4
|
+
data.tar.gz: 8fa435f921bf2fca48a6572c4859b5f5076aa42b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 74fbb52d229f5cfbdd7c2c26ca5fd05dbfcba78b5731bfce905e1992bd06a04e5ddbddd205d46ddf9a51b8d8988712e264f8a4e127347ad684449e2dd0e67dc0
|
7
|
+
data.tar.gz: d9f196f90b90ee8a1a3c3eefa7c4b663d187022b56f86aa8b1747d800348ebe1b3af49dc2a4566059fc7cdfb40a8fffd577af2915d9a879fe6d2c38d301ef2d5
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.4.
|
1
|
+
2.4.4
|
data/CONTRIBUTING.md
CHANGED
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,50 +1,50 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
jpmobile (5.
|
4
|
+
jpmobile (5.1.0)
|
5
5
|
|
6
6
|
GEM
|
7
7
|
remote: https://rubygems.org/
|
8
8
|
specs:
|
9
|
-
actioncable (5.1.
|
10
|
-
actionpack (= 5.1.
|
9
|
+
actioncable (5.1.4)
|
10
|
+
actionpack (= 5.1.4)
|
11
11
|
nio4r (~> 2.0)
|
12
12
|
websocket-driver (~> 0.6.1)
|
13
|
-
actionmailer (5.1.
|
14
|
-
actionpack (= 5.1.
|
15
|
-
actionview (= 5.1.
|
16
|
-
activejob (= 5.1.
|
13
|
+
actionmailer (5.1.4)
|
14
|
+
actionpack (= 5.1.4)
|
15
|
+
actionview (= 5.1.4)
|
16
|
+
activejob (= 5.1.4)
|
17
17
|
mail (~> 2.5, >= 2.5.4)
|
18
18
|
rails-dom-testing (~> 2.0)
|
19
|
-
actionpack (5.1.
|
20
|
-
actionview (= 5.1.
|
21
|
-
activesupport (= 5.1.
|
19
|
+
actionpack (5.1.4)
|
20
|
+
actionview (= 5.1.4)
|
21
|
+
activesupport (= 5.1.4)
|
22
22
|
rack (~> 2.0)
|
23
|
-
rack-test (
|
23
|
+
rack-test (>= 0.6.3)
|
24
24
|
rails-dom-testing (~> 2.0)
|
25
25
|
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
26
|
-
actionview (5.1.
|
27
|
-
activesupport (= 5.1.
|
26
|
+
actionview (5.1.4)
|
27
|
+
activesupport (= 5.1.4)
|
28
28
|
builder (~> 3.1)
|
29
29
|
erubi (~> 1.4)
|
30
30
|
rails-dom-testing (~> 2.0)
|
31
31
|
rails-html-sanitizer (~> 1.0, >= 1.0.3)
|
32
|
-
activejob (5.1.
|
33
|
-
activesupport (= 5.1.
|
32
|
+
activejob (5.1.4)
|
33
|
+
activesupport (= 5.1.4)
|
34
34
|
globalid (>= 0.3.6)
|
35
|
-
activemodel (5.1.
|
36
|
-
activesupport (= 5.1.
|
37
|
-
activerecord (5.1.
|
38
|
-
activemodel (= 5.1.
|
39
|
-
activesupport (= 5.1.
|
35
|
+
activemodel (5.1.4)
|
36
|
+
activesupport (= 5.1.4)
|
37
|
+
activerecord (5.1.4)
|
38
|
+
activemodel (= 5.1.4)
|
39
|
+
activesupport (= 5.1.4)
|
40
40
|
arel (~> 8.0)
|
41
|
-
activesupport (5.1.
|
41
|
+
activesupport (5.1.4)
|
42
42
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
43
43
|
i18n (~> 0.7)
|
44
44
|
minitest (~> 5.1)
|
45
45
|
tzinfo (~> 1.1)
|
46
|
-
addressable (2.5.
|
47
|
-
public_suffix (
|
46
|
+
addressable (2.5.2)
|
47
|
+
public_suffix (>= 2.0.2, < 4.0)
|
48
48
|
arel (8.0.0)
|
49
49
|
ast (2.3.0)
|
50
50
|
builder (3.2.3)
|
@@ -58,123 +58,121 @@ GEM
|
|
58
58
|
capybara-webkit (1.14.0)
|
59
59
|
capybara (>= 2.3.0, < 2.14.0)
|
60
60
|
json
|
61
|
-
coderay (1.1.
|
61
|
+
coderay (1.1.2)
|
62
62
|
concurrent-ruby (1.0.5)
|
63
63
|
diff-lcs (1.3)
|
64
|
-
erubi (1.6.
|
64
|
+
erubi (1.6.1)
|
65
65
|
geokit (1.11.0)
|
66
66
|
git (1.3.0)
|
67
67
|
globalid (0.4.0)
|
68
68
|
activesupport (>= 4.2.0)
|
69
69
|
hpricot (0.8.6)
|
70
|
-
i18n (0.8.
|
70
|
+
i18n (0.8.6)
|
71
71
|
json (2.1.0)
|
72
72
|
loofah (2.0.3)
|
73
73
|
nokogiri (>= 1.5.9)
|
74
|
-
mail (2.6.
|
74
|
+
mail (2.6.6)
|
75
75
|
mime-types (>= 1.16, < 4)
|
76
76
|
method_source (0.8.2)
|
77
77
|
mime-types (3.1)
|
78
78
|
mime-types-data (~> 3.2015)
|
79
79
|
mime-types-data (3.2016.0521)
|
80
|
-
mini_portile2 (2.
|
81
|
-
minitest (5.10.
|
82
|
-
nio4r (2.
|
83
|
-
nokogiri (1.
|
84
|
-
mini_portile2 (~> 2.
|
80
|
+
mini_portile2 (2.3.0)
|
81
|
+
minitest (5.10.3)
|
82
|
+
nio4r (2.1.0)
|
83
|
+
nokogiri (1.8.1)
|
84
|
+
mini_portile2 (~> 2.3.0)
|
85
85
|
onkcop (0.48.1.1)
|
86
86
|
rubocop (~> 0.48.1)
|
87
87
|
rubocop-rspec (>= 1.15.0)
|
88
88
|
parser (2.4.0.0)
|
89
89
|
ast (~> 2.2)
|
90
90
|
powerpack (0.1.1)
|
91
|
-
pry (0.
|
91
|
+
pry (0.11.0)
|
92
92
|
coderay (~> 1.1.0)
|
93
93
|
method_source (~> 0.8.1)
|
94
|
-
|
95
|
-
|
96
|
-
rack (
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
railties (= 5.1.0)
|
94
|
+
public_suffix (3.0.0)
|
95
|
+
rack (2.0.3)
|
96
|
+
rack-test (0.7.0)
|
97
|
+
rack (>= 1.0, < 3)
|
98
|
+
rails (5.1.4)
|
99
|
+
actioncable (= 5.1.4)
|
100
|
+
actionmailer (= 5.1.4)
|
101
|
+
actionpack (= 5.1.4)
|
102
|
+
actionview (= 5.1.4)
|
103
|
+
activejob (= 5.1.4)
|
104
|
+
activemodel (= 5.1.4)
|
105
|
+
activerecord (= 5.1.4)
|
106
|
+
activesupport (= 5.1.4)
|
107
|
+
bundler (>= 1.3.0)
|
108
|
+
railties (= 5.1.4)
|
110
109
|
sprockets-rails (>= 2.0.0)
|
111
|
-
rails-dom-testing (2.0.
|
112
|
-
activesupport (>= 4.2.0
|
113
|
-
nokogiri (
|
110
|
+
rails-dom-testing (2.0.3)
|
111
|
+
activesupport (>= 4.2.0)
|
112
|
+
nokogiri (>= 1.6)
|
114
113
|
rails-html-sanitizer (1.0.3)
|
115
114
|
loofah (~> 2.0)
|
116
|
-
railties (5.1.
|
117
|
-
actionpack (= 5.1.
|
118
|
-
activesupport (= 5.1.
|
115
|
+
railties (5.1.4)
|
116
|
+
actionpack (= 5.1.4)
|
117
|
+
activesupport (= 5.1.4)
|
119
118
|
method_source
|
120
119
|
rake (>= 0.8.7)
|
121
120
|
thor (>= 0.18.1, < 2.0)
|
122
121
|
rainbow (2.2.2)
|
123
122
|
rake
|
124
|
-
rake (12.
|
125
|
-
rspec (3.
|
126
|
-
rspec-core (~> 3.
|
127
|
-
rspec-expectations (~> 3.
|
128
|
-
rspec-mocks (~> 3.
|
129
|
-
rspec-core (3.
|
130
|
-
rspec-support (~> 3.
|
131
|
-
rspec-expectations (3.
|
123
|
+
rake (12.1.0)
|
124
|
+
rspec (3.6.0)
|
125
|
+
rspec-core (~> 3.6.0)
|
126
|
+
rspec-expectations (~> 3.6.0)
|
127
|
+
rspec-mocks (~> 3.6.0)
|
128
|
+
rspec-core (3.6.0)
|
129
|
+
rspec-support (~> 3.6.0)
|
130
|
+
rspec-expectations (3.6.0)
|
132
131
|
diff-lcs (>= 1.2.0, < 2.0)
|
133
|
-
rspec-support (~> 3.
|
132
|
+
rspec-support (~> 3.6.0)
|
134
133
|
rspec-its (1.2.0)
|
135
134
|
rspec-core (>= 3.0.0)
|
136
135
|
rspec-expectations (>= 3.0.0)
|
137
|
-
rspec-mocks (3.
|
136
|
+
rspec-mocks (3.6.0)
|
138
137
|
diff-lcs (>= 1.2.0, < 2.0)
|
139
|
-
rspec-support (~> 3.
|
140
|
-
rspec-rails (3.
|
138
|
+
rspec-support (~> 3.6.0)
|
139
|
+
rspec-rails (3.6.1)
|
141
140
|
actionpack (>= 3.0)
|
142
141
|
activesupport (>= 3.0)
|
143
142
|
railties (>= 3.0)
|
144
|
-
rspec-core (~> 3.
|
145
|
-
rspec-expectations (~> 3.
|
146
|
-
rspec-mocks (~> 3.
|
147
|
-
rspec-support (~> 3.
|
148
|
-
rspec-support (3.
|
143
|
+
rspec-core (~> 3.6.0)
|
144
|
+
rspec-expectations (~> 3.6.0)
|
145
|
+
rspec-mocks (~> 3.6.0)
|
146
|
+
rspec-support (~> 3.6.0)
|
147
|
+
rspec-support (3.6.0)
|
149
148
|
rubocop (0.48.1)
|
150
149
|
parser (>= 2.3.3.1, < 3.0)
|
151
150
|
powerpack (~> 0.1)
|
152
151
|
rainbow (>= 1.99.1, < 3.0)
|
153
152
|
ruby-progressbar (~> 1.7)
|
154
153
|
unicode-display_width (~> 1.0, >= 1.0.1)
|
155
|
-
rubocop-rspec (1.15.
|
154
|
+
rubocop-rspec (1.15.1)
|
156
155
|
rubocop (>= 0.42.0)
|
157
|
-
ruby-progressbar (1.8.
|
158
|
-
slop (3.6.0)
|
156
|
+
ruby-progressbar (1.8.3)
|
159
157
|
sprockets (3.7.1)
|
160
158
|
concurrent-ruby (~> 1.0)
|
161
159
|
rack (> 1, < 3)
|
162
|
-
sprockets-rails (3.2.
|
160
|
+
sprockets-rails (3.2.1)
|
163
161
|
actionpack (>= 4.0)
|
164
162
|
activesupport (>= 4.0)
|
165
163
|
sprockets (>= 3.0.0)
|
166
164
|
sqlite3 (1.3.13)
|
167
165
|
sqlite3-ruby (1.3.3)
|
168
166
|
sqlite3 (>= 1.3.3)
|
169
|
-
thor (0.
|
167
|
+
thor (0.20.0)
|
170
168
|
thread_safe (0.3.6)
|
171
169
|
tzinfo (1.2.3)
|
172
170
|
thread_safe (~> 0.1)
|
173
|
-
unicode-display_width (1.
|
171
|
+
unicode-display_width (1.3.0)
|
174
172
|
websocket-driver (0.6.5)
|
175
173
|
websocket-extensions (>= 0.1.0)
|
176
174
|
websocket-extensions (0.1.2)
|
177
|
-
xpath (2.
|
175
|
+
xpath (2.1.0)
|
178
176
|
nokogiri (~> 1.3)
|
179
177
|
|
180
178
|
PLATFORMS
|
@@ -186,13 +184,14 @@ DEPENDENCIES
|
|
186
184
|
git
|
187
185
|
hpricot
|
188
186
|
jpmobile!
|
189
|
-
onkcop
|
187
|
+
onkcop (= 0.48.1.1)
|
190
188
|
pry
|
191
|
-
rails (~> 5.1.
|
189
|
+
rails (~> 5.1.4)
|
192
190
|
rspec
|
193
191
|
rspec-its
|
194
192
|
rspec-rails
|
193
|
+
rubocop (= 0.48.1)
|
195
194
|
sqlite3-ruby
|
196
195
|
|
197
196
|
BUNDLED WITH
|
198
|
-
1.
|
197
|
+
1.16.0.pre.2
|
data/circle.yml
CHANGED
data/jpmobile.gemspec
CHANGED
@@ -10,12 +10,13 @@ Gem::Specification.new do |gem|
|
|
10
10
|
gem.description = 'A Rails plugin for mobile devices in Japan'
|
11
11
|
gem.summary = 'Rails plugin for mobile devices in Japan'
|
12
12
|
gem.homepage = 'http://jpmobile-rails.org'
|
13
|
+
gem.license = 'MIT'
|
13
14
|
|
14
15
|
gem.files = `git ls-files`.split($INPUT_RECORD_SEPARATOR)
|
15
16
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
16
17
|
gem.require_paths = ['lib']
|
17
18
|
|
18
|
-
gem.add_development_dependency 'rails', '~> 5.1.
|
19
|
+
gem.add_development_dependency 'rails', '~> 5.1.4'
|
19
20
|
gem.add_development_dependency 'rspec'
|
20
21
|
gem.add_development_dependency 'rspec-rails'
|
21
22
|
gem.add_development_dependency 'rspec-its'
|
data/lib/jpmobile.rb
CHANGED
data/lib/jpmobile/filter.rb
CHANGED
@@ -164,12 +164,26 @@ module Jpmobile
|
|
164
164
|
end
|
165
165
|
|
166
166
|
def convert_parameters(params)
|
167
|
-
params.each
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
167
|
+
return to_internal(params) unless params.respond_to?(:each)
|
168
|
+
|
169
|
+
case params
|
170
|
+
when Array
|
171
|
+
params.map do |v|
|
172
|
+
if v.respond_to?(:each)
|
173
|
+
convert_parameters(v)
|
174
|
+
else
|
175
|
+
to_internal(v)
|
176
|
+
end
|
177
|
+
end
|
178
|
+
else
|
179
|
+
params.each do |k, v|
|
180
|
+
params[k] =
|
181
|
+
if v.respond_to?(:each)
|
182
|
+
convert_parameters(v)
|
183
|
+
else
|
184
|
+
to_internal(v)
|
185
|
+
end
|
186
|
+
end
|
173
187
|
end
|
174
188
|
end
|
175
189
|
end
|
data/lib/jpmobile/mail.rb
CHANGED
@@ -54,7 +54,8 @@ module Mail
|
|
54
54
|
end
|
55
55
|
|
56
56
|
def parse_message_with_jpmobile
|
57
|
-
|
57
|
+
_crlf_raw_source = raw_source.encode(raw_source.encoding, universal_newline: true).encode!(raw_source.encoding, crlf_newline: true)
|
58
|
+
header_part, body_part = _crlf_raw_source.lstrip.split(/#{CRLF}#{CRLF}|#{CRLF}#{WSP}*#{CRLF}(?!#{WSP})/m, 2)
|
58
59
|
# header_part, body_part = raw_source.lstrip.split(HEADER_SEPARATOR, 2)
|
59
60
|
|
60
61
|
self.header = header_part
|
@@ -81,6 +82,9 @@ module Mail
|
|
81
82
|
def init_with_string(string)
|
82
83
|
# convert to ASCII-8BIT for ascii incompatible encodings
|
83
84
|
s = Jpmobile::Util.ascii_8bit(string)
|
85
|
+
unless s.ascii_only?
|
86
|
+
s = s.kind_of?(String) ? s.to_str.encode(s.encoding, :universal_newline => true).encode!(s.encoding, :crlf_newline => true) : ''
|
87
|
+
end
|
84
88
|
self.raw_source = s
|
85
89
|
set_envelope_header
|
86
90
|
parse_message
|
@@ -312,7 +316,7 @@ module Mail
|
|
312
316
|
_raw_source = if transfer_encoding == encoding
|
313
317
|
@raw_source.dup
|
314
318
|
else
|
315
|
-
|
319
|
+
negotiate_best_encoding(transfer_encoding).encode(@raw_source)
|
316
320
|
end
|
317
321
|
Jpmobile::Util.set_encoding(_raw_source, @mobile.mail_charset(@charset))
|
318
322
|
when /quoted-printable/
|
@@ -331,7 +335,7 @@ module Mail
|
|
331
335
|
|
332
336
|
# fix charset
|
333
337
|
def set_charset_with_jpmobile
|
334
|
-
@charset ||=
|
338
|
+
@charset ||= ascii_only? ? 'US-ASCII' : nil
|
335
339
|
end
|
336
340
|
|
337
341
|
def mobile=(m)
|
@@ -509,6 +513,15 @@ module Mail
|
|
509
513
|
def encoded_with_jpmobile
|
510
514
|
if @mobile
|
511
515
|
self.charset = @mobile.mail_charset
|
516
|
+
|
517
|
+
_value = address_list.addresses.map { |_a|
|
518
|
+
if Utilities.blank?(_a.display_name) || _a.display_name.ascii_only?
|
519
|
+
_a.to_s
|
520
|
+
else
|
521
|
+
"#{@mobile.to_mail_subject(_a.display_name)} <#{_a.address}>"
|
522
|
+
end
|
523
|
+
}.join(", ")
|
524
|
+
@address_list = AddressList.new(_value)
|
512
525
|
end
|
513
526
|
|
514
527
|
encoded_without_jpmobile
|
@@ -539,6 +552,15 @@ module Mail
|
|
539
552
|
def encoded_with_jpmobile
|
540
553
|
if @mobile
|
541
554
|
self.charset = @mobile.mail_charset
|
555
|
+
|
556
|
+
_value = address_list.addresses.map { |_a|
|
557
|
+
if Utilities.blank?(_a.display_name) || _a.display_name.ascii_only?
|
558
|
+
_a.to_s
|
559
|
+
else
|
560
|
+
"#{@mobile.to_mail_subject(_a.display_name)} <#{_a.address}>"
|
561
|
+
end
|
562
|
+
}.join(", ")
|
563
|
+
@address_list = AddressList.new(_value)
|
542
564
|
end
|
543
565
|
|
544
566
|
encoded_without_jpmobile
|
@@ -7,17 +7,17 @@ module Jpmobile
|
|
7
7
|
|
8
8
|
def call(env)
|
9
9
|
# 入力
|
10
|
-
if (
|
10
|
+
if (mobile = env['rack.jpmobile']) && mobile.apply_params_filter?
|
11
11
|
# パラメータをkey, valueに分解
|
12
12
|
# form_params
|
13
13
|
unless env['REQUEST_METHOD'] == 'GET' || env['REQUEST_METHOD'] == 'HEAD'
|
14
14
|
unless env['CONTENT_TYPE'] =~ %r{application/json|application/xml}
|
15
|
-
env['rack.input'] = StringIO.new(parse_query(env['rack.input'].read))
|
15
|
+
env['rack.input'] = StringIO.new(parse_query(env['rack.input'].read, mobile))
|
16
16
|
end
|
17
17
|
end
|
18
18
|
|
19
19
|
# query_params
|
20
|
-
env['QUERY_STRING'] = parse_query(env['QUERY_STRING'])
|
20
|
+
env['QUERY_STRING'] = parse_query(env['QUERY_STRING'], mobile)
|
21
21
|
end
|
22
22
|
|
23
23
|
status, env, body = @app.call(env)
|
@@ -27,18 +27,18 @@ module Jpmobile
|
|
27
27
|
|
28
28
|
private
|
29
29
|
|
30
|
-
def to_internal(str)
|
31
|
-
::Rack::Utils.escape(
|
30
|
+
def to_internal(str, mobile)
|
31
|
+
::Rack::Utils.escape(mobile.to_internal(::Rack::Utils.unescape(str)))
|
32
32
|
end
|
33
33
|
|
34
|
-
def parse_query(str)
|
34
|
+
def parse_query(str, mobile)
|
35
35
|
return nil unless str
|
36
36
|
|
37
37
|
new_array = []
|
38
38
|
str.split('&').each do |param_pair|
|
39
39
|
k, v = param_pair.split('=')
|
40
|
-
k = to_internal(k) if k
|
41
|
-
v = to_internal(v) if v
|
40
|
+
k = to_internal(k, mobile) if k
|
41
|
+
v = to_internal(v, mobile) if v
|
42
42
|
new_array << "#{k}=#{v}" if k
|
43
43
|
end
|
44
44
|
|
data/lib/jpmobile/version.rb
CHANGED
data/spec/unit/mail_spec.rb
CHANGED
@@ -347,8 +347,8 @@ describe 'Jpmobile::Mail' do
|
|
347
347
|
enable_starttls_auto: false,
|
348
348
|
user_name: ENV['MAILTRAP_USERNAME'],
|
349
349
|
password: ENV['MAILTRAP_PASSWORD'],
|
350
|
-
address: 'mailtrap.io',
|
351
|
-
domain: 'mailtrap.io',
|
350
|
+
address: 'smtp.mailtrap.io',
|
351
|
+
domain: 'smtp.mailtrap.io',
|
352
352
|
port: '2525',
|
353
353
|
authentication: :cram_md5,
|
354
354
|
}
|
@@ -207,7 +207,7 @@ describe 'Jpmobile::Mail#receive' do
|
|
207
207
|
end
|
208
208
|
|
209
209
|
it 'body should be parsed correctly' do
|
210
|
-
expect(@mail.body.to_s).to eq("本文\nFor docomo\n\n")
|
210
|
+
expect(@mail.body.to_s).to eq("本文\r\nFor docomo\r\n\r\n")
|
211
211
|
end
|
212
212
|
|
213
213
|
context 'to_s' do
|
@@ -352,7 +352,7 @@ describe 'Jpmobile::Mail#receive' do
|
|
352
352
|
end
|
353
353
|
|
354
354
|
it 'body should be parsed correctly' do
|
355
|
-
expect(@mail.body.to_s).to eq("本文\nFor softbank\n\n")
|
355
|
+
expect(@mail.body.to_s).to eq("本文\r\nFor softbank\r\n\r\n")
|
356
356
|
end
|
357
357
|
|
358
358
|
context 'to_s' do
|
@@ -0,0 +1,55 @@
|
|
1
|
+
source 'https://rubygems.org'
|
2
|
+
|
3
|
+
git_source(:github) do |repo_name|
|
4
|
+
repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/")
|
5
|
+
"https://github.com/#{repo_name}.git"
|
6
|
+
end
|
7
|
+
|
8
|
+
|
9
|
+
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
|
10
|
+
gem 'rails', '~> 5.1.4'
|
11
|
+
# Use sqlite3 as the database for Active Record
|
12
|
+
gem 'sqlite3', '~> 1.3.6'
|
13
|
+
# Use Puma as the app server
|
14
|
+
gem 'puma', '~> 3.7'
|
15
|
+
# Use SCSS for stylesheets
|
16
|
+
gem 'sass-rails', '~> 5.0'
|
17
|
+
# Use Uglifier as compressor for JavaScript assets
|
18
|
+
gem 'uglifier', '>= 1.3.0'
|
19
|
+
# See https://github.com/rails/execjs#readme for more supported runtimes
|
20
|
+
# gem 'therubyracer', platforms: :ruby
|
21
|
+
|
22
|
+
# Use CoffeeScript for .coffee assets and views
|
23
|
+
gem 'coffee-rails', '~> 4.2'
|
24
|
+
# Turbolinks makes navigating your web application faster. Read more: https://github.com/turbolinks/turbolinks
|
25
|
+
gem 'turbolinks', '~> 5'
|
26
|
+
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
|
27
|
+
gem 'jbuilder', '~> 2.5'
|
28
|
+
# Use Redis adapter to run Action Cable in production
|
29
|
+
# gem 'redis', '~> 3.0'
|
30
|
+
# Use ActiveModel has_secure_password
|
31
|
+
# gem 'bcrypt', '~> 3.1.7'
|
32
|
+
|
33
|
+
# Use Capistrano for deployment
|
34
|
+
# gem 'capistrano-rails', group: :development
|
35
|
+
|
36
|
+
group :development, :test do
|
37
|
+
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
|
38
|
+
gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
|
39
|
+
# Adds support for Capybara system testing and selenium driver
|
40
|
+
gem 'capybara', '~> 2.13'
|
41
|
+
gem 'selenium-webdriver'
|
42
|
+
end
|
43
|
+
|
44
|
+
group :development do
|
45
|
+
# Access an IRB console on exception pages or by using <%= console %> anywhere in the code.
|
46
|
+
gem 'web-console', '>= 3.3.0'
|
47
|
+
gem 'listen', '>= 3.0.5', '< 3.2'
|
48
|
+
# Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
|
49
|
+
gem 'spring'
|
50
|
+
gem 'spring-watcher-listen', '~> 2.0.0'
|
51
|
+
end
|
52
|
+
|
53
|
+
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
|
54
|
+
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
|
55
|
+
instance_eval File.read(File.expand_path(__FILE__) + '.jpmobile')
|
@@ -0,0 +1,14 @@
|
|
1
|
+
require 'rails_helper'
|
2
|
+
|
3
|
+
describe Jpmobile::HankakuFilterController, type: :controller do
|
4
|
+
describe '#index' do
|
5
|
+
let(:params) { { prefecture_ids: ['1', '2'] } }
|
6
|
+
|
7
|
+
it 'should be successful' do
|
8
|
+
request.user_agent = 'DoCoMo/2.0 P05C(c500;TB;W24H16)'
|
9
|
+
get 'index', params: params
|
10
|
+
expect(response).to be_successful
|
11
|
+
expect(request.mobile?).to be_truthy
|
12
|
+
end
|
13
|
+
end
|
14
|
+
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: 5.1.
|
4
|
+
version: 5.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Shin-ichiro OGAWA
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2019-03-14 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
@@ -17,14 +17,14 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - "~>"
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: 5.1.
|
20
|
+
version: 5.1.4
|
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: 5.1.
|
27
|
+
version: 5.1.4
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
29
|
name: rspec
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
@@ -282,6 +282,7 @@ files:
|
|
282
282
|
- spec/unit/variants_spec.rb
|
283
283
|
- test/rails/.gitignore
|
284
284
|
- test/rails/overrides/.rspec
|
285
|
+
- test/rails/overrides/Gemfile
|
285
286
|
- test/rails/overrides/Gemfile.jpmobile
|
286
287
|
- test/rails/overrides/app/controllers/admin/top_controller.rb
|
287
288
|
- test/rails/overrides/app/controllers/application_controller.rb
|
@@ -368,6 +369,7 @@ files:
|
|
368
369
|
- test/rails/overrides/db/migrate/001_add_sessions_table.rb
|
369
370
|
- test/rails/overrides/db/migrate/20100824062306_create_users.rb
|
370
371
|
- test/rails/overrides/spec/controllers/docomo_guid_spec.rb
|
372
|
+
- test/rails/overrides/spec/controllers/hankaku_filter_controller_spec.rb
|
371
373
|
- test/rails/overrides/spec/controllers/helpers_spec.rb
|
372
374
|
- test/rails/overrides/spec/controllers/mobile_spec_controller_spec.rb
|
373
375
|
- test/rails/overrides/spec/controllers/template_path_spec.rb
|
@@ -418,7 +420,8 @@ files:
|
|
418
420
|
- tools/generate_softbank_emoticon_table.rb
|
419
421
|
- tools/list_gps_unsupported_au.rb
|
420
422
|
homepage: http://jpmobile-rails.org
|
421
|
-
licenses:
|
423
|
+
licenses:
|
424
|
+
- MIT
|
422
425
|
metadata: {}
|
423
426
|
post_install_message:
|
424
427
|
rdoc_options: []
|
@@ -436,7 +439,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
436
439
|
version: '0'
|
437
440
|
requirements: []
|
438
441
|
rubyforge_project:
|
439
|
-
rubygems_version: 2.6.
|
442
|
+
rubygems_version: 2.6.14.1
|
440
443
|
signing_key:
|
441
444
|
specification_version: 4
|
442
445
|
summary: Rails plugin for mobile devices in Japan
|
@@ -497,6 +500,7 @@ test_files:
|
|
497
500
|
- spec/unit/variants_spec.rb
|
498
501
|
- test/rails/.gitignore
|
499
502
|
- test/rails/overrides/.rspec
|
503
|
+
- test/rails/overrides/Gemfile
|
500
504
|
- test/rails/overrides/Gemfile.jpmobile
|
501
505
|
- test/rails/overrides/app/controllers/admin/top_controller.rb
|
502
506
|
- test/rails/overrides/app/controllers/application_controller.rb
|
@@ -583,6 +587,7 @@ test_files:
|
|
583
587
|
- test/rails/overrides/db/migrate/001_add_sessions_table.rb
|
584
588
|
- test/rails/overrides/db/migrate/20100824062306_create_users.rb
|
585
589
|
- test/rails/overrides/spec/controllers/docomo_guid_spec.rb
|
590
|
+
- test/rails/overrides/spec/controllers/hankaku_filter_controller_spec.rb
|
586
591
|
- test/rails/overrides/spec/controllers/helpers_spec.rb
|
587
592
|
- test/rails/overrides/spec/controllers/mobile_spec_controller_spec.rb
|
588
593
|
- test/rails/overrides/spec/controllers/template_path_spec.rb
|