Fix tests
Some checks failed
/ Run tests (push) Failing after 55s
/ Run system tests (push) Failing after 55s
/ Build, push and deploy image (push) Has been skipped

This commit is contained in:
david 2024-09-22 22:49:53 +02:00
parent fbf6923835
commit 6e1a17281d
22 changed files with 235 additions and 13 deletions

View file

@ -28,6 +28,8 @@ class RodauthController < ApplicationController
private
def initialize_sidebar_items
return unless rodauth.logged_in?
[
{ label: "Profile", icon: :'person', path: profile_path, active: action_name == "profile" },
{ label: "Passwort ändern", icon: :'lock', path: rodauth.change_password_path, active: action_name == "change_password" },

View file

@ -9,6 +9,6 @@
<% end %>
<div class="form-group mb-3">
<%= form.submit rodauth.logout_button, class: "btn btn-warning" %>
<%= form.submit "Log out", class: "btn btn-warning" %>
</div>
<% end %>

View file

@ -7,10 +7,29 @@ class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
options: { browser: :remote,
url: ENV.fetch("SELENIUM_REMOTE_URL", nil) })
def setup
setup do
Capybara.server_host = "0.0.0.0" # bind to all interfaces
Capybara.app_host = "http://#{IPSocket.getaddress(Socket.gethostname)}" if ENV["SELENIUM_REMOTE_URL"].present?
end
super
def app_host
"http://#{IPSocket.getaddress(Socket.gethostname)}"
end
def login(email, password)
visit "/login"
fill_in "Login", with: email
fill_in "Password", with: password
click_button "Login"
end
def logout
visit "/logout"
click_on "Log out"
end
def login_test
Account.create(email: "test@example.com", password: "password")
login("test@example.com", "password")
end
end

View file

@ -4,6 +4,25 @@ require "test_helper"
module Admin
class BackupsControllerTest < ActionDispatch::IntegrationTest
def login(email, password)
post "/login", params: { email: email, password: password }
assert_redirected_to "/"
end
def logout
post "/logout"
assert_redirected_to "/"
end
teardown do
logout
end
setup do
Account.create(email: "test@example.com", password: "password")
login("test@example.com", "password")
end
test "should show admin_backup" do
get admin_backup_url(@admin_backup)
assert_response :success

View file

@ -1,8 +1,27 @@
require "test_helper"
class BackofficeControllerTest < ActionDispatch::IntegrationTest
def login(email, password)
post "/login", params: { email: email, password: password }
assert_redirected_to "/"
end
def logout
post "/logout"
assert_redirected_to "/"
end
teardown do
logout
end
setup do
Account.create(email: "test@example.com", password: "password")
login("test@example.com", "password")
end
test "should get show" do
get backoffice_show_url
get backoffice_url
assert_response :success
end
end

View file

@ -3,8 +3,24 @@
require "test_helper"
class ChecklistEntriesControllerTest < ActionDispatch::IntegrationTest
def login(email, password)
post "/login", params: { email: email, password: password }
assert_redirected_to "/"
end
def logout
post "/logout"
assert_redirected_to "/"
end
teardown do
logout
end
setup do
@checklist_entry = checklist_entries(:one)
Account.create(email: "test@example.com", password: "password")
login("test@example.com", "password")
end
test "should get index" do

View file

@ -3,8 +3,24 @@
require "test_helper"
class ChecklistsControllerTest < ActionDispatch::IntegrationTest
def login(email, password)
post "/login", params: { email: email, password: password }
assert_redirected_to "/"
end
def logout
post "/logout"
assert_redirected_to "/"
end
teardown do
logout
end
setup do
@checklist = checklists(:one)
Account.create(email: "test@example.com", password: "password")
login("test@example.com", "password")
end
test "should get index" do

View file

@ -3,9 +3,25 @@
require "test_helper"
class ChecksControllerTest < ActionDispatch::IntegrationTest
def login(email, password)
post "/login", params: { email: email, password: password }
assert_redirected_to "/"
end
def logout
post "/logout"
assert_redirected_to "/"
end
teardown do
logout
end
setup do
@principle = principles(:one)
@check = checks(:deletable)
Account.create(email: "test@example.com", password: "password")
login("test@example.com", "password")
end
test "should get index" do

View file

@ -3,9 +3,25 @@
require "test_helper"
class ElementsControllerTest < ActionDispatch::IntegrationTest
def login(email, password)
post "/login", params: { email: email, password: password }
assert_redirected_to "/"
end
def logout
post "/logout"
assert_redirected_to "/"
end
teardown do
logout
end
setup do
@element = elements(:one)
@checklist = checklists(:one)
Account.create(email: "test@example.com", password: "password")
login("test@example.com", "password")
end
test "should get index" do

View file

@ -3,8 +3,24 @@
require "test_helper"
class LinkCategoriesControllerTest < ActionDispatch::IntegrationTest
def login(email, password)
post "/login", params: { email: email, password: password }
assert_redirected_to "/"
end
def logout
post "/logout"
assert_redirected_to "/"
end
teardown do
logout
end
setup do
@link_category = link_categories(:one)
Account.create(email: "test@example.com", password: "password")
login("test@example.com", "password")
end
test "should get index" do

View file

@ -3,8 +3,24 @@
require "test_helper"
class LinksControllerTest < ActionDispatch::IntegrationTest
def login(email, password)
post "/login", params: { email: email, password: password }
assert_redirected_to "/"
end
def logout
post "/logout"
assert_redirected_to "/"
end
teardown do
logout
end
setup do
@link = links(:one)
Account.create(email: "test@example.com", password: "password")
login("test@example.com", "password")
end
test "should get index" do

View file

@ -1,8 +0,0 @@
require "test_helper"
class PublicControllerTest < ActionDispatch::IntegrationTest
test "should get root" do
get public_root_url
assert_response :success
end
end

View file

@ -3,8 +3,24 @@
require "test_helper"
class ReportsControllerTest < ActionDispatch::IntegrationTest
def login(email, password)
post "/login", params: { email: email, password: password }
assert_redirected_to "/"
end
def logout
post "/logout"
assert_redirected_to "/"
end
teardown do
logout
end
setup do
@report = reports(:one)
Account.create(email: "test@example.com", password: "password")
login("test@example.com", "password")
end
test "should get index" do

View file

@ -3,8 +3,24 @@
require "test_helper"
class SuccessCriteriaControllerTest < ActionDispatch::IntegrationTest
def login(email, password)
post "/login", params: { email: email, password: password }
assert_redirected_to "/"
end
def logout
post "/logout"
assert_redirected_to "/"
end
teardown do
logout
end
setup do
@success_criterion = success_criteria(:one)
Account.create(email: "test@example.com", password: "password")
login("test@example.com", "password")
end
test "should get index" do

View file

@ -4,6 +4,14 @@ require "application_system_test_case"
module Admin
class BackupsTest < ApplicationSystemTestCase
setup do
login_test
end
teardown do
logout
end
test "should create backup" do
visit admin_backup_url

View file

@ -5,6 +5,11 @@ require "application_system_test_case"
class ChecklistsTest < ApplicationSystemTestCase
setup do
@checklist = checklists(:one)
login_test
end
teardown do
logout
end
test "visiting the index" do

View file

@ -6,6 +6,11 @@ class ChecksTest < ApplicationSystemTestCase
setup do
@check = checks(:one)
@deletable_check = checks(:deletable)
login_test
end
teardown do
logout
end
test "visiting the index" do

View file

@ -5,6 +5,11 @@ require "application_system_test_case"
class ElementsTest < ApplicationSystemTestCase
setup do
@element = elements(:one)
login_test
end
teardown do
logout
end
test "visiting the index" do

View file

@ -5,6 +5,11 @@ require "application_system_test_case"
class LinkCategoriesTest < ApplicationSystemTestCase
setup do
@link_category = link_categories(:one)
login_test
end
teardown do
logout
end
test "visiting the index" do

View file

@ -5,6 +5,11 @@ require "application_system_test_case"
class LinksTest < ApplicationSystemTestCase
setup do
@link = links(:one)
login_test
end
teardown do
logout
end
test "visiting the index" do

View file

@ -5,6 +5,11 @@ require "application_system_test_case"
class ReportsTest < ApplicationSystemTestCase
setup do
@report = reports(:one)
login_test
end
teardown do
logout
end
test "visiting the index" do
@ -33,7 +38,7 @@ class ReportsTest < ApplicationSystemTestCase
test "should destroy Report" do
visit report_url(@report)
click_on "Prüfbericht löschen", match: :first
assert_text("Report was successfully destroyed")
assert(Report.exists?(@report.id) == false)
end
end

View file

@ -3,8 +3,13 @@
require "application_system_test_case"
class SuccessCriteriaTest < ApplicationSystemTestCase
teardown do
logout
end
setup do
@success_criterion = success_criteria(:one)
login_test
end
test "visiting the index" do