0
0
Fork 1
Spiegel von https://github.com/paviliondev/discourse-custom-wizard.git synchronisiert 2024-10-18 20:02:38 +02:00
discourse-custom-wizard/spec/requests/custom_wizard/admin/logs_controller_spec.rb
2024-10-16 13:52:03 +02:00

46 Zeilen
1,3 KiB
Ruby

# frozen_string_literal: true
describe CustomWizard::AdminLogsController do
fab!(:admin_user) { Fabricate(:user, admin: true) }
let(:template) { get_wizard_fixture("wizard") }
before do
%w[first second third].each_with_index do |key, index|
temp = template.dup
temp["id"] = "#{key}_test_wizard"
CustomWizard::Template.save(temp, skip_jobs: true)
CustomWizard::Log.create(
"#{key}_test_wizard",
"perform_#{key}_action",
"#{key}_test_user",
"#{key} log message",
)
end
sign_in(admin_user)
end
it "returns a list of wizards" do
get "/admin/wizards/logs.json"
expect(response.parsed_body.length).to eq(3)
end
it "returns a list of logs for a wizard" do
get "/admin/wizards/logs/first_test_wizard.json"
expect(response.parsed_body["logs"].length).to eq(1)
end
it "paginates" do
get "/admin/wizards/logs/first_test_wizard.json", params: { page: 1 }
expect(response.parsed_body["logs"].length).to eq(0)
end
it "returns total logs for a wizard" do
get "/admin/wizards/logs/first_test_wizard.json"
expect(response.parsed_body["total"]).to eq(1)
end
it "returns basic wizard" do
get "/admin/wizards/logs/first_test_wizard.json"
expect(response.parsed_body["wizard"]["id"]).to eq("first_test_wizard")
end
end