From 7df8b94926b79f280ed0be387897fa3d0187fb44 Mon Sep 17 00:00:00 2001 From: nobu Date: Sat, 25 Dec 2010 13:08:07 +0000 Subject: * test/with_diffent_ofs.rb (DifferentOFS): test suite for test suites affected by $,. * test/digest/test_digest_extend.rb (TestDigestExtend): should not assume $, invariant. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/csv/base.rb | 17 +++-------------- test/digest/test_digest_extend.rb | 9 ++++++--- test/with_diffent_ofs.rb | 22 ++++++++++++++++++++++ 3 files changed, 31 insertions(+), 17 deletions(-) create mode 100644 test/with_diffent_ofs.rb (limited to 'test') diff --git a/test/csv/base.rb b/test/csv/base.rb index 1f83bab4a9..31f949acda 100644 --- a/test/csv/base.rb +++ b/test/csv/base.rb @@ -2,19 +2,8 @@ require "test/unit" require "csv" -class TestCSV < Test::Unit::TestCase - module DifferentOFS - def setup - super - @ofs, $, = $,, "-" - end - def teardown - $, = @ofs - super - end - end +require_relative "../with_diffent_ofs.rb" - def self.with_diffrent_ofs - const_set(:DifferentOFS, Class.new(self).class_eval {include DifferentOFS}).name - end +class TestCSV < Test::Unit::TestCase + include DifferentOFS end diff --git a/test/digest/test_digest_extend.rb b/test/digest/test_digest_extend.rb index 9b8eda03fa..131f90d4c1 100644 --- a/test/digest/test_digest_extend.rb +++ b/test/digest/test_digest_extend.rb @@ -1,7 +1,10 @@ require 'test/unit' require 'digest' +require_relative '../with_diffent_ofs.rb' class TestDigestExtend < Test::Unit::TestCase + include DifferentOFS + class MyDigest < Digest::Class def initialize(*arg) super @@ -20,7 +23,7 @@ class TestDigestExtend < Test::Unit::TestCase alias << update def finish - (@buf.join.length % 256).chr + (@buf.join('').length % 256).chr end def reset @@ -39,8 +42,8 @@ class TestDigestExtend < Test::Unit::TestCase assert_equal('', Digest.hexencode('')) assert_equal('0102', Digest.hexencode("\1\2")) assert_equal( - (0..0xff).to_a.map { |c| sprintf("%02x", c ) }.join, - Digest.hexencode((0..0xff).to_a.map { |c| c.chr }.join) + (0..0xff).to_a.map { |c| sprintf("%02x", c ) }.join(''), + Digest.hexencode((0..0xff).to_a.map { |c| c.chr }.join('')) ) end diff --git a/test/with_diffent_ofs.rb b/test/with_diffent_ofs.rb new file mode 100644 index 0000000000..c3f6a4acc7 --- /dev/null +++ b/test/with_diffent_ofs.rb @@ -0,0 +1,22 @@ +module DifferentOFS + def setup + super + @ofs, $, = $,, "-" + end + def teardown + $, = @ofs + super + end + + mod = Module.new do + def with_diffrent_ofs + const_set(:DifferentOFS, Class.new(self).class_eval {include DifferentOFS}).name + end + end + class << self; self; end.class_eval do + define_method(:included) do |klass| + super(klass) + klass.extend(mod) + end + end +end -- cgit v1.2.3