Accessing helper module constants in rspec contexts

I’m trying to learn rspec, and came across something unexpected with
the following code. A little googling hasn’t turned any answers up so
far…

module TestHelper
CONSTANT = “constant”
end

context “A context” do
include TestHelper

specify “should allow unqualified access to included constants” do
CONSTANT.should_eql “constant”
end

specify “should allow qualified access to all constants” do
TestHelper::CONSTANT.should_eql “constant”
end
end

…I would expect both specifications to pass since I think that’s the
way Ruby itself behaves when using include (you get direct access to
constants in the local scope when included, right?), but the
unqualified specification fails. Is this a bug in rspec, a “feature”
of rspec, a mistake on my part, or something else?

On 2/7/07, Tekhne [email protected] wrote:

way Ruby itself behaves when using include (you get direct access to
constants in the local scope when included, right?), but the
unqualified specification fails. Is this a bug in rspec, a “feature”
of rspec, a mistake on my part, or something else?

It’s a known bug in rspec:

http://rubyforge.org/tracker/index.php?func=detail&aid=7613&group_id=797&atid=3152

Thanks for posting this - you may have actually shed some light on the
problem by posing the qualified and unqualified references.

Cheers,
David

On Feb 7, 9:10 pm, “David C.” [email protected] wrote:

It’s a known bug in rspec:

http://rubyforge.org/tracker/index.php?func=detail&aid=7613&group_id=

Ah, okay. Thanks a lot for the pointer. I should have searched the
tracker specifically. Next time =]

Cheers,
Pete

On 2/8/07, Tekhne [email protected] wrote:

On Feb 7, 9:10 pm, “David C.” [email protected] wrote:

It’s a known bug in rspec:

http://rubyforge.org/tracker/index.php?func=detail&aid=7613&group_id=

Ah, okay. Thanks a lot for the pointer. I should have searched the
tracker specifically. Next time =]

No problem.

Also - are you aware that there are lists specifically for rspec users
and developers? I try to keep an eye on rspec related messages on the
ruby-talk list, but the rspec lists have the eyes of a lot more people
so you might get better traction on your rspec questions there:

http://rubyforge.org/mail/?group_id=797

Cheers,
David