. namespace mod_bigbluebuttonbn; use advanced_testcase; use moodle_exception; /** * Tests for the Big Blue Button Plugin class. * * @package mod_bigbluebuttonbn * @copyright 2021 Andrew Lyons * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later * @coversDefaultClass \mod_bigbluebuttonbn\plugin */ class plugin_test extends advanced_testcase { /** * Test html2text * * @covers ::html2text */ public function test_html2text(): void { $this->assertEquals('My text is in HTML', plugin::html2text('

My text is in HTML

', 100)); $this->assertEquals('My...', plugin::html2text('

My text is in HTML

', 2)); } /** * Test random_password * * @covers ::random_password */ public function test_random_password(): void { $password = plugin::random_password(10); $this->assertEquals(10, strlen($password)); $this->assertMatchesRegularExpression( '/[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]+/', $password); } /** * Test generate_guest_meeting_credentials * * @covers ::generate_guest_meeting_credentials */ public function test_generate_guest_meeting_credentials(): void { [$guestlinkuid, $password] = plugin::generate_guest_meeting_credentials(); $this->assertEquals(40, strlen($guestlinkuid)); } }