From fe54190f68fa3326ea933bacc100f88878031797 Mon Sep 17 00:00:00 2001 From: ko1 Date: Mon, 9 Jun 2008 12:10:43 +0000 Subject: * bootstraptest/test_knownbug.rb -> ./test_knownbug.rb: moved. * common.mk: add a rule "test-knownbug". git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17057 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 6 +++ bootstraptest/test_knownbug.rb | 107 ----------------------------------------- common.mk | 5 +- test_knownbug.rb | 107 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 117 insertions(+), 108 deletions(-) delete mode 100644 bootstraptest/test_knownbug.rb create mode 100644 test_knownbug.rb diff --git a/ChangeLog b/ChangeLog index 29fe0dc394..e80afef5d9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Mon Jun 9 21:09:02 2008 Koichi Sasada + + * bootstraptest/test_knownbug.rb -> ./test_knownbug.rb: moved. + + * common.mk: add a rule "test-knownbug". + Mon Jun 9 21:00:32 2008 Tadayoshi Funaba * complex.c (nucomp_s_convert): can accept Complex('i'). diff --git a/bootstraptest/test_knownbug.rb b/bootstraptest/test_knownbug.rb deleted file mode 100644 index f907467651..0000000000 --- a/bootstraptest/test_knownbug.rb +++ /dev/null @@ -1,107 +0,0 @@ -# -# This test file concludes tests which point out known bugs. -# So all tests will cause failure. -# - -assert_equal 'ok', %q{ - class C - define_method(:foo) { - if block_given? - :ng - else - :ok - end - } - end - C.new.foo {} -}, '[ruby-core:14813]' - -assert_equal 'ok', %q{ - class C - define_method(:foo) { - if block_given? - :ng - else - :ok - end - } - end - C.new.foo -}, '[ruby-core:14813]' - -assert_equal 'ok', %q{ - a = lambda {|x, y, &b| b } - b = a.curry[1] - if b.call(2){} == nil - :ng - else - :ok - end -}, '[ruby-core:15551]' - -assert_normal_exit %q{ - g = Module.enum_for(:new) - loop { g.next } -}, '[ruby-dev:34128]' - -assert_normal_exit %q{ - Fiber.new(&Object.method(:class_eval)).resume("foo") -}, '[ruby-dev:34128]' - -assert_normal_exit %q{ - Thread.new("foo", &Object.method(:class_eval)).join -}, '[ruby-dev:34128]' - -assert_normal_exit %q{ - g = enum_for(:local_variables) - loop { g.next } -}, '[ruby-dev:34128]' - -assert_normal_exit %q{ - g = enum_for(:block_given?) - loop { g.next } -}, '[ruby-dev:34128]' - -assert_normal_exit %q{ - g = enum_for(:binding) - loop { g.next } -}, '[ruby-dev:34128]' - -assert_normal_exit %q{ - g = "abc".enum_for(:scan, /./) - loop { g.next } -}, '[ruby-dev:34128]' - -assert_equal %q{[:bar, :foo]}, %q{ - def foo - klass = Class.new do - define_method(:bar) do - return :bar - end - end - [klass.new.bar, :foo] - end - foo -}, "[ ruby-Bugs-19304 ]" - -assert_equal 'ok', %q{ - lambda { - break :ok - :ng - }.call -}, '[ruby-dev:34646]' - -assert_normal_exit %q{ - eval("", method(:proc).call {}.binding) -} - -assert_normal_exit %q{ - a = [] - 100.times {|i| a << i << nil << nil } - p a.compact! -} - -assert_equal 'ok', %q{ - a = [false] - (a[0] &&= true) == false ? :ok : :ng -}, '[ruby-dev:34679]' diff --git a/common.mk b/common.mk index 3f6986e40d..b4f3f816ac 100644 --- a/common.mk +++ b/common.mk @@ -360,7 +360,10 @@ btest-miniruby: miniruby$(EXEEXT) $(RBCONFIG) $(PROGRAM) PHONY test-sample: miniruby$(EXEEXT) $(RBCONFIG) $(PROGRAM) PHONY @$(MINIRUBY) $(srcdir)/rubytest.rb -test: test-sample btest-miniruby +test-knownbug: miniruby$(EXEEXT) $(PROGRAM) PHONY + $(BOOTSTRAPRUBY) "$(srcdir)/bootstraptest/runner.rb" --ruby="$(PROGRAM)" $(srcdir)/test_knownbug.rb + +test: test-sample btest-miniruby test-knownbug test-all: $(RUNRUBY) "$(srcdir)/test/runner.rb" --basedir="$(TESTSDIR)" --runner=$(TESTUI) $(TESTS) diff --git a/test_knownbug.rb b/test_knownbug.rb new file mode 100644 index 0000000000..f907467651 --- /dev/null +++ b/test_knownbug.rb @@ -0,0 +1,107 @@ +# +# This test file concludes tests which point out known bugs. +# So all tests will cause failure. +# + +assert_equal 'ok', %q{ + class C + define_method(:foo) { + if block_given? + :ng + else + :ok + end + } + end + C.new.foo {} +}, '[ruby-core:14813]' + +assert_equal 'ok', %q{ + class C + define_method(:foo) { + if block_given? + :ng + else + :ok + end + } + end + C.new.foo +}, '[ruby-core:14813]' + +assert_equal 'ok', %q{ + a = lambda {|x, y, &b| b } + b = a.curry[1] + if b.call(2){} == nil + :ng + else + :ok + end +}, '[ruby-core:15551]' + +assert_normal_exit %q{ + g = Module.enum_for(:new) + loop { g.next } +}, '[ruby-dev:34128]' + +assert_normal_exit %q{ + Fiber.new(&Object.method(:class_eval)).resume("foo") +}, '[ruby-dev:34128]' + +assert_normal_exit %q{ + Thread.new("foo", &Object.method(:class_eval)).join +}, '[ruby-dev:34128]' + +assert_normal_exit %q{ + g = enum_for(:local_variables) + loop { g.next } +}, '[ruby-dev:34128]' + +assert_normal_exit %q{ + g = enum_for(:block_given?) + loop { g.next } +}, '[ruby-dev:34128]' + +assert_normal_exit %q{ + g = enum_for(:binding) + loop { g.next } +}, '[ruby-dev:34128]' + +assert_normal_exit %q{ + g = "abc".enum_for(:scan, /./) + loop { g.next } +}, '[ruby-dev:34128]' + +assert_equal %q{[:bar, :foo]}, %q{ + def foo + klass = Class.new do + define_method(:bar) do + return :bar + end + end + [klass.new.bar, :foo] + end + foo +}, "[ ruby-Bugs-19304 ]" + +assert_equal 'ok', %q{ + lambda { + break :ok + :ng + }.call +}, '[ruby-dev:34646]' + +assert_normal_exit %q{ + eval("", method(:proc).call {}.binding) +} + +assert_normal_exit %q{ + a = [] + 100.times {|i| a << i << nil << nil } + p a.compact! +} + +assert_equal 'ok', %q{ + a = [false] + (a[0] &&= true) == false ? :ok : :ng +}, '[ruby-dev:34679]' -- cgit v1.2.3