# Copyright (c) 2012 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. """Common paths for pyauto tests.""" import os import sys def GetSourceDir(): """Returns src/ directory.""" script_dir = os.path.abspath(os.path.dirname(__file__)) return os.path.join(script_dir, os.pardir, os.pardir, os.pardir) def GetThirdPartyDir(): """Returns src/third_party directory.""" return os.path.join(GetSourceDir(), 'third_party') def GetBuildDirs(): """Returns list of possible build directories.""" # List of dirs that can contain a Debug/Release build. outer_dirs = { 'linux2': ['out'], 'linux3': ['out'], 'darwin': ['out', 'xcodebuild'], 'win32': ['chrome', 'build', 'out'], 'cygwin': ['chrome'], }.get(sys.platform, []) src_dir = GetSourceDir() build_dirs = [] for dir in outer_dirs: build_dirs += [os.path.join(src_dir, dir, 'Debug')] build_dirs += [os.path.join(src_dir, dir, 'Release')] return build_dirs def GetChromeDriverExe(): """Returns path to ChromeDriver executable, or None if cannot be found.""" exe_name = 'chromedriver' if sys.platform == 'win32': exe_name += '.exe' import pyautolib dir = os.path.dirname(pyautolib.__file__) exe = os.path.join(dir, exe_name) if os.path.exists(exe): return exe return None