* @license https://www.gnu.org/licenses/agpl-3.0.en.html/ GNU Affero General Public License v3.0 */ use App\Http\Controllers\User\GiftController; use App\Http\Requests\StoreGiftRequest; use App\Models\BonTransactions; use App\Models\User; test('create returns an ok response', function (): void { $this->markTestIncomplete('This test case was generated by Shift. When you are ready, remove this line and complete this test case.'); $user = User::factory()->create(); $authUser = User::factory()->create(); $response = $this->actingAs($authUser)->get(route('users.gifts.create', [$user])); $response->assertOk(); $response->assertViewIs('user.gift.create'); $response->assertViewHas('user', $user); $response->assertViewHas('bon'); // TODO: perform additional assertions }); test('create aborts with a 403', function (): void { $this->markTestIncomplete('This test case was generated by Shift. When you are ready, remove this line and complete this test case.'); $user = User::factory()->create(); $authUser = User::factory()->create(); // TODO: perform additional setup to trigger `abort_unless(403)`... $response = $this->actingAs($authUser)->get(route('users.gifts.create', [$user])); $response->assertForbidden(); }); test('index returns an ok response', function (): void { $this->markTestIncomplete('This test case was generated by Shift. When you are ready, remove this line and complete this test case.'); $user = User::factory()->create(); $bonTransactions = BonTransactions::factory()->times(3)->create(); $authUser = User::factory()->create(); $response = $this->actingAs($authUser)->get(route('users.gifts.index', [$user])); $response->assertOk(); $response->assertViewIs('user.gift.index'); $response->assertViewHas('user', $user); $response->assertViewHas('gifts'); $response->assertViewHas('bon'); $response->assertViewHas('sentGifts'); $response->assertViewHas('receivedGifts'); // TODO: perform additional assertions }); test('index aborts with a 403', function (): void { $this->markTestIncomplete('This test case was generated by Shift. When you are ready, remove this line and complete this test case.'); $user = User::factory()->create(); $bonTransactions = BonTransactions::factory()->times(3)->create(); $authUser = User::factory()->create(); // TODO: perform additional setup to trigger `abort_unless(403)`... $response = $this->actingAs($authUser)->get(route('users.gifts.index', [$user])); $response->assertForbidden(); }); test('store validates with a form request', function (): void { $this->assertActionUsesFormRequest( GiftController::class, 'store', StoreGiftRequest::class ); }); test('store returns an ok response', function (): void { $this->markTestIncomplete('This test case was generated by Shift. When you are ready, remove this line and complete this test case.'); $user = User::factory()->create(); $authUser = User::factory()->create(); $response = $this->actingAs($authUser)->post(route('users.gifts.store', [$user]), [ // TODO: send request data ]); $response->assertRedirect(with('success', trans('bon.gift-sent'))); // TODO: perform additional assertions }); // test cases...