summaryrefslogtreecommitdiff
path: root/spec/ruby/core/kernel/__dir___spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/ruby/core/kernel/__dir___spec.rb')
-rw-r--r--spec/ruby/core/kernel/__dir___spec.rb7
1 files changed, 7 insertions, 0 deletions
diff --git a/spec/ruby/core/kernel/__dir___spec.rb b/spec/ruby/core/kernel/__dir___spec.rb
index 25df92a15d..3c34277277 100644
--- a/spec/ruby/core/kernel/__dir___spec.rb
+++ b/spec/ruby/core/kernel/__dir___spec.rb
@@ -5,6 +5,13 @@ describe "Kernel#__dir__" do
__dir__.should == File.realpath(File.dirname(__FILE__))
end
+ context "when used in eval with a given filename" do
+ it "returns File.dirname(filename)" do
+ eval("__dir__", nil, "foo.rb").should == "."
+ eval("__dir__", nil, "foo/bar.rb").should == "foo"
+ end
+ end
+
context "when used in eval with top level binding" do
it "returns the real name of the directory containing the currently-executing file" do
eval("__dir__", binding).should == File.realpath(File.dirname(__FILE__))