def test_get_picks(self): """ Should return data rows. """ # create a new database in memory pickdb = PickDatabaseConnection(':memory:') # add picks, and get our own times times0 = [] for pick in uniq_picks: pickdb.add_pick(**pick) times0.append(pick['time']) pickdb.commit() # should return a list of sqlite3.Row objects for row in pickdb.get_picks(event=pick['event']): self.assertTrue(isinstance(row, sqlite3.Row)) # should return the same data times1 = [] for pick in uniq_picks: row = pickdb.get_picks(**pick)[0] times1.append(row['time']) self.assertEqual(sorted(times0), sorted(times1)) # should return all data self.assertEqual(len(uniq_picks), len(pickdb.get_picks())) # should return empty list if no matches self.assertEqual(len(pickdb.get_picks(event='golly_gee')), 0) # should also return empty list if no data pickdb = PickDatabaseConnection(':memory:') self.assertEqual(len(pickdb.get_picks()), 0)
def test_copy(self): """ Should create a copy of the database. """ db0 = PickDatabaseConnection(':memory:') for pick in uniq_picks: db0.add_pick(**pick) db1 = db0.copy() self.assertEqual(db0.get_picks()[0], db1.get_picks()[0])