def test_io(self): rm = RealMemory() def stdin(): return '01234567' * 15 out = [] def stdout(block): out.append(block) pager = Pager( rm, C=1, D=1, stdin_handler=stdin, stdout_handler=stdout) assert pager.file_read(0) == '01234567' * 15 + ' ' * 8 try: pager.file_write(0, 'Sveikas pasauli!') except WritingReadOnlyFileError, e: assert unicode(e) == \ u'Bandoma rašyti į failą atidarytą skaitymui.'
out.append(block) pager = Pager( rm, C=1, D=1, stdin_handler=stdin, stdout_handler=stdout) assert pager.file_read(0) == '01234567' * 15 + ' ' * 8 try: pager.file_write(0, 'Sveikas pasauli!') except WritingReadOnlyFileError, e: assert unicode(e) == \ u'Bandoma rašyti į failą atidarytą skaitymui.' else: self.fail(u'Turėjo būti išmesta išimtis.'.encode('utf-8')) assert len(out) == 0 pager.file_write(1, 'Sveikas pasauli!') assert len(out) == 1 assert out[0] == 'Sveikas ' + 'pasauli!' + ' ' * 8 * 14 try: pager.file_read(1) except ReadingWriteOnlyFileError, e: assert unicode(e) == \ u'Bandoma skaityti iš failo atidaryto rašymui.' else: self.fail(u'Turėjo būti išmesta išimtis.'.encode('utf-8')) assert rm.get_data((0, 0), 8 + 36) == ( "01011011" "i00000000" "o00000000" "000000000"