1
これは初心者の問題のようですが、私は困惑しています。私は単純なRubyスラックサービスを構築しようとしており、私はRSpecを使っていくつかのユニットテストをまとめています。私はこの奇妙な問題にぶつかり、何が起こっているのか分かりません。TypeError:シングルトン(RSpec)を定義できません
RSpec.describe SlackService do
let(:token) { 'BOT-TOKEN' }
subject do
SlackService.new(token)
end
describe '#channel_list' do
context 'get channels' do
let(:client) { instance_double(Slack::Web::Client) }
before(:each) do
allow(:subject).to receive(:client) { client }
@result = subject.channel_list
end
it { expect(@result).to eq [] }
end
end
end
私はrspec
を実行したときに私が手にエラーは、誰かがより多くの情報が必要な場合は編集します
Failures:
1) SlackService#channel_list get channels
Failure/Error: allow(:subject).to receive(:client) { instance_double(Slack::Web::Client) }
TypeError:
can't define singleton
# ./spec/slack_service_spec.rb:12:in `block (4 levels) in <top (required)>'
です。このエラーが何を意味するのか?私は何があってもそれを取り除くことはできない。
ああ、確かに。それを逃した。 –
それは難しいことです。私は以前にそれに遭遇しました。 :D –