Esempio n. 1
0
 public function testQueryDao()
 {
     // Use Query DAO to insert a new query.
     $dao = new CreateQueryDAO();
     if ($dao == null) {
         echo "dao is null";
     }
     $dao->initTransaction();
     $queryID = $dao->persistNewQuery('title', 1);
     if ($queryID == null) {
         echo "queryID is null";
     }
     $dao->persistQuestion('text');
     $dao->persistAnswer('q0', 0);
     $dao->persistAnswer('q1', 1);
     $dao->persistAnswer('q2', 2);
     $dao->endTransaction();
     // Check DB contains new query with correct values.
     $this->initDBConnection();
     $result = $this->doAssertedQuery('SELECT * FROM queries WHERE id=' . $queryID, 1);
     $row = mysql_fetch_assoc($result);
     if ('title' != $row['title']) {
         echo "title is wrong";
     }
     mysql_free_result($result);
     $result = $this->doAssertedQuery('SELECT * FROM question WHERE FK_queries=' . $queryID, 1);
     $row = mysql_fetch_assoc($result);
     if ('text' != $row['text']) {
         echo "text is wrong";
     }
     $questionID = $row['id'];
     mysql_free_result($result);
     $result = $this->doAssertedQuery('SELECT * FROM qoption WHERE FK_question=' . $questionID, 3);
     $answers = array();
     for ($i = 0; $i < 3; $i++) {
         $row = mysql_fetch_assoc($result);
         $answers[$i] = $row['id'];
         if ('q' . $i != $row['text']) {
             echo 'q' . $i . " not equals " . $row['text'];
         }
         if ($i != $row['number']) {
             echo $i . " not equals " . $row['number'];
         }
     }
     mysql_free_result($result);
     $this->closeDBConnection();
     // Delete query using Query DAO
     $dao->deleteQueryByID($queryID);
     $this->initDBConnection();
     // Verify querry has been deleted
     $result = $this->doAssertedQuery('SELECT * FROM queries WHERE id=' . $queryID, 0);
     mysql_free_result($result);
     $this->closeDBConnection();
 }