Skip to content

Commit 434f820

Browse files
committed
-
1 parent 153ad60 commit 434f820

File tree

3 files changed

+45
-30
lines changed

3 files changed

+45
-30
lines changed
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# Copyright 2009-2014 Ram Rachum.
2+
# This program is distributed under the MIT license.
3+
4+
from python_toolbox.combi import *
5+
6+
7+
def test_chain_spaces():
8+
chain_space = ChainSpace((range(3), 'meow', range(2, -1, -1)))
9+
assert tuple(chain_space) == (0, 1, 2, 'm', 'e', 'o', 'w', 2, 1, 0)
10+
assert len(chain_space) == chain_space.length == 10
11+
for i, item in enumerate(chain_space):
12+
assert chain_space[i] == item
13+
14+
assert chain_space == chain_space
15+
16+
assert 0 in chain_space
17+
assert 'm' in chain_space
18+
assert [] not in chain_space
19+
20+
assert not ChainSpace(())
21+
22+

source_py3/test_python_toolbox/test_combi/test_combi.py renamed to source_py3/test_python_toolbox/test_combi/test_perm_space.py

Lines changed: 4 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
1+
# Copyright 2009-2014 Ram Rachum.
2+
# This program is distributed under the MIT license.
3+
14
from python_toolbox.combi import *
25

6+
37
def test_perms():
48
pure_0a = PermSpace(4)
59
pure_0b = PermSpace(range(4))
@@ -379,33 +383,3 @@ def test_neighbors():
379383
assert len(first_level_neighbors) + 1 == len(perm.get_neighbors((0, 1)))
380384

381385

382-
def test_chain_spaces():
383-
chain_space = ChainSpace((range(3), 'meow', range(2, -1, -1)))
384-
assert tuple(chain_space) == (0, 1, 2, 'm', 'e', 'o', 'w', 2, 1, 0)
385-
assert len(chain_space) == chain_space.length == 10
386-
for i, item in enumerate(chain_space):
387-
assert chain_space[i] == item
388-
389-
assert chain_space == chain_space
390-
391-
assert 0 in chain_space
392-
assert 'm' in chain_space
393-
assert [] not in chain_space
394-
395-
assert not ChainSpace(())
396-
397-
398-
399-
def test_product_spaces():
400-
huge_perm_space = PermSpace(range(100))
401-
big_perm_space = PermSpace(range(150), fixed_map={1: 5, 70: 3,},
402-
degrees=(3, 5))
403-
product_space = ProductSpace((huge_perm_space, big_perm_space))
404-
assert product_space.length == \
405-
huge_perm_space.length * big_perm_space.length
406-
(perm_0, perm_1) = product_space[10**10]
407-
assert perm_0 in huge_perm_space
408-
assert perm_1 in big_perm_space
409-
assert (perm_0, perm_1) in product_space
410-
assert product_space.index((perm_0, perm_1)) == 10 ** 10
411-
assert ( ~ perm_0, ~ perm_1) in product_space
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Copyright 2009-2014 Ram Rachum.
2+
# This program is distributed under the MIT license.
3+
4+
from python_toolbox.combi import *
5+
6+
7+
def test_product_spaces():
8+
huge_perm_space = PermSpace(range(100))
9+
big_perm_space = PermSpace(range(150), fixed_map={1: 5, 70: 3,},
10+
degrees=(3, 5))
11+
product_space = ProductSpace((huge_perm_space, big_perm_space))
12+
assert product_space.length == \
13+
huge_perm_space.length * big_perm_space.length
14+
(perm_0, perm_1) = product_space[10**10]
15+
assert perm_0 in huge_perm_space
16+
assert perm_1 in big_perm_space
17+
assert (perm_0, perm_1) in product_space
18+
assert product_space.index((perm_0, perm_1)) == 10 ** 10
19+
assert ( ~ perm_0, ~ perm_1) in product_space

0 commit comments

Comments
 (0)