[development] Simpletest question

David Thibault dthibault at esperion.com
Tue Jan 26 16:44:32 UTC 2010


Yep, that was it. <stupid look>I put $result->db_fetch_object($result) instead of just db_fetch_object($result).</stupid look>

Best,
Dave

-----Original Message-----
From: development-bounces at drupal.org [mailto:development-bounces at drupal.org] On Behalf Of Daniel F. Kudwien
Sent: Tuesday, January 26, 2010 11:11 AM
To: development at drupal.org
Subject: Re: [development] Simpletest question


	21 public function test_sync () {

Should be testSync().


	22
require_once(drupal_get_path('module','compoundmanagement').'/compoundmanage
ment.inc');

Should be module_load_include().


	23    $result = db_query('select count(objdid) as count from
{cpd_compounds}');

"cpd_compounds" does not match your module name.


	24    $row = $result->db_fetch_object($result);

If this is for D7: db_fetch_object() no longer exists.  You can iterate over
$result directly.  Read more on http://drupal.org/node/310069

If this is for D6, then $result simply is no class and db_fetch_object()
simply is no method.


	25    $this->pass('There are '.$row->count.' compounds in
cpd_compounds');

Should use t() as always, with appropriate placeholders (@count in this
case).


	26    $this->drupalGet('sync_cpds',array('absolute' => TRUE));

Unless you have a very good reason to do so, the options array (and absolute
URL) is not required.


	27    $result = db_query('select count(objdid) as count from
{cpd_compounds}');

SimpleTest always queries the table in the database of the currently running
test, as along as it is escaped (which it is here).


	28    $row = $result->db_fetch_object($result);

Your real error is likely here (again).


	29    $this->pass('There are now '.$row->count.' compounds in
cpd_compounds');

See above.


	30    $this->assertEqual($row->count,1313,"CPD_COMPOUNDS should have
1313 rows.");

Only use double-quotes where technically required.



	The test above threw this error:
	<b>Fatal error</b>: Call to a member function db_fetch_object() on a
non-object

In the end, the actual error message is pretty concise. ;)


sun





More information about the development mailing list