lib/rspec/core/my_methods.rb
module MyLovelyModule
class My_methods
def my_lovely_method
save_world
config.to_prepare do
Dir.glob(Rails.root + "../simpleRspec/dummy_classes.rb").each do |c|
require_dependency(c)
end
end
end
end
end
lib/simpleRspec/dummy_classes.rb
describe MyLovelyModule do
class DummyClasses
before(:all) do
@dummy = DummyClasses.new
@dummy.extend MyLovelyModule
end
describe "MyLovelyModule" do
it "saves the world" do
expect {
@dummy.my_lovely_method
}.to raise_error MeltDownException
end
end
end
end
I got a error like that:-
C:/Users/afzala/RubymineProjects/simpleRspec/lib/simpleRspec/dummy_classes.rb:2:in `<top (required)>': uninitialized constant MyLovelyModule (NameError)
from -e:1:in `load'
from -e:1:in `<main>'
Process finished with exit code 1
could anyone please help me out for this issue
You need to load your module first. You also need to close the class before you define tests:
require 'lib/rspec/core/my_methods.rb'
describe MyLovelyModule do
class DummyClasses
end
before(:all) do
@dummy = DummyClasses.new
@dummy.extend MyLovelyModule
end
describe "MyLovelyModule" do
it "saves the world" do
expect {
@dummy.my_lovely_method
}.to raise_error MeltDownException
end
end
end
Also you will not be able to access @dummy
in your test. You need to use before(:each)
in place of before(:all)
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.