Now the both values are stored, but i.e. `controller` method, created an... #564

Merged
merged 2 commits into from Feb 5, 2012
@@ -102,8 +102,8 @@ module GroupMetadataHash
def described_class
container_stack.each do |g|
- return g[:describes] if g.has_key?(:describes)
return g[:described_class] if g.has_key?(:described_class)
+ return g[:describes] if g.has_key?(:describes)
end
container_stack.reverse.each do |g|
@@ -293,6 +293,22 @@ def metadata_hash(*args)
group.run.should be_true
end
end
+
+ context "and metadata redefinition after `described_class` call" do
+ it "is the redefined level constant" do
+ group = ExampleGroup.describe(String) do
+ described_class
+ metadata[:example_group][:described_class] = Object
+ describe :symbol do
+ example "described_class is Object" do
+ described_class.should eq(Object)
+ end
+ end
+ end
+
+ group.run.should be_true
+ end
+ end
end
context "in a nested group" do