Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(573)

Side by Side Diff: tools/chrome_remote_control/chrome_remote_control/android_browser_finder_unittest.py

Issue 10984018: [chrome_remote_control] Add pylint to PRESUMMIT and fix lint (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: for landing Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 import logging 4 import logging
5 import unittest 5 import unittest
6 6
7 from chrome_remote_control import android_browser_finder 7 from chrome_remote_control import android_browser_finder
8 from chrome_remote_control import browser_options 8 from chrome_remote_control import browser_options
9 9 from chrome_remote_control.system_stub import PopenStub
10 from system_stub import * 10 from chrome_remote_control.system_stub import SubprocessModuleStub
11 11
12 # adb not even found 12 # adb not even found
13 # android_browser_finder not returning 13 # android_browser_finder not returning
14 class ADBCommandsStub(object): 14 class ADBCommandsStub(object):
15 def __init__(self, module, device): 15 def __init__(self, module, device):
16 self._module = module 16 self._module = module
17 self._device = device 17 self._device = device
18 self.is_root_enabled = True 18 self.is_root_enabled = True
19 19
20 def RunShellCommand(self, args): 20 def RunShellCommand(self, args):
21 if isinstance(args, basestring): 21 if isinstance(args, basestring):
22 import shlex 22 import shlex
23 args = shlex.split(args) 23 args = shlex.split(args)
24 handler = self._module.shell_command_handlers[args[0]] 24 handler = self._module.shell_command_handlers[args[0]]
25 return handler(args) 25 return handler(args)
26 26
27 def IsRootEnabled(self): 27 def IsRootEnabled(self):
28 return self.is_root_enabled 28 return self.is_root_enabled
29 29
30 class ADBCommandsModuleStub(object): 30 class ADBCommandsModuleStub(object):
31 def __init__(self): 31 def __init__(self):
32 self.attached_devices = [] 32 self.attached_devices = []
33 self.shell_command_handlers = {} 33 self.shell_command_handlers = {}
34 34
35 def ADBCommandsStubConstructor(device=None): 35 def ADBCommandsStubConstructor(device=None):
36 return ADBCommandsStub(self, device) 36 return ADBCommandsStub(self, device)
37 self.ADBCommands = ADBCommandsStubConstructor 37 self.ADBCommands = ADBCommandsStubConstructor
38 38
39 def IsAndroidSupported(self): 39 def IsAndroidSupported(self): # pylint: disable=R0201
40 return True 40 return True
41 41
42 def GetAttachedDevices(self): 42 def GetAttachedDevices(self):
43 return self.attached_devices 43 return self.attached_devices
44 44
45 def HasForwarder(self, adb): 45 def HasForwarder(self, adb): # pylint: disable=W0613,R0201
46 return True 46 return True
47 47
48 class AndroidBrowserFinderTest(unittest.TestCase): 48 class AndroidBrowserFinderTest(unittest.TestCase):
49 def test_no_adb(self): 49 def test_no_adb(self):
50 options = browser_options.BrowserOptions() 50 options = browser_options.BrowserOptions()
51 51
52 subprocess_stub = SubprocessModuleStub() 52 subprocess_stub = SubprocessModuleStub()
53 def NoADB(*args, **kargs): 53 def NoADB(*args, **kargs): # pylint: disable=W0613
54 raise OSError('not found') 54 raise OSError('not found')
55 subprocess_stub.Popen_hook = NoADB 55 subprocess_stub.Popen_hook = NoADB
56 browsers = android_browser_finder.FindAllAvailableBrowsers( 56 browsers = android_browser_finder.FindAllAvailableBrowsers(
57 options, subprocess_stub) 57 options, subprocess_stub)
58 self.assertEquals(0, len(browsers)) 58 self.assertEquals(0, len(browsers))
59 59
60 def test_adb_no_devices(self): 60 def test_adb_no_devices(self):
61 options = browser_options.BrowserOptions() 61 options = browser_options.BrowserOptions()
62 62
63 subprocess_stub = SubprocessModuleStub() 63 subprocess_stub = SubprocessModuleStub()
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
145 assert args[1] == 'list' 145 assert args[1] == 'list'
146 assert args[2] == 'packages' 146 assert args[2] == 'packages'
147 return ['package:org.chromium.content_shell', 147 return ['package:org.chromium.content_shell',
148 'package.com.google.android.setupwizard'] 148 'package.com.google.android.setupwizard']
149 149
150 adb_commands_module_stub.shell_command_handlers['pm'] = OnPM 150 adb_commands_module_stub.shell_command_handlers['pm'] = OnPM
151 151
152 browsers = android_browser_finder.FindAllAvailableBrowsers( 152 browsers = android_browser_finder.FindAllAvailableBrowsers(
153 options, subprocess_stub, adb_commands_module_stub) 153 options, subprocess_stub, adb_commands_module_stub)
154 self.assertEquals(1, len(browsers)) 154 self.assertEquals(1, len(browsers))
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698