chiark / gitweb /
mtest/t-userv: Test that output conf file is correct
[secnet.git] / mtest / t-userv
index 5131076c1d4abb62bb6eb870f3533fdc854d78e2..a3843e08f00f08bfa6d94a85185e4e24c4b8f4d7 100755 (executable)
@@ -14,4 +14,44 @@ diff-output e-userv out .sites
 
 #----- argument parser does not look for args beyond header -----
 
-#run-mss-userv 
+set env(LC_MESSAGES) C
+
+set try [lreplace $good 4 4 --misparse-test]
+
+if {![catch {
+    eval run-mss-userv $try
+} emsg]} {
+    error "should have failed"
+} else {
+    switch -glob $emsg {
+       {*unrecognized arguments: --misparse-test*} {
+           error "misparsed!"
+       }
+       {*No such file or directory: '--misparse-test/TGinside'*} {
+       }
+       * {
+           error "huh ? $emsg"
+       }
+    }
+}
+
+#----- wrong group is rejected -----
+
+set bad [lreplace $good 1 1 Gwrong]
+
+if {![catch {
+    eval run-mss-userv $bad
+} emsg]} {
+    error "should have failed"
+} else {
+    switch -glob $emsg {
+       {*caller not in group Ginside*} { }
+       * { error "huh ? $emsg" }
+    }
+}
+
+#----- resulting sites file is processable -----
+
+eval run-mss $tmp/out.sites >$tmp/out.conf
+
+diff-mss-sites-conf mtest/e-userv.conf $tmp/out.conf