1__author__ = 'ktisha'
2import os
3import sys
4
5
6PYTHON_VERSION_MAJOR = sys.version_info[0]
7PYTHON_VERSION_MINOR = sys.version_info[1]
8
9ENABLE_DEBUG_LOGGING = False
10if os.getenv("UTRUNNER_ENABLE_DEBUG_LOGGING"):
11  ENABLE_DEBUG_LOGGING = True
12
13def debug(what):
14  if ENABLE_DEBUG_LOGGING:
15    sys.stdout.writelines(str(what) + '\n')
16
17def adjust_sys_path(add_script_parent=True, script_index=1):
18  sys.path.pop(0)
19  if add_script_parent:
20    script_path = os.path.dirname(sys.argv[script_index])
21    insert_to_sys_path(script_path)
22
23def adjust_django_sys_path():
24  pycharm_path = sys.path.pop(0)
25  script_path = sys.argv[-1]
26  insert_to_sys_path(script_path)
27  sys.path.append(pycharm_path)
28
29def import_system_module(name):
30  if sys.platform == "cli":    # hack for the ironpython
31    return __import__(name)
32
33  if sys.version_info >= (2, 7):
34    import importlib
35    module = importlib.import_module(name)
36    module.__name__ = "pycharm_" + name
37    return module
38  else:
39    import imp
40    f, filename, desc = imp.find_module(name)
41    return imp.load_module('pycharm_' + name, f, filename, desc)
42
43
44def getModuleName(prefix, cnt):
45  return prefix + "%" + str(cnt)
46
47def insert_to_sys_path(script_path):
48  while script_path in sys.path:
49    sys.path.remove(script_path)
50  sys.path.insert(0, script_path)
51