null+****@clear*****
null+****@clear*****
2012年 6月 6日 (水) 17:15:17 JST
Haruka Yoshihara 2012-06-06 17:15:17 +0900 (Wed, 06 Jun 2012) New Revision: b25672371e29bd2c6f9e9e57a2eff477159fe7a4 Log: Use CGI instead of Rack Modified files: lib/groonga/tester.rb test/test-executor.rb Modified: lib/groonga/tester.rb (+9 -2) =================================================================== --- lib/groonga/tester.rb 2012-06-06 17:05:09 +0900 (90a1c50) +++ lib/groonga/tester.rb 2012-06-06 17:15:17 +0900 (172721c) @@ -24,6 +24,7 @@ require "tempfile" require "json" require "shellwords" require "open-uri" +require "cgi/util" module Groonga class Tester @@ -769,8 +770,14 @@ module Groonga def build_url(command, named_arguments) url = "/d/#{command}" - query = Rack::Utils.build_query(named_arguments) - url << "?#{query}" unless query.empty? + query_parameters = [] + named_arguments.each do |name, argument| + query_parameters << "#{CGI.escape(name)}=#{CGI.escape(argument)}" + end + unless query_parameters.empty? + url << "?" + url << query_parameters.join("&") + end url end end Modified: test/test-executor.rb (+10 -4) =================================================================== --- test/test-executor.rb 2012-06-06 17:05:09 +0900 (2558ddf) +++ test/test-executor.rb 2012-06-06 17:15:17 +0900 (1bda6fe) @@ -14,7 +14,7 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. require "stringio" -require "rack/utils" +require "cgi/util" require "groonga/tester" class TestExecutor < Test::Unit::TestCase @@ -177,10 +177,16 @@ EOF converter.to_url end - def build_url(command, arguments) + def build_url(command, named_arguments) url = "/d/#{command}" - query = Rack::Utils.build_query(arguments) - url << "?#{query}" unless query.empty? + query_parameters = [] + named_arguments.each do |name, argument| + query_parameters << "#{CGI.escape(name)}=#{CGI.escape(argument)}" + end + unless query_parameters.empty? + url << "?" + url << query_parameters.join("&") + end url end end