Revert "Add callable for fakes"

This commit is contained in:
philipp lang 2025-04-06 16:42:22 +02:00
parent 7189511a55
commit f3c7fbed50
2 changed files with 25 additions and 32 deletions

View File

@ -56,29 +56,4 @@ abstract class Fake
{ {
return Http::response('<html></html>'); return Http::response('<html></html>');
} }
public function assertBodyMatches(string $is, array|callable $should): bool
{
$requestBody = json_decode($is, true);
if (!is_array($requestBody)) {
return false;
}
if (is_callable($should)) {
return $should($requestBody);
}
foreach ($should as $key => $value) {
if (!array_key_exists($key, $requestBody)) {
return false;
}
if ($requestBody[$key] !== $value) {
return false;
}
}
return true;
}
} }

View File

@ -12,7 +12,7 @@ class MembershipFake extends Fake
public function fetches(int $memberId, array $membershipIds): self public function fetches(int $memberId, array $membershipIds): self
{ {
Http::fake(function ($request) use ($memberId, $membershipIds) { Http::fake(function ($request) use ($memberId, $membershipIds) {
$url = 'https://nami.dpsg.de/ica/rest/nami/zugeordnete-taetigkeiten/filtered-for-navigation/gruppierung-mitglied/mitglied/' . $memberId . '/flist'; $url = 'https://nami.dpsg.de/ica/rest/nami/zugeordnete-taetigkeiten/filtered-for-navigation/gruppierung-mitglied/mitglied/'.$memberId.'/flist';
if ($request->url() === $url && 'GET' === $request->method()) { if ($request->url() === $url && 'GET' === $request->method()) {
return $this->collection(collect($membershipIds)->map(function ($membership) { return $this->collection(collect($membershipIds)->map(function ($membership) {
return [ return [
@ -36,7 +36,7 @@ class MembershipFake extends Fake
public function failsFetching(int $memberId, string $error = 'Error'): self public function failsFetching(int $memberId, string $error = 'Error'): self
{ {
Http::fake(function ($request) use ($memberId, $error) { Http::fake(function ($request) use ($memberId, $error) {
$url = 'https://nami.dpsg.de/ica/rest/nami/zugeordnete-taetigkeiten/filtered-for-navigation/gruppierung-mitglied/mitglied/' . $memberId . '/flist'; $url = 'https://nami.dpsg.de/ica/rest/nami/zugeordnete-taetigkeiten/filtered-for-navigation/gruppierung-mitglied/mitglied/'.$memberId.'/flist';
if ($request->url() === $url && 'GET' === $request->method()) { if ($request->url() === $url && 'GET' === $request->method()) {
return $this->errorResponse($error); return $this->errorResponse($error);
} }
@ -48,7 +48,7 @@ class MembershipFake extends Fake
public function failsFetchingWithHtml(int $memberId): self public function failsFetchingWithHtml(int $memberId): self
{ {
Http::fake(function ($request) use ($memberId) { Http::fake(function ($request) use ($memberId) {
$url = 'https://nami.dpsg.de/ica/rest/nami/zugeordnete-taetigkeiten/filtered-for-navigation/gruppierung-mitglied/mitglied/' . $memberId . '/flist'; $url = 'https://nami.dpsg.de/ica/rest/nami/zugeordnete-taetigkeiten/filtered-for-navigation/gruppierung-mitglied/mitglied/'.$memberId.'/flist';
if ($request->url() === $url && 'GET' === $request->method()) { if ($request->url() === $url && 'GET' === $request->method()) {
return $this->htmlResponse(); return $this->htmlResponse();
} }
@ -63,7 +63,7 @@ class MembershipFake extends Fake
public function shows(int $memberId, array $data): self public function shows(int $memberId, array $data): self
{ {
Http::fake(function ($request) use ($memberId, $data) { Http::fake(function ($request) use ($memberId, $data) {
$url = 'https://nami.dpsg.de/ica/rest/nami/zugeordnete-taetigkeiten/filtered-for-navigation/gruppierung-mitglied/mitglied/' . $memberId . '/' . $data['id']; $url = 'https://nami.dpsg.de/ica/rest/nami/zugeordnete-taetigkeiten/filtered-for-navigation/gruppierung-mitglied/mitglied/'.$memberId.'/'.$data['id'];
if ($request->url() === $url && 'GET' === $request->method()) { if ($request->url() === $url && 'GET' === $request->method()) {
return $this->dataResponse(array_merge([ return $this->dataResponse(array_merge([
'id' => 68, 'id' => 68,
@ -85,7 +85,7 @@ class MembershipFake extends Fake
public function failsShowing(int $memberId, int $membershipId, ?string $error = 'Error'): self public function failsShowing(int $memberId, int $membershipId, ?string $error = 'Error'): self
{ {
Http::fake(function ($request) use ($memberId, $membershipId, $error) { Http::fake(function ($request) use ($memberId, $membershipId, $error) {
$url = 'https://nami.dpsg.de/ica/rest/nami/zugeordnete-taetigkeiten/filtered-for-navigation/gruppierung-mitglied/mitglied/' . $memberId . '/' . $membershipId; $url = 'https://nami.dpsg.de/ica/rest/nami/zugeordnete-taetigkeiten/filtered-for-navigation/gruppierung-mitglied/mitglied/'.$memberId.'/'.$membershipId;
if ($request->url() === $url && 'GET' === $request->method()) { if ($request->url() === $url && 'GET' === $request->method()) {
return $this->errorResponse($error); return $this->errorResponse($error);
} }
@ -109,7 +109,7 @@ class MembershipFake extends Fake
public function failsShowingWithHtml(int $memberId, int $membershipId): self public function failsShowingWithHtml(int $memberId, int $membershipId): self
{ {
Http::fake(function ($request) use ($memberId, $membershipId) { Http::fake(function ($request) use ($memberId, $membershipId) {
$url = 'https://nami.dpsg.de/ica/rest/nami/zugeordnete-taetigkeiten/filtered-for-navigation/gruppierung-mitglied/mitglied/' . $memberId . '/' . $membershipId; $url = 'https://nami.dpsg.de/ica/rest/nami/zugeordnete-taetigkeiten/filtered-for-navigation/gruppierung-mitglied/mitglied/'.$memberId.'/'.$membershipId;
if ($request->url() === $url && 'GET' === $request->method()) { if ($request->url() === $url && 'GET' === $request->method()) {
return $this->htmlResponse(); return $this->htmlResponse();
} }
@ -180,7 +180,7 @@ class MembershipFake extends Fake
}); });
} }
public function assertCreated(int $memberId, array|callable $payload): void public function assertCreated(int $memberId, array $payload): void
{ {
$url = "https://nami.dpsg.de/ica/rest/nami/zugeordnete-taetigkeiten/filtered-for-navigation/gruppierung-mitglied/mitglied/{$memberId}"; $url = "https://nami.dpsg.de/ica/rest/nami/zugeordnete-taetigkeiten/filtered-for-navigation/gruppierung-mitglied/mitglied/{$memberId}";
@ -195,3 +195,21 @@ class MembershipFake extends Fake
public function assertUpdated(int $memberId, array $payload): void public function assertUpdated(int $memberId, array $payload): void
{ {
$url = "https://nami.dpsg.de/ica/rest/nami/zugeordnete-taetigkeiten/filtered-for-navigation/gruppierung-mitglied/mitglied/{$memberId}/{$payload['id']}";
Http::assertSent(function ($request) use ($url, $payload) {
if ($request->url() !== $url || 'PUT' !== $request->method()) {
return false;
}
if (data_get($request, 'id') !== $payload['id']) {
return false;
}
if (data_get($request, 'aktivBis') !== data_get($payload, 'aktivBis')) {
return false;
}
return true;
});
}
}