From 7ae7ac4abab04f4351ae84f63f81b61a41843aff Mon Sep 17 00:00:00 2001 From: nobu Date: Thu, 29 Jul 2010 22:59:54 +0000 Subject: * util.c (ruby_add_suffix): fixed a bug returning uninitialized value. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28794 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/-ext-/test_add_suffix.rb | 47 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 test/-ext-/test_add_suffix.rb (limited to 'test') diff --git a/test/-ext-/test_add_suffix.rb b/test/-ext-/test_add_suffix.rb new file mode 100644 index 0000000000..0520baef8c --- /dev/null +++ b/test/-ext-/test_add_suffix.rb @@ -0,0 +1,47 @@ +require 'test/unit' +require_relative '../ruby/envutil' +require "-test-/add_suffix/bug" + +class Test_AddSuffix < Test::Unit::TestCase + Dir = "/dev/null/".freeze + Style_1 = (Dir+"foo").freeze + + def test_style_0 + assert_equal("a.x.y", Bug.add_suffix("a.x", ".y")) + end + + def test_style_1 + assert_equal(Style_1+".y", Bug.add_suffix(Style_1+".c", ".y")) + suffix = ".bak".freeze + assert_equal(Style_1+suffix, Bug.add_suffix(Style_1.dup, suffix)) + assert_equal(Style_1+suffix, Bug.add_suffix(Style_1+".bar", suffix)) + assert_equal(Style_1+".$$$", Bug.add_suffix(Style_1+suffix, suffix)) + assert_equal(Style_1+suffix, Bug.add_suffix(Style_1+".$$$", suffix)) + assert_equal(Style_1+".~~~", Bug.add_suffix(Style_1+".$$$", ".$$$")) + assert_equal(Dir+"makefile"+suffix, Bug.add_suffix(Dir+"makefile", suffix)) + end + + def test_style_2 + suffix = "~" + assert_equal(Style_1+"~", Bug.add_suffix(Style_1.dup, suffix)) + assert_equal(Style_1+".c~", Bug.add_suffix(Style_1+".c", suffix)) + assert_equal(Style_1+".c~~", Bug.add_suffix(Style_1+".c~", suffix)) + assert_equal(Style_1+"~.c~~", Bug.add_suffix(Style_1+".c~~", suffix)) + assert_equal(Style_1+"~~.c~~", Bug.add_suffix(Style_1+"~.c~~", suffix)) + assert_equal(Style_1+"~~~~~.cc~", Bug.add_suffix(Style_1+"~~~~~.ccc", suffix)) + assert_equal(Style_1+"~~~~~.$$$", Bug.add_suffix(Style_1+"~~~~~.c~~", suffix)) + assert_equal(Dir+"foo~.pas", Bug.add_suffix(Dir+"foo.pas", suffix)) + assert_equal(Dir+"makefile.~", Bug.add_suffix(Dir+"makefile", suffix)) + assert_equal(Dir+"longname.fi~", Bug.add_suffix(Dir+"longname.fil", suffix)) + assert_equal(Dir+"longnam~.fi~", Bug.add_suffix(Dir+"longname.fi~", suffix)) + assert_equal(Dir+"longnam~.$$$", Bug.add_suffix(Dir+"longnam~.fi~", suffix)) + end + + def test_style_3 + base = "a"*1000 + suffix = "-"+"b"*1000 + assert_equal(base+".~~~", Bug.add_suffix(base, suffix)) + assert_equal(base+".~~~", Bug.add_suffix(base+".$$$", suffix)) + assert_equal(base+".$$$", Bug.add_suffix(base+".~~~", suffix)) + end +end -- cgit v1.2.3