Krinkle has uploaded a new change for review.
https://gerrit.wikimedia.org/r/250645
Change subject: objectcache: Add a clear() method to HashBagOStuff
......................................................................
objectcache: Add a clear() method to HashBagOStuff
Including tests for delete() and clear().
Change-Id: If39d729838e312523f0df3ae8b235ebe939a17fd
---
M includes/libs/objectcache/HashBagOStuff.php
M tests/phpunit/includes/libs/objectcache/HashBagOStuffTest.php
2 files changed, 26 insertions(+), 0 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core
refs/changes/45/250645/1
diff --git a/includes/libs/objectcache/HashBagOStuff.php
b/includes/libs/objectcache/HashBagOStuff.php
index 24b0dc3..d22000d 100644
--- a/includes/libs/objectcache/HashBagOStuff.php
+++ b/includes/libs/objectcache/HashBagOStuff.php
@@ -94,4 +94,8 @@
return true;
}
+
+ public function clear() {
+ $this->bag = array();
+ }
}
diff --git a/tests/phpunit/includes/libs/objectcache/HashBagOStuffTest.php
b/tests/phpunit/includes/libs/objectcache/HashBagOStuffTest.php
index 4f8a3cb..39b84e1 100644
--- a/tests/phpunit/includes/libs/objectcache/HashBagOStuffTest.php
+++ b/tests/phpunit/includes/libs/objectcache/HashBagOStuffTest.php
@@ -5,6 +5,28 @@
*/
class HashBagOStuffTest extends PHPUnit_Framework_TestCase {
+ public function testDelete() {
+ $cache = new HashBagOStuff();
+ for ( $i = 0; $i < 10; $i++ ) {
+ $cache->set( "key$i", 1 );
+ $this->assertEquals( 1, $cache->get( "key$i" ) );
+ $cache->delete( "key$i" );
+ $this->assertEquals( false, $cache->get( "key$i" ) );
+ }
+ }
+
+ public function testClear() {
+ $cache = new HashBagOStuff();
+ for ( $i = 0; $i < 10; $i++ ) {
+ $cache->set( "key$i", 1 );
+ $this->assertEquals( 1, $cache->get( "key$i" ) );
+ }
+ $cache->clear();
+ for ( $i = 0; $i < 10; $i++ ) {
+ $this->assertEquals( false, $cache->get( "key$i" ) );
+ }
+ }
+
public function testEvictionOrder() {
$cache = new HashBagOStuff( array( 'maxKeys' => 10 ) );
for ( $i = 0; $i < 10; $i++ ) {
--
To view, visit https://gerrit.wikimedia.org/r/250645
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: If39d729838e312523f0df3ae8b235ebe939a17fd
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Krinkle <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits