~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_script.py

Rework test_script a little bit.


Don't allow someone to request a stdin request to echo.
Echo never reads from stdin, it just echos its arguments.
You use 'cat' if you want to read from stdin.

A few other fixes because the tests were using filenames
that are actually illegal on Windows, rather than just
nonexistant.


Change the exception handling for commands so that
unknown errors don't get silently squashed and then
turn into hard-to-debug errors later.

test_script now passes on Windows.

Show diffs side-by-side

added added

removed removed

Lines of Context:
262
262
2>: No such file or directory
263
263
""")
264
264
 
265
 
    def test_echo_bogus_input_file(self):
266
 
        # We need a backing file sysytem for that test so it can't be in
267
 
        # TestEcho
268
 
        self.run_script("""
269
 
$ echo <file
270
 
2>file: No such file or directory
271
 
""")
272
 
 
273
265
    def test_echo_bogus_output_file(self):
274
266
        # We need a backing file sysytem for that test so it can't be in
275
267
        # TestEcho
338
330
"""
339
331
        self.assertRaises(SyntaxError, self.run_script, story)
340
332
 
 
333
    def test_echo_input(self):
 
334
        self.assertRaises(SyntaxError, self.run_script, """
 
335
            $ echo <foo
 
336
            """)
 
337
 
341
338
    def test_echo_to_output(self):
342
339
        retcode, out, err = self.run_command(['echo'], None, '\n', None)
343
340
        self.assertEquals('\n', out)