From 3250586c0c344dba6d3b683b06760db79d7dd5cf Mon Sep 17 00:00:00 2001 From: Carsten Brandt Date: Wed, 17 Dec 2014 09:56:04 +0100 Subject: [PATCH] added failing test for #6547 --- .../unit/extensions/redis/RedisCacheTest.php | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/tests/unit/extensions/redis/RedisCacheTest.php b/tests/unit/extensions/redis/RedisCacheTest.php index 76025c7b18..b03143258f 100644 --- a/tests/unit/extensions/redis/RedisCacheTest.php +++ b/tests/unit/extensions/redis/RedisCacheTest.php @@ -87,6 +87,30 @@ class RedisCacheTest extends CacheTestCase $this->assertTrue($cache->get($key) === $data); } + /** + * Store a megabyte and see how it goes + * https://github.com/yiisoft/yii2/issues/6547 + */ + public function testReallyLargeData() + { + $cache = $this->getCacheInstance(); + + $keys = []; + for($i = 1; $i < 16; $i++) { + $key = 'realbigdata' . $i; + $data = str_repeat('X', 100 * 1024); // 100 KB + $keys[$key] = $data; + +// $this->assertTrue($cache->get($key) === false); // do not display 100KB in terminal if this fails :) + $cache->set($key, $data); + } + $values = $cache->mget(array_keys($keys)); + foreach($keys as $key => $value) { + $this->assertArrayHasKey($key, $values); + $this->assertTrue($values[$key] === $value); + } + } + public function testMultiByteGetAndSet() { $cache = $this->getCacheInstance();