summaryrefslogtreecommitdiff
path: root/tests/functional/features/steps/bitmask.py
diff options
context:
space:
mode:
authorVarac <varac@leap.se>2017-06-09 09:40:55 +0200
committerAzul <azul@riseup.net>2017-07-20 12:34:33 +0200
commitd6abd906cb64ae68eed3348eba521bc44ebed7b2 (patch)
treefadf7d8270106a628c31b1f7017f343a94f311f0 /tests/functional/features/steps/bitmask.py
parentc81b98df15e3d2006c991c9ca9d86500e3599e9b (diff)
[test] Add basic functional login test
* Move todo list to https://0xacab.org/leap/bitmask-dev/issues/8929 * use bundled pysqlcipher - debian package has not been fixed yet. * reset bitmaskd for each scenario so they are isolated * run functional tests on CI * moved e2e tests before the bundle * add test_functional_graphical Make target * Install chromedriver in docker image * add screenshots as artifacts on failure * run chrome without sandbox for docker Tests were failing on CI with chrome sandbox: https://0xacab.org/leap/bitmask-dev/-/jobs/15196 Used this workaround: https://stackoverflow.com/questions/28364012/webdriver-exception-chrome-not-reachable/28949227#28949227 - Resolves: #8929
Diffstat (limited to 'tests/functional/features/steps/bitmask.py')
-rw-r--r--tests/functional/features/steps/bitmask.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/functional/features/steps/bitmask.py b/tests/functional/features/steps/bitmask.py
new file mode 100644
index 0000000..b5b4cf1
--- /dev/null
+++ b/tests/functional/features/steps/bitmask.py
@@ -0,0 +1,26 @@
+import commands
+import shutil
+import os
+import time
+from leap.common.config import get_path_prefix
+
+from behave import given
+
+
+@given('I start bitmask for the first time')
+def initial_run(context):
+ commands.getoutput('bitmaskctl stop')
+ # TODO: fix bitmaskctl to only exit once bitmaskd has stopped
+ time.sleep(2)
+ _initialize_home_path()
+ commands.getoutput('bitmaskctl start')
+ tokenpath = os.path.join(get_path_prefix(), 'leap', 'authtoken')
+ token = open(tokenpath).read().strip()
+ context.login_url = "http://localhost:7070/#%s" % token
+
+
+def _initialize_home_path():
+ home_path = '/tmp/bitmask-test'
+ shutil.rmtree(home_path, ignore_errors=True)
+ os.environ['HOME'] = home_path
+ os.makedirs(get_path_prefix())