1
0
mirror of https://github.com/jcwimer/wrestlingApp synced 2026-03-31 03:25:45 +00:00

Fixed reset password after the Devise migration.

This commit is contained in:
2025-04-14 14:25:40 -04:00
parent 4828d9b876
commit 01a499cc45
18 changed files with 383 additions and 158 deletions

View File

@@ -0,0 +1,70 @@
require "test_helper"
class TournamentJobStatusTest < ActiveSupport::TestCase
setup do
@tournament = tournaments(:one)
@job_status = tournament_job_statuses(:running_job)
end
test "should be valid with required fields" do
job_status = TournamentJobStatus.new(
tournament: @tournament,
job_name: "Test Job",
status: "Queued"
)
assert job_status.valid?
end
test "should require tournament" do
@job_status.tournament = nil
assert_not @job_status.valid?
end
test "should require job_name" do
@job_status.job_name = nil
assert_not @job_status.valid?
end
test "should require status" do
@job_status.status = nil
assert_not @job_status.valid?
end
test "status should be one of the allowed values" do
@job_status.status = "Invalid Status"
assert_not @job_status.valid?
@job_status.status = "Queued"
assert @job_status.valid?
@job_status.status = "Running"
assert @job_status.valid?
@job_status.status = "Errored"
assert @job_status.valid?
end
test "active scope should exclude errored jobs" do
active_jobs = TournamentJobStatus.active
assert_includes active_jobs, tournament_job_statuses(:queued_job)
assert_includes active_jobs, tournament_job_statuses(:running_job)
assert_not_includes active_jobs, tournament_job_statuses(:errored_job)
end
test "for_tournament should return only jobs for a specific tournament" do
tournament_one_jobs = TournamentJobStatus.for_tournament(@tournament)
assert_equal 3, tournament_one_jobs.count
assert_includes tournament_one_jobs, tournament_job_statuses(:queued_job)
assert_includes tournament_one_jobs, tournament_job_statuses(:running_job)
assert_includes tournament_one_jobs, tournament_job_statuses(:errored_job)
assert_not_includes tournament_one_jobs, tournament_job_statuses(:another_tournament_job)
end
test "complete_job should remove jobs with matching tournament_id and job_name" do
assert_difference 'TournamentJobStatus.count', -1 do
TournamentJobStatus.complete_job(@tournament.id, "Test Running Job")
end
assert_nil TournamentJobStatus.find_by(id: @job_status.id)
end
end