chiark / gitweb /
mtest/t-userv: Check for dangerous parsing of late options
[secnet.git] / mtest / t-userv
1 #! /usr/bin/tclsh
2
3 source mtest/common.tcl
4
5 #----- success test -----
6
7 set good [list Uuser Ginside -u \
8           mtest/header.sites $tmp/groupfiles $tmp/out.sites Ginside \
9           < mtest/Ginside.sites]
10
11 eval run-mss-userv $good
12
13 diff-output e-userv out .sites
14
15 #----- argument parser does not look for args beyond header -----
16
17 set env(LC_MESSAGES) C
18
19 set try [lreplace $good 4 4 --misparse-test]
20
21 if {![catch {
22     eval run-mss-userv $try
23 } emsg]} {
24     error "should have failed"
25 } else {
26     switch -glob $emsg {
27         {*unrecognized arguments: --misparse-test*} {
28             error "misparsed!"
29         }
30         {*No such file or directory: '--misparse-test/TGinside'*} {
31         }
32         * {
33             error "huh ? $emsg"
34         }
35     }
36 }
37