42 Zeilen
1,3 KiB
Ruby
42 Zeilen
1,3 KiB
Ruby
# frozen_string_literal: true
|
|
require_relative '../../../plugin_helper'
|
|
|
|
describe CustomWizard::AdminLogsController do
|
|
fab!(:admin_user) { Fabricate(:user, admin: true) }
|
|
let(:template) { get_wizard_fixture("wizard") }
|
|
|
|
before do
|
|
["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
|