diff --git a/app/Http/Controllers/JudgingController.php b/app/Http/Controllers/JudgingController.php index 7eb998a..56c09a0 100644 --- a/app/Http/Controllers/JudgingController.php +++ b/app/Http/Controllers/JudgingController.php @@ -9,7 +9,7 @@ use Exception; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Gate; -use Tests\Feature\Models\ScoreSheet; +use App\Models\ScoreSheet; use function compact; use function redirect; diff --git a/app/Http/Controllers/Tabulation/ScoreController.php b/app/Http/Controllers/Tabulation/ScoreController.php index fa62c7d..1524f03 100644 --- a/app/Http/Controllers/Tabulation/ScoreController.php +++ b/app/Http/Controllers/Tabulation/ScoreController.php @@ -6,7 +6,7 @@ use App\Http\Controllers\Controller; use App\Models\Entry; use Illuminate\Http\Request; use Illuminate\Support\Facades\Session; -use Tests\Feature\Models\ScoreSheet; +use App\Models\ScoreSheet; class ScoreController extends Controller { @@ -48,6 +48,7 @@ class ScoreController extends Controller if (! $entry) { return redirect()->route('tabulation.chooseEntry')->with('error', 'Entry not found'); } + session()->flash('error', 'This entry is marked as a no-show. Entering a score will remove the no-show flag'); return view('tabulation.entry_score_sheet', compact('entry', 'judges', 'scoring_guide', 'subscores', 'existing_sheets')); @@ -60,6 +61,8 @@ class ScoreController extends Controller return $publishedCheck; } + $entry->removeFlag('no_show'); + $judges = $entry->audition->room->judges; $subscores = $entry->audition->scoringGuide->subscores->sortBy('tiebreak_order'); diff --git a/app/Models/Entry.php b/app/Models/Entry.php index d49fa3d..3d59f15 100644 --- a/app/Models/Entry.php +++ b/app/Models/Entry.php @@ -10,7 +10,7 @@ use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\Relations\HasOne; use Illuminate\Database\Eloquent\Relations\HasOneThrough; -use Tests\Feature\Models\ScoreSheet; +use App\Models\ScoreSheet; class Entry extends Model { diff --git a/tests/Feature/Models/ScoreSheet.php b/app/Models/ScoreSheet.php similarity index 92% rename from tests/Feature/Models/ScoreSheet.php rename to app/Models/ScoreSheet.php index 1a1bb52..7b7c337 100644 --- a/tests/Feature/Models/ScoreSheet.php +++ b/app/Models/ScoreSheet.php @@ -1,10 +1,7 @@ assertRedirect(route('scores.chooseEntry')) ->assertSessionHas('error', $expectedError); }); +it('warns if the entry is flagged as a no-show', function () { + // Arrange + $response = validRequest(); + // Act & Assert + $response + ->assertOk() + ->assertSee('marked as a no-show'); +});