예제 #1
0
    def test_cstruct_list(self):
        # Create struct from each argument.
        iinput = [1, 2, 3, 4, 5, 6]
        dinput = [6., 7., 8., 9., 10., 11.]
        sinput = ["dog", "cat", "monkey", "bird", "horse"]

        s = cstruct.Cstruct_list(nitems=3, ivalue=iinput)
        self.assertEqual(iinput, s.ivalue)

        s = cstruct.Cstruct_list(nitems=3, dvalue=dinput)
        self.assertEqual(dinput, s.dvalue)

        s = cstruct.Cstruct_list(nitems=5, svalue=sinput)
        self.assertEqual(sinput, s.svalue)
예제 #2
0
    def test_cstruct_list_setter(self):
        # getter and setter
        s = cstruct.Cstruct_list()
        s.nitems = 3

        # int *ivalue     +dimension(nitems+nitems);
        input = [1, 2, 3, 4, 5, 6]
        s.ivalue = input
        ivalue = s.ivalue
        self.assertIsInstance(ivalue, list)
        self.assertEqual(6, len(ivalue))
        self.assertEqual(input, ivalue)

        # double *dvalue  +dimension(nitems*TWO);
        input = [6, 7, 8, 9, 10, 11]
        s.dvalue = input
        dvalue = s.dvalue
        self.assertIsInstance(dvalue, list)
        self.assertEqual(6, len(dvalue))
        self.assertEqual(input, dvalue)

        # char **svalue   +dimension(nitems);
        input = ["dog", "cat", "monkey"]
        s.svalue = input
        svalue = s.svalue
        self.assertIsInstance(svalue, list)
        self.assertEqual(3, len(svalue))
        self.assertEqual(input, svalue)