/var/www/vhosts/nabawater/vendor/codeception/base/src/Codeception/Module
Edit: /var/www/vhosts/nabawater/vendor/codeception/base/src/Codeception/Module/Apc.php (6069B)
clear();
}
/**
* Grabs value from APC(u) by key.
*
* Example:
*
* ``` php
* grabValueFromApc('users_count');
* ?>
* ```
*
* @param string|string[] $key
* @return mixed
*/
public function grabValueFromApc($key)
{
$value = $this->fetch($key);
$this->debugSection('Value', $value);
return $value;
}
/**
* Checks item in APC(u) exists and the same as expected.
*
* Examples:
*
* ``` php
* seeInApc('users_count');
*
* // Checks a 'users_count' exists and has the value 200
* $I->seeInApc('users_count', 200);
* ?>
* ```
*
* @param string|string[] $key
* @param mixed $value
*/
public function seeInApc($key, $value = null)
{
if (null === $value) {
$this->assertTrue($this->exists($key), "Cannot find key '$key' in APC(u).");
return;
}
$actual = $this->grabValueFromApc($key);
$this->assertEquals($value, $actual, "Cannot find key '$key' in APC(u) with the provided value.");
}
/**
* Checks item in APC(u) doesn't exist or is the same as expected.
*
* Examples:
*
* ``` php
* dontSeeInApc('users_count');
*
* // Checks a 'users_count' exists does not exist or its value is not the one provided
* $I->dontSeeInApc('users_count', 200);
* ?>
* ```
*
* @param string|string[] $key
* @param mixed $value
*/
public function dontSeeInApc($key, $value = null)
{
if (null === $value) {
$this->assertFalse($this->exists($key), "The key '$key' exists in APC(u).");
return;
}
$actual = $this->grabValueFromApc($key);
if (false !== $actual) {
$this->assertEquals($value, $actual, "The key '$key' exists in APC(u) with the provided value.");
}
}
/**
* Stores an item `$value` with `$key` on the APC(u).
*
* Examples:
*
* ```php
* haveInApc('users', ['name' => 'miles', 'email' => 'miles@davis.com']);
*
* // Object
* $I->haveInApc('user', UserRepository::findFirst());
*
* // Key as array of 'key => value'
* $entries = [];
* $entries['key1'] = 'value1';
* $entries['key2'] = 'value2';
* $entries['key3'] = ['value3a','value3b'];
* $entries['key4'] = 4;
* $I->haveInApc($entries, null);
* ?>
* ```
*
* @param string|array $key
* @param mixed $value
* @param int $expiration
* @return mixed
*/
public function haveInApc($key, $value, $expiration = null)
{
$this->store($key, $value, $expiration);
return $key;
}
/**
* Clears the APC(u) cache
*/
public function flushApc()
{
// Returns TRUE always
$this->clear();
}
/**
* Clears the APC(u) cache.
*
* @return bool
*/
protected function clear()
{
if (function_exists('apcu_clear_cache')) {
return apcu_clear_cache();
}
return apc_clear_cache('user');
}
/**
* Checks if entry exists
*
* @param string|string[] $key
*
* @return bool|\string[]
*/
protected function exists($key)
{
if (function_exists('apcu_exists')) {
return apcu_exists($key);
}
return apc_exists($key);
}
/**
* Fetch a stored variable from the cache
*
* @param string|string[] $key
*
* @return mixed
*/
protected function fetch($key)
{
$success = false;
if (function_exists('apcu_fetch')) {
$data = apcu_fetch($key, $success);
} else {
$data = apc_fetch($key, $success);
}
$this->debugSection('Fetching a stored variable', $success ? 'OK' : 'FAILED');
return $data;
}
/**
* Cache a variable in the data store.
*
* @param string|array $key
* @param mixed $var
* @param int $ttl
*
* @return array|bool
*/
protected function store($key, $var, $ttl = 0)
{
if (function_exists('apcu_store')) {
return apcu_store($key, $var, $ttl);
}
return apc_store($key, $var, $ttl);
}
}