@@ -88,28 +88,31 @@ def get_binary_path(binary="unity8"):
8888 return binary_path
8989
9090
91−def get_data_dirs():
91+def get_data_dirs(data_dirs_mock_enabled=True):
9292 """Prepend a mock data path to XDG_DATA_DIRS."""
93+ data_dirs = _get_xdg_env_path()
94+ if data_dirs_mock_enabled:
95+ mock_data_path = _get_full_mock_data_path()
96+ if os.path.exists(mock_data_path):
97+ if data_dirs is not None:
98+ data_dirs = '{0}:{1}'.format(mock_data_path, data_dirs)
99+ else:
100+ data_dirs = mock_data_path
101+ return data_dirs
102+
103+
104+def _get_full_mock_data_path():
93105 if running_installed_tests():
94106 data_path = "/usr/share/unity8/mocks/data"
95107 else:
96108 data_path = "../../mocks/data"
97− full_data_path = os.path.abspath(
109+ return os.path.abspath(
98110 os.path.join(
99111 os.path.dirname(__file__),
100112 data_path
101113 )
102114 )
103115
104− if os.path.exists(full_data_path):
105− xdg_path = _get_xdg_env_path()
106− if xdg_path is not None:
107− return "{0}:{1}".format(full_data_path, xdg_path)
108− else:
109− return full_data_path
110− else:
111− return None
112−
113116
114117def _get_xdg_env_path():
115118 path = os.getenv("XDG_DATA_DIRS")
@@ -129,6 +132,7 @@ def _get_xdg_upstart_env():
129132 except subprocess.CalledProcessError:
130133 return None
131134
135+
132136def get_grid_size():
133137 grid_size = os.getenv('GRID_UNIT_PX')
134138 if grid_size is None: