• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python types.register_type函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了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;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python wstool_cli.wstool_main函数代码示例发布时间:2022-05-26
下一篇:
Python json.tojson函数代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap