1*99451b44SJordan Rupprecht""" 2*99451b44SJordan RupprechtTest that lldb command "command source" works correctly. 3*99451b44SJordan Rupprecht""" 4*99451b44SJordan Rupprecht 5*99451b44SJordan Rupprecht 6*99451b44SJordan Rupprecht 7*99451b44SJordan Rupprechtimport lldb 8*99451b44SJordan Rupprechtfrom lldbsuite.test.decorators import * 9*99451b44SJordan Rupprechtfrom lldbsuite.test.lldbtest import * 10*99451b44SJordan Rupprechtfrom lldbsuite.test import lldbutil 11*99451b44SJordan Rupprecht 12*99451b44SJordan Rupprecht 13*99451b44SJordan Rupprechtclass CommandSourceTestCase(TestBase): 14*99451b44SJordan Rupprecht 15*99451b44SJordan Rupprecht mydir = TestBase.compute_mydir(__file__) 16*99451b44SJordan Rupprecht 17*99451b44SJordan Rupprecht @no_debug_info_test 18*99451b44SJordan Rupprecht def test_command_source(self): 19*99451b44SJordan Rupprecht """Test that lldb command "command source" works correctly.""" 20*99451b44SJordan Rupprecht 21*99451b44SJordan Rupprecht # Sourcing .lldb in the current working directory, which in turn imports 22*99451b44SJordan Rupprecht # the "my" package that defines the date() function. 23*99451b44SJordan Rupprecht self.runCmd("command source .lldb") 24*99451b44SJordan Rupprecht 25*99451b44SJordan Rupprecht # Python should evaluate "my.date()" successfully. 26*99451b44SJordan Rupprecht command_interpreter = self.dbg.GetCommandInterpreter() 27*99451b44SJordan Rupprecht self.assertTrue(command_interpreter, VALID_COMMAND_INTERPRETER) 28*99451b44SJordan Rupprecht result = lldb.SBCommandReturnObject() 29*99451b44SJordan Rupprecht command_interpreter.HandleCommand("script my.date()", result) 30*99451b44SJordan Rupprecht 31*99451b44SJordan Rupprecht import datetime 32*99451b44SJordan Rupprecht self.expect(result.GetOutput(), "script my.date() runs successfully", 33*99451b44SJordan Rupprecht exe=False, 34*99451b44SJordan Rupprecht substrs=[str(datetime.date.today())]) 35