diff --git a/CHANGELOG.md b/CHANGELOG.md index e6f0b3c..d08906f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -74,6 +74,7 @@ v2.0 - Fix FLEXIAPI-361 Prepare the 2.0 release - Fix FLEXIAPI-372 Remove SESSION_DRIVER and CACHE_DRIVER and enforce them to file - Fix FLEXIAPI-375 Fix VcardsStorage table UUID size, recover the UUID from the stored vCard +- Fix FLEXIAPI-378 Return a valid JSON containing the vCard and not the raw vCard in VcardsStorage controller v1.6 ---- diff --git a/flexiapi/app/Http/Controllers/Api/Admin/VcardsStorageController.php b/flexiapi/app/Http/Controllers/Api/Admin/VcardsStorageController.php index ce8d6f4..a0066f3 100644 --- a/flexiapi/app/Http/Controllers/Api/Admin/VcardsStorageController.php +++ b/flexiapi/app/Http/Controllers/Api/Admin/VcardsStorageController.php @@ -63,7 +63,7 @@ class VcardsStorageController extends Controller $vcard->vcard = preg_replace('/\r\n?/', "\n", $vcardo->serialize()); $vcard->save(); - return $vcard->vcard; + return $vcard; } public function update(Request $request, int $accountId, string $uuid) @@ -89,7 +89,7 @@ class VcardsStorageController extends Controller $vcard->vcard = preg_replace('/\r\n?/', "\n", $vcardo->serialize()); $vcard->save(); - return $vcard->vcard; + return $vcard; } public function destroy(Request $request, int $accountId, string $uuid) diff --git a/flexiapi/tests/Feature/ApiAccountVcardsStorageTest.php b/flexiapi/tests/Feature/ApiAccountVcardsStorageTest.php index 83ccb95..04b3bdf 100644 --- a/flexiapi/tests/Feature/ApiAccountVcardsStorageTest.php +++ b/flexiapi/tests/Feature/ApiAccountVcardsStorageTest.php @@ -101,13 +101,23 @@ VERSION:4.0 FN:Simon Perreault UID:urn:uuid:' . $uid . ' END:VCARD' - ])->assertStatus(200); + ])->assertJsonFragment([ + 'vcard' => +'BEGIN:VCARD +VERSION:4.0 +FN:Simon Perreault +UID:urn:uuid:' . $uid . ' +END:VCARD +' + ])->assertStatus(201); // Admin create $this->keyAuthenticated($admin) ->json($this->method, $adminRoute, [ 'vcard' => $thirdVcard]) - ->assertStatus(200); + ->assertJson([ + 'vcard' => $thirdVcard + ])->assertStatus(201); // Again... $this->keyAuthenticated($account) @@ -123,7 +133,7 @@ END:VCARD' $this->keyAuthenticated($account) ->json($this->method, $this->route, [ 'vcard' => $secondVcard - ])->assertStatus(200); + ])->assertStatus(201); $this->assertDatabaseHas('vcards_storage', [ 'uuid' => $uid @@ -141,6 +151,8 @@ END:VCARD' $this->keyAuthenticated($account) ->json('PUT', $this->route . '/' . $uid, [ 'vcard' => $lastVcard + ])->assertJsonFragment([ + 'vcard' => $lastVcard ])->assertStatus(200); // Update with wrong UID @@ -167,7 +179,7 @@ END:VCARD' $this->keyAuthenticated($account) ->get($this->route . '/' . $uid) ->assertStatus(200) - ->assertJson([ + ->assertJsonFragment([ 'vcard' => $lastVcard ]); @@ -175,7 +187,7 @@ END:VCARD' $this->keyAuthenticated($admin) ->get($adminRoute . '/' . $uid) ->assertStatus(200) - ->assertJson([ + ->assertJsonFragment([ 'vcard' => $lastVcard ]);