Skip to content
This repository was archived by the owner on Jul 22, 2025. It is now read-only.

Commit ce0af4e

Browse files
committed
FIX: specs
1 parent fc61244 commit ce0af4e

File tree

8 files changed

+26
-17
lines changed

8 files changed

+26
-17
lines changed

app/controllers/discourse_ai/admin/ai_llms_controller.rb

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,10 @@ def index
3030
}
3131
end
3232

33-
def show
33+
def new
34+
end
35+
36+
def edit
3437
llm_model = LlmModel.find(params[:id])
3538
render json: LlmModelSerializer.new(llm_model)
3639
end

app/controllers/discourse_ai/admin/ai_personas_controller.rb

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ module Admin
55
class AiPersonasController < ::Admin::AdminController
66
requires_plugin ::DiscourseAi::PLUGIN_NAME
77

8-
before_action :find_ai_persona, only: %i[show update destroy create_user]
8+
before_action :find_ai_persona, only: %i[edit update destroy create_user]
99

1010
def index
1111
ai_personas =
@@ -33,7 +33,10 @@ def index
3333
render json: { ai_personas: ai_personas, meta: { tools: tools, llms: llms } }
3434
end
3535

36-
def show
36+
def new
37+
end
38+
39+
def edit
3740
render json: LocalizedAiPersonaSerializer.new(@ai_persona)
3841
end
3942

app/controllers/discourse_ai/admin/ai_tools_controller.rb

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,17 @@ module Admin
55
class AiToolsController < ::Admin::AdminController
66
requires_plugin ::DiscourseAi::PLUGIN_NAME
77

8-
before_action :find_ai_tool, only: %i[test show update destroy]
8+
before_action :find_ai_tool, only: %i[test edit update destroy]
99

1010
def index
1111
ai_tools = AiTool.all
1212
render_serialized({ ai_tools: ai_tools }, AiCustomToolListSerializer, root: false)
1313
end
1414

15-
def show
15+
def new
16+
end
17+
18+
def edit
1619
render_serialized(@ai_tool, AiCustomToolSerializer)
1720
end
1821

config/routes.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,15 +53,15 @@
5353

5454
scope "/admin/plugins/discourse-ai", constraints: AdminConstraint.new do
5555
resources :ai_personas,
56-
only: %i[index create show update destroy],
56+
only: %i[index new create edit update destroy],
5757
path: "ai-personas",
5858
controller: "discourse_ai/admin/ai_personas"
5959

6060
post "/ai-personas/stream-reply" => "discourse_ai/admin/ai_personas#stream_reply"
6161

6262
resources(
6363
:ai_tools,
64-
only: %i[index create show update destroy],
64+
only: %i[index new create edit update destroy],
6565
path: "ai-tools",
6666
controller: "discourse_ai/admin/ai_tools",
6767
)
@@ -81,7 +81,7 @@
8181
get "/ai-usage", to: "discourse_ai/admin/ai_usage#show"
8282

8383
resources :ai_llms,
84-
only: %i[index create show update destroy],
84+
only: %i[index new create edit update destroy],
8585
path: "ai-llms",
8686
controller: "discourse_ai/admin/ai_llms" do
8787
collection { get :test }

spec/requests/admin/ai_personas_controller_spec.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -141,9 +141,9 @@
141141
end
142142
end
143143

144-
describe "GET #show" do
144+
describe "GET #edit" do
145145
it "returns a success response" do
146-
get "/admin/plugins/discourse-ai/ai-personas/#{ai_persona.id}.json"
146+
get "/admin/plugins/discourse-ai/ai-personas/#{ai_persona.id}/edit.json"
147147
expect(response).to be_successful
148148
expect(response.parsed_body["ai_persona"]["name"]).to eq(ai_persona.name)
149149
end
@@ -152,7 +152,7 @@
152152
upload = Fabricate(:upload)
153153
RagDocumentFragment.link_target_and_uploads(ai_persona, [upload.id])
154154

155-
get "/admin/plugins/discourse-ai/ai-personas/#{ai_persona.id}.json"
155+
get "/admin/plugins/discourse-ai/ai-personas/#{ai_persona.id}/edit.json"
156156
expect(response).to be_successful
157157

158158
serialized_persona = response.parsed_body["ai_persona"]

spec/requests/admin/ai_tools_controller_spec.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,9 @@
3535
end
3636
end
3737

38-
describe "GET #show" do
38+
describe "GET #edit" do
3939
it "returns a success response" do
40-
get "/admin/plugins/discourse-ai/ai-tools/#{ai_tool.id}.json"
40+
get "/admin/plugins/discourse-ai/ai-tools/#{ai_tool.id}/edit.json"
4141
expect(response).to be_successful
4242
expect(response.parsed_body["ai_tool"]["name"]).to eq(ai_tool.name)
4343
end

spec/system/admin_ai_persona_spec.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242

4343
expect(page).not_to have_current_path("/admin/plugins/discourse-ai/ai-personas/new")
4444

45-
persona_id = page.current_path.split("/").last.to_i
45+
persona_id = page.current_path.split("/")[-2].to_i
4646

4747
persona = AiPersona.find(persona_id)
4848
expect(persona.name).to eq("Test Persona")
@@ -53,15 +53,15 @@
5353
end
5454

5555
it "will not allow deletion or editing of system personas" do
56-
visit "/admin/plugins/discourse-ai/ai-personas/#{DiscourseAi::AiBot::Personas::Persona.system_personas.values.first}"
56+
visit "/admin/plugins/discourse-ai/ai-personas/#{DiscourseAi::AiBot::Personas::Persona.system_personas.values.first}/edit"
5757
expect(page).not_to have_selector(".ai-persona-editor__delete")
5858
expect(find(".ai-persona-editor__system_prompt")).to be_disabled
5959
end
6060

6161
it "will enable persona right away when you click on enable but does not save side effects" do
6262
persona = Fabricate(:ai_persona, enabled: false)
6363

64-
visit "/admin/plugins/discourse-ai/ai-personas/#{persona.id}"
64+
visit "/admin/plugins/discourse-ai/ai-personas/#{persona.id}/edit"
6565

6666
find(".ai-persona-editor__name").set("Test Persona 1")
6767
PageObjects::Components::DToggleSwitch.new(".ai-persona-editor__enabled").toggle

spec/system/ai_bot/tool_spec.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ def ensure_can_run_test
6161
expect(page).to have_content("Tool saved")
6262

6363
last_tool = AiTool.order("id desc").limit(1).first
64-
visit "/admin/plugins/discourse-ai/ai-tools/#{last_tool.id}"
64+
visit "/admin/plugins/discourse-ai/ai-tools/#{last_tool.id}/edit"
6565

6666
ensure_can_run_test
6767

0 commit comments

Comments
 (0)