| #/usr/bin/env python |
| import mozdevice |
| import logging |
| import re |
| import unittest |
| from sut import MockAgent |
| |
| |
| class TestGetInfo(unittest.TestCase): |
| |
| commands = {'os': ('info os', 'JDQ39'), |
| 'id': ('info id', '11:22:33:44:55:66'), |
| 'uptime': ('info uptime', '0 days 0 hours 7 minutes 0 seconds 0 ms'), |
| 'uptimemillis': ('info uptimemillis', '666'), |
| 'systime': ('info systime', '2013/04/2 12:42:00:007'), |
| 'screen': ('info screen', 'X:768 Y:1184'), |
| 'rotation': ('info rotation', 'ROTATION:0'), |
| 'memory': ('info memory', 'PA:1351032832, FREE: 878645248'), |
| 'process': ('info process', '1000 527 system\n' |
| '10091 3443 org.mozilla.firefox\n' |
| '10112 3137 com.mozilla.SUTAgentAndroid\n' |
| '10035 807 com.android.launcher'), |
| 'disk': ('info disk', '/data: 6084923392 total, 980922368 available\n' |
| '/system: 867999744 total, 332333056 available\n' |
| '/mnt/sdcard: 6084923392 total, 980922368 available'), |
| 'power': ('info power', 'Power status:\n' |
| ' AC power OFFLINE\n' |
| ' Battery charge LOW DISCHARGING\n' |
| ' Remaining charge: 20%\n' |
| ' Battery Temperature: 25.2 (c)'), |
| 'sutuserinfo': ('info sutuserinfo', 'User Serial:0'), |
| 'temperature': ('info temperature', 'Temperature: unknown') |
| } |
| |
| def test_getInfo(self): |
| |
| for directive in self.commands.keys(): |
| m = MockAgent(self, commands=[self.commands[directive]]) |
| d = mozdevice.DroidSUT('127.0.0.1', port=m.port, logLevel=logging.DEBUG) |
| |
| expected = re.sub(r'\ +', ' ', self.commands[directive][1]).split('\n') |
| # Account for slightly different return format for 'process' |
| if directive is 'process': |
| expected = [[x] for x in expected] |
| |
| self.assertEqual(d.getInfo(directive=directive)[directive], expected) |
| |
| if __name__ == '__main__': |
| unittest.main() |