mirror of
https://github.com/discourse/discourse.git
synced 2025-05-29 01:31:35 +08:00
DEV: Refactor the Automation Plugin UI to match admin UI guidelines (#31060)
This change updates the Automation plugin to make use of the `use_new_show_route` plugin flag, as well as generally updating the UI to match current admin UI guidelines. Notable changes include: - Moving template/router/controller files to make use of the `admin.adminPlugins.show` route. - Changing the URIs from `/admin/plugins/discourse-automation` to `/admin/plugins/automation`, to match the `PLUGIN_NAME`. - Adding UI wrappers around the New/Edit forms, and polishing the list of defined automations.
This commit is contained in:
@ -32,7 +32,7 @@ describe DiscourseAutomation::AdminAutomationsController do
|
||||
before { sign_in(Fabricate(:admin)) }
|
||||
|
||||
it "shows the automation" do
|
||||
get "/admin/plugins/discourse-automation/automations/#{automation.id}.json"
|
||||
get "/admin/plugins/automation/automations/#{automation.id}.json"
|
||||
expect(response.status).to eq(200)
|
||||
expect(response.parsed_body["automation"]["id"]).to eq(automation.id)
|
||||
end
|
||||
@ -42,7 +42,7 @@ describe DiscourseAutomation::AdminAutomationsController do
|
||||
before { sign_in(Fabricate(:user)) }
|
||||
|
||||
it "raises a 404" do
|
||||
get "/admin/plugins/discourse-automation/automations/#{automation.id}.json"
|
||||
get "/admin/plugins/automation/automations/#{automation.id}.json"
|
||||
expect(response.status).to eq(404)
|
||||
end
|
||||
end
|
||||
@ -63,7 +63,7 @@ describe DiscourseAutomation::AdminAutomationsController do
|
||||
before { sign_in(Fabricate(:admin)) }
|
||||
|
||||
it "creates the 'forced triggerable' automation" do
|
||||
post "/admin/plugins/discourse-automation/automations.json",
|
||||
post "/admin/plugins/automation/automations.json",
|
||||
params: {
|
||||
automation: {
|
||||
name: "foobar",
|
||||
@ -78,7 +78,7 @@ describe DiscourseAutomation::AdminAutomationsController do
|
||||
before { sign_in(Fabricate(:user)) }
|
||||
|
||||
it "raises a 404" do
|
||||
post "/admin/plugins/discourse-automation/automations.json",
|
||||
post "/admin/plugins/automation/automations.json",
|
||||
params: {
|
||||
automation: {
|
||||
name: "foobar",
|
||||
@ -95,7 +95,7 @@ describe DiscourseAutomation::AdminAutomationsController do
|
||||
before { sign_in(Fabricate(:admin)) }
|
||||
|
||||
it "updates the automation" do
|
||||
put "/admin/plugins/discourse-automation/automations/#{automation.id}.json",
|
||||
put "/admin/plugins/automation/automations/#{automation.id}.json",
|
||||
params: {
|
||||
automation: {
|
||||
trigger: "another-trigger",
|
||||
@ -106,7 +106,7 @@ describe DiscourseAutomation::AdminAutomationsController do
|
||||
|
||||
describe "invalid field’s component" do
|
||||
it "errors" do
|
||||
put "/admin/plugins/discourse-automation/automations/#{automation.id}.json",
|
||||
put "/admin/plugins/automation/automations/#{automation.id}.json",
|
||||
params: {
|
||||
automation: {
|
||||
script: automation.script,
|
||||
@ -129,7 +129,7 @@ describe DiscourseAutomation::AdminAutomationsController do
|
||||
end
|
||||
|
||||
it "errors" do
|
||||
put "/admin/plugins/discourse-automation/automations/#{automation.id}.json",
|
||||
put "/admin/plugins/automation/automations/#{automation.id}.json",
|
||||
params: {
|
||||
automation: {
|
||||
script: automation.script,
|
||||
@ -147,7 +147,7 @@ describe DiscourseAutomation::AdminAutomationsController do
|
||||
it "forces the automation to be disabled" do
|
||||
expect(automation.enabled).to eq(true)
|
||||
|
||||
put "/admin/plugins/discourse-automation/automations/#{automation.id}.json",
|
||||
put "/admin/plugins/automation/automations/#{automation.id}.json",
|
||||
params: {
|
||||
automation: {
|
||||
script: "bar",
|
||||
@ -164,7 +164,7 @@ describe DiscourseAutomation::AdminAutomationsController do
|
||||
it "forces the automation to be disabled" do
|
||||
expect(automation.enabled).to eq(true)
|
||||
|
||||
put "/admin/plugins/discourse-automation/automations/#{automation.id}.json",
|
||||
put "/admin/plugins/automation/automations/#{automation.id}.json",
|
||||
params: {
|
||||
automation: {
|
||||
script: automation.script,
|
||||
@ -181,7 +181,7 @@ describe DiscourseAutomation::AdminAutomationsController do
|
||||
it "disables the automation" do
|
||||
expect(automation.enabled).to eq(true)
|
||||
|
||||
put "/admin/plugins/discourse-automation/automations/#{automation.id}.json",
|
||||
put "/admin/plugins/automation/automations/#{automation.id}.json",
|
||||
params: {
|
||||
automation: {
|
||||
trigger: automation.trigger,
|
||||
@ -196,7 +196,7 @@ describe DiscourseAutomation::AdminAutomationsController do
|
||||
|
||||
context "with invalid field’s metadata" do
|
||||
it "errors" do
|
||||
put "/admin/plugins/discourse-automation/automations/#{automation.id}.json",
|
||||
put "/admin/plugins/automation/automations/#{automation.id}.json",
|
||||
params: {
|
||||
automation: {
|
||||
script: automation.script,
|
||||
@ -214,7 +214,7 @@ describe DiscourseAutomation::AdminAutomationsController do
|
||||
before { sign_in(Fabricate(:user)) }
|
||||
|
||||
it "raises a 404" do
|
||||
put "/admin/plugins/discourse-automation/automations/#{automation.id}.json",
|
||||
put "/admin/plugins/automation/automations/#{automation.id}.json",
|
||||
params: {
|
||||
automation: {
|
||||
trigger: "another-trigger",
|
||||
@ -232,13 +232,13 @@ describe DiscourseAutomation::AdminAutomationsController do
|
||||
before { sign_in(Fabricate(:admin)) }
|
||||
|
||||
it "destroys the automation" do
|
||||
delete "/admin/plugins/discourse-automation/automations/#{automation.id}.json"
|
||||
delete "/admin/plugins/automation/automations/#{automation.id}.json"
|
||||
expect(DiscourseAutomation::Automation.find_by(id: automation.id)).to eq(nil)
|
||||
end
|
||||
|
||||
context "when the automation is not found" do
|
||||
it "raises a 404" do
|
||||
delete "/admin/plugins/discourse-automation/automations/999.json"
|
||||
delete "/admin/plugins/automation/automations/999.json"
|
||||
expect(response.status).to eq(404)
|
||||
end
|
||||
end
|
||||
@ -248,7 +248,7 @@ describe DiscourseAutomation::AdminAutomationsController do
|
||||
before { sign_in(Fabricate(:user)) }
|
||||
|
||||
it "raises a 404" do
|
||||
delete "/admin/plugins/discourse-automation/automations/#{automation.id}.json"
|
||||
delete "/admin/plugins/automation/automations/#{automation.id}.json"
|
||||
expect(response.status).to eq(404)
|
||||
end
|
||||
end
|
||||
|
Reference in New Issue
Block a user