Я пытаюсь проверить jira-ruby gem
. В соответствии с Jira- Ruby gem docs У меня такая же настройка, чтобы найти проект Jira.
class ProjectConnection
def initialize(project_key)
@project_key = project_key
end
def call
client = JIRA::Client.new(options)
client.Project.find(project_key)
end
private
attr_reader :project_key
def options
{
username: 'username',
password: 'password',
site: 'https://company.atlassian.net/',
context_path: '',
auth_type: :basic,
use_ssl: true
}
end
end
Я сделал спецификации:
RSpec.describe ProjectConnection do
subject { described_class.new(project_key) }
let(:project_key) { 'TSW-123' }
let(:options) do
{
username: 'user',
password: 'password',
site: 'https://example.com',
context_path: '',
auth_type: :basic,
use_ssl: true
}
end
let(:jira_client) { instance_double(JIRA::Client) }
let(:project) { instance_double(Project) }
before do
allow(JIRA::Client).to receive(:new).with(options).and_return(jira_client)
allow(Project).to receive(:find).with(project_key).and_return(project)
end
it 'connect to the project' do
expect(subject.call).to receive(JIRA::Resource::Project)
end
end
Я получаю сообщение об ошибке:
NameError: неинициализированная константа Project Вы имели в виду? Object
Итак, я изменил Project в моем макете на Object и у меня появилась другая ошибка:
Объект не реализуется: find
Как издеваться над этим Project
классом, который происходит от этого драгоценного камня?