def data(self): self.assertEqual(m.Data(0x80000000).__class__, m.Int64) self.assertEqual(m.Data(0x7fffffff).__class__, m.Int32) if m.version.ispy2: self.assertEqual(m.Data(long(1)).__class__, m.Int64) a = m.ADD(m.Int32(1), m.Int32(2)) self.assertEqual(m.MULTIPLY(a, a).decompile(), "(1 + 2) * (1 + 2)") self.assertEqual(m.Data(2).compare(2), True) self.assertEqual(m.Data(2).compare(1), False) self.assertEqual( m.Dictionary([1, 'a', 2, 'b']).data().tolist(), { 1: 'a', 2: 'b' }) self.assertEqual( m.List([1, 'a', 2, 'b']).data().tolist(), [1, 'a', 2, 'b']) a = m.Apd() e = m.Data(1) e.tree = 'dummy_e' f = m.Data(2) f.tree = 'dummy_f' self.assertEqual(a.tree, None) a.append(e) # a should use tree of e self.assertEqual(a.tree, e.tree) self.assertEqual(a[0].tree, e.tree) a.append(f) # a should keep tree of e self.assertEqual(a.tree, e.tree) self.assertEqual(a[1].tree, f.tree) self._doUnaryArray(m.Int32(range(10)), m.Int32Array(range(10)), 'Int32(range(10))')