blob: 767ee31650edb06068de89d22b061bf4c2d4a414 [file] [log] [blame]
Johnny Chenc6401792011-03-30 21:19:59 +00001"""
2Test some lldb platform commands.
3"""
4
5import os, time
6import unittest2
7import lldb
8from lldbtest import *
9
10class PlatformCommandTestCase(TestBase):
11
Johnny Chenfd709992011-06-27 18:25:00 +000012 mydir = os.path.join("functionalities", "platform")
Johnny Chenc6401792011-03-30 21:19:59 +000013
14 def test_help_platform(self):
15 self.runCmd("help platform")
16
17 def test_list(self):
18 self.expect("platform list",
19 patterns = ['^Available platforms:'])
20
Daniel Malea939ec182013-01-05 00:25:12 +000021 @expectedFailureLinux # due to bugzilla 14541 -- Cannot list processes on Linux
Johnny Chenc6401792011-03-30 21:19:59 +000022 def test_process_list(self):
23 self.expect("platform process list",
Johnny Chen7d90b1f2011-04-01 00:48:40 +000024 substrs = ['PID', 'ARCH', 'NAME'])
Johnny Chenc6401792011-03-30 21:19:59 +000025
Johnny Chenfa92ecc2011-05-09 20:51:47 +000026 def test_process_info_with_no_arg(self):
27 """This is expected to fail and to return a proper error message."""
28 self.expect("platform process info", error=True,
29 substrs = ['one or more process id(s) must be specified'])
30
Daniel Malea939ec182013-01-05 00:25:12 +000031 @expectedFailureLinux # due to bugzilla 14806 -- "platform status" prints more information on Mac OS X than on Linux
Johnny Chenc6401792011-03-30 21:19:59 +000032 def test_status(self):
33 self.expect("platform status",
34 substrs = ['Platform', 'Triple', 'OS Version', 'Kernel', 'Hostname'])
35
36
37if __name__ == '__main__':
38 import atexit
39 lldb.SBDebugger.Initialize()
40 atexit.register(lambda: lldb.SBDebugger.Terminate())
41 unittest2.main()