MediaWiki  1.23.0
ProcessCacheLRUTest Class Reference

Test for ProcessCacheLRU class. More...

Inheritance diagram for ProcessCacheLRUTest:
Collaboration diagram for ProcessCacheLRUTest:

Public Member Functions

 assertCacheEmpty ( $cache, $msg='Cache should be empty')
 Helper to verify emptiness of a cache object. More...
 
 fillCache (&$cache, $numEntries)
 Helper to fill a cache object passed by reference. More...
 
 getExpectedCache ( $cacheMaxEntries, $entryToFill)
 Generates an array of what would be expected in cache for a given cache size and a number of entries filled in sequentially. More...
 
 testAddAndGetAKey ()
 
 testBumpExistingKeyToTop ()
 
 testConstructorGivenInvalidValue ( $maxSize)
 @dataProvider provideInvalidConstructorArg @expectedException UnexpectedValueException More...
 
 testDeleteOldKey ()
 
 testFillingCache ( $cacheMaxEntries, $entryToFill, $msg='')
 This test that we properly overflow when filling a cache with a sequence of always different cache-keys. More...
 
 testPhpUnitArrayEquality ()
 Highlight diff between assertEquals and assertNotSame. More...
 
 testRecentlyAccessedKeyStickIn ()
 
 testReplaceExistingKeyInAFullCacheShouldBumpToTop ()
 This first create a full cache then update the value for the 2nd filled entry. More...
 
 testReplaceExistingKeyShouldBumpEntryToTop ()
 Create a cache with only one remaining entry then update the first inserted entry. More...
 
- Public Member Functions inherited from MediaWikiTestCase
 __call ( $func, $args)
 
 __construct ( $name=null, array $data=array(), $dataName='')
 
 addDBData ()
 Stub. More...
 
 dbPrefix ()
 
 getCliArg ( $offset)
 
 hideDeprecated ( $function)
 Don't throw a warning if $function is deprecated and called later. More...
 
 needsDB ()
 
 run (PHPUnit_Framework_TestResult $result=null)
 
 setCliArg ( $offset, $value)
 
 testMediaWikiTestCaseParentSetupCalled ()
 Make sure MediaWikiTestCase extending classes have called their parent setUp method. More...
 
 usesTemporaryTables ()
 

Static Public Member Functions

static provideCacheFilling ()
 Provider for testFillingCache. More...
 
static provideInvalidConstructorArg ()
 Value which are forbidden by the constructor. More...
 
- Static Public Member Functions inherited from MediaWikiTestCase
static listTables ( $db)
 
static setupTestDB (DatabaseBase $db, $prefix)
 Creates an empty skeleton of the wiki database by cloning its structure to equivalent tables using the given $prefix. More...
 
static teardownTestDB ()
 Restores MediaWiki to using the table set (table prefix) it was using before setupTestDB() was called. More...
 

Additional Inherited Members

- Public Attributes inherited from MediaWikiTestCase
const DB_PREFIX = 'unittest_'
 Table name prefixes. More...
 
const ORA_DB_PREFIX = 'ut_'
 
- Static Public Attributes inherited from MediaWikiTestCase
static $users
 
- Protected Member Functions inherited from MediaWikiTestCase
 arrayWrap (array $elements)
 Utility method taking an array of elements and wrapping each element in it's own array. More...
 
 assertArrayEquals (array $expected, array $actual, $ordered=false, $named=false)
 Assert that two arrays are equal. More...
 
 assertException ( $code, $expected='Exception', $message='')
 Asserts that an exception of the specified type occurs when running the provided code. More...
 
 assertHTMLEquals ( $expected, $actual, $msg='')
 Put each HTML element on its own line and then equals() the results. More...
 
 assertSelect ( $table, $fields, $condition, array $expectedRows)
 Asserts that the given database query yields the rows given by $expectedRows. More...
 
 assertType ( $type, $actual, $message='')
 Asserts the type of the provided value. More...
 
 assertTypeOrValue ( $type, $actual, $value=false, $message='')
 Asserts that the provided variable is of the specified internal type or equals the $value argument. More...
 
 assertValidHtmlDocument ( $html)
 Asserts that the given string is valid HTML document. More...
 
 assertValidHtmlSnippet ( $html)
 Asserts that the given string is a valid HTML snippet. More...
 
 checkDbIsSupported ()
 
 checkHasDiff3 ()
 Check, if $wgDiff3 is set and ready to merge Will mark the calling test as skipped, if not ready. More...
 
 checkHasGzip ()
 Check whether we have the 'gzip' commandline utility, will skip the test whenever "gzip -V" fails. More...
 
 checkPHPExtension ( $extName)
 Check if $extName is a loaded PHP extension, will skip the test whenever it is not loaded. More...
 
 getDefaultWikitextNS ()
 Returns the ID of a namespace that defaults to Wikitext. More...
 
 getNewTempDirectory ()
 obtains a new temporary directory More...
 
 getNewTempFile ()
 Obtains a new temporary file name. More...
 
 isWikitextNS ( $ns)
 Returns true if the given namespace defaults to Wikitext according to $wgNamespaceContentModels. More...
 
 mergeMwGlobalArrayValue ( $name, $values)
 Merges the given values into a MW global array variable. More...
 
 objectAssociativeSort (array &$array)
 Does an associative sort that works for objects. More...
 
 setMwGlobals ( $pairs, $value=null)
 
 setUp ()
 
 stashMwGlobals ( $globalKeys)
 Stashes the global, will be restored in tearDown() More...
 
 tearDown ()
 
- Static Protected Member Functions inherited from MediaWikiTestCase
static stripStringKeys (&$r)
 Utility function for eliminating all string keys from an array. More...
 
- Protected Attributes inherited from MediaWikiTestCase
DatabaseBase $db
 
array $supportedDBs
 
array $tablesUsed = array()
 

Detailed Description

Test for ProcessCacheLRU class.

Note that it uses the ProcessCacheLRUTestable class which extends some properties and methods visibility. That class is defined at the end of the file containing this class.

@group Cache

Definition at line 12 of file ProcessCacheLRUTest.php.

Member Function Documentation

◆ assertCacheEmpty()

ProcessCacheLRUTest::assertCacheEmpty (   $cache,
  $msg = 'Cache should be empty' 
)

Helper to verify emptiness of a cache object.

Compare against an array so we get the cache content difference.

Definition at line 18 of file ProcessCacheLRUTest.php.

References $cache, and array().

Referenced by testAddAndGetAKey(), and testDeleteOldKey().

◆ fillCache()

ProcessCacheLRUTest::fillCache ( $cache,
  $numEntries 
)

Helper to fill a cache object passed by reference.

Definition at line 25 of file ProcessCacheLRUTest.php.

References $cache.

Referenced by testBumpExistingKeyToTop(), testFillingCache(), testReplaceExistingKeyInAFullCacheShouldBumpToTop(), and testReplaceExistingKeyShouldBumpEntryToTop().

◆ getExpectedCache()

ProcessCacheLRUTest::getExpectedCache (   $cacheMaxEntries,
  $entryToFill 
)

Generates an array of what would be expected in cache for a given cache size and a number of entries filled in sequentially.

Definition at line 36 of file ProcessCacheLRUTest.php.

References array().

Referenced by testFillingCache().

◆ provideCacheFilling()

static ProcessCacheLRUTest::provideCacheFilling ( )
static

Provider for testFillingCache.

Definition at line 134 of file ProcessCacheLRUTest.php.

References array().

◆ provideInvalidConstructorArg()

static ProcessCacheLRUTest::provideInvalidConstructorArg ( )
static

Value which are forbidden by the constructor.

Definition at line 80 of file ProcessCacheLRUTest.php.

References array().

◆ testAddAndGetAKey()

ProcessCacheLRUTest::testAddAndGetAKey ( )

Definition at line 91 of file ProcessCacheLRUTest.php.

References assertCacheEmpty().

◆ testBumpExistingKeyToTop()

ProcessCacheLRUTest::testBumpExistingKeyToTop ( )

Definition at line 207 of file ProcessCacheLRUTest.php.

References $cache, array(), and fillCache().

◆ testConstructorGivenInvalidValue()

ProcessCacheLRUTest::testConstructorGivenInvalidValue (   $maxSize)

@dataProvider provideInvalidConstructorArg @expectedException UnexpectedValueException

Definition at line 73 of file ProcessCacheLRUTest.php.

◆ testDeleteOldKey()

ProcessCacheLRUTest::testDeleteOldKey ( )

Definition at line 102 of file ProcessCacheLRUTest.php.

References assertCacheEmpty().

◆ testFillingCache()

ProcessCacheLRUTest::testFillingCache (   $cacheMaxEntries,
  $entryToFill,
  $msg = '' 
)

This test that we properly overflow when filling a cache with a sequence of always different cache-keys.

Meant to verify we correclty delete the older key.

@dataProvider provideCacheFilling

Parameters
$cacheMaxEntriesMaximum entry the created cache will hold
$entryToFillNumber of entries to insert in the created cache.

Definition at line 120 of file ProcessCacheLRUTest.php.

References $cache, fillCache(), and getExpectedCache().

◆ testPhpUnitArrayEquality()

ProcessCacheLRUTest::testPhpUnitArrayEquality ( )

Highlight diff between assertEquals and assertNotSame.

Definition at line 62 of file ProcessCacheLRUTest.php.

References array().

◆ testRecentlyAccessedKeyStickIn()

ProcessCacheLRUTest::testRecentlyAccessedKeyStickIn ( )

Definition at line 167 of file ProcessCacheLRUTest.php.

References $cache.

◆ testReplaceExistingKeyInAFullCacheShouldBumpToTop()

ProcessCacheLRUTest::testReplaceExistingKeyInAFullCacheShouldBumpToTop ( )

This first create a full cache then update the value for the 2nd filled entry.

Given a cache having 1,2,3 as key, updating 2 should bump 2 to the top of the queue with the new value: 1,3,2* (* = updated).

Definition at line 186 of file ProcessCacheLRUTest.php.

References $cache, array(), and fillCache().

◆ testReplaceExistingKeyShouldBumpEntryToTop()

ProcessCacheLRUTest::testReplaceExistingKeyShouldBumpEntryToTop ( )

Create a cache with only one remaining entry then update the first inserted entry.

Should bump it to the top.

Definition at line 148 of file ProcessCacheLRUTest.php.

References $cache, array(), and fillCache().


The documentation for this class was generated from the following file: