class cacheCommandCase
- 8.0.x tests/cacheCommandTest.php cacheCommandCase
- 6.x tests/cacheCommandTest.php cacheCommandCase
- 7.x tests/cacheCommandTest.php cacheCommandCase
- 5.x tests/cacheCommandTest.php cacheCommandCase
- master tests/cacheCommandTest.php cacheCommandCase
Cache command testing.
@group base
Namespace
UnishHierarchy
- class UnishTestCase extends \PHPUnit_Framework_TestCase
- class CommandUnishTestCase
- class cacheCommandCase
- class CommandUnishTestCase
Expanded class hierarchy of cacheCommandCase
Members
Name![]() |
Modifiers | Type | Description |
---|---|---|---|
cacheCommandCase::getOptions | function | ||
cacheCommandCase::setUp | function | ||
cacheCommandCase::testCacheGet | function | ||
cacheCommandCase::testCacheRebuild | function | ||
cacheCommandCase::testCacheSet | function | ||
CommandUnishTestCase::$coverage_data | protected | property | Code coverage data collected during a single test. |
CommandUnishTestCase::$defaultIdleTimeout | private | property | Default idle timeout for commands. |
CommandUnishTestCase::$defaultTimeout | private | property | Default timeout for commands. |
CommandUnishTestCase::$idleTimeout | protected | property | Idle timeouts for commands. |
CommandUnishTestCase::$process | private | property | Process of last executed command. |
CommandUnishTestCase::$timeout | protected | property | Timeout for command. |
CommandUnishTestCase::assertLogHasMessage | function | Ensure that an expected log message appears in the Drush log. | |
CommandUnishTestCase::drush | function | Invoke drush in via execute(). | |
CommandUnishTestCase::drush_major_version | function | ||
CommandUnishTestCase::execute | function | Actually runs the command. | |
CommandUnishTestCase::EXIT_ERROR | constant | ||
CommandUnishTestCase::EXIT_SUCCESS | constant | ||
CommandUnishTestCase::getErrorOutput | function | Accessor for the last stderr output, trimmed. | |
CommandUnishTestCase::getErrorOutputAsList | function | Accessor for the last stderr output, rtrimmed and split on newlines. | |
CommandUnishTestCase::getErrorOutputRaw | function | Accessor for the last stderr output, non-trimmed. | |
CommandUnishTestCase::getOutput | function | Accessor for the last output, trimmed. | |
CommandUnishTestCase::getOutputAsList | function | Accessor for the last output, rtrimmed and split on newlines. | |
CommandUnishTestCase::getOutputFromJSON | function | Accessor for the last output, decoded from json. | |
CommandUnishTestCase::getOutputRaw | function | Accessor for the last output, non-trimmed. | |
CommandUnishTestCase::parse_backend_output | function | A slightly less functional copy of drush_backend_parse_output(). | |
CommandUnishTestCase::run | public | function | Override the run method, so we can add in our code coverage data after the test has run. |
CommandUnishTestCase::UNISH_EXITCODE_USER_ABORT | constant | ||
UnishTestCase::$sites | private static | property | A list of Drupal sites that have been recently installed. They key is the site name and values are details about each site. |
UnishTestCase::bit_bucket | function | Borrowed from Drush. Checks operating system and returns supported bit bucket folder. | |
UnishTestCase::convert_path | function | Converts a Windows path (dir1\dir2\dir3) into a Unix path (dir1/dir2/dir3). Also converts a cygwin "drive emulation" path (/cygdrive/c/dir1) into a proper drive path, still with Unix slashes (c:/dir1). | |
UnishTestCase::db_driver | function | ||
UnishTestCase::db_url | function | ||
UnishTestCase::directory_cache | function | ||
UnishTestCase::drupalSitewideDirectory | function | ||
UnishTestCase::escapeshellarg | public static | function | |
UnishTestCase::fetchInstallDrupal | function | ||
UnishTestCase::getSites | function | ||
UnishTestCase::get_tar_executable | public static | function | |
UnishTestCase::is_windows | public static | function | |
UnishTestCase::log | function | Print a log message to the console. | |
UnishTestCase::log_level | function | ||
UnishTestCase::mkdir | public | function | |
UnishTestCase::randomString | public | function | Helper function to generate a random string of arbitrary length. |
UnishTestCase::recursive_copy | public | function | |
UnishTestCase::setUpBeforeClass | public static | function | Assure that each class starts with an empty sandbox directory and a clean environment - http://drupal.org/node/1103568. |
UnishTestCase::setUpDrupal | function | ||
UnishTestCase::setUpFreshSandBox | public static | function | Remove any pre-existing sandbox, then create a new one. |
UnishTestCase::tearDownAfterClass | public static | function | Runs after all tests in a class are run. Remove sandbox directory. |
UnishTestCase::tick | function | Print out a tick mark. | |
UnishTestCase::unish_file_aliases | function | Prepare the contents of an aliases file. | |
UnishTestCase::webroot | function | ||
UnishTestCase::writeSiteAlias | function | ||
UnishTestCase::_escapeshellarg_windows | public static | function | |
UnishTestCase::__construct | function |
File
- tests/
cacheCommandTest.php, line 10
View source
class cacheCommandCase extends CommandUnishTestCase {
function setUp() {
if (!$this->getSites()) {
$this->setUpDrupal(1, TRUE);
}
}
function testCacheGet() {
$options = $this->getOptions();
// Test the cache get command.
$inputs = array(
6 => array('variables', NULL),
7 => array('schema', NULL),
8 => array('system.date', 'config'),
);
list($key, $bin) = $inputs[UNISH_DRUPAL_MAJOR_VERSION];
$this->drush('cache-get', array($key, $bin), $options + array('format' => 'json'));
$schema = $this->getOutputFromJSON('data');
$this->assertNotEmpty($schema);
// Test that get-ing a non-existant cid fails.
$this->drush('cache-get', array('test-failure-cid'), $options + array('format' => 'json'), NULL, NULL, self::EXIT_ERROR);
}
function testCacheSet() {
$options = $this->getOptions();
// Test setting a new cache item.
$expected = 'cache test string';
$this->drush('cache-set', array('cache-test-cid', $expected), $options);
$this->drush('cache-get', array('cache-test-cid'), $options + array('format' => 'json'));
$data = $this->getOutputFromJSON('data');
$this->assertEquals($expected, $data);
// Test cache-set using all arguments and many options.
$expected = array('key' => 'value');
$input = array('data' => $expected);
$stdin = json_encode($input);
$bin = UNISH_DRUPAL_MAJOR_VERSION >= 8 ? 'default' : 'cache';
$exec = sprintf('echo %s | %s cache-set %s %s my_cache_id - %s CACHE_PERMANENT --format=json --cache-get 2>/dev/null', self::escapeshellarg($stdin), UNISH_DRUSH, "--root=" . self::escapeshellarg($options['root']), '--uri=' . $options['uri'], $bin);
$return = $this->execute($exec);
$this->drush('cache-get', array('my_cache_id'), $options + array('format' => 'json'));
$data = $this->getOutputFromJSON('data');
$this->assertEquals((object) $expected, $data);
}
function testCacheRebuild() {
$options = $this->getOptions();
// Test cache-clear all and cache-rebuild (D8+).
if (UNISH_DRUPAL_MAJOR_VERSION >= 8) {
$this->drush('cache-rebuild', array(), $options);
}
else {
$this->drush('cache-clear', array('all'), $options);
}
$this->drush('cache-get', array('cache-test-cid'), $options + array('format' => 'json'), NULL, NULL, self::EXIT_ERROR);
}
function getOptions() {
return array(
'yes' => NULL,
'root' => $this->webroot(),
'uri' => key($this->getSites()),
);
}
}