Marian Beermann 9 年之前
父节点
当前提交
43258abf21
共有 1 个文件被更改,包括 21 次插入0 次删除
  1. 21 0
      conftest.py

+ 21 - 0
conftest.py

@@ -1,3 +1,24 @@
+import sys
+
+# This is a hack to fix path problems because "borg" (the package) is in the source root.
+# When importing the conftest an "import borg" can incorrectly import the borg from the
+# source root instead of the one installed in the environment.
+# The workaround is to remove entries pointing there from the path and check whether "borg"
+# is still importable. If it is not, then it has not been installed in the environment
+# and the entries are put back.
+#
+# TODO: After moving the package to src/: remove this.
+
+original_path = list(sys.path)
+for entry in original_path:
+    if entry == '' or entry.endswith('/borg'):
+        sys.path.remove(entry)
+
+try:
+    import borg
+except ImportError:
+    sys.path = original_path
+
 from borg.logger import setup_logging
 
 # Ensure that the loggers exist for all tests