1
0
mirror of git://projects.qi-hardware.com/fped.git synced 2024-12-23 00:35:12 +02:00
fped/test/tsort
2012-05-27 22:14:00 -03:00

138 lines
1.8 KiB
Bash
Executable File

#!/bin/sh
. ./Common
###############################################################################
fped "tsort: total order" <<EOF
%tsort {
a b
a c
a d
b c
b d
c d
}
EOF
expect <<EOF
a
b
c
d
EOF
#------------------------------------------------------------------------------
fped "tsort: partial order change (1)" <<EOF
%tsort {
a b
a c
a d
d b
}
EOF
expect <<EOF
a
c
d
b
EOF
#------------------------------------------------------------------------------
fped "tsort: partial order change (2)" <<EOF
%tsort {
b c
c d
a b
}
EOF
expect <<EOF
a
b
c
d
EOF
#------------------------------------------------------------------------------
fped "tsort: old order differs from resolution order" <<EOF
%tsort {
+a +b +c +d
a c
a b
a d
}
EOF
expect <<EOF
a
b
c
d
EOF
#------------------------------------------------------------------------------
fped "tsort: order change due to priority" <<EOF
%tsort {
a b
a c 1
a d
}
EOF
expect <<EOF
a
c
b
d
EOF
#------------------------------------------------------------------------------
fped "tsort: priority accumulation without decay" <<EOF
%tsort {
+a +b +c +d
a b 1
a d 1
}
EOF
expect <<EOF
a
b
d
c
EOF
#------------------------------------------------------------------------------
fped "tsort: priority accumulation with decay" <<EOF
%tsort {
+a -b +c +d
a b 1
a d 1
}
EOF
expect <<EOF
a
b
c
d
EOF
#------------------------------------------------------------------------------
fped_fail "tsort: cycle" <<EOF
%tsort {
a b
b a
}
EOF
expect_sed '/Aborted/d' <<EOF
cycle detected in partial order
EOF
# The "Aborted" can be reported with or without "(core dumped)", and sometimes
# not at all. So we just remove it. We already know that tsort has detected
# the problem.
###############################################################################