. /** * Testing the H5P library handler. * * @package core_h5p * @category test * @copyright 2020 Sara Arjona * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ namespace core_h5p\local\library; use advanced_testcase; /** * Test class covering the H5P library handler. * * @package core_h5p * @copyright 2020 Sara Arjona * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ class handler_test extends advanced_testcase { /** * Test the behaviour of get_h5p_string(). * * @dataProvider get_h5p_string_provider * @param string $identifier The key identifier for the localized string. * @param string $expectedresult Expected result. * @param string $lang Language to get the localized string. */ public function test_get_h5p_string(string $identifier, ?string $expectedresult, ?string $lang = 'en'): void { $result = autoloader::get_h5p_string($identifier, $lang); $this->assertEquals($expectedresult, $result); } /** * Data provider for test_get_h5p_string(). * * @return array */ public function get_h5p_string_provider(): array { return [ 'Existing string in h5plib plugin' => [ 'editor:add', 'Add', ], 'Unexisting translation for an existing string in h5plib plugin (es)' => [ 'editor:add', null, 'es', ], 'Unexisting string in h5plib plugin' => [ 'unexistingstring', null, ], 'Unexisting translation for an unexisting string in h5plib plugin (es)' => [ 'unexistingstring', null, 'es', ], ]; } }