|
|
|
@ -259,26 +259,46 @@ RSpec.describe CaseLogsController, type: :request do
|
|
|
|
|
end |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
it "shows the formatted created at date for each log" do |
|
|
|
|
formatted_date = case_log.created_at.to_formatted_s(:govuk_date) |
|
|
|
|
expect(CGI.unescape_html(response.body)).to include(formatted_date) |
|
|
|
|
end |
|
|
|
|
it "only shows case logs for your organisation" do |
|
|
|
|
expected_case_row_log = "<a class=\"govuk-link\" href=\"/logs/#{case_log.id}\">#{case_log.id}</a>" |
|
|
|
|
unauthorized_case_row_log = "<a class=\"govuk-link\" href=\"/logs/#{unauthorized_case_log.id}\">#{unauthorized_case_log.id}</a>" |
|
|
|
|
expect(CGI.unescape_html(response.body)).to include(expected_case_row_log) |
|
|
|
|
expect(CGI.unescape_html(response.body)).not_to include(unauthorized_case_row_log) |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
it "shows the log's status" do |
|
|
|
|
expect(CGI.unescape_html(response.body)).to include(case_log.status.humanize) |
|
|
|
|
end |
|
|
|
|
it "shows the formatted created at date for each log" do |
|
|
|
|
formatted_date = case_log.created_at.to_formatted_s(:govuk_date) |
|
|
|
|
expect(CGI.unescape_html(response.body)).to include(formatted_date) |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
it "shows the log's status" do |
|
|
|
|
expect(CGI.unescape_html(response.body)).to include(case_log.status.humanize) |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
it "shows the total log count" do |
|
|
|
|
expect(CGI.unescape_html(response.body)).to match("<strong>1</strong> total logs") |
|
|
|
|
it "shows the total log count" do |
|
|
|
|
expect(CGI.unescape_html(response.body)).to match("<strong>1</strong> total logs") |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
it "does not show the pagination links" do |
|
|
|
|
expect(page).not_to have_link("Previous") |
|
|
|
|
expect(page).not_to have_link("Next") |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
it "does not show the pagination result line" do |
|
|
|
|
expect(CGI.unescape_html(response.body)).not_to match("Showing <b>1</b> to <b>20</b> of <b>26</b> logs") |
|
|
|
|
end |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
context "when there are more than 20 logs" do |
|
|
|
|
before do |
|
|
|
|
FactoryBot.create_list(:case_log, 25, owning_organisation: organisation, managing_organisation: organisation) |
|
|
|
|
get "/logs", headers: headers, params: {} |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
context "when on the first page" do |
|
|
|
|
before do |
|
|
|
|
get "/logs", headers: headers, params: {} |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
it "has pagination links" do |
|
|
|
|
expect(page).to have_content("Previous") |
|
|
|
|
expect(page).not_to have_link("Previous") |
|
|
|
|