From 8180b5bfc0fe4d4b91b590de9110687294552a8f Mon Sep 17 00:00:00 2001 From: eregon Date: Mon, 27 Aug 2018 14:25:00 +0000 Subject: Update to ruby/spec@09fa86c git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- spec/ruby/language/predefined/data_spec.rb | 12 ++++++++++++ spec/ruby/language/predefined/fixtures/data_offset.rb | 12 ++++++++++++ spec/ruby/language/predefined/fixtures/empty_data.rb | 3 +++ spec/ruby/language/predefined/fixtures/no_newline_data.rb | 3 +++ 4 files changed, 30 insertions(+) create mode 100644 spec/ruby/language/predefined/fixtures/data_offset.rb create mode 100644 spec/ruby/language/predefined/fixtures/empty_data.rb create mode 100644 spec/ruby/language/predefined/fixtures/no_newline_data.rb (limited to 'spec/ruby/language/predefined') diff --git a/spec/ruby/language/predefined/data_spec.rb b/spec/ruby/language/predefined/data_spec.rb index 1b636967d2..e57184ce99 100644 --- a/spec/ruby/language/predefined/data_spec.rb +++ b/spec/ruby/language/predefined/data_spec.rb @@ -23,6 +23,18 @@ describe "The DATA constant" do str.chomp.should == "data only" end + it "returns a File object with the right offset" do + ruby_exe(fixture(__FILE__, "data_offset.rb")).should == "File\n121\n" + end + + it "is set even if there is no data after __END__" do + ruby_exe(fixture(__FILE__, "empty_data.rb")).should == "31\n\"\"\n" + end + + it "is set even if there is no newline after __END__" do + ruby_exe(fixture(__FILE__, "no_newline_data.rb")).should == "30\n\"\"\n" + end + it "rewinds to the head of the main script" do ruby_exe(fixture(__FILE__, "data5.rb")).chomp.should == "DATA.rewind" end diff --git a/spec/ruby/language/predefined/fixtures/data_offset.rb b/spec/ruby/language/predefined/fixtures/data_offset.rb new file mode 100644 index 0000000000..9829b3f87f --- /dev/null +++ b/spec/ruby/language/predefined/fixtures/data_offset.rb @@ -0,0 +1,12 @@ +# some comment + +foo = <