chiark / gitweb /
mtest: diff: Write output files and seddery rune
[secnet.git] / mtest / common.tcl
1 source test-common.tcl
2
3 proc mss-program {} {
4     global env
5     set l ./make-secnet-sites
6     if {![catch { set py $env(MTEST_PYTHON) }]} {
7         set l [concat $py $l]
8     }
9     return $l
10 }
11
12 proc run-mss-userv {user group args} {
13     eval [list exec env USERV_USER=$user USERV_GROUP=$group] \
14          [mss-program] \
15          $args
16 }
17
18 proc run-mss {args} { eval [list exec] [mss-program] $args }
19
20 proc diff {a b seddery} {
21     puts "$a $b $seddery"
22     exec bash -c "
23         diff -u <($seddery $a) \\
24                 <($seddery $b)
25     "
26 }
27
28 proc diff-output {expected got suffix} {
29     global seddery
30     global tmp
31     diff mtest/$expected$suffix $tmp/$got$suffix $seddery
32 }
33
34 file mkdir $tmp/groupfiles
35
36 set env(PYTHONHASHSEED) 0
37 set env(PYTHONBYTECODEBASE) 0
38
39 set seddery { sed -n 's/^[ \t]*//; /^[^#]/p' }
40
41 prefix_some_path PYTHONPATH .