33 lines
882 B
Ruby
33 lines
882 B
Ruby
# frozen_string_literal: true
|
|
|
|
RSpec.describe ProblemCheck::UnreachableThemes do
|
|
subject(:check) { described_class.new }
|
|
|
|
describe ".call" do
|
|
let(:remote) do
|
|
RemoteTheme.create!(
|
|
remote_url: "https://github.com/org/testtheme",
|
|
last_error_text: last_error,
|
|
)
|
|
end
|
|
|
|
before { Fabricate(:theme, id: 50, remote_theme: remote, name: "Test Theme") }
|
|
|
|
context "when theme is unreachable" do
|
|
let(:last_error) { "Can't reach. Too short." }
|
|
|
|
it do
|
|
expect(check).to have_a_problem.with_priority("low").with_message(
|
|
'We were unable to check for updates on the following themes:<ul><li><a href="/admin/customize/themes/50">Test Theme</a></li></ul>',
|
|
)
|
|
end
|
|
end
|
|
|
|
context "when theme is reachable" do
|
|
let(:last_error) { nil }
|
|
|
|
it { expect(check).to be_chill_about_it }
|
|
end
|
|
end
|
|
end
|