diff --git a/module/Rest/test-api/Action/DeleteOrphanVisitsTest.php b/module/Rest/test-api/Action/DeleteOrphanVisitsTest.php new file mode 100644 index 00000000..b7cf59b9 --- /dev/null +++ b/module/Rest/test-api/Action/DeleteOrphanVisitsTest.php @@ -0,0 +1,42 @@ +getTotalVisits()); + self::assertEquals(3, $this->getOrphanVisits()); + + $resp = $this->callApiWithKey(self::METHOD_DELETE, '/visits/orphan'); + $payload = $this->getJsonResponsePayload($resp); + + self::assertEquals(200, $resp->getStatusCode()); + self::assertEquals(3, $payload['deletedVisits']); + self::assertEquals(7, $this->getTotalVisits()); // This verifies that regular visits have not been affected + self::assertEquals(0, $this->getOrphanVisits()); + } + + private function getTotalVisits(): int + { + $resp = $this->callApiWithKey(self::METHOD_GET, '/visits/non-orphan'); + $payload = $this->getJsonResponsePayload($resp); + + return $payload['visits']['pagination']['totalItems']; + } + + private function getOrphanVisits(): int + { + $resp = $this->callApiWithKey(self::METHOD_GET, '/visits/orphan'); + $payload = $this->getJsonResponsePayload($resp); + + return $payload['visits']['pagination']['totalItems']; + } +} diff --git a/module/Rest/test-api/Action/DeleteShortUrlVisitsTest.php b/module/Rest/test-api/Action/DeleteShortUrlVisitsTest.php index 045f2c9a..7b5f306d 100644 --- a/module/Rest/test-api/Action/DeleteShortUrlVisitsTest.php +++ b/module/Rest/test-api/Action/DeleteShortUrlVisitsTest.php @@ -22,8 +22,8 @@ class DeleteShortUrlVisitsTest extends ApiTestCase self::assertEquals(200, $resp->getStatusCode()); self::assertEquals(3, $payload['deletedVisits']); - self::assertEquals(4, $this->getTotalVisits()); - self::assertEquals(3, $this->getOrphanVisits()); + self::assertEquals(4, $this->getTotalVisits()); // This verifies that other visits have not been affected + self::assertEquals(3, $this->getOrphanVisits()); // This verifies that orphan visits have not been affected } private function getTotalVisits(): int