|
1 #!/usr/bin/env python |
|
2 |
|
3 import mozdevice |
|
4 import mozlog |
|
5 import unittest |
|
6 from sut import MockAgent |
|
7 |
|
8 |
|
9 class TestLogCat(unittest.TestCase): |
|
10 """ Class to test methods assosiated with logcat """ |
|
11 |
|
12 def test_getLogcat(self): |
|
13 |
|
14 logcat_output = ("07-17 00:51:10.377 I/SUTAgentAndroid( 2933): onCreate\n\r" |
|
15 "07-17 00:51:10.457 D/dalvikvm( 2933): GC_CONCURRENT freed 351K, 17% free 2523K/3008K, paused 5ms+2ms, total 38ms\n\r" |
|
16 "07-17 00:51:10.497 I/SUTAgentAndroid( 2933): Caught exception creating file in /data/local/tmp: open failed: EACCES (Permission denied)\n\r" |
|
17 "07-17 00:51:10.507 E/SUTAgentAndroid( 2933): ERROR: Cannot access world writeable test root\n\r" |
|
18 "07-17 00:51:10.547 D/GeckoHealthRec( 3253): Initializing profile cache.\n\r" |
|
19 "07-17 00:51:10.607 D/GeckoHealthRec( 3253): Looking for /data/data/org.mozilla.fennec/files/mozilla/c09kfhne.default/times.json\n\r" |
|
20 "07-17 00:51:10.637 D/GeckoHealthRec( 3253): Using times.json for profile creation time.\n\r" |
|
21 "07-17 00:51:10.707 D/GeckoHealthRec( 3253): Incorporating environment: times.json profile creation = 1374026758604\n\r" |
|
22 "07-17 00:51:10.507 D/GeckoHealthRec( 3253): Requested prefs.\n\r" |
|
23 "07-17 06:50:54.907 I/SUTAgentAndroid( 3876): \n\r" |
|
24 "07-17 06:50:54.907 I/SUTAgentAndroid( 3876): Total Private Dirty Memory 3176 kb\n\r" |
|
25 "07-17 06:50:54.907 I/SUTAgentAndroid( 3876): Total Proportional Set Size Memory 5679 kb\n\r" |
|
26 "07-17 06:50:54.907 I/SUTAgentAndroid( 3876): Total Shared Dirty Memory 9216 kb\n\r" |
|
27 "07-17 06:55:21.627 I/SUTAgentAndroid( 3876): 127.0.0.1 : execsu /system/bin/logcat -v time -d dalvikvm:I " |
|
28 "ConnectivityService:S WifiMonitor:S WifiStateTracker:S wpa_supplicant:S NetworkStateTracker:S\n\r" |
|
29 "07-17 06:55:21.827 I/dalvikvm-heap( 3876): Grow heap (frag case) to 3.019MB for 102496-byte allocation\n\r" |
|
30 "return code [0]") |
|
31 |
|
32 inp = ("execsu /system/bin/logcat -v time -d " |
|
33 "dalvikvm:I ConnectivityService:S WifiMonitor:S " |
|
34 "WifiStateTracker:S wpa_supplicant:S NetworkStateTracker:S") |
|
35 |
|
36 commands = [(inp, logcat_output)] |
|
37 m = MockAgent(self, commands=commands) |
|
38 d = mozdevice.DroidSUT("127.0.0.1", port=m.port, logLevel=mozlog.DEBUG) |
|
39 self.assertEqual(logcat_output[:-17].split('\r'), d.getLogcat()) |
|
40 |
|
41 def test_recordLogcat(self): |
|
42 |
|
43 commands = [("execsu /system/bin/logcat -c", "return code [0]")] |
|
44 |
|
45 m = MockAgent(self, commands=commands) |
|
46 d = mozdevice.DroidSUT("127.0.0.1", port=m.port, logLevel=mozlog.DEBUG) |
|
47 # No error raised means success |
|
48 self.assertEqual(None, d.recordLogcat()) |
|
49 |
|
50 if __name__ == '__main__': |
|
51 unittest.main() |