<?php

namespace Tests\Feature\Http\Controllers\Auth;

use Tests\TestCase;

/**
 * @see \App\Http\Controllers\Auth\MyAccountController
 */
class MyAccountControllerTest extends TestCase
{
    /**
     * @test
     */
    public function get_account_info_form_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('backpack.account.edit_info'));

        $response->assertOk();
        $response->assertViewIs('student.account.update_info');

        // TODO: perform additional assertions
    }

    /**
     * @test
     */
    public function get_account_profession_form_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('backpack.account.profession'));

        $response->assertOk();
        $response->assertViewIs('student.account.update_profession');

        // TODO: perform additional assertions
    }

    /**
     * @test
     */
    public function get_contacts_form_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('backpack.account.contacts'));

        $response->assertOk();
        $response->assertViewIs('student.account.additional_contacts');

        // TODO: perform additional assertions
    }

    /**
     * @test
     */
    public function get_phone_form_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('backpack.account.phone'));

        $response->assertOk();
        $response->assertViewIs('student.account.update_phone');

        // TODO: perform additional assertions
    }

    /**
     * @test
     */
    public function get_photo_form_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('backpack.account.photo'));

        $response->assertOk();
        $response->assertViewIs('student.account.update_photo');

        // TODO: perform additional assertions
    }

    /**
     * @test
     */
    public function get_student_info_form_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('backpack.student.info'));

        $response->assertOk();
        $response->assertViewIs('student.account.update_student_info');

        // TODO: perform additional assertions
    }

    /**
     * @test
     */
    public function post_account_info_form_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('edit-account-info', [
            // TODO: send request data
        ]);

        $response->assertRedirect(back());

        // TODO: perform additional assertions
    }

    /**
     * @test
     */
    public function post_account_profession_form_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('edit-profession', [
            // TODO: send request data
        ]);

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

        // TODO: perform additional assertions
    }

    /**
     * @test
     */
    public function post_contacts_form_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('edit-contacts', [
            // TODO: send request data
        ]);

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

        // TODO: perform additional assertions
    }

    /**
     * @test
     */
    public function post_phone_form_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('edit-phone', [
            // TODO: send request data
        ]);

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

        // TODO: perform additional assertions
    }

    /**
     * @test
     */
    public function post_photo_form_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('edit-photo', [
            // TODO: send request data
        ]);

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

        // TODO: perform additional assertions
    }

    /**
     * @test
     */
    public function post_student_info_form_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('edit-student-info', [
            // TODO: send request data
        ]);

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

        // TODO: perform additional assertions
    }

    // test cases...
}
