From c772074f03f23990e3a8c1ea6d57cc78e9e6ef4e Mon Sep 17 00:00:00 2001 From: Aistis Date: Fri, 8 Aug 2025 19:41:17 +0300 Subject: [PATCH] Add test for memory leak prevention while inserting blobs --- tests/MemoryTest.php | 45 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 tests/MemoryTest.php diff --git a/tests/MemoryTest.php b/tests/MemoryTest.php new file mode 100644 index 00000000..4200fc79 --- /dev/null +++ b/tests/MemoryTest.php @@ -0,0 +1,45 @@ +doTest(); + + $memoryUsage = memory_get_usage() - $memoryAtStart; + + // Memory difference must be less than 1KB + $this->assertLessThan( + 1024, + $memoryUsage, + sprintf('Memory leak detected! Expected memory increase is less than 1024, but got: %s bytes', $memoryUsage) + ); + } + + private function doTest(): void + { + $wp = new WritePolicy(); + $key = new Key(self::$namespace, self::$set, 1); + + for ($i = 0; $i < 10_000; $i++) { + self::$client->put($wp, $key, [new Bin('binName', Value::blob('some value'))]); + } + } +}