public function testExamCreation() { $exam = new Exam(); $this->assertEquals($exam->questionsAnswered(), 0); $this->assertEquals($exam->totalQuestions(), 0); // Add ten questions to this exam $questions = array(); for ($i = 0; $i < 10; $i++) { $question = \Mockery::mock('Question'); // Answer only the even questions. $question->shouldReceive('wasAnswered')->once()->andReturn($i % 2 == 0); $questions[] = $question; } $exam->setQuestions($questions); $this->assertEquals($exam->totalQuestions(), 10); // Five questions should be answered $this->assertEquals($exam->questionsAnswered(), 5); }