Skip to content

Commit

Permalink
DEV: add tests to ensure that error modal is showing data
Browse files Browse the repository at this point in the history
  • Loading branch information
Grubba27 committed Oct 17, 2024
1 parent 8cb81a7 commit 42b5497
Showing 1 changed file with 29 additions and 0 deletions.
29 changes: 29 additions & 0 deletions spec/system/create_channel_spec.rb
Original file line number Diff line number Diff line change
@@ -1,8 +1,16 @@
# frozen_string_literal: true
require_relative "../dummy_provider"

RSpec.describe "Create channel", type: :system do
fab!(:admin)

include_context "with dummy provider"
let(:manager) { ::DiscourseChatIntegration::Manager }
let(:chan1) { DiscourseChatIntegration::Channel.create!(provider: "dummy") }
let(:category) { Fabricate(:category) }
let(:topic) { Fabricate(:topic, category_id: category.id) }
let(:first_post) { Fabricate(:post, topic: topic) }

before do
SiteSetting.chat_integration_enabled = true
SiteSetting.chat_integration_discord_enabled = true
Expand All @@ -23,4 +31,25 @@
expect(page).to have_css(".channel-details")
expect(find(".channel-info")).to have_content("bloop")
end

it "shows error in chanel modal" do
DiscourseChatIntegration::Rule.create!(
channel: chan1,
filter: "watch",
category_id: category.id,
)

visit("/admin/plugins/chat-integration/dummy")

provider.set_raise_exception(
DiscourseChatIntegration::ProviderError.new info: { error_key: "hello" }
)
manager.trigger_notifications(first_post.id)
expect(find(".error-message")).to have_content(
I18n.t("js.chat_integration.channels_with_errors"),
)

find(".channel-title").find("button").click
expect(page).to have_content "{\n \"error_key\": \"hello\"\n}"
end
end

0 comments on commit 42b5497

Please sign in to comment.