diff --git a/tests/test_user.py b/tests/test_user.py
index 5b57936cad63deb4603f72fc9a7531c5039ff0a0..efc98383056d2313665b26bd8ab5b5a5864e6bea 100644
--- a/tests/test_user.py
+++ b/tests/test_user.py
@@ -153,7 +153,7 @@ class TestUserViews(UffdTestCase):
 		self.assertEqual(_user.mail, 'newuser@example.com')
 		self.assertEqual(_user.uid, user.uid)
 		self.assertEqual(_user.loginname, user.loginname)
-		self.assertTrue(ldap.test_user_bind(_user.dn, 'userpassword'))
+		self.assertTrue(ldap.test_user_bind(user.dn, 'userpassword'))
 		self.assertEqual(roles, ['base', 'role1'])
 
 	def test_update_password(self):
diff --git a/tests/utils.py b/tests/utils.py
index abb0445f3dff57db0b797969f2b8bd57f795406f..1dff72ec3530f357e3199ce1e8dbc27161b2a56b 100644
--- a/tests/utils.py
+++ b/tests/utils.py
@@ -15,7 +15,7 @@ def dump(basename, resp):
 		return
 	os.makedirs(root, exist_ok=True)
 	path = os.path.join(root, basename+suffix)
-	with open(path, 'xb') as f:
+	with open(path, 'wb') as f:
 		f.write(resp.data)
 
 def db_flush():
diff --git a/uffd/__init__.py b/uffd/__init__.py
index 53d6965f9fed9f0b063ad5bc420425219f4f4121..3b841095adebefff8de62f148c6c991e36c66935 100644
--- a/uffd/__init__.py
+++ b/uffd/__init__.py
@@ -12,7 +12,7 @@ sys.path.append('deps/ldapalchemy')
 
 # pylint: disable=wrong-import-position
 from uffd.database import db, SQLAlchemyJSON
-from uffd.ldap import ldap
+import uffd.ldap
 from uffd.template_helper import register_template_helper
 from uffd.navbar import setup_navbar
 # pylint: enable=wrong-import-position
@@ -67,7 +67,7 @@ def create_app(test_config=None): # pylint: disable=too-many-locals
 	@app.shell_context_processor
 	def push_request_context(): #pylint: disable=unused-variable
 		app.test_request_context().push() # LDAP ORM requires request context
-		return {'db': db, 'ldap': ldap}
+		return {'db': db, 'ldap': uffd.ldap.ldap}
 
 	@app.route("/")
 	def index(): #pylint: disable=unused-variable