def test_close(self): shell = MockShell() f = PseudoOutputFile(shell, 'stdout', 'utf-8') self.assertFalse(f.closed) f.write('test') f.close() self.assertTrue(f.closed) self.assertRaises(ValueError, f.write, 'x') self.assertEqual(shell.written, [('test', 'stdout')]) f.close() self.assertRaises(TypeError, f.close, 1)
def test_write(self): shell = MockShell() f = PseudoOutputFile(shell, 'stdout', 'utf-8') f.write('test') self.assertEqual(shell.written, [('test', 'stdout')]) shell.reset() f.write('t\xe8st') self.assertEqual(shell.written, [('t\xe8st', 'stdout')]) shell.reset() f.write(S('t\xe8st')) self.assertEqual(shell.written, [('t\xe8st', 'stdout')]) self.assertEqual(type(shell.written[0][0]), str) shell.reset() self.assertRaises(TypeError, f.write) self.assertEqual(shell.written, []) self.assertRaises(TypeError, f.write, b'test') self.assertRaises(TypeError, f.write, 123) self.assertEqual(shell.written, []) self.assertRaises(TypeError, f.write, 'test', 'spam') self.assertEqual(shell.written, [])