MCPcopy Index your code
hub / github.com/PyMySQL/mysqlclient / test_fetchone

Method test_fetchone

tests/dbapi20.py:468–512  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

466 con.close()
467
468 def test_fetchone(self):
469 con = self._connect()
470 try:
471 cur = con.cursor()
472
473 # cursor.fetchone should raise an Error if called before
474 # executing a select-type query
475 self.assertRaises(self.driver.Error, cur.fetchone)
476
477 # cursor.fetchone should raise an Error if called after
478 # executing a query that cannot return rows
479 self.executeDDL1(cur)
480 self.assertRaises(self.driver.Error, cur.fetchone)
481
482 cur.execute("select name from %sbooze" % self.table_prefix)
483 self.assertEqual(
484 cur.fetchone(),
485 None,
486 "cursor.fetchone should return None if a query retrieves " "no rows",
487 )
488 self.assertTrue(cur.rowcount in (-1, 0))
489
490 # cursor.fetchone should raise an Error if called after
491 # executing a query that cannot return rows
492 cur.execute(
493 "insert into %sbooze values ('Victoria Bitter')" % (self.table_prefix)
494 )
495 self.assertRaises(self.driver.Error, cur.fetchone)
496
497 cur.execute("select name from %sbooze" % self.table_prefix)
498 r = cur.fetchone()
499 self.assertEqual(
500 len(r), 1, "cursor.fetchone should have retrieved a single row"
501 )
502 self.assertEqual(
503 r[0], "Victoria Bitter", "cursor.fetchone retrieved incorrect data"
504 )
505 self.assertEqual(
506 cur.fetchone(),
507 None,
508 "cursor.fetchone should return None if no more rows available",
509 )
510 self.assertTrue(cur.rowcount in (-1, 1))
511 finally:
512 con.close()
513
514 samples = [
515 "Carlton Cold",

Callers

nothing calls this directly

Calls 6

_connectMethod · 0.95
executeDDL1Method · 0.95
cursorMethod · 0.80
executeMethod · 0.80
closeMethod · 0.80
fetchoneMethod · 0.45

Tested by

no test coverage detected