Moodle APIs
3.8
Moodle 3.8.6 (Build: 20201109)
|
Helper base class for external tests. More...
Public Member Functions | |
assertDebuggingCalled ($debugmessage=null, $debuglevel=null, $message='') | |
Assert that exactly debugging was just called once. More... | |
assertDebuggingCalledCount ($expectedcount, $debugmessages=array(), $debuglevels=array(), $message='') | |
Asserts how many times debugging has been called. More... | |
assertDebuggingNotCalled ($message='') | |
Call when no debugging() messages expected. More... | |
assertEventContextNotUsed (\core\event\base $event, $message='') | |
Assert that an event is not using event->contxet. More... | |
assertEventLegacyData ($expected, core\event\base $event, $message='') | |
Assert that an event legacy data is equal to the expected value. More... | |
assertEventLegacyLogData ($expected, core\event\base $event, $message='') | |
Assert that an event legacy log data is equal to the expected value. More... | |
assertTimeCurrent ($time, $message='') | |
Assert that: start < $time < time() More... | |
getDebuggingMessages () | |
Return debugging messages from the current test. More... | |
getExternalTestFileUrl ($path, $https=false) | |
Returns UTL of the external test file. More... | |
preventResetByRollback () | |
Call this method from test if you want to make sure that the resetting of database is done the slow way without transaction rollback. More... | |
recurseFolders ($path, $callback, $fileregexp='/.*/', $exclude=false, $ignorefolders=array()) | |
Recursively visit all the files in the source tree. More... | |
redirectEmails () | |
Starts email redirection. More... | |
redirectEvents () | |
Starts event redirection. More... | |
redirectMessages () | |
Starts message redirection. More... | |
resetAfterTest ($reset=true) | |
Reset everything after current test. More... | |
resetDebugging () | |
Clear all previous debugging messages in current test and revert to default DEVELOPER_DEBUG level. | |
runBare () | |
Runs the bare test sequence. More... | |
setCurrentTimeStart () | |
Stores current time as the base for assertTimeCurrent(). More... | |
waitForSecond () | |
Wait for a second to roll over, ensures future calls to time() return a different result. More... | |
Static Public Member Functions | |
static | assertNotTag ($matcher, $actual, $message='', $ishtml=true) |
Note: we are overriding this method to remove the deprecated error. More... | |
static | assertTag ($matcher, $actual, $message='', $ishtml=true) |
Note: we are overriding this method to remove the deprecated error. More... | |
static | assertValidKeys (array $hash, array $validKeys) |
Validate list of keys in the associative array. More... | |
static | assignUserCapability ($capability, $contextid, $roleid=null) |
Assign a capability to $USER The function creates a student $USER if $USER->id is empty. More... | |
static | configure_filters ($filters) |
Configure some filters for external tests. More... | |
static | findNodes (DOMDocument $dom, array $options, $isHtml=true) |
Parse out the options from the tag using DOM object tree. More... | |
static | getDataGenerator () |
Get data generator. More... | |
static | resetAllData ($detectchanges=false) |
Reset all database tables, restore global state and clear caches and optionally purge dataroot dir. More... | |
static | setAdminUser () |
Set current $USER to admin account, reset access cache. More... | |
static | setGuestUser () |
Set current $USER to guest account, reset access cache. More... | |
static | setTimezone ($servertimezone='Australia/Perth', $defaultphptimezone='Australia/Perth') |
Change server and default php timezones. More... | |
static | setUser ($user=null) |
Set current $USER, reset access cache. More... | |
static | unassignUserCapability ($capability, $contextid=null, $roleid=null, $courseid=null, $enrol='manual') |
Unassign a capability to $USER. More... | |
Protected Member Functions | |
createArrayDataSet (array $data) | |
Creates new ArrayDataSet from given array. More... | |
createCsvDataSet ($files, $delimiter=',', $enclosure='"', $escape = '"') | |
Creates a new CsvDataSet from the given array of csv files. More... | |
createFlatXMLDataSet ($xmlFile) | |
Creates a new FlatXmlDataSet with the given $xmlFile. More... | |
createXMLDataSet ($xmlFile) | |
Creates a new XMLDataSet with the given $xmlFile. More... | |
loadDataSet (PHPUnit\DbUnit\DataSet\IDataSet $dataset) | |
Load date into moodle database tables from standard PHPUnit data set. More... | |
runAdhocTasks ($matchclass='', $matchuserid=null) | |
Run adhoc tasks, optionally matching the specified classname. More... | |
Static Protected Member Functions | |
static | getDescendants (DOMNode $node) |
Recursively get flat array of all descendants of this node. More... | |
static | getElementsByCaseInsensitiveTagName (DOMDocument $dom, $tag) |
Gets elements by case insensitive tagname. More... | |
static | getNodeText (DOMNode $node) |
Get the text value of this node's child text node. More... | |
Helper base class for external tests.
Helpfull to test capabilities.
|
inherited |
Assert that exactly debugging was just called once.
Discards the debugging message if successful.
null | string | $debugmessage | null means any |
null | string | $debuglevel | null means any |
string | $message |
|
inherited |
Asserts how many times debugging has been called.
int | $expectedcount | The expected number of times |
array | $debugmessages | Expected debugging messages, one for each expected message. |
array | $debuglevels | Expected debugging levels, one for each expected message. |
string | $message |
void |
|
inherited |
Call when no debugging() messages expected.
string | $message |
|
inherited |
Assert that an event is not using event->contxet.
While restoring context might not be valid and it should not be used by event url or description methods.
core\event\base | $event | the event object. |
string | $message |
void |
|
inherited |
Assert that an event legacy data is equal to the expected value.
mixed | $expected | expected data. |
core\event\base | $event | the event object. |
string | $message |
void |
|
inherited |
Assert that an event legacy log data is equal to the expected value.
mixed | $expected | expected data. |
core\event\base | $event | the event object. |
string | $message |
void |
|
staticinherited |
Note: we are overriding this method to remove the deprecated error.
array | $matcher | |
string | $actual | |
string | $message | |
boolean | $ishtml |
|
staticinherited |
Note: we are overriding this method to remove the deprecated error.
array | $matcher | |
string | $actual | |
string | $message | |
boolean | $ishtml |
|
inherited |
Assert that: start < $time < time()
int | $time | |
string | $message |
void |
|
staticinherited |
Validate list of keys in the associative array.
array | $hash | |
array | $validKeys |
array |
PHPUnit |
|
static |
Assign a capability to $USER The function creates a student $USER if $USER->id is empty.
string | $capability | capability name |
int | $contextid | |
int | $roleid |
int | the role id - mainly returned for creation, so calling function can reuse it |
|
static |
Configure some filters for external tests.
array | $filters | Filters to enable. Each filter should contain:
|
|
protectedinherited |
Creates new ArrayDataSet from given array.
array | $data | array of tables, first row in each table is columns |
phpunit_ArrayDataSet |
|
protectedinherited |
Creates a new CsvDataSet from the given array of csv files.
(absolute paths.)
array | $files | array tablename=>cvsfile |
string | $delimiter | |
string | $enclosure | |
string | $escape |
PHPUnit |
|
protectedinherited |
Creates a new FlatXmlDataSet with the given $xmlFile.
(absolute path.)
string | $xmlFile |
PHPUnit |
|
protectedinherited |
Creates a new XMLDataSet with the given $xmlFile.
(absolute path.)
string | $xmlFile |
PHPUnit |
|
staticinherited |
Parse out the options from the tag using DOM object tree.
DOMDocument | $dom | |
array | $options | |
bool | $isHtml |
array |
|
staticinherited |
Get data generator.
testing_data_generator |
|
inherited |
Return debugging messages from the current test.
array | with instances having 'message', 'level' and 'stacktrace' property. |
|
staticprotectedinherited |
Recursively get flat array of all descendants of this node.
DOMNode | $node |
array |
|
staticprotectedinherited |
Gets elements by case insensitive tagname.
DOMDocument | $dom | |
string | $tag |
DOMNodeList |
|
inherited |
Returns UTL of the external test file.
The result depends on the value of following constants:
They should point to standard external test files repository, it defaults to 'http://download.moodle.org/unittest'.
False value means skip tests that require external files.
string | $path | |
bool | $https | true if https required |
string | url |
|
staticprotectedinherited |
Get the text value of this node's child text node.
DOMNode | $node |
string |
|
protectedinherited |
Load date into moodle database tables from standard PHPUnit data set.
Note: it is usually better to use data generators
PHPUnit\DbUnit\DataSet\IDataSet | $dataset |
void |
|
inherited |
Call this method from test if you want to make sure that the resetting of database is done the slow way without transaction rollback.
This is useful especially when testing stuff that is not compatible with transactions.
void |
|
inherited |
Recursively visit all the files in the source tree.
Calls the callback function with the pathname of each file found.
string | $path | the folder to start searching from. |
string | $callback | the method of this class to call with the name of each file found. |
string | $fileregexp | a regexp used to filter the search (optional). |
bool | $exclude | If true, pathnames that match the regexp will be ignored. If false, only files that match the regexp will be included. (default false). |
array | $ignorefolders | will not go into any of these folders (optional). |
void |
|
inherited |
Starts email redirection.
You can verify if email were sent or not by inspecting the email array in the returned phpmailer sink instance. The redirection can be stopped by calling $sink->close();
phpunit_message_sink |
|
inherited |
Starts event redirection.
You can verify if events were triggered or not by inspecting the events array in the returned event sink instance. The redirection can be stopped by calling $sink->close();
phpunit_event_sink |
|
inherited |
Starts message redirection.
You can verify if messages were sent or not by inspecting the messages array in the returned messaging sink instance. The redirection can be stopped by calling $sink->close();
phpunit_message_sink |
|
inherited |
Reset everything after current test.
bool | $reset | true means reset state back, false means keep all data for the next test, null means reset state and show warnings if anything changed |
void |
|
staticinherited |
Reset all database tables, restore global state and clear caches and optionally purge dataroot dir.
bool | $detectchanges | true - changes in global state and database are reported as errors false - no errors reported null - only critical problems are reported as errors |
void |
|
protectedinherited |
Run adhoc tasks, optionally matching the specified classname.
string | $matchclass | The name of the class to match on. |
int | $matchuserid | The userid to match. |
|
finalinherited |
Runs the bare test sequence.
void |
|
staticinherited |
Set current $USER to admin account, reset access cache.
void |
|
inherited |
Stores current time as the base for assertTimeCurrent().
Note: this is called automatically before calling individual test methods.
int | current time |
|
staticinherited |
Set current $USER to guest account, reset access cache.
void |
|
staticinherited |
Change server and default php timezones.
string | $servertimezone | timezone to set in $CFG->timezone (not validated) |
string | $defaultphptimezone | timezone to fake default php timezone (must be valid) |
|
staticinherited |
Set current $USER, reset access cache.
null | int | stdClass | $user | user record, null or 0 means non-logged-in, positive integer means userid |
void |
|
static |
Unassign a capability to $USER.
string | $capability | capability name. |
int | $contextid | set the context id if you used assignUserCapability. |
int | $roleid | set the role id if you used assignUserCapability. |
int | $courseid | set the course id if you used getDataGenerator->enrol_users. |
string | $enrol | set the enrol plugin name if you used getDataGenerator->enrol_users with a different plugin than 'manual'. |
|
inherited |
Wait for a second to roll over, ensures future calls to time() return a different result.
This is implemented instead of sleep() as we do not need to wait a full second. In some cases due to calls we may wait more than sleep() would have, on average it will be less.