From 04352d582ab99b534b2c590780f23e4ec31bfc12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Jaussoin?= Date: Tue, 23 May 2023 17:07:57 +0200 Subject: [PATCH] Fix #104 Return validation URL when creation an account creation request token --- flexiapi/app/AccountCreationRequestToken.php | 8 ++++++++ flexiapi/tests/Feature/ApiAccountCreationTokenTest.php | 2 ++ 2 files changed, 10 insertions(+) diff --git a/flexiapi/app/AccountCreationRequestToken.php b/flexiapi/app/AccountCreationRequestToken.php index ddf51e8..aedb61e 100644 --- a/flexiapi/app/AccountCreationRequestToken.php +++ b/flexiapi/app/AccountCreationRequestToken.php @@ -27,9 +27,17 @@ class AccountCreationRequestToken extends Model use HasFactory; protected $hidden = ['id', 'updated_at', 'created_at']; + protected $appends = ['validation_url']; public function accountCreationToken() { return $this->belongsTo(AccountCreationToken::class, 'acc_creation_token_id'); } + + public function getValidationUrlAttribute(): ?string + { + return $this->validated_at == null + ? route('account.creation_request_token.check', $this->token) + : null; + } } diff --git a/flexiapi/tests/Feature/ApiAccountCreationTokenTest.php b/flexiapi/tests/Feature/ApiAccountCreationTokenTest.php index 9a3a0ae..7e69070 100644 --- a/flexiapi/tests/Feature/ApiAccountCreationTokenTest.php +++ b/flexiapi/tests/Feature/ApiAccountCreationTokenTest.php @@ -148,6 +148,8 @@ class ApiAccountCreationTokenTest extends TestCase $response->assertStatus(201); $creationRequestToken = $response->json()['token']; + $this->assertSame($response->json()['validation_url'], route('account.creation_request_token.check', $creationRequestToken)); + // Validate the creation request token AccountCreationRequestToken::where('token', $creationRequestToken)->update(['validated_at' => Carbon::now()]);