signIn(); $contact = factory(Contact::class)->create([ 'account_id' => $user->account_id, ]); return [$user, $contact]; } public function test_user_can_access_settings_page() { [$user, $contact] = $this->fetchUser(); $response = $this->get('/settings'); $response->assertStatus(200); $response->assertSee(trans('settings.sidebar_settings')); } public function test_user_can_export_account() { [$user, $contact] = $this->fetchUser(); $response = $this->get('/settings/export'); $response->assertStatus(200); $response->assertSee(trans('settings.export_title')); Carbon::setTestNow(Carbon::create(2021, 11, 25, 7, 0, 0)); $response = $this->post(route('settings.export.store.sql')); $response->assertStatus(302); // $this->assertTrue($response->headers->get('content-disposition') == 'attachment; filename=monica-export.2021-11-25.sql'); } public function test_user_can_delete_account() { [$user, $contact] = $this->fetchUser(); $response = $this->followingRedirects() ->post(route('settings.delete')); $response->assertStatus(200); $response->assertSee('Login'); } public function test_it_updates_the_default_profile_view() { $user = $this->signin(); $response = $this->json('POST', '/settings/updateDefaultProfileView', [ 'name' => 'life-events', ]); $response->assertStatus(200); $this->assertDatabaseHas('users', [ 'profile_active_tab' => 'life-events', 'id' => $user->id, ]); $response = $this->json('POST', '/settings/updateDefaultProfileView', [ 'name' => 'notes', ]); $response->assertStatus(200); $this->assertDatabaseHas('users', [ 'profile_active_tab' => 'notes', 'id' => $user->id, ]); $response = $this->json('POST', '/settings/updateDefaultProfileView', [ 'name' => 'nawak', ]); $response->assertStatus(200); } public function test_user_see_webauthnkeys() { $user = $this->signin(); $webauthnKey = factory(WebauthnKey::class)->create([ 'user_id' => $user->id, 'updated_at' => '2019-04-01 09:18:35', ]); $this->session([ 'webauthn_auth' => true, ]); $response = $this->followingRedirects() ->get(route('settings.security.index')); $response->assertStatus(200); $response->assertSee($webauthnKey->name); $response->assertSee('2019-04-01T09:18:35Z'); } }