1*67f94e5aSSiger Yang_T = require('lua_lldb_test').create_test('TestFileHandle') 2*67f94e5aSSiger Yang 3*67f94e5aSSiger Yangfunction _T:TestLegacyFileOutScript() 4*67f94e5aSSiger Yang local f = io.open(self.output, 'w') 5*67f94e5aSSiger Yang self.debugger:SetOutputFile(f) 6*67f94e5aSSiger Yang self:handle_command('script print(1+1)') 7*67f94e5aSSiger Yang self.debugger:GetOutputFileHandle():write('FOO\n') 8*67f94e5aSSiger Yang self.debugger:GetOutputFileHandle():flush() 9*67f94e5aSSiger Yang f:close() 10*67f94e5aSSiger Yang 11*67f94e5aSSiger Yang f = io.open(self.output, 'r') 12*67f94e5aSSiger Yang assertEquals(read_file_non_empty_lines(f), {'2', 'FOO'}) 13*67f94e5aSSiger Yang f:close() 14*67f94e5aSSiger Yangend 15*67f94e5aSSiger Yang 16*67f94e5aSSiger Yangfunction _T:TestLegacyFileOut() 17*67f94e5aSSiger Yang local f = io.open(self.output, 'w') 18*67f94e5aSSiger Yang self.debugger:SetOutputFile(f) 19*67f94e5aSSiger Yang self:handle_command('p/x 3735928559', false) 20*67f94e5aSSiger Yang f:close() 21*67f94e5aSSiger Yang 22*67f94e5aSSiger Yang f = io.open(self.output, 'r') 23*67f94e5aSSiger Yang assertStrContains(f:read('*l'), 'deadbeef') 24*67f94e5aSSiger Yang f:close() 25*67f94e5aSSiger Yangend 26*67f94e5aSSiger Yang 27*67f94e5aSSiger Yangfunction _T:TestLegacyFileErr() 28*67f94e5aSSiger Yang local f = io.open(self.output, 'w') 29*67f94e5aSSiger Yang self.debugger:SetErrorFile(f) 30*67f94e5aSSiger Yang self:handle_command('lol', false) 31*67f94e5aSSiger Yang 32*67f94e5aSSiger Yang f = io.open(self.output, 'r') 33*67f94e5aSSiger Yang assertStrContains(f:read('*l'), 'is not a valid command') 34*67f94e5aSSiger Yang f:close() 35*67f94e5aSSiger Yangend 36*67f94e5aSSiger Yang 37*67f94e5aSSiger Yangos.exit(_T:run()) 38