/** * Test set_user_preferences using an invalid preference */ public function test_set_user_preferences_invalid_preference() { global $USER; $this->resetAfterTest(true); // Create a very long value. $this->setAdminUser(); $preferences = array(array('name' => 'calendar_maxevents', 'value' => str_repeat('a', 1334), 'userid' => $USER->id)); $result = core_user_external::set_user_preferences($preferences); $result = external_api::clean_returnvalue(core_user_external::set_user_preferences_returns(), $result); $this->assertCount(1, $result['warnings']); $this->assertCount(0, $result['saved']); $this->assertEquals('errorsavingpreference', $result['warnings'][0]['warningcode']); }