Мой класс отвечает за связь с правлением компании Jira, которое я хочу протестировать.
class
module Jira
class JiraConnection
URL = 'https://company_name.atlassian.net/'.freeze
def call
JIRA::Client.new(options)
end
private
def options
{
username: ENV['USERNAME'],
password: ENV['PASSWORD'],
site: URL,
context_path: '',
auth_type: :basic,
use_ssl: true
}
end
end
end
JIRA::Client.new
происходит от jira- ruby драгоценный камень . Я хочу проверить это
мои характеристики:
RSpec.describe Jira::JiraConnection, type: :service do
subject(:connect) { described_class.new }
let(:options) do
{
username: username_secret,
password: password_secret,
site: 'https://company_name.atlassian.net/',
context_path: '',
auth_type: :basic,
use_ssl: true
}
end
let(:username_secret) { ENV.fetch('USERNAME') }
let(:password_secret) { ENV.fetch('PASSWORD') }
before do
allow(JIRA::Client).to receive(:new).with(options)
end
it 'connect to Jira API' do
expect(subject.call).to receive(JIRA::Client)
end
end
При указанных выше характеристиках я получаю сообщение об ошибке:
Failure/Error: expect(subject.call).to receive(JIRA::Client)
NoMethodError:
undefined method `to_sym' for JIRA::Client:Class
Did you mean? to_s