public function test_that_journal_receives_result_information() { $lab = new Laboratory(); $journal = new StandardJournal(); $lab->addJournal($journal); $control = function () { return 'foo'; }; $trial = function () { return 'bar'; }; $value = $lab->experiment('foo')->control($control)->trial('bar', $trial)->run(); $this->assertEquals('foo', $value); $this->assertInstanceOf('\\Scientist\\Report', $journal->getReport()); $this->assertEquals('foo', $journal->getReport()->getName()); $this->assertEquals('foo', $journal->getReport()->getControl()->getValue()); $this->assertEquals('bar', $journal->getReport()->getTrial('bar')->getValue()); $this->assertEquals(false, $journal->getReport()->getTrial('bar')->isMatch()); }