public function testMultiQuery() { $db = new folksoDBinteract($this->dbc); /** actually a test of DBconnect...**/ $this->assertIsA($this->dbc->db_obj(), mysqli, "Created object is not a mysql object"); $db->sp_query('select uri_normal as uri from resource where id = 1;' . 'select uri_raw as raw from resource where id = 1;'); $this->assertNotEqual($db->result_status, 'DBERR', 'DBERR status returned. This is wrong.'); $this->assertEqual($db->result_status, 'OK', 'Result is not ok on resouce id = 1'); $this->assertNotNull($db->result, 'Null result from query'); $this->assertIsA($db->result, mysqli_result, 'Not returning a mysqli result object'); $this->assertTrue(count($db->result_array) == 1, 'Incorrect number of elements in $i->result_array'); $this->assertEqual($db->result_array[0]->uri, 'example.com/1'); $this->assertEqual(count($db->additional_results), 1, 'Should have one additional result set'); $this->assertIsA($db->additional_results[0], mysqli_result, '2nd result set is not a mysql_result object'); }
/** * writes new user to DB. Should only be used for new users. Do not * use for existing users, which will throw exceptions. */ public function writeNewUser() { if (!$this->Writeable()) { throw new Exception('User object is not writeable, cannot write to DB'); } if ($this->exists($this->loginId)) { throw new Exception('User already exists, cannot be created'); } $i = new folksoDBinteract($this->dbc); if ($i->db_error()) { throw new Exception('DB connect error: ' . $i->error_info()); } $i->sp_query(sprintf("call create_user(" . "'%s', '%s', '%s', '%s', '', %d, '%s', '%s', '%s')", $i->dbescape($this->nick), $i->dbescape($this->firstName), $i->dbescape($this->lastName), $i->dbescape($this->email), $i->dbescape($this->loginId), $i->dbescape($this->institution), $i->dbescape($this->pays), $i->dbescape($this->fonction))); if ($i->result_status == 'DBERR') { throw new Exception('DB query error on create FB user: ' . $i->error_info()); } }