Exemplo n.º 1
0
 def test_getch_disabled(self):
     t = TerminalHandler(stdin=FakeInput('a\nb\ncd\ne\n'), keep_input_clean=False, getch_enabled=False)
     self.assertEqual(t.getch(), 'a')
     self.assertEqual(t.getch(), 'b')
     self.assertEqual(t.getch(), 'c')
     self.assertEqual(t.getch(), 'e')
     self.assertRaises(EOFError, t.getch)
Exemplo n.º 2
0
 def test_getch_not_keep_input_clean(self):
     fin = FakeBytesInput(b'abcde')
     t1 = TerminalHandler(stdin=fin, keep_input_clean=False)
     self.assertEqual(t1.getch(), 'a')
     self.assertEqual(t1.getch(), 'b')
     self.assertEqual(t1.getch(), 'c')
     self.assertEqual(t1.getch(), 'd')
     self.assertEqual(t1.getch(), 'e')
     self.assertEqual(t1.getch(), '')
Exemplo n.º 3
0
    def test_getch_key_repeat_disabled(self):
        fin = FakeBytesInput(b'abcde')

        def append_char(ch):
            fin.write(ch)
            fin.seek(-len(ch), 1)

        t1 = TerminalHandler(stdin=fin, getch_repeat_threshold=0)
        self.assertEqual(t1.getch(), 'a')
        append_char(b'x')
        self.assertEqual(t1.getch(), 'x')
        append_char(b'x')
        self.assertEqual(t1.getch(), 'x')
        append_char(b'x')
        self.assertEqual(t1.getch(), 'x')
        append_char(b'y')
        self.assertEqual(t1.getch(), 'y')
        append_char(b'y')
        self.assertEqual(t1.getch(), 'y')

        time.sleep(1)
        append_char(b'y')
        self.assertEqual(t1.getch(), 'y')
Exemplo n.º 4
0
 def test_getch_from_file(self):
     with open(os.path.join('tests', 'resources', 'test_terminal_input.txt')) as f:
         t = TerminalHandler(stdin=f)
         self.assertEqual(t.getch(), 'a')
         self.assertRaises(EOFError, t.getch)