Moodle PHP Documentation 5.1
Moodle 5.1dev (Build: 20250530) (c39b7370636)
base_testcase Class Reference

Base class for PHPUnit test cases customised for Moodle. More...

Inheritance diagram for base_testcase:
advanced_testcase basic_testcase database_driver_testcase core\tests\courses_tasks_testcase core\tests\router\route_testcase core_backup_backup_restore_base_testcase core_badges\tests\badges_testcase core_privacy\tests\provider_testcase core_reportbuilder\tests\core_reportbuilder_testcase data_loading_method_test_base data_privacy_testcase externallib_advanced_testcase gradepenalty_duedate\tests\penalty_testcase lti_advantage_testcase mod_quiz\tests\attempt_walkthrough_testcase qbank_columnsortorder\tests\external_function_testcase qbank_managecategories\manage_category_test_base question_attempt_upgrader_test_base question_testcase repository_googledocs_testcase restore_date_testcase tool_brickfield\area_test_base tool_brickfield\local\htmlchecker\common\checks\all_checks

Public Member Functions

 assertEqualsIgnoringWhitespace ($expected, $actual, string $message='')
 Assert that two Date/Time strings are equal.
 
 isInIsolation ()
 Determine whether the test is running in isolation.
 

Static Public Member Functions

static assertNotTag ($matcher, $actual, $message='', $ishtml=true)
 Note: we are overriding this method to remove the deprecated error.
 
static assertTag ($matcher, $actual, $message='', $ishtml=true)
 Note: we are overriding this method to remove the deprecated error.
 
static assertValidKeys (array $hash, array $validKeys)
 Validate list of keys in the associative array.
 
static findNodes (DOMDocument $dom, array $options, $isHtml=true)
 Parse out the options from the tag using DOM object tree.
 
static loadHTML (string $actual)
 Load HTML into a DomDocument.
 

Static Protected Member Functions

static get_invokable ()
 Get an invokable object for testing.
 
static getDescendants (DOMNode $node)
 Recursively get flat array of all descendants of this node.
 
static getElementsByCaseInsensitiveTagName (DOMDocument $dom, $tag)
 Gets elements by case insensitive tagname.
 
static getInvocationCount (InvocationOrder $counter)
 Helper to get the count of invocation.
 
static getNodeText (DOMNode $node)
 Get the text value of this node's child text node.
 

Detailed Description

Base class for PHPUnit test cases customised for Moodle.

It is intended for functionality common to both basic and advanced_testcase.

Author
Tony Levi tony..nosp@m.levi.nosp@m.@blac.nosp@m.kboa.nosp@m.rd.co.nosp@m.m
License
http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later

Member Function Documentation

◆ assertEqualsIgnoringWhitespace()

base_testcase::assertEqualsIgnoringWhitespace ( $expected,
$actual,
string $message = '' )

Assert that two Date/Time strings are equal.

The strings generated by DateTime, strtotime, date, time, etc. are generated outside of our control. From time-to-time string changes are made. One such example is from ICU 72.1 which changed the time format to include a narrow-non-breaking-space (U+202F) between the time and AM/PM.

We should not update our tests to match these changes, as it is not our code that is generating the strings and they may change again. In addition, the changes are not equal amongst all systems as they depend on the version of ICU installed.

Parameters
string$expected
string$actual
string$message

◆ assertNotTag()

static base_testcase::assertNotTag ( $matcher,
$actual,
$message = '',
$ishtml = true )
static

Note: we are overriding this method to remove the deprecated error.

See also
https://tracker.moodle.org/browse/MDL-47129
Parameters
array$matcher
string$actual
string$message
boolean$ishtml
Deprecated
3.0

◆ assertTag()

static base_testcase::assertTag ( $matcher,
$actual,
$message = '',
$ishtml = true )
static

Note: we are overriding this method to remove the deprecated error.

See also
https://tracker.moodle.org/browse/MDL-47129
Parameters
array$matcher
string$actual
string$message
boolean$ishtml
Deprecated
3.0

◆ assertValidKeys()

static base_testcase::assertValidKeys ( array $hash,
array $validKeys )
static

Validate list of keys in the associative array.

Parameters
array$hash
array$validKeys
Return values
array
Exceptions
PHPUnit::Framework::Exception

◆ findNodes()

static base_testcase::findNodes ( DOMDocument $dom,
array $options,
$isHtml = true )
static

Parse out the options from the tag using DOM object tree.

Parameters
DOMDocument$dom
array$options
bool$isHtml
Return values
array

◆ get_invokable()

static base_testcase::get_invokable ( )
staticprotected

Get an invokable object for testing.

This is a helper method to create an invokable object for testing which can be used to track invocations, including arguments provided.

This can be useful for modifications to the error handler.

Return values
object

◆ getDescendants()

static base_testcase::getDescendants ( DOMNode $node)
staticprotected

Recursively get flat array of all descendants of this node.

Parameters
DOMNode$node
Return values
array

◆ getElementsByCaseInsensitiveTagName()

static base_testcase::getElementsByCaseInsensitiveTagName ( DOMDocument $dom,
$tag )
staticprotected

Gets elements by case insensitive tagname.

Parameters
DOMDocument$dom
string$tag
Return values
DOMNodeList

◆ getInvocationCount()

static base_testcase::getInvocationCount ( InvocationOrder $counter)
staticprotected

Helper to get the count of invocation.

This is required because the method to use changed names in PHPUnit 10.0 in a breaking change.

Parameters
PHPUnit::Framework::MockObject::Rule::InvocationOrder$counter
Return values
int

◆ getNodeText()

static base_testcase::getNodeText ( DOMNode $node)
staticprotected

Get the text value of this node's child text node.

Parameters
DOMNode$node
Return values
string

◆ isInIsolation()

base_testcase::isInIsolation ( )

Determine whether the test is running in isolation.

Note: This was previously a public method of the TestCase, but as removed in PHPUnit 10. There is no direct replacement, but we can use reflection to access the protected property.

Return values
bool

◆ loadHTML()

static base_testcase::loadHTML ( string $actual)
static

Load HTML into a DomDocument.

Note: THis is a replacement for functionality removed from PHPUnit 10.

Parameters
string$actual
Exceptions
PHPUnit::Util::Xml::XmlException
Return values
DOMDocument

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