/** * * @param Answer $answer * @return int id of the Answer inserted in base. False if it didn't work. */ public static function flush($answer) { $answerId = $answer->getId(); $answerVar = $answer->getAnswer(); $answerDate = $answer->getAnswerDate(); $likert = $answer->getLikert()->getId(); $user = $answer->getUser()->getId(); $question = $answer->getQuestion()->getId(); if ($answerId > 0) { $sql = 'UPDATE answer a SET ' . 'a.answer = ?, ' . 'a.answer_date = ?, ' . 'a.LIKERT_id_likert = ?, ' . 'a.USER_id_user = ?, ' . 'a.QUESTION_id_question = ? ' . 'WHERE a.id_answer = ?'; $params = array('ssiiii', &$answerVar, &$answerDate, &$likert, &$user, &$question, &$answerId); } else { $sql = 'INSERT INTO answer ' . '(answer, answer_date, LIKERT_id_likert, USER_id_user, QUESTION_id_question) ' . 'VALUES(?, ?, ?, ?, ?)'; $params = array('ssiii', &$answerVar, &$answerDate, &$likert, &$user, &$question); } $idInsert = BaseSingleton::insertOrEdit($sql, $params); if ($idInsert !== false && $answerId > 0) { $idInsert = $answerId; } return $idInsert; }
function test_update() { //Arrange $test_field = "Joe Update"; $test_quest_id = 1; $test_answer = new Answer($test_field, $test_quest_id); $test_answer->save(); //Act $new_answer = "Sam Update"; $test_answer->update($new_answer); //Assert $this->assertEquals("Sam Update", $test_answer->getAnswer()); }