Lines Matching refs:self
16 def setup_test(self): argument
18 self.exe = self.getBuildArtifact("process_io")
19 self.local_input_file = self.getBuildArtifact("input.txt")
20 self.local_output_file = self.getBuildArtifact("output.txt")
21 self.local_error_file = self.getBuildArtifact("error.txt")
23 self.input_file = os.path.join(
24 self.get_process_working_directory(), "input.txt")
25 self.output_file = os.path.join(
26 self.get_process_working_directory(), "output.txt")
27 self.error_file = os.path.join(
28 self.get_process_working_directory(), "error.txt")
29 self.lines = ["Line 1", "Line 2", "Line 3"]
34 def test_stdin_by_api(self): argument
36 self.setup_test()
37 self.build()
38 self.create_target()
39 self.run_process(True)
40 output = self.process.GetSTDOUT(1000)
41 self.check_process_output(output, output)
45 def test_stdin_redirection(self): argument
47 self.setup_test()
48 self.build()
49 self.create_target()
50 self.redirect_stdin()
51 self.run_process(False)
52 output = self.process.GetSTDOUT(1000)
53 self.check_process_output(output, output)
58 def test_stdout_redirection(self): argument
60 self.setup_test()
61 self.build()
62 self.create_target()
63 self.redirect_stdout()
64 self.run_process(True)
65 output = self.read_output_file_and_delete()
66 error = self.process.GetSTDOUT(1000)
67 self.check_process_output(output, error)
72 def test_stderr_redirection(self): argument
74 self.setup_test()
75 self.build()
76 self.create_target()
77 self.redirect_stderr()
78 self.run_process(True)
79 output = self.process.GetSTDOUT(1000)
80 error = self.read_error_file_and_delete()
81 self.check_process_output(output, error)
86 def test_stdout_stderr_redirection(self): argument
88 self.setup_test()
89 self.build()
90 self.create_target()
91 self.redirect_stdout()
92 self.redirect_stderr()
93 self.run_process(True)
94 output = self.read_output_file_and_delete()
95 error = self.read_error_file_and_delete()
96 self.check_process_output(output, error)
100 def read_file_and_delete(self, target_file, local_file): argument
102 self.runCmd('platform get-file "{remote}" "{local}"'.format(
105 self.assertTrue(
119 def read_output_file_and_delete(self): argument
120 return self.read_file_and_delete(
121 self.output_file, self.local_output_file)
123 def read_error_file_and_delete(self): argument
124 return self.read_file_and_delete(
125 self.error_file, self.local_error_file)
127 def create_target(self): argument
129 self.target = self.dbg.CreateTarget(self.exe)
130 self.launch_info = self.target.GetLaunchInfo()
131 self.launch_info.SetWorkingDirectory(
132 self.get_process_working_directory())
134 def redirect_stdin(self): argument
140 f = open(self.local_input_file, 'w')
141 for line in self.lines:
146 self.runCmd('platform put-file "{local}" "{remote}"'.format(
147 local=self.local_input_file, remote=self.input_file))
152 os.unlink(self.local_input_file)
158 self.addTearDownHook(cleanup)
159 self.launch_info.AddOpenFileAction(0, self.input_file, True, False)
161 def redirect_stdout(self): argument
163 self.launch_info.AddOpenFileAction(1, self.output_file, False, True)
165 def redirect_stderr(self): argument
167 self.launch_info.AddOpenFileAction(2, self.error_file, False, True)
169 def run_process(self, put_stdin): argument
172 self.breakpoint = self.target.BreakpointCreateBySourceRegex(
174 self.assertTrue(
175 self.breakpoint.GetNumLocations() > 0,
182 self.process = self.target.Launch(self.launch_info, error)
184 self.assertTrue(
187 self.assertTrue(self.process, PROCESS_IS_VALID)
189 if self.TraceOn():
194 self.process, self.breakpoint)
196 self.assertEqual(len(threads), 1)
197 self.thread = threads[0]
198 self.frame = self.thread.frames[0]
199 self.assertTrue(self.frame, "Frame 0 is valid.")
201 if self.TraceOn():
206 for line in self.lines:
207 self.process.PutSTDIN(line + "\n")
210 self.process.Continue()
211 state = self.process.GetState()
212 self.assertState(state, lldb.eStateExited, PROCESS_IS_VALID)
214 def check_process_output(self, output, error): argument
219 if self.TraceOn():
223 for line in self.lines:
225 self.assertTrue(
228 for line in self.lines:
230 self.assertTrue(