##// END OF EJS Templates
update parallel magic tests with capture_output API...
MinRK -
Show More
@@ -57,10 +57,9 b' class TestParallelMagics(ClusterTestCase, ParametricTestCase):'
57 ip.magic(
57 ip.magic(
58 'px import sys,time;print(a);sys.stdout.flush();time.sleep(0.2)'
58 'px import sys,time;print(a);sys.stdout.flush();time.sleep(0.2)'
59 )
59 )
60 out = io.stdout
60 self.assertIn('[stdout:', io.stdout)
61 self.assertTrue('[stdout:' in out, out)
61 self.assertNotIn('\n\n', io.stdout)
62 self.assertFalse('\n\n' in out)
62 assert io.stdout.rstrip().endswith('10')
63 self.assertTrue(out.rstrip().endswith('10'))
64 self.assertRaisesRemote(ZeroDivisionError, ip.magic, 'px 1/0')
63 self.assertRaisesRemote(ZeroDivisionError, ip.magic, 'px 1/0')
65
64
66 def _check_generated_stderr(self, stderr, n):
65 def _check_generated_stderr(self, stderr, n):
@@ -89,20 +88,20 b' class TestParallelMagics(ClusterTestCase, ParametricTestCase):'
89 for block in (True, False):
88 for block in (True, False):
90 v.block = block
89 v.block = block
91 ip.magic("pxconfig --verbose")
90 ip.magic("pxconfig --verbose")
92 with capture_output() as io:
91 with capture_output(display=False) as io:
93 ip.run_cell_magic("px", "", "1")
92 ip.run_cell_magic("px", "", "1")
94 if block:
93 if block:
95 self.assertTrue(io.stdout.startswith("Parallel"), io.stdout)
94 assert io.stdout.startswith("Parallel"), io.stdout
96 else:
95 else:
97 self.assertTrue(io.stdout.startswith("Async"), io.stdout)
96 assert io.stdout.startswith("Async"), io.stdout
98
97
99 with capture_output() as io:
98 with capture_output(display=False) as io:
100 ip.run_cell_magic("px", "--block", "1")
99 ip.run_cell_magic("px", "--block", "1")
101 self.assertTrue(io.stdout.startswith("Parallel"), io.stdout)
100 assert io.stdout.startswith("Parallel"), io.stdout
102
101
103 with capture_output() as io:
102 with capture_output(display=False) as io:
104 ip.run_cell_magic("px", "--noblock", "1")
103 ip.run_cell_magic("px", "--noblock", "1")
105 self.assertTrue(io.stdout.startswith("Async"), io.stdout)
104 assert io.stdout.startswith("Async"), io.stdout
106
105
107 def test_cellpx_groupby_engine(self):
106 def test_cellpx_groupby_engine(self):
108 """%%px --group-outputs=engine"""
107 """%%px --group-outputs=engine"""
@@ -113,10 +112,10 b' class TestParallelMagics(ClusterTestCase, ParametricTestCase):'
113
112
114 v['generate_output'] = generate_output
113 v['generate_output'] = generate_output
115
114
116 with capture_output() as io:
115 with capture_output(display=False) as io:
117 ip.run_cell_magic('px', '--group-outputs=engine', 'generate_output()')
116 ip.run_cell_magic('px', '--group-outputs=engine', 'generate_output()')
118
117
119 self.assertFalse('\n\n' in io.stdout)
118 self.assertNotIn('\n\n', io.stdout)
120 lines = io.stdout.splitlines()
119 lines = io.stdout.splitlines()
121 expected = [
120 expected = [
122 r'\[stdout:\d+\]',
121 r'\[stdout:\d+\]',
@@ -147,10 +146,10 b' class TestParallelMagics(ClusterTestCase, ParametricTestCase):'
147
146
148 v['generate_output'] = generate_output
147 v['generate_output'] = generate_output
149
148
150 with capture_output() as io:
149 with capture_output(display=False) as io:
151 ip.run_cell_magic('px', '--group-outputs=order', 'generate_output()')
150 ip.run_cell_magic('px', '--group-outputs=order', 'generate_output()')
152
151
153 self.assertFalse('\n\n' in io.stdout)
152 self.assertNotIn('\n\n', io.stdout)
154 lines = io.stdout.splitlines()
153 lines = io.stdout.splitlines()
155 expected = []
154 expected = []
156 expected.extend([
155 expected.extend([
@@ -188,10 +187,10 b' class TestParallelMagics(ClusterTestCase, ParametricTestCase):'
188
187
189 v['generate_output'] = generate_output
188 v['generate_output'] = generate_output
190
189
191 with capture_output() as io:
190 with capture_output(display=False) as io:
192 ip.run_cell_magic('px', '--group-outputs=type', 'generate_output()')
191 ip.run_cell_magic('px', '--group-outputs=type', 'generate_output()')
193
192
194 self.assertFalse('\n\n' in io.stdout)
193 self.assertNotIn('\n\n', io.stdout)
195 lines = io.stdout.splitlines()
194 lines = io.stdout.splitlines()
196
195
197 expected = []
196 expected = []
@@ -246,7 +245,7 b' class TestParallelMagics(ClusterTestCase, ParametricTestCase):'
246 v.activate()
245 v.activate()
247 v.block=True
246 v.block=True
248
247
249 with capture_output() as io:
248 with capture_output(display=False) as io:
250 ip.magic('autopx')
249 ip.magic('autopx')
251 ip.run_cell('\n'.join(('a=5','b=12345','c=0')))
250 ip.run_cell('\n'.join(('a=5','b=12345','c=0')))
252 ip.run_cell('b*=2')
251 ip.run_cell('b*=2')
@@ -304,12 +303,9 b' class TestParallelMagics(ClusterTestCase, ParametricTestCase):'
304
303
305 for name in ('a', 'b'):
304 for name in ('a', 'b'):
306 ip.magic('px ' + name)
305 ip.magic('px ' + name)
307 with capture_output() as io:
306 with capture_output(display=False) as io:
308 ip.magic('pxresult')
307 ip.magic('pxresult')
309 output = io.stdout
308 self.assertIn(str(data[name]), io.stdout)
310 msg = "expected %s output to include %s, but got: %s" % \
311 ('%pxresult', str(data[name]), output)
312 self.assertTrue(str(data[name]) in output, msg)
313
309
314 @dec.skipif_not_matplotlib
310 @dec.skipif_not_matplotlib
315 def test_px_pylab(self):
311 def test_px_pylab(self):
@@ -322,13 +318,12 b' class TestParallelMagics(ClusterTestCase, ParametricTestCase):'
322 with capture_output() as io:
318 with capture_output() as io:
323 ip.magic("px %pylab inline")
319 ip.magic("px %pylab inline")
324
320
325 self.assertTrue("Populating the interactive namespace from numpy and matplotlib" in io.stdout, io.stdout)
321 self.assertIn("Populating the interactive namespace from numpy and matplotlib", io.stdout)
326
322
327 with capture_output() as io:
323 with capture_output(display=False) as io:
328 ip.magic("px plot(rand(100))")
324 ip.magic("px plot(rand(100))")
329
325 self.assertIn('Out[', io.stdout)
330 self.assertTrue('Out[' in io.stdout, io.stdout)
326 self.assertIn('matplotlib.lines', io.stdout)
331 self.assertTrue('matplotlib.lines' in io.stdout, io.stdout)
332
327
333 def test_pxconfig(self):
328 def test_pxconfig(self):
334 ip = get_ipython()
329 ip = get_ipython()
@@ -356,12 +351,12 b' class TestParallelMagics(ClusterTestCase, ParametricTestCase):'
356 self.assertEqual(view.targets, rc.ids)
351 self.assertEqual(view.targets, rc.ids)
357 ip.magic('pxconfig --verbose')
352 ip.magic('pxconfig --verbose')
358 for cell in ("pass", "1/0"):
353 for cell in ("pass", "1/0"):
359 with capture_output() as io:
354 with capture_output(display=False) as io:
360 try:
355 try:
361 ip.run_cell_magic("px", "--targets all", cell)
356 ip.run_cell_magic("px", "--targets all", cell)
362 except pmod.RemoteError:
357 except pmod.RemoteError:
363 pass
358 pass
364 self.assertTrue('engine(s): all' in io.stdout)
359 self.assertIn('engine(s): all', io.stdout)
365 self.assertEqual(view.targets, rc.ids)
360 self.assertEqual(view.targets, rc.ids)
366
361
367
362
@@ -374,12 +369,12 b' class TestParallelMagics(ClusterTestCase, ParametricTestCase):'
374 self.assertEqual(view.targets, rc.ids)
369 self.assertEqual(view.targets, rc.ids)
375 ip.magic('pxconfig --verbose')
370 ip.magic('pxconfig --verbose')
376 for cell in ("pass", "1/0"):
371 for cell in ("pass", "1/0"):
377 with capture_output() as io:
372 with capture_output(display=False) as io:
378 try:
373 try:
379 ip.run_cell_magic("px", "--block", cell)
374 ip.run_cell_magic("px", "--block", cell)
380 except pmod.RemoteError:
375 except pmod.RemoteError:
381 pass
376 pass
382 self.assertFalse('Async' in io.stdout)
377 self.assertNotIn('Async', io.stdout)
383 self.assertFalse(view.block)
378 self.assertEqual(view.block, False)
384
379
385
380
General Comments 0
You need to be logged in to leave comments. Login now