added tests, pep8 format
This commit is contained in:
parent
9de0ad3e82
commit
bbaf65f77c
@ -5,6 +5,7 @@ from dataset import connect
|
|||||||
from dataset.util import DatasetException
|
from dataset.util import DatasetException
|
||||||
from sample_data import TEST_DATA
|
from sample_data import TEST_DATA
|
||||||
|
|
||||||
|
|
||||||
class DatabaseTestCase(unittest.TestCase):
|
class DatabaseTestCase(unittest.TestCase):
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
@ -14,7 +15,7 @@ class DatabaseTestCase(unittest.TestCase):
|
|||||||
self.tbl.insert(row)
|
self.tbl.insert(row)
|
||||||
|
|
||||||
def test_tables(self):
|
def test_tables(self):
|
||||||
assert self.db.tables==['weather'], self.db.tables
|
assert self.db.tables == ['weather'], self.db.tables
|
||||||
|
|
||||||
def test_create_table(self):
|
def test_create_table(self):
|
||||||
table = self.db['foo']
|
table = self.db['foo']
|
||||||
@ -24,11 +25,11 @@ class DatabaseTestCase(unittest.TestCase):
|
|||||||
|
|
||||||
def test_load_table(self):
|
def test_load_table(self):
|
||||||
tbl = self.db.load_table('weather')
|
tbl = self.db.load_table('weather')
|
||||||
assert tbl.table==self.tbl.table
|
assert tbl.table == self.tbl.table
|
||||||
|
|
||||||
def test_query(self):
|
def test_query(self):
|
||||||
r = self.db.query('SELECT COUNT(*) AS num FROM weather').next()
|
r = self.db.query('SELECT COUNT(*) AS num FROM weather').next()
|
||||||
assert r['num']==len(TEST_DATA), r
|
assert r['num'] == len(TEST_DATA), r
|
||||||
|
|
||||||
|
|
||||||
class TableTestCase(unittest.TestCase):
|
class TableTestCase(unittest.TestCase):
|
||||||
@ -40,13 +41,13 @@ class TableTestCase(unittest.TestCase):
|
|||||||
self.tbl.insert(row)
|
self.tbl.insert(row)
|
||||||
|
|
||||||
def test_insert(self):
|
def test_insert(self):
|
||||||
assert len(self.tbl)==len(TEST_DATA), len(self.tbl)
|
assert len(self.tbl) == len(TEST_DATA), len(self.tbl)
|
||||||
self.tbl.insert({
|
self.tbl.insert({
|
||||||
'date': datetime(2011, 01, 02),
|
'date': datetime(2011, 01, 02),
|
||||||
'temperature': -10,
|
'temperature': -10,
|
||||||
'place': 'Berlin'}
|
'place': 'Berlin'}
|
||||||
)
|
)
|
||||||
assert len(self.tbl)==len(TEST_DATA)+1, len(self.tbl)
|
assert len(self.tbl) == len(TEST_DATA)+1, len(self.tbl)
|
||||||
|
|
||||||
def test_upsert(self):
|
def test_upsert(self):
|
||||||
self.tbl.upsert({
|
self.tbl.upsert({
|
||||||
@ -54,48 +55,48 @@ class TableTestCase(unittest.TestCase):
|
|||||||
'temperature': -10,
|
'temperature': -10,
|
||||||
'place': 'Berlin'},
|
'place': 'Berlin'},
|
||||||
['place']
|
['place']
|
||||||
)
|
)
|
||||||
assert len(self.tbl)==len(TEST_DATA)+1, len(self.tbl)
|
assert len(self.tbl) == len(TEST_DATA)+1, len(self.tbl)
|
||||||
self.tbl.upsert({
|
self.tbl.upsert({
|
||||||
'date': datetime(2011, 01, 02),
|
'date': datetime(2011, 01, 02),
|
||||||
'temperature': -10,
|
'temperature': -10,
|
||||||
'place': 'Berlin'},
|
'place': 'Berlin'},
|
||||||
['place']
|
['place']
|
||||||
)
|
)
|
||||||
assert len(self.tbl)==len(TEST_DATA)+1, len(self.tbl)
|
assert len(self.tbl) == len(TEST_DATA)+1, len(self.tbl)
|
||||||
|
|
||||||
def test_delete(self):
|
def test_delete(self):
|
||||||
self.tbl.insert({
|
self.tbl.insert({
|
||||||
'date': datetime(2011, 01, 02),
|
'date': datetime(2011, 01, 02),
|
||||||
'temperature': -10,
|
'temperature': -10,
|
||||||
'place': 'Berlin'}
|
'place': 'Berlin'}
|
||||||
)
|
)
|
||||||
assert len(self.tbl)==len(TEST_DATA)+1, len(self.tbl)
|
assert len(self.tbl) == len(TEST_DATA)+1, len(self.tbl)
|
||||||
self.tbl.delete(place='Berlin')
|
self.tbl.delete(place='Berlin')
|
||||||
assert len(self.tbl)==len(TEST_DATA), len(self.tbl)
|
assert len(self.tbl) == len(TEST_DATA), len(self.tbl)
|
||||||
|
|
||||||
def test_find_one(self):
|
def test_find_one(self):
|
||||||
self.tbl.insert({
|
self.tbl.insert({
|
||||||
'date': datetime(2011, 01, 02),
|
'date': datetime(2011, 01, 02),
|
||||||
'temperature': -10,
|
'temperature': -10,
|
||||||
'place': 'Berlin'}
|
'place': 'Berlin'}
|
||||||
)
|
)
|
||||||
d = self.tbl.find_one(place='Berlin')
|
d = self.tbl.find_one(place='Berlin')
|
||||||
assert d['temperature']==-10, d
|
assert d['temperature'] == -10, d
|
||||||
d = self.tbl.find_one(place='Atlantis')
|
d = self.tbl.find_one(place='Atlantis')
|
||||||
assert d is None, d
|
assert d is None, d
|
||||||
|
|
||||||
def test_find(self):
|
def test_find(self):
|
||||||
ds = list(self.tbl.find(place='Berkeley'))
|
ds = list(self.tbl.find(place='Berkeley'))
|
||||||
assert len(ds)==3, ds
|
assert len(ds) == 3, ds
|
||||||
ds = list(self.tbl.find(place='Berkeley', _limit=2))
|
ds = list(self.tbl.find(place='Berkeley', _limit=2))
|
||||||
assert len(ds)==2, ds
|
assert len(ds) == 2, ds
|
||||||
|
|
||||||
def test_distinct(self):
|
def test_distinct(self):
|
||||||
x = list(self.tbl.distinct('place'))
|
x = list(self.tbl.distinct('place'))
|
||||||
assert len(x)==2, x
|
assert len(x) == 2, x
|
||||||
x = list(self.tbl.distinct('place', 'date'))
|
x = list(self.tbl.distinct('place', 'date'))
|
||||||
assert len(x)==6, x
|
assert len(x) == 6, x
|
||||||
|
|
||||||
def test_insert_many(self):
|
def test_insert_many(self):
|
||||||
data = TEST_DATA * 5000
|
data = TEST_DATA * 5000
|
||||||
@ -113,7 +114,25 @@ class TableTestCase(unittest.TestCase):
|
|||||||
else:
|
else:
|
||||||
assert False, 'we should not reach else block, no exception raised!'
|
assert False, 'we should not reach else block, no exception raised!'
|
||||||
|
|
||||||
|
def test_columns(self):
|
||||||
|
cols = self.tbl.columns
|
||||||
|
assert isinstance(cols, set), 'columns should be a set'
|
||||||
|
assert len(cols) == 4, 'column count mismatch'
|
||||||
|
assert 'date' in cols and 'temperature' in cols and 'place' in cols
|
||||||
|
|
||||||
|
def test_iter(self):
|
||||||
|
c = 0
|
||||||
|
for row in self.tbl:
|
||||||
|
c += 1
|
||||||
|
assert c == len(self.tbl)
|
||||||
|
|
||||||
|
def test_update(self):
|
||||||
|
self.tbl.upsert({
|
||||||
|
'date': datetime(2011, 01, 02),
|
||||||
|
'temperature': -10,
|
||||||
|
'place': 'Berlin'},
|
||||||
|
['place']
|
||||||
|
)
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
unittest.main()
|
unittest.main()
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user