<?php

namespace Tests\Feature\Http\Controllers;

use Tests\TestCase;

/**
 * @see \App\Http\Controllers\ConfigController
 */
class ConfigControllerTest extends TestCase
{
    /**
     * @test
     */
    public function get_returns_an_ok_response(): void
    {
        $this->markTestIncomplete('This test case was generated by Shift. When you are ready, remove this line and complete this test case.');

        $response = $this->get(route('get-default-periods-screen'));

        $response->assertOk();
        $response->assertViewIs('admin.defaultPeriodsSelection');
        $response->assertViewHas('currentPeriod');
        $response->assertViewHas('enrollmentsPeriod');
        $response->assertViewHas('availablePeriods');

        // TODO: perform additional assertions
    }

    /**
     * @test
     */
    public function update_returns_an_ok_response(): void
    {
        $this->markTestIncomplete('This test case was generated by Shift. When you are ready, remove this line and complete this test case.');

        $response = $this->post(route('set-default-periods'), [
            // TODO: send request data
        ]);

        $response->assertRedirect(to('/'));

        // TODO: perform additional assertions
    }

    /**
     * @test
     */
    public function update_validates_with_a_form_request(): void
    {
        $this->assertActionUsesFormRequest(
            \App\Http\Controllers\ConfigController::class,
            'update',
            \App\Http\Requests\UpdateConfigRequest::class
        );
    }

    // test cases...
}
