Lichen

tests/contexts.py

343:e0879c83a439
2016-12-07 Paul Boddie Added support for reading to the end of a stream's input, fixing EOFError raising in fread by returning shorter amounts of data when EOF occurs, only raising an exception if no data was read before EOF occurred. Made the test input longer to exercise tests of reading remaining data.
     1 class C:     2     l = [2, 4, 6, 8, 10]     3     s = "test"     4     def __init__(self, x):     5         self.x = x     6         self.y = 3     7         self.z = "zebra libre"     8      9 c = C([1])    10 x = c.x    11 f = c.x.__len__    12 print c             # <__main__.C instance>    13 print x             # [1]    14 print f             # __builtins__.list.list.__len__    15 print f()           # 1    16     17 y = c.l    18 g = c.l.__len__    19 print y             # [2, 4, 6, 8, 10]    20 print g             # __builtins__.list.list.__len__    21 print g()           # 5    22     23 yy = C.l    24 gg = C.l.__len__    25 print yy            # [2, 4, 6, 8, 10]    26 print gg            # __builtins__.list.list.__len__    27 print gg()          # 5    28     29 z = c.s    30 h = c.s.__len__    31 print z             # test    32 print h             # __builtins__.str.basestring.__len__    33 print h()           # 4    34     35 zz = C.s    36 hh = C.s.__len__    37 print zz            # test    38 print hh            # __builtins__.str.basestring.__len__    39 print hh()          # 4    40     41 a = c.y    42 b = c.z    43 i = c.z.__len__    44 print a             # 3    45 print b             # zebra libre    46 print i             # __builtins__.str.basestring.__len__    47 print i()           # 11