def test_read_only(self): assert self.db.put(1000, {'foo': 2}, (123, 456)) assert self.db.put(2**40, {'bar': 2}, (123, 456)) self.db.close() self.db = NodeDB(self.fname, 'r') nd = self.db.get(1000) eq_(nd.osm_id, 1000) eq_(nd.tags, {'foo': 2}) eq_(nd.coord, (123, 456)) nd = self.db.get(2**40) eq_(nd.osm_id, 2**40) assert not self.db.put(1001, {'foo': 2}, (123, 456)) assert not self.db.get(1001)
def setup(self): fd_, self.fname = tempfile.mkstemp('.db') self.db = NodeDB(self.fname)
class TestNodeDB(object): def setup(self): fd_, self.fname = tempfile.mkstemp('.db') self.db = NodeDB(self.fname) def teardown(self): os.unlink(self.fname) def test_insert(self): assert self.db.put(1000, {'foo': 2}, (123, 456)) assert self.db.put(2**40, {'bar': 2}, (123, 456)) nd = self.db.get(1000) eq_(nd.osm_id, 1000) eq_(nd.tags, {'foo': 2}) eq_(nd.coord, (123, 456)) nd = self.db.get(2**40) eq_(nd.osm_id, 2**40) def test_read_only(self): assert self.db.put(1000, {'foo': 2}, (123, 456)) assert self.db.put(2**40, {'bar': 2}, (123, 456)) self.db.close() self.db = NodeDB(self.fname, 'r') nd = self.db.get(1000) eq_(nd.osm_id, 1000) eq_(nd.tags, {'foo': 2}) eq_(nd.coord, (123, 456)) nd = self.db.get(2**40) eq_(nd.osm_id, 2**40) assert not self.db.put(1001, {'foo': 2}, (123, 456)) assert not self.db.get(1001) def test_iter(self): assert self.db.put(1000, {'foo': 2}, (123, 456)) nds = list(self.db) eq_(len(nds), 1) nd = nds[0] eq_(nd.osm_id, 1000) eq_(nd.tags, {'foo': 2}) eq_(nd.coord, (123, 456))