. /** * Unit tests for the block_myoverview implementation of the privacy API. * * @package block_myoverview * @category test * @copyright 2018 Adrian Greeve * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ defined('MOODLE_INTERNAL') || die(); use \core_privacy\local\request\writer; use \block_myoverview\privacy\provider; /** * Unit tests for the block_myoverview implementation of the privacy API. * * @copyright 2018 Adrian Greeve * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ class block_myoverview_privacy_testcase extends \core_privacy\tests\provider_testcase { /** * Ensure that export_user_preferences returns no data if the user has not visited the myoverview block. */ public function test_export_user_preferences_no_pref() { $this->resetAfterTest(); $user = $this->getDataGenerator()->create_user(); provider::export_user_preferences($user->id); $writer = writer::with_context(\context_system::instance()); $this->assertFalse($writer->has_any_data()); } /** * Test that the preference courses is exported properly. */ public function test_export_user_preferences_course_preference() { $this->resetAfterTest(); $user = $this->getDataGenerator()->create_user(); set_user_preference('block_myoverview_last_tab', 'courses', $user); provider::export_user_preferences($user->id); $writer = writer::with_context(\context_system::instance()); $blockpreferences = $writer->get_user_preferences('block_myoverview'); $this->assertEquals('courses', $blockpreferences->block_myoverview_last_tab->value); } /** * Test that the preference timeline is exported properly. */ public function test_export_user_preferences_timeline_preference() { $this->resetAfterTest(); $user = $this->getDataGenerator()->create_user(); set_user_preference('block_myoverview_last_tab', 'timeline', $user); provider::export_user_preferences($user->id); $writer = writer::with_context(\context_system::instance()); $blockpreferences = $writer->get_user_preferences('block_myoverview'); $this->assertEquals('timeline', $blockpreferences->block_myoverview_last_tab->value); } }