/** * Tests for event blog_entry_deleted. */ public function test_blog_entry_deleted_event() { global $USER, $DB; $this->setAdminUser(); $this->resetAfterTest(); $sitecontext = context_system::instance(); // Delete a user blog entry as Admin. $blog = new blog_entry($this->postid); $sink = $this->redirectEvents(); $record = $DB->get_record('post', array('id' => $blog->id)); $blog->delete(); $events = $sink->get_events(); $event = array_pop($events); $sink->close(); // Validate event data. $this->assertInstanceOf('\\core\\event\\blog_entry_deleted', $event); $this->assertEquals(null, $event->get_url()); $this->assertEquals($sitecontext->id, $event->contextid); $this->assertEquals($blog->id, $event->objectid); $this->assertEquals($USER->id, $event->userid); $this->assertEquals($this->userid, $event->relateduserid); $this->assertEquals("post", $event->objecttable); $this->assertEquals($record, $event->get_record_snapshot("post", $blog->id)); $this->assertSame('blog_entry_deleted', $event->get_legacy_eventname()); $arr = array(SITEID, 'blog', 'delete', 'index.php?userid=' . $blog->userid, 'deleted blog entry with entry id# ' . $blog->id); $this->assertEventLegacyLogData($arr, $event); $this->assertEventLegacyData($blog, $event); $this->assertEventContextNotUsed($event); }
/** * Test various blog related events. */ public function test_blog_entry_events() { global $USER, $DB; $this->setAdminUser(); $this->resetAfterTest(); // Create a blog entry. $blog = new blog_entry(); $blog->summary = "This is summary of blog"; $blog->subject = "Subject of blog"; $states = blog_entry::get_applicable_publish_states(); $blog->publishstate = reset($states); $sink = $this->redirectEvents(); $blog->add(); $events = $sink->get_events(); $event = reset($events); $sitecontext = context_system::instance(); // Validate event data. $this->assertInstanceOf('\core\event\blog_entry_created', $event); $this->assertEquals($sitecontext->id, $event->contextid); $this->assertEquals($blog->id, $event->objectid); $this->assertEquals($USER->id, $event->userid); $this->assertEquals("post", $event->objecttable); // Delete a blog entry. $record = $DB->get_record('post', array('id' => $blog->id)); $blog->delete(); $events = $sink->get_events(); $event = array_pop($events); // Validate event data. $this->assertInstanceOf('\core\event\blog_entry_deleted', $event); $this->assertEquals(context_system::instance()->id, $event->contextid); $this->assertEquals($blog->id, $event->objectid); $this->assertEquals($USER->id, $event->userid); $this->assertEquals("post", $event->objecttable); $this->assertEquals($record, $event->get_record_snapshot("post", $blog->id)); $this->assertSame('blog_entry_deleted', $event->get_legacy_eventname()); }