async def test_base_object(mock_txn): testing = { "__parent__": "_BaseObject__parent", "__of__": "_BaseObject__of", "__name__": "_BaseObject__name", "__gannotations__": "_BaseObject__annotations", "__immutable_cache__": "_BaseObject__immutable_cache", "__new_marker__": "_BaseObject__new_marker", "__uuid__": "_BaseObject__uuid", "__serial__": "_BaseObject__serial", } for name, attr in testing.items(): item = Item() setattr(item, name, "foobar") assert name not in item.__dict__ assert attr not in item.__dict__ pickled = pickle.dumps(item, protocol=pickle.HIGHEST_PROTOCOL) new_item = pickle.loads(pickled) assert getattr(new_item, name) != "foobar" assert name not in item.__dict__ assert attr not in item.__dict__ item = Item() setattr(item, "__txn__", mock_txn) assert "__txn__" not in item.__dict__ assert "_BaseObject__txn" not in item.__dict__ pickled = pickle.dumps(item, protocol=pickle.HIGHEST_PROTOCOL) new_item = pickle.loads(pickled) assert getattr(new_item, "__txn__") != mock_txn assert "__txn__" not in item.__dict__ assert "_BaseObject__txn" not in item.__dict__
async def test_use_behavior_annotation(dummy_txn_root): async with dummy_txn_root as root: ob1 = Item() await root.async_set('ob1', ob1) dublin = IDublinCore(ob1) await dublin.load() dublin.publisher = 'foobar' assert dublin.publisher == 'foobar'
def test_base_object(): testing = { '__parent__': '_BaseObject__parent', '__of__': '_BaseObject__of', '__name__': '_BaseObject__name', '__gannotations__': '_BaseObject__annotations', '__immutable_cache__': '_BaseObject__immutable_cache', '__new_marker__': '_BaseObject__new_marker', '_p_jar': '_BaseObject__jar', '_p_oid': '_BaseObject__oid', '_p_serial': '_BaseObject__serial' } for name, attr in testing.items(): item = Item() setattr(item, name, 'foobar') assert name not in item.__dict__ assert attr not in item.__dict__ pickled = pickle.dumps(item, protocol=pickle.HIGHEST_PROTOCOL) new_item = pickle.loads(pickled) assert getattr(new_item, name) != 'foobar' assert name not in item.__dict__ assert attr not in item.__dict__
def test_DeserializeFromJson(dummy_request): # noqa: N802 obj = Item() adapter = get_multi_adapter((obj, dummy_request), interface=IResourceDeserializeFromJson) assert isinstance(adapter, deserialize_content.DeserializeFromJson)
async def test_SerializeToJson(dummy_request): # noqa: N802 obj = Item() adapter = get_multi_adapter((obj, dummy_request), interface=IResourceSerializeToJson) assert isinstance(adapter, SerializeToJson)
def test_DefaultResourceFieldDeserializer(dummy_request): obj = Item() adapter = getMultiAdapter((schema.Text(), obj, dummy_request), interface=IResourceFieldDeserializer) assert isinstance( adapter, deserialize_content_fields.DefaultResourceFieldDeserializer)