module Foo
module Bar
module ModuleInEnclosingModule;end
class ClassInEnclosingModule;end
def method_in_enclosing_module;end
CONSTANT_IN_ENCLOSING_MODULE = 0
describe "Class and Module and Const defined in enclosing module are accessible and Methods are not, so Examples" do
it "does automatically get access to the context of Foo::Bar" do
ModuleInEnclosingModule
end
it "does automatically get access to ClassInEnclosingModule" do
ClassInEnclosingModule.new
end
it "does automatically get access to CONSTANT_IN_ENCLOSING_MODULE" do
CONSTANT_IN_ENCLOSING_MODULE
end
it "does not automatically get access to method_in_enclosing_module" do
lambda {method_in_enclosing_module}.should raise_error(/undefined/)
end
describe "that live inside a nested group" do
it "does automatically get access to the context of Foo::Bar" do
Foo::Bar
end
it "does automatically get access to ClassInEnclosingModule" do
ClassInEnclosingModule.new
end
it "does automatically get access to CONSTANT_IN_ENCLOSING_MODULE" do
CONSTANT_IN_ENCLOSING_MODULE
end
it "does automatically get access to method_in_enclosing_module" do
lambda {method_in_enclosing_module}.should raise_error(/undefined/)
end
end
end
describe "Method and Class and Module and Method defined in group are accessible, so examples" do
module ModuleDefinedInGroup;end
class ClassDefinedInGroup; end
def method_defined_in_group; end
CONSTANT_DEFINED_IN_GROUP = 0
it "does automatically get access to the context of Foo::Bar" do
ModuleDefinedInGroup
end
it "does automatically get access to ClassDefinedInGroup" do
ClassDefinedInGroup.new
end
it "does automatically get access to CONSTANT_DEFINED_IN_GROUP" do
CONSTANT_DEFINED_IN_GROUP
end
it "does automatically get access to method_defined_in_group" do
method_defined_in_group
end
describe "that live inside a nested group" do
it "does automatically get access to the context of Foo::Bar" do
ModuleDefinedInGroup
end
it "does automatically get access to ClassDefinedInGroup" do
ClassDefinedInGroup.new
end
it "does automatically get access to CONSTANT_DEFINED_IN_GROUP" do
CONSTANT_DEFINED_IN_GROUP
end
it "does automatically get access to method_defined_in_group" do
method_defined_in_group
end
end
end
end
end