summaryrefslogtreecommitdiffstats
path: root/tests/integration/saml2/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/integration/saml2/__init__.py')
-rw-r--r--tests/integration/saml2/__init__.py49
1 files changed, 39 insertions, 10 deletions
diff --git a/tests/integration/saml2/__init__.py b/tests/integration/saml2/__init__.py
index f4e7ab35..50fcba0e 100644
--- a/tests/integration/saml2/__init__.py
+++ b/tests/integration/saml2/__init__.py
@@ -5,12 +5,38 @@ import subprocess
import time
import twill
import urllib2
+import os.path
+import re
-AUTHENTIC_SRCDIR = '/usr/local/src/authentic'
-AUTHENTICCTL = '/usr/sbin/authenticctl.py'
-AUTHENTIC_DATA_DIR = '/usr/share/authentic/'
-LCSCTL = '/usr/sbin/lcsctl.py'
-LCS_DATADIR = '/usr/share/lcs/'
+CONFIG_FILE = os.path.expanduser('~/.config/lasso_integration.conf')
+CONFIG = dict()
+
+if os.path.exists(CONFIG_FILE):
+ lines = open(CONFIG_FILE).read().splitlines()
+ i = 1
+ for line in lines:
+ try:
+ m = re.match('(\w*) = (.*)', line)
+ CONFIG[m.groups()[0]] = m.groups()[1]
+ except:
+ print "Line", i, " of configuration file", CONFIG_FILE, "is invalid:", line
+ i +=1
+
+# Combine default and configuration file
+AUTHENTIC_SRCDIR = CONFIG.get('AUTHENTIC_SRCDIR') or '/usr/local/src/authentic'
+AUTHENTICCTL = CONFIG.get('AUTHENTICCTL') or '/usr/sbin/authenticctl.py'
+AUTHENTIC_DATA_DIR = CONFIG.get('AUTHENTIC_DATA_DIR') or '/usr/share/authentic/'
+LCSCTL = CONFIG.get('LCSCTL') or '/usr/sbin/lcsctl.py'
+LCS_DATADIR = CONFIG.get('LCS_DATADIR') or '/usr/share/lcs/'
+LASSO_BUILDDIR = os.environ.get('LASSO_BUILDDIR') or \
+ CONFIG.get('LASSO_BUILDDIR') or \
+ os.path.realpath(os.path.join(os.path.dirname(__FILE__), "..", "..", ".."))
+
+os.environ['LD_LIBRARY_PATH'] = os.path.join(LASSO_BUILDDIR, "lasso", ".libs") + ":" + \
+ os.environ.get('LD_LIBRARY_PATH', '')
+os.environ['PYTHONPATH'] = os.path.join(LASSO_BUILDDIR, "bindings", "python") + \
+ ":" + os.path.join(LASSO_BUILDDIR, "bindings", "python", ".libs") + ":" + \
+ os.environ.get('PYTHONPATH', '')
try:
from config import *
@@ -37,10 +63,11 @@ def setup():
print >> sys.stderr, 'Create it or edit tests/config.py to match your local installation'
sys.exit(1)
+ silent = os.environ.get('NO_SILENT') is None
twill.commands.reset_browser()
twill.set_output(file('/dev/null', 'w'))
base = []
- if os.path.exists('/usr/bin/valgrind'):
+ if os.environ.get('VALGRIND') is '1' and os.path.exists('/usr/bin/valgrind'):
base = ['./valgrind-wrapper.sh', 'python']
os.mkdir('/tmp/.tests')
@@ -48,15 +75,17 @@ def setup():
'--app-dir', '/tmp/.tests/authentictests',
'--data-dir', AUTHENTIC_DATADIR,
'--extra', os.path.join(AUTHENTIC_SRCDIR, 'extra', 'conformance'),
- '--port', '10001', '--http', '--silent']
- print authentic_command
+ '--port', '10001', '--http']
+ if silent:
+ authentic_command.append('--silent')
sp = subprocess.Popen(authentic_command)
pids.append(sp.pid)
lcs_command = base + [LCSCTL, 'start',
'--app-dir', '/tmp/.tests/lcstests',
'--data-dir', LCS_DATADIR,
- '--port', '10002', '--http', '--silent']
- print lcs_command
+ '--port', '10002', '--http']
+ if silent:
+ lcs_command.append('--silent')
sp = subprocess.Popen(lcs_command)
pids.append(sp.pid)