mirror of
https://github.com/discourse/discourse.git
synced 2024-12-02 17:23:44 +08:00
64 lines
2.1 KiB
Ruby
64 lines
2.1 KiB
Ruby
|
# frozen_string_literal: true
|
||
|
|
||
|
describe "DiscourseAutomation | smoke test", type: :system, js: true do
|
||
|
fab!(:admin)
|
||
|
fab!(:group) { Fabricate(:group, name: "test") }
|
||
|
fab!(:badge) { Fabricate(:badge, name: "badge") }
|
||
|
|
||
|
before do
|
||
|
SiteSetting.discourse_automation_enabled = true
|
||
|
sign_in(admin)
|
||
|
end
|
||
|
|
||
|
context "when default_value fields are set" do
|
||
|
before do
|
||
|
DiscourseAutomation::Scriptable.add("test") do
|
||
|
triggerables %i[post_created_edited]
|
||
|
field :test, component: :text, default_value: "test-default-value"
|
||
|
end
|
||
|
end
|
||
|
|
||
|
after { DiscourseAutomation::Scriptable.remove("test") }
|
||
|
|
||
|
it "populate correctly" do
|
||
|
visit("/admin/plugins/discourse-automation")
|
||
|
find(".new-automation").click
|
||
|
fill_in("automation-name", with: "aaaaa")
|
||
|
select_kit = PageObjects::Components::SelectKit.new(".scriptables")
|
||
|
select_kit.expand
|
||
|
select_kit.select_row_by_value("test")
|
||
|
find(".create-automation").click
|
||
|
|
||
|
select_kit = PageObjects::Components::SelectKit.new(".triggerables")
|
||
|
select_kit.expand
|
||
|
select_kit.select_row_by_value("post_created_edited")
|
||
|
|
||
|
expect(find(".field input[name=test]").value).to eq("test-default-value")
|
||
|
end
|
||
|
end
|
||
|
|
||
|
it "works" do
|
||
|
visit("/admin/plugins/discourse-automation")
|
||
|
|
||
|
find(".new-automation").click
|
||
|
fill_in("automation-name", with: "aaaaa")
|
||
|
select_kit = PageObjects::Components::SelectKit.new(".scriptables")
|
||
|
select_kit.expand
|
||
|
select_kit.select_row_by_value("user_group_membership_through_badge")
|
||
|
find(".create-automation").click
|
||
|
select_kit = PageObjects::Components::SelectKit.new(".triggerables")
|
||
|
select_kit.expand
|
||
|
select_kit.select_row_by_value("user_first_logged_in")
|
||
|
select_kit = PageObjects::Components::SelectKit.new(".fields-section .combo-box")
|
||
|
select_kit.expand
|
||
|
select_kit.select_row_by_name("badge")
|
||
|
select_kit = PageObjects::Components::SelectKit.new(".group-chooser")
|
||
|
select_kit.expand
|
||
|
select_kit.select_row_by_name("test")
|
||
|
find(".automation-enabled input").click
|
||
|
find(".update-automation").click
|
||
|
|
||
|
expect(page).to have_field("automation-name", with: "aaaaa")
|
||
|
end
|
||
|
end
|