Add KRB5_TRACE test case
authorGreg Hudson <ghudson@mit.edu>
Tue, 24 Apr 2012 17:04:29 +0000 (17:04 +0000)
committerGreg Hudson <ghudson@mit.edu>
Tue, 24 Apr 2012 17:04:29 +0000 (17:04 +0000)
In t_general.py, run kinit with KRB5_TRACE enabled and make sure we
see some basic strings in the resulting file.

ticket: 7113

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@25821 dc483132-0cff-0310-8789-dd5450dbe970

src/tests/t_general.py

index ea823b8f55327f8a2690e299f87cb979837e89f7..046f957f439a25bdc5b79bbe65b4099312a11b58 100755 (executable)
@@ -39,4 +39,22 @@ output = realm.run_as_client([klist], expected_code=1)
 if 'No credentials cache found' not in output:
     fail('Expected error message not seen in klist output')
 
-success('Dump/load, FAST kinit, kdestroy')
+# Spot-check KRB5_TRACE output
+tracefile = os.path.join(realm.testdir, 'trace')
+realm.run_as_client(['env', 'KRB5_TRACE=' + tracefile, kinit,
+                     realm.user_princ], input=(password('user') + "\n"))
+f = open(tracefile, 'r')
+trace = f.read()
+f.close()
+expected = ('Sending initial UDP request',
+            'Received answer',
+            'Selected etype info',
+            'AS key obtained',
+            'Decrypted AS reply',
+            'FAST negotiation: available',
+            'Storing user@KRBTEST.COM')
+for e in expected:
+    if e not in trace:
+        fail('Expected output not in kinit trace log')
+
+success('Dump/load, FAST kinit, kdestroy, trace logging')