/** * @expectedException PHPUnit_Framework_Error_Notice */ public function test_context_not_used() { $event = \core_tests\event\context_used_in_event::create(array('other' => array('sample' => 1, 'xx' => 10))); $this->assertEventContextNotUsed($event); $eventcontext = phpunit_event_mock::testable_get_event_context($event); phpunit_event_mock::testable_set_event_context($event, null); $this->assertEventContextNotUsed($event); }
/** * Assert that an event is not using event->contxet. * While restoring context might not be valid and it should not be used by event url * or description methods. * * @param \core\event\base $event the event object. * @param string $message * @return void */ public function assertEventContextNotUsed(\core\event\base $event, $message = '') { // Save current event->context and set it to false. $eventcontext = phpunit_event_mock::testable_get_event_context($event); phpunit_event_mock::testable_set_event_context($event, false); if ($message === '') { $message = 'Event should not use context property of event in any method.'; } // Test event methods should not use event->context. $event->get_url(); $event->get_description(); $event->get_legacy_eventname(); phpunit_event_mock::testable_get_legacy_eventdata($event); phpunit_event_mock::testable_get_legacy_logdata($event); // Restore event->context. phpunit_event_mock::testable_set_event_context($event, $eventcontext); }
/** * Assert that an event legacy log data is equal to the expected value. * * @param mixed $expected expected data. * @param \core\event\base $event the event object. * @param string $message * @return void */ public function assertEventLegacyLogData($expected, \core\event\base $event, $message = '') { $legacydata = phpunit_event_mock::testable_get_legacy_logdata($event); if ($message === '') { $message = 'Event legacy log data does not match expected value.'; } $this->assertEquals($expected, $legacydata, $message); }