Home | History | Annotate | Download | only in skpbench
      1 # Copyright 2016 Google Inc.
      2 #
      3 # Use of this source code is governed by a BSD-style license that can be
      4 # found in the LICENSE file.
      5 
      6 from _adb import Adb
      7 import re
      8 import subprocess
      9 
     10 __ADB = None
     11 
     12 def init(device_serial, adb_binary):
     13   global __ADB
     14   __ADB = Adb(device_serial, adb_binary)
     15 
     16 def join(*pathnames):
     17   return '/'.join(pathnames)
     18 
     19 def basename(pathname):
     20   return pathname.rsplit('/', maxsplit=1)[-1]
     21 
     22 def find_skps(skps):
     23   # root first, in case skps reside in a protected directory
     24   __ADB.root()
     25   escapedskps = [re.sub(r'([^a-zA-Z0-9_/\.\*\?\[\!\]])', r'\\\1', x)
     26                  for x in skps]
     27   return __ADB.check('''\
     28     for PATHNAME in %s; do
     29       if [ -d "$PATHNAME" ]; then
     30         find "$PATHNAME" -maxdepth 1 -name *.skp
     31       else
     32         echo "$PATHNAME"
     33       fi
     34     done''' % ' '.join(escapedskps)).splitlines()
     35