Fix FLEXIAPI-378 Return a valid JSON containing the vCard and not the raw...

This commit is contained in:
Timothée Jaussoin 2025-08-28 09:08:04 +00:00
parent 7e9d34cf0b
commit 2006fa0929
3 changed files with 20 additions and 7 deletions

View file

@ -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
----

View file

@ -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)

View file

@ -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
]);