A new version of MultilingualTests was added to project The Inbox:
http://source.squeak.org/inbox/MultilingualTests-tonyg.28.mcz==================== Summary ====================
Name: MultilingualTests-tonyg.28
Author: tonyg
Time: 22 January 2018, 11:12:45.060447 am
UUID: 99c7ed46-dc44-4c3f-96fe-840fae383b75
Ancestors: MultilingualTests-pre.27
New test cases for MultiByteFileStream upToAll: and upToPosition:, exposing a bug in the latter.
=============== Diff against MultilingualTests-pre.27 ===============
Item was added:
+ ----- Method: MultiByteFileStreamTest>>testUpToAllNonZeroLength (in category 'testing') -----
+ testUpToAllNonZeroLength
+ "Ensures that upToAll: correctly skips over the nonzero-length separator."
+ | in out fn |
+ fn :='testUpToAll.in'.
+ out := FileDirectory default forceNewFileNamed: fn.
+ out nextPutAll: 231 asCharacter asString, 'a<b<<c'.
+ out close.
+
+ in := FileDirectory default readOnlyFileNamed: fn.
+ self assert: in next = 231 asCharacter.
+ self assert: (in upToAll: '<<') = 'a<b'.
+ self assert: in next = $c.!
Item was added:
+ ----- Method: MultiByteFileStreamTest>>testUpToAllZeroLength (in category 'testing') -----
+ testUpToAllZeroLength
+ "Ensures that upToAll: behaves correctly with a zero-length separator."
+ | in out fn |
+ fn :='testUpToAll.in'.
+ out := FileDirectory default forceNewFileNamed: fn.
+ out nextPutAll: 231 asCharacter asString, 'a<b<<c'.
+ out close.
+
+ in := FileDirectory default readOnlyFileNamed: fn.
+ self assert: in next = 231 asCharacter.
+ self assert: (in upToAll: '') = ''.
+ self assert: in next = $a.!
Item was added:
+ ----- Method: MultiByteFileStreamTest>>testUpToPositionNonZero (in category 'testing') -----
+ testUpToPositionNonZero
+ "Ensures that upToPosition: behaves correctly with a non-zero-length read."
+ | in out fn |
+ fn :='testUpToPosition.in'.
+ out := FileDirectory default forceNewFileNamed: fn.
+ out nextPutAll: 231 asCharacter asString, 'a<b'.
+ out close.
+
+ in := FileDirectory default readOnlyFileNamed: fn.
+ self assert: in next = 231 asCharacter.
+ self assert: (in upToPosition: in position + 2) = 'a<'.
+ self assert: in next = $b.!
Item was added:
+ ----- Method: MultiByteFileStreamTest>>testUpToPositionZero (in category 'testing') -----
+ testUpToPositionZero
+ "Ensures that upToPosition: behaves correctly with a zero-length read."
+ | in out fn |
+ fn :='testUpToPosition.in'.
+ out := FileDirectory default forceNewFileNamed: fn.
+ out nextPutAll: 231 asCharacter asString, 'a<b'.
+ out close.
+
+ in := FileDirectory default readOnlyFileNamed: fn.
+ self assert: in next = 231 asCharacter.
+ self assert: (in upToPosition: in position) = ''.
+ self assert: in next = $a.!