. namespace core; use core\check\result; use core\check\security\passwordpolicy; /** * Example unit tests for check API * * @package core * @category check * @copyright 2020 Brendan Heywood * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ class check_test extends \advanced_testcase { /** * A simple example showing how a check and result object works * * Conceptually a check is analgous to a unit test except at runtime * instead of build time so many checks in real life such as testing * an API is connecting aren't viable to unit test. */ public function test_passwordpolicy() { global $CFG; $prior = $CFG->passwordpolicy; $check = new passwordpolicy(); $CFG->passwordpolicy = false; $result = $check->get_result(); $this->assertEquals($result->status, result::WARNING); $CFG->passwordpolicy = true; $result = $check->get_result(); $this->assertEquals($result->status, result::OK); $CFG->passwordpolicy = $prior; } }