/** * @param Survey $survey */ private function reset(Survey $survey = null) { unset($this->session[self::SESSION_KEY]); //Lets create and add to the session $this->surveyState = new SurveyState(); if (!is_null($survey)) { $this->surveyState->setSurvey($survey); $this->surveyState->setSurveyExecutionState(SurveyExecutionState::InProgress()); } $this->session[self::SESSION_KEY] = $this->surveyState; //var_dump($this->session[self::SESSION_KEY]); }
function testSurveyState() { $questionStub = $this->getMock('sarhan\\survey\\SurveyQuestion'); $surveyStub = $this->getMock("sarhan\\survey\\Survey"); $surveyStub->expects($this->any())->method('getQuestions')->will($this->returnValue(array($questionStub, $questionStub, $questionStub))); $questionStub->expects($this->any())->method("getType")->will($this->returnValue(QuestionType::YesNo())); $this->assertEquals(array($questionStub, $questionStub, $questionStub), $surveyStub->getQuestions()); $s = new SurveyState(); $s->setSurvey($surveyStub); $this->assertFalse($s->hasId()); $s->setId("foobar"); $this->assertTrue($s->hasId()); $s->setQuestionIndex(0); $q = $s->getQuestion(); $this->assertNotNull($q); $s->setQuestionIndex(3); $q = $s->getQuestion(); $this->assertNull($q); }