def test_build_trait(self):
     mbc = MyBuilderContainer()
     obj_info = ['f_in', ('f_out', 'f_out_internal', 'out'),
                 'i_in', 'i_out',
                 ('b_out', 'b_out_internal', 'out', Bool())
         ]
     create_io_traits(mbc, obj_info)
     create_io_traits(mbc, 'foobar')
     self.assertTrue(mbc.get_trait('b_out').is_trait_type(Bool))
     self.assertTrue(mbc.get_trait('f_out').is_trait_type(Float))
     self.assertEqual(mbc.get_trait('f_out').iotype, 'out')
     self.assertTrue(mbc.get_trait('i_in').is_trait_type(Int))
     self.assertEqual(mbc.get_trait('f_in').iotype, 'in')
     self.assertTrue(mbc.get_trait('foobar').is_trait_type(Float))
     self.assertEqual(mbc.get_trait('foobar').iotype, 'in')
Beispiel #2
0
 def test_build_trait(self):
     mbc = MyBuilderContainer()
     obj_info = [
         'f_in', ('f_out', 'f_out_internal', 'out'), 'i_in', 'i_out',
         ('b_out', 'b_out_internal', 'out', Bool())
     ]
     create_io_traits(mbc, obj_info)
     create_io_traits(mbc, 'foobar')
     self.assertTrue(mbc.get_trait('b_out').is_trait_type(Bool))
     self.assertTrue(mbc.get_trait('f_out').is_trait_type(Float))
     self.assertEqual(mbc.get_trait('f_out').iotype, 'out')
     self.assertTrue(mbc.get_trait('i_in').is_trait_type(Int))
     self.assertEqual(mbc.get_trait('f_in').iotype, 'in')
     self.assertTrue(mbc.get_trait('foobar').is_trait_type(Float))
     self.assertEqual(mbc.get_trait('foobar').iotype, 'in')
Beispiel #3
0
    def test_build_trait(self):
        mbc = MyBuilderContainer()
        obj_info = [
            'f_in', ('f_out_internal', 'f_out', 'out'), 'i_in', 'i_out',
            ('b_out_internal', 'b_out', 'out', Bool()),
            ('i_has_metadata', '', dict(iotype='in', low=-1, high=9))
        ]
        create_io_traits(mbc, obj_info)
        create_io_traits(mbc, 'foobar')
        self.assertTrue(mbc.get_trait('b_out').is_trait_type(Bool))
        self.assertTrue(mbc.get_trait('f_out').is_trait_type(Float))
        self.assertEqual(mbc.get_trait('f_out').iotype, 'out')
        self.assertTrue(mbc.get_trait('i_in').is_trait_type(Int))
        self.assertEqual(mbc.get_trait('f_in').iotype, 'in')
        self.assertTrue(mbc.get_trait('foobar').is_trait_type(Float))
        self.assertEqual(mbc.get_trait('foobar').iotype, 'in')
        self.assertTrue(mbc.get_trait('i_has_metadata').is_trait_type(Int))
        self.assertEqual(mbc.get_trait('i_has_metadata').iotype, 'in')
        self.assertEqual(mbc.get_trait('i_has_metadata').low, -1)
        self.assertEqual(mbc.get_trait('i_has_metadata').high, 9)

        code = "create_io_traits(mbc, [{}])"
        msg = ": create_io_traits cannot add trait {}"
        assert_raises(self, code, globals(), locals(), RuntimeError, msg)

        code = "create_io_traits(mbc, ('f_in', 'f.in'))"
        msg = ": Can't create 'f.in' because it's a dotted pathname"
        assert_raises(self, code, globals(), locals(), NameError, msg)

        code = "create_io_traits(mbc, ('f2_in', 'f_in'))"
        msg = ": Can't create 'f_in' because it already exists"
        assert_raises(self, code, globals(), locals(), RuntimeError, msg)

        code = "create_io_traits(mbc, 'does_not_exist')"
        msg = ": Can't create trait for 'does_not_exist' because it wasn't found"
        assert_raises(self, code, globals(), locals(), AttributeError, msg)

        cont = Container()
        cont.contains = lambda name: True
        code = "create_io_traits(cont, 'xyzzy')"
        msg = ": build_trait()"
        assert_raises(self, code, globals(), locals(), NotImplementedError,
                      msg)
    def test_build_trait(self):
        mbc = MyBuilderContainer()
        obj_info = ['f_in', ('f_out_internal', 'f_out', 'out'),
                    'i_in', 'i_out',
                    ('b_out_internal', 'b_out', 'out', Bool()),
                    ('i_has_metadata', '', dict(iotype='in', low=-1, high=9))
            ]
        create_io_traits(mbc, obj_info)
        create_io_traits(mbc, 'foobar')
        self.assertTrue(mbc.get_trait('b_out').is_trait_type(Bool))
        self.assertTrue(mbc.get_trait('f_out').is_trait_type(Float))
        self.assertEqual(mbc.get_trait('f_out').iotype, 'out')
        self.assertTrue(mbc.get_trait('i_in').is_trait_type(Int))
        self.assertEqual(mbc.get_trait('f_in').iotype, 'in')
        self.assertTrue(mbc.get_trait('foobar').is_trait_type(Float))
        self.assertEqual(mbc.get_trait('foobar').iotype, 'in')
        self.assertTrue(mbc.get_trait('i_has_metadata').is_trait_type(Int))
        self.assertEqual(mbc.get_trait('i_has_metadata').iotype, 'in')
        self.assertEqual(mbc.get_trait('i_has_metadata').low, -1)
        self.assertEqual(mbc.get_trait('i_has_metadata').high, 9)

        code = "create_io_traits(mbc, [{}])"
        msg = ": create_io_traits cannot add trait {}"
        assert_raises(self, code, globals(), locals(), RuntimeError, msg)

        code = "create_io_traits(mbc, ('f_in', 'f.in'))"
        msg = ": Can't create 'f.in' because it's a dotted pathname"
        assert_raises(self, code, globals(), locals(), NameError, msg)

        code = "create_io_traits(mbc, ('f2_in', 'f_in'))"
        msg = ": Can't create 'f_in' because it already exists"
        assert_raises(self, code, globals(), locals(), RuntimeError, msg)

        code = "create_io_traits(mbc, 'does_not_exist')"
        msg = ": Can't create trait for 'does_not_exist' because it wasn't found"
        assert_raises(self, code, globals(), locals(), AttributeError, msg)

        cont = Container()
        cont.contains = lambda name: True
        code = "create_io_traits(cont, 'xyzzy')"
        msg = ": build_trait()"
        assert_raises(self, code, globals(), locals(), NotImplementedError, msg)