Я использую jira- ruby gem , чтобы создать проблему jira с помощью моего приложения. Билет на доске Jira должен быть создан на одной или двух досках, в зависимости от того, какое действие было инициировано ранее. Например, когда новый участник был добавлен в репо, он должен создать два тикета на двух отдельных досках (поддержка и безопасность). Я должен использовать client.Issue.build дважды (это метод gem), поэтому мне нужно сделать что-то вроде:
def call
if SUPPORTBOARD_WEBHOOKS_CLASSES.include?(webhook.action_type_class)
issue = client.Issue.build
issue.save(support_ticket_class.new(webhook))
end
if SECURIY_WEBHOOKS_CLASSES.include?(webhook.action_type_class)
issue = client.Issue.build
issue.save(security_ticket_class.new(webhook))
end
end
Из-за RSpe c проблемы с заглушкой client.Issue.build
( здесь имеет отношение topi c) Я хочу извлечь, чтобы отделить метод ниже части от if blo c:
issue = client.Issue.build
issue.save(...)
Как передать support_ticket_class.new(webhook)
или security_ticket_class.new(webhook)
в issue.save()
зависит от блока if выше и извлеките его другим методом.