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

ruby-changes:21624

From: akr <ko1@a...>
Date: Tue, 8 Nov 2011 20:51:38 +0900 (JST)
Subject: [ruby-changes:21624] akr:r33673 (trunk): * test/dbm/test_dbm.rb: split tests for read only database.

akr	2011-11-08 20:51:28 +0900 (Tue, 08 Nov 2011)

  New Revision: 33673

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

  Log:
    * test/dbm/test_dbm.rb: split tests for read only database.
    
    * test/gdbm/test_gdbm.rb: ditto.

  Modified files:
    trunk/ChangeLog
    trunk/test/dbm/test_dbm.rb
    trunk/test/gdbm/test_gdbm.rb

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 33672)
+++ ChangeLog	(revision 33673)
@@ -1,3 +1,9 @@
+Tue Nov  8 20:50:45 2011  Tanaka Akira  <akr@f...>
+
+	* test/dbm/test_dbm.rb: split tests for read only database.
+
+	* test/gdbm/test_gdbm.rb: ditto.
+
 Tue Nov  8 18:59:07 2011  Tanaka Akira  <akr@f...>
 
 	* ext/pty/pty.c (MasterDevice): define only when used.
Index: test/dbm/test_dbm.rb
===================================================================
--- test/dbm/test_dbm.rb	(revision 33672)
+++ test/dbm/test_dbm.rb	(revision 33673)
@@ -10,8 +10,8 @@
   require 'tmpdir'
   require 'fileutils'
 
-  class TestDBM < Test::Unit::TestCase
-    def TestDBM.uname_s
+  class TestDBM_RDONLY < Test::Unit::TestCase
+    def TestDBM_RDONLY.uname_s
       require 'rbconfig'
       case RbConfig::CONFIG['target_os']
       when 'cygwin'
@@ -31,7 +31,6 @@
       @tmpdir = Dir.mktmpdir("tmptest_dbm")
       @prefix = "tmptest_dbm_#{$$}"
       @path = "#{@tmpdir}/#{@prefix}_"
-      assert_instance_of(DBM, @dbm = DBM.new(@path))
 
       # prepare to make readonly DBM file
       DBM.open("#{@tmpdir}/#{@prefix}_rdonly") {|dbm|
@@ -43,7 +42,6 @@
       assert_instance_of(DBM, @dbm_rdonly = DBM.new("#{@tmpdir}/#{@prefix}_rdonly", nil))
     end
     def teardown
-      assert_nil(@dbm.close)
       assert_nil(@dbm_rdonly.close)
       ObjectSpace.each_object(DBM) do |obj|
         obj.close unless obj.closed?
@@ -51,6 +49,32 @@
       FileUtils.remove_entry_secure @tmpdir
     end
 
+    def test_delete_rdonly
+      if /^CYGWIN_9/ !~ SYSTEM
+        assert_raise(DBMError) {
+          @dbm_rdonly.delete("foo")
+        }
+
+        assert_nil(@dbm_rdonly.delete("bar"))
+      end
+    end
+  end
+
+  class TestDBM < Test::Unit::TestCase
+    def setup
+      @tmpdir = Dir.mktmpdir("tmptest_dbm")
+      @prefix = "tmptest_dbm_#{$$}"
+      @path = "#{@tmpdir}/#{@prefix}_"
+      assert_instance_of(DBM, @dbm = DBM.new(@path))
+    end
+    def teardown
+      assert_nil(@dbm.close)
+      ObjectSpace.each_object(DBM) do |obj|
+        obj.close unless obj.closed?
+      end
+      FileUtils.remove_entry_secure @tmpdir
+    end
+
     def check_size(expect, dbm=@dbm)
       assert_equal(expect, dbm.size)
       n = 0
@@ -322,15 +346,8 @@
       assert_equal(2, @dbm.size)
 
       assert_nil(@dbm.delete(key))
+    end
 
-      if /^CYGWIN_9/ !~ SYSTEM
-        assert_raise(DBMError) {
-          @dbm_rdonly.delete("foo")
-        }
-
-        assert_nil(@dbm_rdonly.delete("bar"))
-      end
-    end
     def test_delete_with_block
       key = 'no called block'
       @dbm[key] = 'foo'
Index: test/gdbm/test_gdbm.rb
===================================================================
--- test/gdbm/test_gdbm.rb	(revision 33672)
+++ test/gdbm/test_gdbm.rb	(revision 33673)
@@ -10,8 +10,8 @@
   require 'tmpdir'
   require 'fileutils'
 
-  class TestGDBM < Test::Unit::TestCase
-    def TestGDBM.uname_s
+  class TestGDBM_RDONLY < Test::Unit::TestCase
+    def TestGDBM_RDONLY.uname_s
       require 'rbconfig'
       case RbConfig::CONFIG['target_os']
       when 'cygwin'
@@ -31,7 +31,6 @@
       @tmpdir = Dir.mktmpdir("tmptest_gdbm")
       @prefix = "tmptest_gdbm_#{$$}"
       @path = "#{@tmpdir}/#{@prefix}_"
-      assert_instance_of(GDBM, @gdbm = GDBM.new(@path))
 
       # prepare to make readonly GDBM file
       GDBM.open("#{@tmpdir}/#{@prefix}_rdonly", 0400) {|gdbm|
@@ -40,7 +39,6 @@
       assert_instance_of(GDBM, @gdbm_rdonly = GDBM.new("#{@tmpdir}/#{@prefix}_rdonly", nil))
     end
     def teardown
-      assert_nil(@gdbm.close)
       assert_nil(@gdbm_rdonly.close)
       ObjectSpace.each_object(GDBM) do |obj|
         obj.close unless obj.closed?
@@ -48,6 +46,34 @@
       FileUtils.remove_entry_secure @tmpdir
     end
 
+    def test_delete_rdonly
+      if /^CYGWIN_9/ !~ SYSTEM
+        assert_raise(GDBMError) {
+          @gdbm_rdonly.delete("foo")
+        }
+
+        assert_nil(@gdbm_rdonly.delete("bar"))
+      end
+    end
+  end
+
+  class TestGDBM < Test::Unit::TestCase
+    SYSTEM = TestGDBM_RDONLY::SYSTEM
+
+    def setup
+      @tmpdir = Dir.mktmpdir("tmptest_gdbm")
+      @prefix = "tmptest_gdbm_#{$$}"
+      @path = "#{@tmpdir}/#{@prefix}_"
+      assert_instance_of(GDBM, @gdbm = GDBM.new(@path))
+    end
+    def teardown
+      assert_nil(@gdbm.close)
+      ObjectSpace.each_object(GDBM) do |obj|
+        obj.close unless obj.closed?
+      end
+      FileUtils.remove_entry_secure @tmpdir
+    end
+
     def check_size(expect, gdbm=@gdbm)
       assert_equal(expect, gdbm.size)
       n = 0
@@ -438,15 +464,8 @@
       assert_equal(2, @gdbm.size)
 
       assert_nil(@gdbm.delete(key))
+    end
 
-      if /^CYGWIN_9/ !~ SYSTEM
-        assert_raise(GDBMError) {
-          @gdbm_rdonly.delete("foo")
-        }
-
-        assert_nil(@gdbm_rdonly.delete("bar"))
-      end
-    end
     def test_delete_with_block
       key = 'no called block'
       @gdbm[key] = 'foo'

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

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