【发布时间】:2015-08-31 08:09:41
【问题描述】:
我有这个单元测试代码:
require 'rails_helper'
require 'fetch_controller'
RSpec.describe FetchController, type: :controller do
it "parse base 64 url" do
result = FetchController.parse_urls('aHR0cDovL3d3dy5nb29nbGUuY29t')
expect(result[0]).to eq('http://www.google.com')
end
end
我想测试 fetch_controller 中的 parse_urls 方法:
class FetchController < ApplicationController
...
def parse_urls(base)
Base64.decode64(base).split(',')
end
但是当我尝试运行它时出现错误 ": in `require': cannot load such file -- fetch_controller (LoadError)"
感谢您的帮助, 约尔
【问题讨论】:
-
您是否尝试删除
require 'fetch_controller'行? -
你写过名为“fetch_controller”的文件吗?
-
我的应用下有 fetch_controller。我应该根据规范再写一个吗?如果是这样,我应该在文件中写什么:'class FetchController def initialize end end'我不明白如何初始化它。谢谢!
-
@Joel 你不应该手动要求控制器,它应该由 rspec 完成。
-
@dimakura,我删除了 require 控制器,但我得到了未初始化的常量 FetchController
标签: ruby-on-rails ruby unit-testing rspec