def testInsert(self): table = Table('census', self.schema).data(self.df) c1 = table.row_count() table.insert({'State': 'ES', 'life_meaning':42}) self.assertEqual(table.row_count() - c1, 1) c2 = table.row_count() table.insert([{'State': 'ES', 'life_meaning':42}, {'State': 'ES2', 'life_meaning':42},]) self.assertEqual(table.row_count() - c2, 2) view = table.find({'life_meaning': {'$exists':True}}) self.assertEqual(view.row_count(), 3) self.assertEqual(table.find_one({'life_meaning': {'$exists':True}})['life_meaning'], 42)
def testFindOne(self): table = Table('census', self.schema).data(self.df) result = table.find_one({'$or':[{'State': 'NY'},{'State': 'DC'}]}) self.assertIsInstance(result, dict) self.assertIn(result['State'], ['DC','NY'])
def testUpdate(self): table = Table('census', self.schema).data(self.df) val = table.find_one({'State': 'DC'}, {'Information':True})['Information'] val -= 2000 table.update({'State': 'DC'}, {'$set': {'Information':val}}) self.assertEqual(table.find_one({'State': 'DC'}, {'Information':True})['Information'], val)