修訂 | 64 (tree) |
---|---|
時間 | 2008-03-27 22:50:05 |
作者 | junkikuchi |
updated.
@@ -14,12 +14,12 @@ | ||
14 | 14 | DATE = Time.local(2007, 6, 5, 22, 10, 0, 0) |
15 | 15 | DATE_CGI = 'Tue, 05 Jun 2007 13:10:00 GMT' |
16 | 16 | |
17 | - def test_escape | |
18 | - assert_equal(A, Tenarai::CGI.escape(B)) | |
17 | + def test_encode | |
18 | + assert_equal(A, Tenarai::CGI.encode(B)) | |
19 | 19 | end |
20 | 20 | |
21 | - def test_unescape | |
22 | - assert_equal(B, Tenarai::CGI.unescape(A)) | |
21 | + def test_decode | |
22 | + assert_equal(B, Tenarai::CGI.decode(A)) | |
23 | 23 | end |
24 | 24 | |
25 | 25 | def test_date |
@@ -31,7 +31,7 @@ | ||
31 | 31 | end |
32 | 32 | |
33 | 33 | def to_s |
34 | - a = ["%s=%s" % [@name, CGI.escape(@value)]] | |
34 | + a = ["%s=%s" % [@name, CGI.encode(@value)]] | |
35 | 35 | @expires && a << "expires=%s" % CGI.date(@expires) |
36 | 36 | @path && a << "path=%s" % @path |
37 | 37 | @domain && a << "domain=%s" % @domain |
@@ -19,7 +19,7 @@ | ||
19 | 19 | def decode(query) |
20 | 20 | query.to_s.split(/[&;]/).inject(Query.new) do |ret, q| |
21 | 21 | key, val = q.split('=') |
22 | - ret[CGI.unescape(key)] = CGI.unescape(val) | |
22 | + ret[CGI.decode(key)] = CGI.decode(val) | |
23 | 23 | ret |
24 | 24 | end |
25 | 25 | end |
@@ -27,10 +27,6 @@ | ||
27 | 27 | |
28 | 28 | include Enumerable |
29 | 29 | |
30 | - #def initialize(query={}) | |
31 | - # @query = query | |
32 | - #end | |
33 | - # | |
34 | 30 | def initialize |
35 | 31 | @query = {} |
36 | 32 | end |
@@ -75,7 +71,7 @@ | ||
75 | 71 | if v.empty? |
76 | 72 | ret << key |
77 | 73 | else |
78 | - ret << "%s=%s" % [key, CGI.escape(v)] | |
74 | + ret << "%s=%s" % [key, CGI.encode(v)] | |
79 | 75 | end |
80 | 76 | end |
81 | 77 | else |
@@ -82,7 +78,7 @@ | ||
82 | 78 | if val.empty? |
83 | 79 | ret << key |
84 | 80 | else |
85 | - ret << "%s=%s" % [key, CGI.escape(val)] | |
81 | + ret << "%s=%s" % [key, CGI.encode(val)] | |
86 | 82 | end |
87 | 83 | end |
88 | 84 | ret |
@@ -9,11 +9,11 @@ | ||
9 | 9 | module Tenarai |
10 | 10 | class CGI |
11 | 11 | class << self |
12 | - def escape(s) | |
12 | + def encode(s) | |
13 | 13 | s.to_s.gsub(/[^\w ]/n) do |c| '%%%02x' % c[0] end.tr(' ', '+') |
14 | 14 | end |
15 | 15 | |
16 | - def unescape(s) | |
16 | + def decode(s) | |
17 | 17 | s.to_s.tr('+', ' ').gsub(/((?:%[0-9a-fA-F]{2})+)/n) do |
18 | 18 | [$1.delete('%')].pack('H*') |
19 | 19 | end |
@@ -97,7 +97,7 @@ | ||
97 | 97 | aw.min <=> bw.min |
98 | 98 | end.each do |w, val| |
99 | 99 | query = val.split(',').map do |v| |
100 | - Tenarai::CGI.unescape(v) | |
100 | + Tenarai::CGI.decode(v) | |
101 | 101 | end |
102 | 102 | w.init(*query) |
103 | 103 | end |