Tests the core date argument handlers.
Expanded class hierarchy of ArgumentDateTest
\Drupal\views\Plugin\views\argument\Date
class ArgumentDateTest extends ViewUnitTestBase {
/**
* Views used by this test.
*
* @var array
*/
public static $testViews = array(
'test_argument_date',
);
/**
* Stores the column map for this testCase.
*
* @var array
*/
protected $columnMap = array(
'id' => 'id',
);
public static function getInfo() {
return array(
'name' => 'Argument: Date',
'description' => 'Tests the core date argument handler.',
'group' => 'Views Handlers',
);
}
/**
* Overrides \Drupal\views\Tests\ViewUnitTestBase::viewsData().
*/
public function viewsData() {
$data = parent::viewsData();
$date_plugins = array(
'date_fulldate',
'date_day',
'date_month',
'date_week',
'date_year',
'date_year_month',
);
foreach ($date_plugins as $plugin_id) {
$data['views_test_data'][$plugin_id] = $data['views_test_data']['created'];
$data['views_test_data'][$plugin_id]['real field'] = 'created';
$data['views_test_data'][$plugin_id]['argument']['id'] = $plugin_id;
}
return $data;
}
/**
* Tests the CreatedFullDate handler.
*
* @see \Drupal\node\Plugin\views\argument\CreatedFullDate
*/
public function testCreatedFullDateHandler() {
$view = views_get_view('test_argument_date');
$view
->setDisplay('default');
$this
->executeView($view, array(
'20000102',
));
$expected = array();
$expected[] = array(
'id' => 2,
);
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
$view
->destroy();
$view
->setDisplay('default');
$this
->executeView($view, array(
'20000101',
));
$expected = array();
$expected[] = array(
'id' => 1,
);
$expected[] = array(
'id' => 3,
);
$expected[] = array(
'id' => 4,
);
$expected[] = array(
'id' => 5,
);
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
$view
->destroy();
$view
->setDisplay('default');
$this
->executeView($view, array(
'20001023',
));
$expected = array();
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
$view
->destroy();
}
/**
* Tests the Day handler.
*
* @see \Drupal\node\Plugin\views\argument\CreatedDay
*/
public function testDayHandler() {
$view = views_get_view('test_argument_date');
$view
->setDisplay('embed_1');
$this
->executeView($view, array(
'02',
));
$expected = array();
$expected[] = array(
'id' => 2,
);
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
$view
->destroy();
$view
->setDisplay('embed_1');
$this
->executeView($view, array(
'01',
));
$expected = array();
$expected[] = array(
'id' => 1,
);
$expected[] = array(
'id' => 3,
);
$expected[] = array(
'id' => 4,
);
$expected[] = array(
'id' => 5,
);
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
$view
->destroy();
$view
->setDisplay('embed_1');
$this
->executeView($view, array(
'23',
));
$expected = array();
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
}
/**
* Tests the Month handler.
*
* @see \Drupal\node\Plugin\views\argument\CreatedMonth
*/
public function testMonthHandler() {
$view = views_get_view('test_argument_date');
$view
->setDisplay('embed_2');
$this
->executeView($view, array(
'01',
));
$expected = array();
$expected[] = array(
'id' => 1,
);
$expected[] = array(
'id' => 2,
);
$expected[] = array(
'id' => 3,
);
$expected[] = array(
'id' => 4,
);
$expected[] = array(
'id' => 5,
);
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
$view
->destroy();
$view
->setDisplay('embed_2');
$this
->executeView($view, array(
'23',
));
$expected = array();
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
}
/**
* Tests the Week handler.
*
* @see \Drupal\node\Plugin\views\argument\CreatedWeek
*/
public function testWeekHandler() {
$this->container
->get('database')
->update('views_test_data')
->fields(array(
'created' => gmmktime(0, 0, 0, 1, 1, 2000),
))
->condition('id', 3)
->execute();
$this->container
->get('database')
->update('views_test_data')
->fields(array(
'created' => gmmktime(0, 0, 0, 1, 10, 2000),
))
->condition('id', 4)
->execute();
$this->container
->get('database')
->update('views_test_data')
->fields(array(
'created' => gmmktime(0, 0, 0, 2, 1, 2000),
))
->condition('id', 5)
->execute();
$view = views_get_view('test_argument_date');
$view
->setDisplay('embed_3');
// The first jan 2000 was still in the last week of the previous year.
$this
->executeView($view, array(
52,
));
$expected = array();
$expected[] = array(
'id' => 1,
);
$expected[] = array(
'id' => 2,
);
$expected[] = array(
'id' => 3,
);
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
$view
->destroy();
$view
->setDisplay('embed_3');
$this
->executeView($view, array(
'02',
));
$expected = array();
$expected[] = array(
'id' => 4,
);
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
$view
->destroy();
$view
->setDisplay('embed_3');
$this
->executeView($view, array(
'05',
));
$expected = array();
$expected[] = array(
'id' => 5,
);
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
$view
->destroy();
$view
->setDisplay('embed_3');
$this
->executeView($view, array(
'23',
));
$expected = array();
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
}
/**
* Tests the Year handler.
*
* @see \Drupal\node\Plugin\views\argument\CreatedYear
*/
public function testYearHandler() {
$this->container
->get('database')
->update('views_test_data')
->fields(array(
'created' => gmmktime(0, 0, 0, 1, 1, 2001),
))
->condition('id', 3)
->execute();
$this->container
->get('database')
->update('views_test_data')
->fields(array(
'created' => gmmktime(0, 0, 0, 1, 1, 2002),
))
->condition('id', 4)
->execute();
$this->container
->get('database')
->update('views_test_data')
->fields(array(
'created' => gmmktime(0, 0, 0, 1, 1, 2002),
))
->condition('id', 5)
->execute();
$view = views_get_view('test_argument_date');
$view
->setDisplay('embed_4');
$this
->executeView($view, array(
'2000',
));
$expected = array();
$expected[] = array(
'id' => 1,
);
$expected[] = array(
'id' => 2,
);
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
$view
->destroy();
$view
->setDisplay('embed_4');
$this
->executeView($view, array(
'2001',
));
$expected = array();
$expected[] = array(
'id' => 3,
);
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
$view
->destroy();
$view
->setDisplay('embed_4');
$this
->executeView($view, array(
'2002',
));
$expected = array();
$expected[] = array(
'id' => 4,
);
$expected[] = array(
'id' => 5,
);
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
$view
->destroy();
$view
->setDisplay('embed_4');
$this
->executeView($view, array(
'23',
));
$expected = array();
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
}
/**
* Tests the YearMonth handler.
*
* @see \Drupal\node\Plugin\views\argument\CreatedYearMonth
*/
public function testYearMonthHandler() {
$this->container
->get('database')
->update('views_test_data')
->fields(array(
'created' => gmmktime(0, 0, 0, 1, 1, 2001),
))
->condition('id', 3)
->execute();
$this->container
->get('database')
->update('views_test_data')
->fields(array(
'created' => gmmktime(0, 0, 0, 4, 1, 2001),
))
->condition('id', 4)
->execute();
$this->container
->get('database')
->update('views_test_data')
->fields(array(
'created' => gmmktime(0, 0, 0, 4, 1, 2001),
))
->condition('id', 5)
->execute();
$view = views_get_view('test_argument_date');
$view
->setDisplay('embed_5');
$this
->executeView($view, array(
'200001',
));
$expected = array();
$expected[] = array(
'id' => 1,
);
$expected[] = array(
'id' => 2,
);
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
$view
->destroy();
$view
->setDisplay('embed_5');
$this
->executeView($view, array(
'200101',
));
$expected = array();
$expected[] = array(
'id' => 3,
);
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
$view
->destroy();
$view
->setDisplay('embed_5');
$this
->executeView($view, array(
'200104',
));
$expected = array();
$expected[] = array(
'id' => 4,
);
$expected[] = array(
'id' => 5,
);
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
$view
->destroy();
$view
->setDisplay('embed_5');
$this
->executeView($view, array(
'23',
));
$expected = array();
$this
->assertIdenticalResultset($view, $expected, $this->columnMap);
}
}
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
ArgumentDateTest:: |
protected | property | Stores the column map for this testCase. | |
ArgumentDateTest:: |
public static | property | Views used by this test. | |
ArgumentDateTest:: |
public static | function | ||
ArgumentDateTest:: |
public | function | Tests the CreatedFullDate handler. | |
ArgumentDateTest:: |
public | function | Tests the Day handler. | |
ArgumentDateTest:: |
public | function | Tests the Month handler. | |
ArgumentDateTest:: |
public | function | Tests the Week handler. | |
ArgumentDateTest:: |
public | function | Tests the Year handler. | |
ArgumentDateTest:: |
public | function | Tests the YearMonth handler. | |
ArgumentDateTest:: |
public | function |
Overrides \Drupal\views\Tests\ViewUnitTestBase::viewsData(). Overrides ViewUnitTestBase:: |
|
DrupalUnitTestBase:: |
protected | property | A KeyValueMemoryFactory instance to use when building the container. | |
DrupalUnitTestBase:: |
private | property | ||
DrupalUnitTestBase:: |
private | property | ||
DrupalUnitTestBase:: |
private | property | ||
DrupalUnitTestBase:: |
public | function | Sets up the base service container for this test. | 1 |
DrupalUnitTestBase:: |
protected | function | Disables modules for this test. | |
DrupalUnitTestBase:: |
protected | function | Enables modules for this test. | |
DrupalUnitTestBase:: |
protected | function | Installs default configuration for a given list of modules. | |
DrupalUnitTestBase:: |
protected | function | Installs a specific table from a module schema definition. | |
DrupalUnitTestBase:: |
protected | function |
Deletes created files, database tables, and reverts all environment changes. Overrides TestBase:: |
2 |
DrupalUnitTestBase:: |
function |
Overrides \Drupal\simpletest\UnitTestBase::__construct(). Overrides UnitTestBase:: |
||
TestBase:: |
protected | property | Assertions thrown in that test case. | |
TestBase:: |
protected | property | The config importer that can used in a test. | 1 |
TestBase:: |
protected | property | The dependency injection container used in the test. | 1 |
TestBase:: |
protected | property | The database prefix of this test run. | |
TestBase:: |
public | property | Whether to die in case any test assertion fails. | |
TestBase:: |
protected | property | The original file directory, before it was changed for testing purposes. | |
TestBase:: |
protected | property | The original database prefix when running inside Simpletest. | |
TestBase:: |
protected | property | The settings array. | |
TestBase:: |
protected | property | The public file directory for the test environment. | |
TestBase:: |
public | property | Current results of this test case. | |
TestBase:: |
protected | property | Flag to indicate whether the test has been set up. | |
TestBase:: |
protected | property | ||
TestBase:: |
protected | property | ||
TestBase:: |
protected | property | This class is skipped when looking for the source of an assertion. | |
TestBase:: |
protected | property | The test run ID. | |
TestBase:: |
protected | property | Time limit for the test. | |
TestBase:: |
protected | property | TRUE if verbose debugging is enabled. | |
TestBase:: |
protected | property | Safe class name for use in verbose output filenames. | |
TestBase:: |
protected | property | Directory where verbose output files are put. | |
TestBase:: |
protected | property | URL to the verbose output file directory. | |
TestBase:: |
protected | property | Incrementing identifier for verbose output filenames. | |
TestBase:: |
protected | function | Internal helper: stores the assert. | |
TestBase:: |
protected | function | Check to see if two values are equal. | |
TestBase:: |
protected | function | Check to see if a value is false (an empty string, 0, NULL, or FALSE). | |
TestBase:: |
protected | function | Check to see if two values are identical. | |
TestBase:: |
protected | function | Checks to see if two objects are identical. | |
TestBase:: |
protected | function | Check to see if two values are not equal. | |
TestBase:: |
protected | function | Check to see if two values are not identical. | |
TestBase:: |
protected | function | Check to see if a value is not NULL. | |
TestBase:: |
protected | function | Check to see if a value is NULL. | |
TestBase:: |
protected | function | Check to see if a value is not false (not an empty string, 0, NULL, or FALSE). | |
TestBase:: |
protected | function | Changes the database connection to the prefixed one. | |
TestBase:: |
protected | function | Checks the matching requirements for Test. | 4 |
TestBase:: |
public | function | Returns a ConfigImporter object to import test importing of configuration. | 1 |
TestBase:: |
public | function | Copies configuration objects from source storage to target storage. | |
TestBase:: |
public static | function | Delete an assertion record by message ID. | |
TestBase:: |
protected | function | Fire an error assertion. | 1 |
TestBase:: |
public | function | Handle errors during test runs. | |
TestBase:: |
protected | function | Handle exceptions. | |
TestBase:: |
protected | function | Fire an assertion that is always negative. | |
TestBase:: |
public static | function | Ensures test files are deletable within file_unmanaged_delete_recursive(). | |
TestBase:: |
public static | function | Converts a list of possible parameters into a stack of permutations. | |
TestBase:: |
protected | function | Cycles through backtrace until the first non-assertion method is found. | |
TestBase:: |
public static | function | Returns the database connection to the site running Simpletest. | |
TestBase:: |
public static | function | Store an assertion from outside the testing context. | |
TestBase:: |
protected | function | Fire an assertion that is always positive. | |
TestBase:: |
protected | function | Create and set new configuration directories. | 1 |
TestBase:: |
protected | function | Generates a database prefix for running tests. | |
TestBase:: |
protected | function | Prepares the current environment for running the test. | |
TestBase:: |
public static | function | Generates a random string containing letters and numbers. | |
TestBase:: |
public static | function | Generates a random PHP object. | |
TestBase:: |
public static | function | Generates a random string of ASCII characters of codes 32 to 126. | |
TestBase:: |
protected | function | Rebuild drupal_container(). | 1 |
TestBase:: |
public | function | Run all tests in this class. | |
TestBase:: |
protected | function | Changes in memory settings. | |
TestBase:: |
protected | function | Logs verbose message in a text file. | |
UnitTestBase:: |
protected | property | ||
ViewUnitTestBase:: |
public static | property |
Modules to enable. Overrides DrupalUnitTestBase:: |
21 |
ViewUnitTestBase:: |
protected | function | Verifies that a result set returned by a View matches expected values. | |
ViewUnitTestBase:: |
protected | function | Performs View result assertions. | |
ViewUnitTestBase:: |
protected | function | Verifies that a result set returned by a View differs from certain values. | |
ViewUnitTestBase:: |
protected | function | Returns a very simple test dataset. | 7 |
ViewUnitTestBase:: |
protected | function | Executes a view with debugging. | |
ViewUnitTestBase:: |
protected | function | Orders a nested array containing a result set based on a given column. | |
ViewUnitTestBase:: |
protected | function | Returns the schema definition. | 4 |
ViewUnitTestBase:: |
protected | function |
Sets up Drupal unit test environment. Overrides DrupalUnitTestBase:: |
20 |
ViewUnitTestBase:: |
protected | function | Sets up the configuration and schema of views and views_test_data modules. | 2 |