From 77e4e5fe498d324c8c4112a35e0a1357119c3ea1 Mon Sep 17 00:00:00 2001 From: "florian.azizian" <florian.azizian@maarch.org> Date: Tue, 10 Sep 2019 16:59:26 +0100 Subject: [PATCH] FIX #11270 TIME 0:30 return custom field id in creation --- .../controllers/CustomFieldController.php | 4 ++-- .../app/customField/CustomFieldControllerTest.php | 12 +++--------- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/src/app/customField/controllers/CustomFieldController.php b/src/app/customField/controllers/CustomFieldController.php index 45e46ad2d82..a4a24201af3 100644 --- a/src/app/customField/controllers/CustomFieldController.php +++ b/src/app/customField/controllers/CustomFieldController.php @@ -47,13 +47,13 @@ class CustomFieldController return $response->withStatus(400)->withJson(['errors' => 'Custom field with this label already exists']); } - CustomFieldModel::create([ + $id = CustomFieldModel::create([ 'label' => $body['label'], 'type' => $body['type'], 'values' => empty($body['values']) ? null : json_encode($body['values']) ]); - return $response->withStatus(204); + return $response->withStatus(204)->withJson(['customFieldId' => $id]); } public function update(Request $request, Response $response, array $args) diff --git a/test/unitTests/app/customField/CustomFieldControllerTest.php b/test/unitTests/app/customField/CustomFieldControllerTest.php index 4595de03c9a..11e5b0574b6 100644 --- a/test/unitTests/app/customField/CustomFieldControllerTest.php +++ b/test/unitTests/app/customField/CustomFieldControllerTest.php @@ -30,17 +30,11 @@ class CustomFieldControllerTest extends TestCase $response = $customFieldController->create($fullRequest, new \Slim\Http\Response()); $this->assertSame(204, $response->getStatusCode()); + $responseBody = json_decode((string)$response->getBody()); - $field = \CustomField\models\CustomFieldModel::get([ - 'select' => ['id'], 'where' => ['label = ?'], 'data' => ['mon custom'], 'limit' => 1, 'orderBy' => ['id DESC'] - ]); - - self::$id = $field[0]['id']; - - $field = \CustomField\models\CustomFieldModel::getById(['id' => self::$id]); - $this->assertSame('mon custom', $field['label']); - $this->assertSame('select', $field['type']); + $this->assertInternalType('int', $responseBody->customFieldId); + self::$id = $responseBody->customFieldId; // Errors $environment = \Slim\Http\Environment::mock(['REQUEST_METHOD' => 'POST']); -- GitLab