示例#1
0
 /**
  * @test
  */
 public function shouldReturnTheSessionInfoAsArray()
 {
     $tutor = new User();
     $tutor->setId(123);
     $tutor->setUsername('theTutor');
     $asker = new User();
     $asker->setId(456);
     $asker->setUsername('theAsker');
     $question = new StudentQuestion();
     $question->setTutor($tutor);
     $question->setStudent($asker);
     $question->setQuestion('This is a question.');
     $session = new WhiteboardSession();
     $session->setId(999);
     $session->setStudentQuestion($question);
     $session->setType(1);
     $sessionInfo = $session->info();
     $this->assertEquals(999, $sessionInfo['id']);
     $this->assertEquals('This is a question.', $sessionInfo['question']);
     $this->assertEquals(1, $sessionInfo['session']['type']);
     $this->assertEquals(123, $sessionInfo['tutor']['id']);
     $this->assertEquals('theTutor', $sessionInfo['tutor']['username']);
     $this->assertEquals(456, $sessionInfo['student']['id']);
     $this->assertEquals('theAsker', $sessionInfo['student']['username']);
     $this->assertFalse(array_key_exists('whiteboard-session', $sessionInfo));
 }
 public function connect($userId, $questionId)
 {
     $question = StudentQuestionPeer::retrieveByPk($questionId);
     $session = new WhiteboardSession();
     $session->setStudentQuestion($question);
     $session->setType($this->getType($userId, $question));
     $session->setToken($this->generateToken($userId, $questionId));
     $session->setUserId($userId);
     $session->save();
     return $session;
 }