Skip to content

Commit

Permalink
Add tests for Memcached to ensure its counters have TTLs
Browse files Browse the repository at this point in the history
Because memcached doesn't allow cache keys to be incremented/decremented
without a default value (unless you use the binary protocol), we don't
need an explict TTL set as the key will have a TTL set when it is
initially written.

Refs #10786
  • Loading branch information
markstory committed Jun 20, 2017
1 parent 9b891c8 commit bd57bf9
Showing 1 changed file with 20 additions and 0 deletions.
20 changes: 20 additions & 0 deletions tests/TestCase/Cache/Engine/MemcachedEngineTest.php
Expand Up @@ -722,6 +722,26 @@ public function testIncrement()
Cache::delete('test_increment', 'memcached');
}

/**
* Test that increment and decrement set ttls.
*
* @return void
*/
public function testIncrementDecrementExpiring()
{
$this->_configCache(['duration' => 1]);
Cache::write('test_increment', 1, 'memcached');
Cache::write('test_decrement', 1, 'memcached');

$this->assertSame(2, Cache::increment('test_increment', 1, 'memcached'));
$this->assertSame(0, Cache::decrement('test_decrement', 1, 'memcached'));

sleep(1);

$this->assertFalse(Cache::read('test_increment', 'memcached'));
$this->assertFalse(Cache::read('test_decrement', 'memcached'));
}

/**
* test incrementing compressed keys
*
Expand Down

0 comments on commit bd57bf9

Please sign in to comment.