source: tools/pytools/test_pytools.py @ 361

Last change on this file since 361 was 18, checked in by ole, 20 years ago

Added old pytools module from CVS

File size: 2.0 KB
Line 
1import unittest
2import Numeric
3from combinatorics import bitvector
4from numtools import expand
5
6#-------------------------------------------------------------
7
8class TestCase(unittest.TestCase):
9
10    def setUp(self):
11        pass
12
13    def test_bitvector(self):
14
15        d = 4
16        assert Numeric.allclose(bitvector(0, d), Numeric.array([0,0,0,0]))
17        assert Numeric.allclose(bitvector(1, d), Numeric.array([1,0,0,0]))
18        assert Numeric.allclose(bitvector(2, d), Numeric.array([0,1,0,0]))
19        assert Numeric.allclose(bitvector(3, d), Numeric.array([1,1,0,0]))
20        assert Numeric.allclose(bitvector(4, d), Numeric.array([0,0,1,0]))
21        assert Numeric.allclose(bitvector(5, d), Numeric.array([1,0,1,0]))
22        assert Numeric.allclose(bitvector(6, d), Numeric.array([0,1,1,0]))
23        assert Numeric.allclose(bitvector(7, d), Numeric.array([1,1,1,0]))
24        assert Numeric.allclose(bitvector(8, d), Numeric.array([0,0,0,1]))
25        assert Numeric.allclose(bitvector(9, d), Numeric.array([1,0,0,1]))
26        assert Numeric.allclose(bitvector(10, d), Numeric.array([0,1,0,1]))
27        assert Numeric.allclose(bitvector(11, d), Numeric.array([1,1,0,1]))
28        assert Numeric.allclose(bitvector(12, d), Numeric.array([0,0,1,1]))
29        assert Numeric.allclose(bitvector(13, d), Numeric.array([1,0,1,1]))
30        assert Numeric.allclose(bitvector(14, d), Numeric.array([0,1,1,1]))
31        assert Numeric.allclose(bitvector(15, d), Numeric.array([1,1,1,1]))
32       
33
34    def test_expand(self):
35
36        d = 4
37        mask = Numeric.array([0,1,1,0,1])
38        v = Numeric.array([2,3,4])
39
40        assert Numeric.allclose(expand(v, mask), Numeric.array([0,2,3,0,4]))
41
42
43       
44           
45                         
46#-------------------------------------------------------------
47if __name__ == "__main__":
48
49    mysuite = unittest.makeSuite(TestCase,'test')
50    runner = unittest.TextTestRunner()
51    runner.run(mysuite)
52
Note: See TracBrowser for help on using the repository browser.