""" Test the session history command """ import lldb from lldbsuite.test.decorators import * from lldbsuite.test.lldbtest import * from lldbsuite.test import lldbutil class SessionHistoryTestCase(TestBase): mydir = TestBase.compute_mydir(__file__) @no_debug_info_test def test_history(self): self.runCmd('session history --clear', inHistory=False) self.runCmd('breakpoint list', check=False, inHistory=True) # 0 self.runCmd('register read', check=False, inHistory=True) # 1 self.runCmd('apropos hello', check=False, inHistory=True) # 2 self.runCmd('memory write', check=False, inHistory=True) # 3 self.runCmd('log list', check=False, inHistory=True) # 4 self.runCmd('disassemble', check=False, inHistory=True) # 5 self.runCmd('expression 1', check=False, inHistory=True) # 6 self.runCmd( 'type summary list -w default', check=False, inHistory=True) # 7 self.runCmd('version', check=False, inHistory=True) # 8 self.runCmd('frame select 1', check=False, inHistory=True) # 9 self.expect( "session history -s 3 -c 3", inHistory=True, substrs=[ '3: memory write', '4: log list', '5: disassemble']) self.expect("session history -s 3 -e 3", inHistory=True, substrs=['3: memory write']) self.expect( "session history -s 6 -e 7", inHistory=True, substrs=[ '6: expression 1', '7: type summary list -w default']) self.expect("session history -c 2", inHistory=True, substrs=['0: breakpoint list', '1: register read']) self.expect("session history -e 3 -c 1", inHistory=True, substrs=['3: memory write']) self.expect( "session history -e 2", inHistory=True, substrs=[ '0: breakpoint list', '1: register read', '2: apropos hello']) self.expect( "session history -s 12", inHistory=True, substrs=[ '12: session history -s 6 -e 7', '13: session history -c 2', '14: session history -e 3 -c 1', '15: session history -e 2', '16: session history -s 12']) self.expect( "session history -s end -c 3", inHistory=True, substrs=[ '15: session history -e 2', '16: session history -s 12', '17: session history -s end -c 3']) self.expect( "session history -s end -e 15", inHistory=True, substrs=[ '15: session history -e 2', '16: session history -s 12', '17: session history -s end -c 3', 'session history -s end -e 15']) self.expect("session history -s 5 -c 1", inHistory=True, substrs=['5: disassemble']) self.expect("session history -c 1 -s 5", inHistory=True, substrs=['5: disassemble']) self.expect("session history -c 1 -e 3", inHistory=True, substrs=['3: memory write']) self.expect( "session history -c 1 -e 3 -s 5", error=True, inHistory=True, substrs=['error: --count, --start-index and --end-index cannot be all specified in the same invocation'])