it_get_user_data fix

This commit is contained in:
Peter Papp
2021-07-17 20:44:18 +02:00
parent 9ba3d9a6ba
commit 90efc51359
+62 -64
View File
@@ -1,21 +1,18 @@
<?php <?php
namespace Tests\Feature\Accounts; namespace Tests\Feature\Accounts;
use App\Models\File;
use App\Models\User;
use App\Services\SetupService;
use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Foundation\Testing\RefreshDatabase;
use Illuminate\Auth\Notifications\VerifyEmail;
use Illuminate\Foundation\Testing\WithFaker;
use Illuminate\Http\UploadedFile;
use Laravel\Sanctum\Sanctum;
use Storage; use Storage;
use Notification; use Notification;
use Tests\TestCase; use Tests\TestCase;
use App\Models\File;
use App\Models\User;
use App\Models\Folder; use App\Models\Folder;
use Laravel\Sanctum\Sanctum;
use App\Services\SetupService;
use Illuminate\Http\UploadedFile;
use Illuminate\Support\Facades\URL; use Illuminate\Support\Facades\URL;
use Illuminate\Auth\Notifications\VerifyEmail;
use Illuminate\Foundation\Testing\DatabaseMigrations;
class UserAccountTest extends TestCase class UserAccountTest extends TestCase
{ {
@@ -97,38 +94,39 @@ class UserAccountTest extends TestCase
$user = User::factory(User::class) $user = User::factory(User::class)
->create(); ->create();
Sanctum::actingAs($user); $this
->actingAs($user)
$this->getJson('/api/user') ->getJson('/api/user')
->assertStatus(200) ->assertStatus(200)
->assertExactJson([ ->assertExactJson([
"data" => [ 'data' => [
"id" => (string)$user->id, 'id' => (string) $user->id,
"type" => "user", 'type' => 'user',
"attributes" => [ 'attributes' => [
"storage_capacity" => "5", 'storage_capacity' => '5',
"subscription" => false, 'subscription' => false,
"incomplete_payment" => null, 'incomplete_payment' => null,
"stripe_customer" => false, 'stripe_customer' => false,
"email" => $user->email, 'email' => $user->email,
"role" => $user->role, 'role' => $user->role,
"folders" => [], 'two_factor_authentication' => false,
"storage" => [ 'folders' => [],
"used" => 0, 'storage' => [
"used_formatted" => "0.00%", 'used' => 0,
"capacity" => "5", 'used_formatted' => '0.00%',
"capacity_formatted" => "5GB", 'capacity' => '5',
'capacity_formatted' => '5GB',
], ],
"created_at_formatted" => format_date($user->created_at, '%d. %B. %Y'), 'created_at_formatted' => format_date($user->created_at, '%d. %B. %Y'),
"created_at" => $user->created_at->toJson(), 'created_at' => $user->created_at->toJson(),
"updated_at" => $user->updated_at->toJson(), 'updated_at' => $user->updated_at->toJson(),
], ],
"relationships" => [ 'relationships' => [
"settings" => [ 'settings' => [
"data" => [ 'data' => [
"id" => (string)$user->id, 'id' => (string) $user->id,
"type" => "settings", 'type' => 'settings',
"attributes" => [ 'attributes' => [
'avatar' => $user->settings->avatar, 'avatar' => $user->settings->avatar,
'name' => $user->settings->name, 'name' => $user->settings->name,
'address' => $user->settings->address, 'address' => $user->settings->address,
@@ -137,20 +135,20 @@ class UserAccountTest extends TestCase
'postal_code' => $user->settings->postal_code, 'postal_code' => $user->settings->postal_code,
'country' => $user->settings->country, 'country' => $user->settings->country,
'phone_number' => $user->settings->phone_number, 'phone_number' => $user->settings->phone_number,
'timezone' => $user->settings->timezone 'timezone' => $user->settings->timezone,
] ],
] ],
], ],
"favourites" => [ 'favourites' => [
"data" => [ 'data' => [
"id" => (string)$user->id, 'id' => (string) $user->id,
"type" => "favourite_folders", 'type' => 'favourite_folders',
"attributes" => [ 'attributes' => [
"folders" => [] 'folders' => [],
] ],
] ],
], ],
] ],
], ],
]); ]);
} }
@@ -166,12 +164,12 @@ class UserAccountTest extends TestCase
Sanctum::actingAs($user); Sanctum::actingAs($user);
$this->postJson('/api/user/token/create', [ $this->postJson('/api/user/token/create', [
'name' => 'token' 'name' => 'token',
])->assertStatus(201); ])->assertStatus(201);
$this->assertDatabaseHas('personal_access_tokens', [ $this->assertDatabaseHas('personal_access_tokens', [
'tokenable_id' => $user->id, 'tokenable_id' => $user->id,
'name' => 'token' 'name' => 'token',
]); ]);
} }
@@ -193,7 +191,7 @@ class UserAccountTest extends TestCase
->assertStatus(204); ->assertStatus(204);
$this->assertDatabaseMissing('personal_access_tokens', [ $this->assertDatabaseMissing('personal_access_tokens', [
'id' => $token_id 'id' => $token_id,
]); ]);
} }
@@ -214,11 +212,11 @@ class UserAccountTest extends TestCase
->getJson('/api/user/tokens') ->getJson('/api/user/tokens')
->assertStatus(200) ->assertStatus(200)
->assertJsonFragment([ ->assertJsonFragment([
"id" => $token->id, 'id' => $token->id,
"tokenable_type" => $token->tokenable_type, 'tokenable_type' => $token->tokenable_type,
"tokenable_id" => $user->id, 'tokenable_id' => $user->id,
"name" => $token->name, 'name' => $token->name,
"abilities" => $token->abilities 'abilities' => $token->abilities,
]); ]);
} }
@@ -237,19 +235,19 @@ class UserAccountTest extends TestCase
$file = File::factory(File::class) $file = File::factory(File::class)
->create([ ->create([
'user_id' => $user->id, 'user_id' => $user->id,
'folder_id' => $folder->id 'folder_id' => $folder->id,
]); ]);
$token = $user->createToken('token')->plainTextToken; $token = $user->createToken('token')->plainTextToken;
$this->assertDatabaseHas('personal_access_tokens', [ $this->assertDatabaseHas('personal_access_tokens', [
'tokenable_id' => $user->id 'tokenable_id' => $user->id,
]); ]);
$this->assertDatabaseHas('folders', [ $this->assertDatabaseHas('folders', [
'id' => $folder->id, 'id' => $folder->id,
'user_id' => $user->id 'user_id' => $user->id,
]); ]);
$this $this
@@ -268,7 +266,7 @@ class UserAccountTest extends TestCase
{ {
$user = User::factory(User::class) $user = User::factory(User::class)
->create([ ->create([
'email_verified_at' => null 'email_verified_at' => null,
]); ]);
$verificationUrl = URL::temporarySignedRoute( $verificationUrl = URL::temporarySignedRoute(
@@ -291,7 +289,7 @@ class UserAccountTest extends TestCase
{ {
$user = User::factory(User::class) $user = User::factory(User::class)
->create([ ->create([
'email_verified_at' => null 'email_verified_at' => null,
]); ]);
$this->postJson('/api/user/email/resend/verify', [ $this->postJson('/api/user/email/resend/verify', [