/** * Execute the command. * * @return void */ public function handle() { $forum = Forum::create($this->data); $this->user->forums()->save($forum); $this->project->forums()->save($forum); event(new FeedableEvent('ForumPosted', $this->user, $forum)); return $forum; }
public function stestForumPosted() { $project = Project::create($this->projectdata); $user = User::firstOrFail(); $forum = Forum::create($this->forumdata); //~ $user->forums()->save($forum); $forum->owner()->associate($user); $project->forums()->save($forum); event(new ForumPosted($user, $project, $forum)); $this->assertEquals(1, $user->forums->count()); $this->assertEquals(1, $project->forums->count()); $this->assertEquals($user->id, $forum->owner->id); $this->assertEquals($project->id, $forum->project->id); $this->assertEquals(1, Feed::count()); $this->assertEquals($forum->id, Feed::firstOrFail()->feedable->id); $this->assertEquals($project->id, Feed::firstOrFail()->project_id); $this->assertEquals(ForumPosted::class, $forum->feed->type); }