File: test_literal.py

package info (click to toggle)
python-peachpy 0.0~git20211013.257881e-1.1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 2,452 kB
  • sloc: python: 29,286; ansic: 54; makefile: 44; cpp: 31
file content (102 lines) | stat: -rw-r--r-- 4,422 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
import unittest
from peachpy import *


class UInt32(unittest.TestCase):
    def runTest(self):
        Constant.uint32(-2147483648)
        Constant.uint32(0)
        Constant.uint32(2147483647)
        Constant.uint32(2147483648)
        Constant.uint32(4294967295)


class UInt32x2(unittest.TestCase):
    def runTest(self):
        Constant.uint32x2(1)
        Constant.uint32x2(-1, 2)


class UInt32x4(unittest.TestCase):
    def runTest(self):
        Constant.uint32x4(1)
        Constant.uint32x4(-1, 2, -3, 4)


class UInt32x8(unittest.TestCase):
    def runTest(self):
        Constant.uint32x8(1)
        Constant.uint32x8(-1, 2, -3, 4, -5, 6, -7, 8)


class UInt32x16(unittest.TestCase):
    def runTest(self):
        Constant.uint32x16(1)
        Constant.uint32x16(-1, 2, -3, 4, -5, 6, -7, 8, -9, 10, -11, 12, -13, 14, -15, 16)


class UInt64(unittest.TestCase):
    def runTest(self):
        Constant.uint64(-9223372036854775808)
        Constant.uint64(0)
        Constant.uint64(9223372036854775807)
        Constant.uint64(9223372036854775808)
        Constant.uint64(18446744073709551615)


class UInt64x2(unittest.TestCase):
    def runTest(self):
        Constant.uint64x2(1)
        Constant.uint64x2(-1, 2)


class UInt64x4(unittest.TestCase):
    def runTest(self):
        Constant.uint64x4(1)
        Constant.uint64x4(-1, 2, -3, 4)


class UInt64x8(unittest.TestCase):
    def runTest(self):
        Constant.uint64x8(1)
        Constant.uint64x8(-1, 2, -3, 4, -5, 6, -7, 8)


class Float64(unittest.TestCase):
    def runTest(self):
        self.assertEqual(Constant.float64(0.0).data,                    (0x0000000000000000,))
        self.assertEqual(Constant.float64(1.0).data,                    (0x3FF0000000000000,))
        self.assertEqual(Constant.float64(0.5).data,                    (0x3FE0000000000000,))
        self.assertEqual(Constant.float64(0.75).data,                   (0x3FE8000000000000,))
        self.assertEqual(Constant.float64(2.0).data,                    (0x4000000000000000,))
        self.assertEqual(Constant.float64(float("inf")).data,           (0x7FF0000000000000,))
        self.assertEqual(Constant.float64(-0.0).data,                   (0x8000000000000000,))
        self.assertEqual(Constant.float64(-1.0).data,                   (0xBFF0000000000000,))
        self.assertEqual(Constant.float64(-0.5).data,                   (0xBFE0000000000000,))
        self.assertEqual(Constant.float64(-0.75).data,                  (0xBFE8000000000000,))
        self.assertEqual(Constant.float64(-2.0).data,                   (0xC000000000000000,))
        self.assertEqual(Constant.float64(-float("inf")).data,          (0xFFF0000000000000,))
        self.assertEqual(Constant.float64("0x1.6A09E667F3BCDp+0").data, (0x3FF6A09E667F3BCD,))
        self.assertEqual(Constant.float64("0x1.BB67AE8584CAAp+0").data, (0x3FFBB67AE8584CAA,))
        self.assertEqual(Constant.float64("0x1.921fb54442d18p+1").data, (0x400921FB54442D18,))
        self.assertEqual(Constant.float64("0x1.5bf0a8b145769p+1").data, (0x4005BF0A8B145769,))


class Float32(unittest.TestCase):
    def runTest(self):
        self.assertEqual(Constant.float32(0.0).data,             (0x00000000,))
        self.assertEqual(Constant.float32(1.0).data,             (0x3F800000,))
        self.assertEqual(Constant.float32(0.5).data,             (0x3F000000,))
        self.assertEqual(Constant.float32(0.75).data,            (0x3F400000,))
        self.assertEqual(Constant.float32(2.0).data,             (0x40000000,))
        self.assertEqual(Constant.float32(float("inf")).data,    (0x7F800000,))
        self.assertEqual(Constant.float32(-0.0).data,            (0x80000000,))
        self.assertEqual(Constant.float32(-1.0).data,            (0xBF800000,))
        self.assertEqual(Constant.float32(-0.5).data,            (0xBF000000,))
        self.assertEqual(Constant.float32(-0.75).data,           (0xBF400000,))
        self.assertEqual(Constant.float32(-2.0).data,            (0xC0000000,))
        self.assertEqual(Constant.float32(-float("inf")).data,   (0xFF800000,))
        self.assertEqual(Constant.float32("0x1.6A09E6p+0").data, (0x3FB504F3,))
        self.assertEqual(Constant.float32("0x1.BB67AEp+0").data, (0x3FDDB3D7,))
        self.assertEqual(Constant.float32("0x1.921FB6p+1").data, (0x40490FDB,))
        self.assertEqual(Constant.float32("0x1.5BF0A8p+1").data, (0x402DF854,))