本文整理汇总了Python中wsme.types.register_type函数的典型用法代码示例。如果您正苦于以下问题:Python register_type函数的具体用法?Python register_type怎么用?Python register_type使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了register_type函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: test_selfreftype
def test_selfreftype(self):
class SelfRefType(object):
pass
SelfRefType.parent = SelfRefType
types.register_type(SelfRefType)
开发者ID:aviau,项目名称:wsme,代码行数:7,代码来源:test_types.py
示例2: test_wsproperty
def test_wsproperty(self):
class WithWSProp(object):
def __init__(self):
self._aint = 0
def get_aint(self):
return self._aint
def set_aint(self, value):
self._aint = value
aint = types.wsproperty(int, get_aint, set_aint, mandatory=True)
types.register_type(WithWSProp)
print(WithWSProp._wsme_attributes)
assert len(WithWSProp._wsme_attributes) == 1
a = WithWSProp._wsme_attributes[0]
assert a.key == 'aint'
assert a.datatype == int
assert a.mandatory
o = WithWSProp()
o.aint = 12
assert o.aint == 12
开发者ID:aviau,项目名称:wsme,代码行数:26,代码来源:test_types.py
示例3: test_private_attr
def test_private_attr(self):
class WithPrivateAttrs(object):
_private = 12
types.register_type(WithPrivateAttrs)
assert len(WithPrivateAttrs._wsme_attributes) == 0
开发者ID:aviau,项目名称:wsme,代码行数:7,代码来源:test_types.py
示例4: test_inspect_with_property
def test_inspect_with_property(self):
class AType(object):
@property
def test(self):
return 'test'
types.register_type(AType)
assert len(AType._wsme_attributes) == 0
assert AType().test == 'test'
开发者ID:aviau,项目名称:wsme,代码行数:10,代码来源:test_types.py
示例5: test_list_of_complextypes
def test_list_of_complextypes(self):
class A(object):
bs = types.wsattr(['B'])
class B(object):
i = int
types.register_type(A)
types.register_type(B)
assert A.bs.datatype.item_type is B
开发者ID:aviau,项目名称:wsme,代码行数:11,代码来源:test_types.py
示例6: test_inspect_with_inheritance
def test_inspect_with_inheritance(self):
class Parent(object):
parent_attribute = int
class Child(Parent):
child_attribute = int
types.register_type(Parent)
types.register_type(Child)
assert len(Child._wsme_attributes) == 2
开发者ID:aviau,项目名称:wsme,代码行数:11,代码来源:test_types.py
示例7: test_cross_referenced_types
def test_cross_referenced_types(self):
class A(object):
b = types.wsattr('B')
class B(object):
a = A
types.register_type(A)
types.register_type(B)
assert A.b.datatype is B
开发者ID:aviau,项目名称:wsme,代码行数:11,代码来源:test_types.py
示例8: test_nested
def test_nested(self):
class Inner(object):
aint = int
class Outer(object):
inner = Inner
types.register_type(Outer)
assert hasattr(Inner, '_wsme_attributes')
assert len(Inner._wsme_attributes) == 1
开发者ID:aviau,项目名称:wsme,代码行数:11,代码来源:test_types.py
示例9: test_wsattr_del
def test_wsattr_del(self):
class MyType(object):
a = types.wsattr(int)
types.register_type(MyType)
value = MyType()
value.a = 5
assert value.a == 5
del value.a
assert value.a is types.Unset
开发者ID:aviau,项目名称:wsme,代码行数:12,代码来源:test_types.py
示例10: test_attribute_validation_minimum
def test_attribute_validation_minimum(self):
class ATypeInt(object):
attr = types.IntegerType(minimum=1, maximum=5)
types.register_type(ATypeInt)
obj = ATypeInt()
obj.attr = 2
# comparison between 'zero' value and intger minimum (1) raises a
# TypeError which must be wrapped into an InvalidInput exception
self.assertRaises(exc.InvalidInput, setattr, obj, 'attr', 'zero')
开发者ID:openstack,项目名称:wsme,代码行数:12,代码来源:test_types.py
示例11: test_named_attribute
def test_named_attribute(self):
class ABCDType(object):
a_list = types.wsattr([int], name='a.list')
astr = str
types.register_type(ABCDType)
assert len(ABCDType._wsme_attributes) == 2
attrs = ABCDType._wsme_attributes
assert attrs[0].key == 'a_list', attrs[0].key
assert attrs[0].name == 'a.list', attrs[0].name
assert attrs[1].key == 'astr', attrs[1].key
assert attrs[1].name == 'astr', attrs[1].name
开发者ID:aviau,项目名称:wsme,代码行数:14,代码来源:test_types.py
示例12: test_encode_sample_value
def test_encode_sample_value(self):
class MyType(object):
aint = int
astr = str
register_type(MyType)
v = MyType()
v.aint = 4
v.astr = "s"
r = wsme.rest.json.encode_sample_value(MyType, v, True)
print(r)
assert r[0] == ("javascript")
assert r[1] == json.dumps({"aint": 4, "astr": "s"}, ensure_ascii=False, indent=4, sort_keys=True)
开发者ID:javacruft,项目名称:wsme,代码行数:15,代码来源:test_restjson.py
示例13: test_text_attribute_conversion
def test_text_attribute_conversion(self):
class SType(object):
atext = types.text
abytes = types.bytes
types.register_type(SType)
obj = SType()
obj.atext = six.b('somebytes')
assert obj.atext == six.u('somebytes')
assert isinstance(obj.atext, types.text)
obj.abytes = six.u('sometext')
assert obj.abytes == six.b('sometext')
assert isinstance(obj.abytes, types.bytes)
开发者ID:aviau,项目名称:wsme,代码行数:16,代码来源:test_types.py
示例14: test_attribute_validation
def test_attribute_validation(self):
class AType(object):
alist = [int]
aint = int
types.register_type(AType)
obj = AType()
obj.alist = [1, 2, 3]
assert obj.alist == [1, 2, 3]
obj.aint = 5
assert obj.aint == 5
self.assertRaises(exc.InvalidInput, setattr, obj, 'alist', 12)
self.assertRaises(exc.InvalidInput, setattr, obj, 'alist', [2, 'a'])
开发者ID:aviau,项目名称:wsme,代码行数:16,代码来源:test_types.py
示例15: test_encode_sample_value
def test_encode_sample_value(self):
class MyType(object):
aint = int
astr = str
register_type(MyType)
v = MyType()
v.aint = 4
v.astr = 's'
r = wsme.rest.json.encode_sample_value(MyType, v, True)
print(r)
assert r[0] == ('javascript')
assert r[1] == json.dumps({'aint': 4, 'astr': 's'}, ensure_ascii=False,
indent=4, sort_keys=True)
开发者ID:EDP-Sciences,项目名称:wsme,代码行数:16,代码来源:test_restjson.py
示例16: test_encode_sample_value
def test_encode_sample_value(self):
class MyType(object):
aint = int
atext = wsme.types.text
register_type(MyType)
value = MyType()
value.aint = 5
value.atext = u('test')
language, sample = wsme.rest.xml.encode_sample_value(
MyType, value, True)
print (language, sample)
assert language == 'xml'
assert sample == b("""<value>
<aint>5</aint>
<atext>test</atext>
</value>""")
开发者ID:EDP-Sciences,项目名称:wsme,代码行数:20,代码来源:test_restxml.py
示例17: test_enum
def test_enum(self):
aenum = types.Enum(str, 'v1', 'v2')
assert aenum.basetype is str
class AType(object):
a = aenum
types.register_type(AType)
assert AType.a.datatype is aenum
obj = AType()
obj.a = 'v1'
assert obj.a == 'v1', repr(obj.a)
try:
obj.a = 'v3'
assert False, 'ValueError was not raised'
except ValueError as e:
assert str(e) == \
"a: Value 'v3' is invalid (should be one of: v1, v2)", e
开发者ID:javacruft,项目名称:wsme,代码行数:21,代码来源:test_types.py
示例18: test_attribute_order
def test_attribute_order(self):
class ForcedOrder(object):
_wsme_attr_order = ("a2", "a1", "a3")
a1 = int
a2 = int
a3 = int
types.register_type(ForcedOrder)
print(ForcedOrder._wsme_attributes)
assert ForcedOrder._wsme_attributes[0].key == "a2"
assert ForcedOrder._wsme_attributes[1].key == "a1"
assert ForcedOrder._wsme_attributes[2].key == "a3"
c = gen_class()
print(c)
types.register_type(c)
del c._wsme_attributes
c.a2 = int
c.a1 = int
c.a3 = int
types.register_type(c)
assert c._wsme_attributes[0].key == "a1", c._wsme_attributes[0].key
assert c._wsme_attributes[1].key == "a2"
assert c._wsme_attributes[2].key == "a3"
开发者ID:balagopalraj,项目名称:clearlinux,代码行数:28,代码来源:test_types.py
示例19: test_enum
def test_enum(self):
aenum = types.Enum(str, 'v1', 'v2')
assert aenum.basetype is str
class AType(object):
a = aenum
types.register_type(AType)
assert AType.a.datatype is aenum
obj = AType()
obj.a = 'v1'
assert obj.a == 'v1', repr(obj.a)
self.assertRaisesRegexp(exc.InvalidInput,
"Invalid input for field/attribute a. \
Value: 'v3'. Value should be one of: v., v.",
setattr,
obj,
'a',
'v3')
开发者ID:aviau,项目名称:wsme,代码行数:22,代码来源:test_types.py
示例20: test_flat_type
def test_flat_type(self):
class Flat(object):
aint = int
abytes = six.binary_type
atext = six.text_type
afloat = float
types.register_type(Flat)
assert len(Flat._wsme_attributes) == 4
attrs = Flat._wsme_attributes
print(attrs)
assert attrs[0].key == 'aint'
assert attrs[0].name == 'aint'
assert isinstance(attrs[0], types.wsattr)
assert attrs[0].datatype == int
assert attrs[0].mandatory is False
assert attrs[1].key == 'abytes'
assert attrs[1].name == 'abytes'
assert attrs[2].key == 'atext'
assert attrs[2].name == 'atext'
assert attrs[3].key == 'afloat'
assert attrs[3].name == 'afloat'
开发者ID:aviau,项目名称:wsme,代码行数:24,代码来源:test_types.py
注:本文中的wsme.types.register_type函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论