提交 c432dcd8 authored 作者: lamblin's avatar lamblin

Merge pull request #973 from nouiz/fix_py24

Fix py24
......@@ -4,28 +4,34 @@ from theano.gof.sched import (make_dependence_cmp, sort_apply_nodes,
import theano
from theano import tensor
from theano.gof.graph import io_toposort
from theano.gof.python25 import any
def test_dependence():
dependence = make_dependence_cmp()
x = tensor.matrix('x')
y = tensor.dot(x*2, x+1)
y = tensor.dot(x * 2, x + 1)
nodes = io_toposort([x], [y])
for a, b in zip(nodes[:-1], nodes[1:]):
assert dependence(a, b) <= 0
def test_sort_apply_nodes():
x = tensor.matrix('x')
y = tensor.dot(x*2, x+1)
str_cmp = lambda a, b: cmp(str(a), str(b)) # lexicographical sort
y = tensor.dot(x * 2, x + 1)
str_cmp = lambda a, b: cmp(str(a), str(b)) # lexicographical sort
nodes = sort_apply_nodes([x], [y], cmps=[str_cmp])
for a, b in zip(nodes[:-1], nodes[1:]):
assert str(a) <= str(b)
def test_reverse_dict():
d = {'a': (1, 2), 'b': (2, 3), 'c':()}
assert reverse_dict(d) == {1: ('a',), 2: ('a', 'b'), 3: ('b',)}
d = {'a': (1, 2), 'b': (2, 3), 'c': ()}
assert reverse_dict(d) == {1: ('a',), 2: ('a', 'b'), 3: ('b',)}
def test__toposort():
edges = {1: set((4, 6, 7)), 2: set((4, 6, 7)),
......@@ -34,6 +40,7 @@ def test__toposort():
assert not any(a in edges.get(b, ()) for i, a in enumerate(order)
for b in order[i:])
def test_posort_easy():
nodes = "asdfghjkl"
......@@ -47,9 +54,11 @@ def test_posort_easy():
assert posort(nodes, cmp) == list("adfghjkls")
def test_posort():
l = range(1,20)
cmps = [lambda a,b: a%10 - b%10, lambda a, b: (a/10)%2 - (b/10)%2,
lambda a,b: a-b]
l = range(1, 20)
cmps = [lambda a, b: a % 10 - b % 10,
lambda a, b: (a / 10) % 2 - (b / 10) % 2,
lambda a, b: a - b]
assert posort(l, *cmps) == \
[10, 1, 11, 2, 12, 3, 13, 4, 14, 5, 15, 6, 16, 7, 17, 8, 18, 9, 19]
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论