From 0a4010728a85669c8f6ea4fffa53cc303f11c68a Mon Sep 17 00:00:00 2001 From: fleuria Date: Sat, 16 Nov 2013 14:22:15 +0800 Subject: make test/assert.rb cruby compatible --- test/assert.rb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/test/assert.rb b/test/assert.rb index 3d35fc267..d2d865649 100644 --- a/test/assert.rb +++ b/test/assert.rb @@ -9,10 +9,11 @@ def t_print(*args) i = 0 len = args.size while i < len + str = args[i].to_s begin - __printstr__ args[i].to_s + __printstr__ str rescue NoMethodError - __t_printstr__ args[i].to_s + __t_printstr__ str rescue print str end i += 1 end -- cgit v1.2.3 From 1404d491d2c8a4cbe25b86978f6cfc7cc37a01e6 Mon Sep 17 00:00:00 2001 From: fleuria Date: Sat, 16 Nov 2013 14:25:57 +0800 Subject: add test/bintest.rb --- test/bintest.rb | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 test/bintest.rb diff --git a/test/bintest.rb b/test/bintest.rb new file mode 100644 index 000000000..e9dbb285e --- /dev/null +++ b/test/bintest.rb @@ -0,0 +1,8 @@ +$:.unshift File.dirname(File.dirname(File.expand_path(__FILE__))) +require 'test/assert.rb' + +Dir['mrbgems/**/bintest/*.rb'].each do |file| + load file +end + +load 'test/report.rb' -- cgit v1.2.3 From 06914f607c12ed7426dba512ba51bb6fc1c31090 Mon Sep 17 00:00:00 2001 From: fleuria Date: Sat, 16 Nov 2013 14:26:38 +0800 Subject: add conf.enable_bintest and run_bintest --- tasks/mruby_build.rake | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/tasks/mruby_build.rake b/tasks/mruby_build.rake index ff6110884..e1aae502a 100644 --- a/tasks/mruby_build.rake +++ b/tasks/mruby_build.rake @@ -43,7 +43,7 @@ module MRuby end include Rake::DSL include LoadGems - attr_accessor :name, :bins, :exts, :file_separator, :build_dir, :gem_clone_dir + attr_accessor :name, :bins, :exts, :file_separator, :build_dir, :gem_clone_dir, :enable_bintest attr_reader :libmruby, :gems COMPILERS = %w(cc cxx objc asm) @@ -170,7 +170,12 @@ module MRuby puts ">>> Test #{name} <<<" mrbtest = exefile("#{build_dir}/test/mrbtest") sh "#{filename mrbtest.relative_path}#{$verbose ? ' -v' : ''}" - puts + puts + run_bintest if @enable_bintest + end + + def run_bintest + sh "ruby test/bintest.rb" end def print_build_summary -- cgit v1.2.3 From 2d646a13f714172356fe27183516e26ceac11adc Mon Sep 17 00:00:00 2001 From: fleuria Date: Sat, 16 Nov 2013 14:32:43 +0800 Subject: add regression for #1564 --- mrbgems/mruby-bin-mruby/bintest/mruby.rb | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 mrbgems/mruby-bin-mruby/bintest/mruby.rb diff --git a/mrbgems/mruby-bin-mruby/bintest/mruby.rb b/mrbgems/mruby-bin-mruby/bintest/mruby.rb new file mode 100644 index 000000000..46372d1d2 --- /dev/null +++ b/mrbgems/mruby-bin-mruby/bintest/mruby.rb @@ -0,0 +1,6 @@ +assert('regression for #1564') do + o = `bin/mruby -e '<<' 2>&1` + assert_equal o, "-e:1:2: syntax error, unexpected tLSHFT\n" + o = `bin/mruby -e '<<-' 2>&1` + assert_equal o, "-e:1:3: syntax error, unexpected tLSHFT\n" +end -- cgit v1.2.3 From 995e0f89cfd5d256c918031207097d2c6c0023c4 Mon Sep 17 00:00:00 2001 From: fleuria Date: Sat, 16 Nov 2013 14:41:33 +0800 Subject: add regression for #1572 --- build_config.rb | 1 + mrbgems/mruby-bin-mruby/bintest/mruby.rb | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/build_config.rb b/build_config.rb index fce424686..58b1f1e24 100644 --- a/build_config.rb +++ b/build_config.rb @@ -70,6 +70,7 @@ MRuby::Build.new do |conf| # file separetor # conf.file_separator = '/' + conf.enable_bintest = true end # Define cross build settings diff --git a/mrbgems/mruby-bin-mruby/bintest/mruby.rb b/mrbgems/mruby-bin-mruby/bintest/mruby.rb index 46372d1d2..2eb41d758 100644 --- a/mrbgems/mruby-bin-mruby/bintest/mruby.rb +++ b/mrbgems/mruby-bin-mruby/bintest/mruby.rb @@ -4,3 +4,10 @@ assert('regression for #1564') do o = `bin/mruby -e '<<-' 2>&1` assert_equal o, "-e:1:3: syntax error, unexpected tLSHFT\n" end + +assert('regression for #1572') do + system "echo 'p \"ok\"' > /tmp/1572.rb" + system "bin/mrbc -g -o /tmp/1572.mrb /tmp/1572.rb" + o = `bin/mruby -b /tmp/1572.mrb`.strip + assert_equal o, '"ok"' +end -- cgit v1.2.3 From 14429ef268c580d1780cf547bb1ea9a5445933f9 Mon Sep 17 00:00:00 2001 From: fleuria Date: Sat, 16 Nov 2013 15:01:32 +0800 Subject: add regression for #1563 --- mrbgems/mruby-bin-mirb/bintest/mirb.rb | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 mrbgems/mruby-bin-mirb/bintest/mirb.rb diff --git a/mrbgems/mruby-bin-mirb/bintest/mirb.rb b/mrbgems/mruby-bin-mirb/bintest/mirb.rb new file mode 100644 index 000000000..ed53321bd --- /dev/null +++ b/mrbgems/mruby-bin-mirb/bintest/mirb.rb @@ -0,0 +1,12 @@ +require 'open3' + +assert('mirb normal operations') do + o, s = Open3.capture2('bin/mirb', :stdin_data => "a=1\nb=2\na+b\n") + assert_true o.include?('=> 3') + assert_true o.include?('=> 2') +end + +assert('regression for #1563') do + o, s = Open3.capture2('bin/mirb', :stdin_data => "a=1;b=2;c=3\nb\nc") + assert_true o.include?('=> 3') +end -- cgit v1.2.3 From 50c029f09d6c30f1074b374cdec3cb7a0c61c5d4 Mon Sep 17 00:00:00 2001 From: fleuria Date: Sat, 16 Nov 2013 15:02:53 +0800 Subject: enable bintest for travis CI --- travis_config.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/travis_config.rb b/travis_config.rb index bd2939f94..9a82e65aa 100644 --- a/travis_config.rb +++ b/travis_config.rb @@ -4,4 +4,5 @@ MRuby::Build.new do |conf| # include all core GEMs conf.gembox 'full-core' conf.cc.defines = %w(MRB_DEBUG) + conf.enable_bintest = true end -- cgit v1.2.3 From 05fb139d28c2814b2b19a65d0f83c72bc1644777 Mon Sep 17 00:00:00 2001 From: fleuria Date: Sat, 16 Nov 2013 15:13:58 +0800 Subject: add a comment for enable_bintest in build_config.rb --- build_config.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/build_config.rb b/build_config.rb index 58b1f1e24..11c09b199 100644 --- a/build_config.rb +++ b/build_config.rb @@ -70,7 +70,9 @@ MRuby::Build.new do |conf| # file separetor # conf.file_separator = '/' - conf.enable_bintest = true + + # bintest + # conf.enable_bintest = true end # Define cross build settings -- cgit v1.2.3