我正試圖在rspec中爲我正在寫的一個gem實現一些簡單的測試。當我將describe BikeShare do
註釋掉到end
並運行該文件時,該文件將加載併成功運行。我相信這是我錯過的小事。未初始化的常量BikeShare(NameError)
我的測試文件是非常簡單的,看起來像這樣:
require 'spec_helper'
describe BikeShare do
it "should run" do
# response = BikeShare.new
# response.should_be present
end
end
運行時,我得到的錯誤uninitialized constant BikeShare (NameError)
在第3行
我bikeshare.rb
文件看起來像這樣,很簡單:
class BikeShare
def initialize
response = JSON.parse(open("http://bayareabikeshare.com/stations/json").read)
@response = response["stationBeanList"]
end
def get_last_station
@response.last["id"]
end
end
我Rakefile
看起來是這樣的:
require 'rubygems'
require 'bundler'
Bundler.setup
Bundler::GemHelper.install_tasks
require 'rspec/core/rake_task'
RSpec::Core::RakeTask.new do |spec|
# spec.libs << 'lib' << 'spec'
spec.pattern = 'spec/*_spec.rb'
end
task :default => :spec
我不使用rspec,所以我可能會錯,但它是如何知道你的自行車共享類?你可能只需要它。 –
工作。謝謝!如果你想寫一個答案,很高興給你信用。 –