[前][次][番号順一覧][スレッド一覧]

ruby-changes:8626

From: xibbar <ko1@a...>
Date: Sun, 9 Nov 2008 00:40:15 +0900 (JST)
Subject: [ruby-changes:8626] Ruby:r20161 (trunk): fix test for 1.8

xibbar	2008-11-09 00:38:48 +0900 (Sun, 09 Nov 2008)

  New Revision: 20161

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=20161

  Log:
    fix test for 1.8

  Modified files:
    trunk/test/cgi/test_cgi_multipart.rb
    trunk/test/cgi/test_cgi_session.rb
    trunk/test/cgi/test_cgi_tag_helper.rb

Index: test/cgi/test_cgi_multipart.rb
===================================================================
--- test/cgi/test_cgi_multipart.rb	(revision 20160)
+++ test/cgi/test_cgi_multipart.rb	(revision 20161)
@@ -135,7 +135,11 @@
     ENV['CONTENT_LENGTH'] = input.length.to_s
     ENV['REQUEST_METHOD'] = 'POST'
     ## set $stdin
-    tmpfile = Tempfile.new(self.name, :binmode => true)
+    tmpfile = if RUBY_VERSION >="1.9"
+                Tempfile.new(self.name, :binmode => true)
+              else
+                Tempfile.new(self.name)
+              end
     tmpfile << input
     tmpfile.rewind()
     $stdin = tmpfile
Index: test/cgi/test_cgi_session.rb
===================================================================
--- test/cgi/test_cgi_session.rb	(revision 20160)
+++ test/cgi/test_cgi_session.rb	(revision 20161)
@@ -1,6 +1,7 @@
 require 'test/unit'
 require 'cgi'
 require 'cgi/session'
+require 'cgi/session/pstore'
 require 'stringio'
 
 class CGISessionTest < Test::Unit::TestCase
@@ -14,10 +15,10 @@
   def teardown
     @environ.each do |key, val| ENV.delete(key) end
     $stdout = STDOUT
-   FileUtils.rm(Dir::glob(File.dirname(__FILE__)+"/session_dir/*"))
+#    FileUtils.rm(Dir::glob(File.dirname(__FILE__)+"/session_dir/*"))
   end
 
-  def test_cgi_session_core
+  def test_cgi_session_filestore
     @environ = {
       'REQUEST_METHOD'  => 'GET',
   #    'QUERY_STRING'    => 'id=123&id=456&id=&str=%40h+%3D%7E+%2F%5E%24%2F',
@@ -25,13 +26,16 @@
       'SERVER_SOFTWARE' => 'Apache 2.2.0',
       'SERVER_PROTOCOL' => 'HTTP/1.1',
     }
+    value1="value1"
+    value2="\x8F\xBC\x8D]"
+    value2.force_encoding("SJIS") if RUBY_VERSION>="1.9"
     ENV.update(@environ)
     cgi = CGI.new
     session = CGI::Session.new(cgi,"tmpdir"=>File.dirname(__FILE__)+"/session_dir")
-    session["key1"]="value1"
-    session["key2"]="\x8F\xBC\x8D]".force_encoding("SJIS")
-    assert_equal("value1",session["key1"])
-    assert_equal("\x8F\xBC\x8D]".force_encoding("SJIS"),session["key2"])
+    session["key1"]=value1
+    session["key2"]=value2
+    assert_equal(value1,session["key1"])
+    assert_equal(value2,session["key2"])
     session.close
     $stdout = StringIO.new
     cgi.out{""}
@@ -47,9 +51,48 @@
     cgi = CGI.new
     session = CGI::Session.new(cgi,"tmpdir"=>File.dirname(__FILE__)+"/session_dir")
     $stdout = StringIO.new
-    assert_equal("value1",session["key1"])
-    assert_equal("\x8F\xBC\x8D]".force_encoding("SJIS"),session["key2"])
+    assert_equal(value1,session["key1"])
+    assert_equal(value2,session["key2"])
     session.close
 
   end
+  def test_cgi_session_pstore
+    @environ = {
+      'REQUEST_METHOD'  => 'GET',
+  #    'QUERY_STRING'    => 'id=123&id=456&id=&str=%40h+%3D%7E+%2F%5E%24%2F',
+  #    'HTTP_COOKIE'     => '_session_id=12345; name1=val1&val2;',
+      'SERVER_SOFTWARE' => 'Apache 2.2.0',
+      'SERVER_PROTOCOL' => 'HTTP/1.1',
+    }
+    value1="value1"
+    value2="\x8F\xBC\x8D]"
+    value2.force_encoding("SJIS") if RUBY_VERSION>="1.9"
+    ENV.update(@environ)
+    cgi = CGI.new
+    session = CGI::Session.new(cgi,"tmpdir"=>File.dirname(__FILE__)+"/session_dir","database_manager"=>CGI::Session::PStore)
+    session["key1"]=value1
+    session["key2"]=value2
+    assert_equal(value1,session["key1"])
+    assert_equal(value2,session["key2"])
+    session.close
+    $stdout = StringIO.new
+    cgi.out{""}
+
+    @environ = {
+      'REQUEST_METHOD'  => 'GET',
+      # 'HTTP_COOKIE'     => "_session_id=#{session_id}",
+      'QUERY_STRING'    => "_session_id=#{session.session_id}",
+      'SERVER_SOFTWARE' => 'Apache 2.2.0',
+      'SERVER_PROTOCOL' => 'HTTP/1.1',
+    }
+    ENV.update(@environ)
+    cgi = CGI.new
+    session = CGI::Session.new(cgi,"tmpdir"=>File.dirname(__FILE__)+"/session_dir","database_manager"=>CGI::Session::PStore)
+    $stdout = StringIO.new
+    assert_equal(value1,session["key1"])
+    assert_equal(value2,session["key2"])
+    session.close
+
+
+  end
 end
Index: test/cgi/test_cgi_tag_helper.rb
===================================================================
--- test/cgi/test_cgi_tag_helper.rb	(revision 20160)
+++ test/cgi/test_cgi_tag_helper.rb	(revision 20161)
@@ -318,7 +318,7 @@
     assert_match(/^<INPUT .*TYPE="checkbox".*>bb<INPUT .*TYPE="checkbox".*>dd$/,str)
     assert_match(/^<INPUT .*NAME="foo".*>bb<INPUT .*NAME="foo".*>dd$/,str)
     assert_match(/^<INPUT .*>bb<INPUT .*CHECKED.*>dd$/,str)
-    assert_match(/<INPUT .*TYPE="text".*>/,cgi.text_field(:name=>"name",:value=>"value"))
+    assert_match(/<INPUT .*TYPE="text".*>/,cgi.text_field(:name=>"name",:value=>"value")) if RUBY_VERSION>="1.9"
     if RUBY_VERSION>="1.9"
       str=cgi.radio_group("foo",["aa","bb"],["cc","dd",false])
       assert_match(/^<INPUT .*VALUE="aa".*>bb<INPUT .*VALUE="cc".*>dd$/,str)

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]