[squeak-dev] The Trunk: MultilingualTests-ul.15.mcz
commits at source.squeak.org
commits at source.squeak.org
Tue May 17 15:14:12 UTC 2011
Levente Uzonyi uploaded a new version of MultilingualTests to project The Trunk:
http://source.squeak.org/trunk/MultilingualTests-ul.15.mcz
==================== Summary ====================
Name: MultilingualTests-ul.15
Author: ul
Time: 17 May 2011, 5:13:59.587 pm
UUID: 1d0bc7c1-c0c2-5348-b023-7658526d160f
Ancestors: MultilingualTests-ul.14
A few tests for http://bugs.squeak.org/view.php?id=7602 .
=============== Diff against MultilingualTests-ul.14 ===============
Item was changed:
+ ----- Method: MultiByteFileStreamTest>>tearDown (in category 'running') -----
- ----- Method: MultiByteFileStreamTest>>tearDown (in category 'as yet unclassified') -----
tearDown
fileName ifNotNil: [
FileDirectory default deleteFileNamed: fileName ]!
Item was added:
+ ----- Method: MultiByteFileStreamTest>>testLineEndConvention:withConverter:ifFail: (in category 'helpers') -----
+ testLineEndConvention: lineEndConvention withConverter: textConverterClass ifFail: failBlock
+
+ | expectedResult result |
+ [
+ MultiByteFileStream forceNewFileNamed: fileName do: [ :file |
+ file
+ converter: textConverterClass new;
+ lineEndConvention: lineEndConvention;
+ cr;
+ nextPut: Character cr;
+ nextPutAll: String cr;
+ nextPutAll: String cr asWideString ].
+ result := StandardFileStream oldFileNamed: fileName do: [ :file |
+ file contents ].
+ expectedResult := String streamContents: [ :stream |
+ 4 timesRepeat: [ stream perform: lineEndConvention ] ].
+ result = expectedResult ifFalse: [
+ failBlock value: expectedResult asByteArray value: result asByteArray ] ]
+ on: Error
+ do: [ :err | failBlock value: err messageText value: err messageText ]!
Item was added:
+ ----- Method: MultiByteFileStreamTest>>testLineEndConversion (in category 'testing') -----
+ testLineEndConversion
+
+ | failures |
+ fileName := 'foolinendconversion.txt'.
+ failures := OrderedCollection new.
+ TextConverter allSubclassesDo: [ :textConverterClass |
+ textConverterClass encodingNames ifNotEmpty: [
+ #(cr lf crlf) do: [ :lineEndConvention |
+ self
+ testLineEndConvention: lineEndConvention
+ withConverter: textConverterClass
+ ifFail: [ :expectedResult :result |
+ failures add: {
+ textConverterClass.
+ lineEndConvention.
+ expectedResult.
+ result } ] ] ] ].
+ self assert: failures isEmpty!
Item was added:
+ ----- Method: MultiByteFileStreamTest>>testLineEndingWithWideStrings (in category 'testing') -----
+ testLineEndingWithWideStrings
+
+ | cr lf crlf |
+ fileName := 'foolinend.txt'.
+ cr := String cr asWideString.
+ lf := String lf asWideString.
+ crlf := String crlf asWideString.
+ MultiByteFileStream forceNewFileNamed: fileName do: [ :file |
+ file
+ wantsLineEndConversion: false;
+ nextPutAll: 'line 1'; nextPutAll: cr;
+ nextPutAll: 'line 2'; nextPutAll: crlf;
+ nextPutAll: 'line 3'; nextPutAll: lf;
+ nextPutAll: 'line 4' ].
+ {
+ {#cr. 'line 1' , String cr , 'line 2' , String cr , 'line 3' , String cr , 'line 4'}.
+ {#lf. 'line 1' , String cr , 'line 2' , String cr , 'line 3' , String cr , 'line 4'}.
+ {#crlf. 'line 1' , String cr , 'line 2' , String cr , 'line 3' , String cr , 'line 4'}.
+ {nil. 'line 1' , String cr , 'line 2' , String crlf , 'line 3' , String lf , 'line 4'}
+ } do: [ :lineEndingResult |
+ MultiByteFileStream oldFileNamed: fileName do: [ :file |
+ file lineEndConvention: lineEndingResult first.
+ self assert: file upToEnd = lineEndingResult last ] ]!
Item was changed:
----- Method: MultiByteFileStreamTest>>testNextLine (in category 'testing') -----
testNextLine
+ fileName := 'foonextline.txt'.
- fileName := 'foobackchunk.txt'.
MultiByteFileStream forceNewFileNamed: fileName do: [ :file |
file
wantsLineEndConversion: false;
nextPutAll: 'line 1'; cr;
nextPutAll: 'line 2'; crlf;
nextPutAll: 'line 3'; lf;
nextPutAll: 'line 4' ].
#(cr lf crlf nil) do: [:lineEnding |
MultiByteFileStream oldFileNamed: fileName do: [ :file |
file lineEndConvention: lineEnding.
self
assert: file nextLine = 'line 1';
assert: file nextLine = 'line 2';
assert: file nextLine = 'line 3';
assert: file nextLine = 'line 4';
assert: file nextLine = nil ] ]!
More information about the Squeak-dev
mailing list
|