本文整理汇总了Python中pyon.core.bootstrap.IonObject._rev方法的典型用法代码示例。如果您正苦于以下问题:Python IonObject._rev方法的具体用法?Python IonObject._rev怎么用?Python IonObject._rev使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pyon.core.bootstrap.IonObject
的用法示例。
在下文中一共展示了IonObject._rev方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_expected_exceptions
# 需要导入模块: from pyon.core.bootstrap import IonObject [as 别名]
# 或者: from pyon.core.bootstrap.IonObject import _rev [as 别名]
def test_expected_exceptions(self):
""" test uses that are expected to throw exceptions (and probably need code fixes) """
obj1 = IonObject(RT.InstrumentDevice, name='SBE37IMDevice', description="SBE37IMDevice", serial_number="12345")
# invalid name for repository
try:
self.repo.insert('bad name', obj1)
self.fail('should fail')
except:
pass
# invalid argument types
try:
self.repo.insert('sample', None)
self.fail('should fail')
except:
pass
try:
self.repo.insert('sample', "not ion obj")
self.fail('should fail')
except:
pass
# cannot reinsert with same id
_,id,__ = self.repo.insert('sample', obj1)
_,__,obj2 = self.repo.read('sample', id)
try:
success,_,__ = self.repo.insert('sample', obj2)
self.fail('should not succeed')
except:
pass
# cannot insert with _rev
obj1._rev = obj2._rev
try:
success,_,__ = self.repo.insert('sample', obj1)
self.fail('should not succeed')
except:
pass
示例2: test_datastore_basic
# 需要导入模块: from pyon.core.bootstrap import IonObject [as 别名]
# 或者: from pyon.core.bootstrap.IonObject import _rev [as 别名]
#.........这里部分代码省略.........
data_set = IonObject('Commitment')
self.assertTrue(isinstance(data_set, interface.objects.Commitment))
# Assign values to object fields
data_set.description = "Real-time water data for Choptank River near Greensboro, MD"
# Write Dataset object"
write_tuple_1 = data_store.create(data_set)
self.assertTrue(len(write_tuple_1) == 2)
# Save off the object UUID
data_set_uuid = write_tuple_1[0]
# Read back the HEAD version of the object and validate fields
data_set_read_obj = data_store.read(data_set_uuid)
self.assertTrue(data_set_read_obj._id == data_set_uuid)
self.assertTrue(isinstance(data_set_read_obj, interface.objects.Commitment))
self.assertTrue(data_set_read_obj.description == "Real-time water data for Choptank River near Greensboro, MD")
self.assertTrue('type_' in data_set_read_obj)
data_set_read_obj2 = data_store.read(data_set_uuid)
# Update Dataset's Description field and write
data_set_read_obj.description = "Updated Description"
write_tuple_2 = data_store.update(data_set_read_obj)
self.assertTrue(len(write_tuple_2) == 2)
# Retrieve the updated Dataset
data_set_read_obj_2 = data_store.read(data_set_uuid)
self.assertTrue(data_set_read_obj_2._id == data_set_uuid)
self.assertTrue(data_set_read_obj_2.description == "Updated Description")
# Check that a second update fails
self.assertNotEqual(data_set_read_obj_2._rev, data_set_read_obj2._rev)
with self.assertRaises(Conflict):
data_store.update(data_set_read_obj2)
# Test update with non-existing object
spurious_obj = IonObject('Commitment')
with self.assertRaises(BadRequest):
data_store.update(spurious_obj)
spurious_obj._rev = data_set_read_obj._rev
with self.assertRaises(BadRequest):
data_store.update(spurious_obj)
#spurious_obj._id = "NON EXISTING ID"
#with self.assertRaises(NotFound):
# data_store.update(spurious_obj)
# Do another update to the object
data_set_read_obj_2.description = "USGS instantaneous value data for station 01491000"
write_tuple_3 = data_store.update(data_set_read_obj_2)
# Retrieve HEAD version of Dataset
head = data_store.read(data_set_uuid)
self.assertTrue(head._id == data_set_uuid)
self.assertTrue(head.description == "USGS instantaneous value data for station 01491000")
# Delete Dataset by object id
data_store.delete(head)
xobj = dict(some="content")
xoid, _ = data_store.create_doc(xobj)
xobj2 = data_store.read_doc(xoid)
xobj2["_deleted"] = True