[Behat] Add replaceRequestData method to ApiPlatformClient

This commit is contained in:
Kamil Grygierzec 2023-10-19 14:44:55 +02:00
parent f8222e5a4c
commit 67761b9626
No known key found for this signature in database
GPG key ID: 7F54EE42DAD4B9E9
3 changed files with 12 additions and 6 deletions

View file

@ -62,7 +62,9 @@ interface ApiClientInterface
public function addFile(string $key, UploadedFile $file): void;
public function addRequestData(string $key, string|int|bool|array $value): void;
public function addRequestData(string $key, null|string|int|bool|array $value): void;
public function replaceRequestData(string $key, null|string|int|bool|array $value): void;
public function setSubResourceData(string $key, array $data): void;

View file

@ -200,12 +200,18 @@ final class ApiPlatformClient implements ApiClientInterface
$this->request->updateFiles([$key => $file]);
}
/** @param string|int|bool|array $value */
public function addRequestData(string $key, $value): void
public function addRequestData(string $key, null|string|int|bool|array $value): void
{
$this->request->updateContent([$key => $value]);
}
public function replaceRequestData(string $key, null|string|int|bool|array $value): void
{
$requestContent = $this->request->getContent();
$this->request->setContent(array_replace($requestContent, [$key => $value]));
}
public function updateRequestData(array $data): void
{
$this->request->updateContent($data);

View file

@ -151,9 +151,7 @@ final class ManagingChannelsContext implements Context
*/
public function iMakeItAvailableOnlyInLocale(LocaleInterface $locale): void
{
$this->client->addRequestData('locales', [
$this->sectionAwareIriConverter->getIriFromResourceInSection($locale, 'admin'),
]);
$this->client->replaceRequestData('locales', [$this->sectionAwareIriConverter->getIriFromResourceInSection($locale, 'admin')]);
}
/**