# HG changeset patch # User Claus Gittinger # Date 1076520722 -3600 # Node ID c793396436243424b07a0d74eeaf2c4e4bf5ae73 # Parent 4cfe3e0aa4157c124c8cd101a3d8a4c744ce71cb *** empty log message *** diff -r 4cfe3e0aa415 -r c79339643624 RegressionTests__CharacterEncoderTests.st --- a/RegressionTests__CharacterEncoderTests.st Wed Feb 11 17:32:45 2004 +0100 +++ b/RegressionTests__CharacterEncoderTests.st Wed Feb 11 18:32:02 2004 +0100 @@ -39,24 +39,87 @@ " ! -xTestReversability:encoderClass skip:skippedCodes +xTestReversability:encoderClass ignoreInvalid:ignoreInvalid + self xTestReversability:encoderClass skip:#() ignoreInvalid:ignoreInvalid + + " + self new xTestReversability: (CharacterEncoder::ISO8859_1) + " +! + +xTestReversability:encoderClass range:range skip:skippedCodes + self + xTestReversability:encoderClass + range:range + skip:skippedCodes + ignoreInvalid:false + + " + self new xTestReversability: (CharacterEncoder::ISO8859_1) + " +! + +xTestReversability:encoderClass range:range skip:skippedCodes ignoreInvalid:ignoreInvalid |encoder| encoder := encoderClass new. - encoderClass minCode to:encoderClass maxCode do:[:code | - |unicode code2| + range do:[:code | + |unicode code2 invalid| (skippedCodes includes:code) ifTrue:[ self should:[ encoder decode:code ] raise:CharacterEncoderError. ] ifFalse:[ - unicode := encoder decode:code. - code2 := encoder encode:unicode. - self assert:(code == code2). + ignoreInvalid ifTrue:[ + invalid := false. + CharacterEncoderError handle:[:ex | + invalid := true. + ] do:[ + unicode := encoder decode:code. + ]. + invalid ifFalse:[ + code2 := encoder encode:unicode. + self assert:(code == code2). + ]. + ] ifFalse:[ + unicode := encoder decode:code. + code2 := encoder encode:unicode. + self assert:(code == code2). + ] ] ]. " self new xTestReversability: (CharacterEncoder::ISO8859_1) + + self new + xTestReversability:(CharacterEncoder::JIS0208) + range:(16r8140 to:16rEAA4) + skip:#() + ignoreInvalid:true + " +! + +xTestReversability:encoderClass skip:skippedCodes + self + xTestReversability:encoderClass + range:(encoderClass minCode to:encoderClass maxCode) + skip:skippedCodes + + " + self new xTestReversability: (CharacterEncoder::ISO8859_1) + self new xTestReversability: (CharacterEncoder::JIS0208) + " +! + +xTestReversability:encoderClass skip:skippedCodes ignoreInvalid:ignoreInvalid + self + xTestReversability:encoderClass + range:(encoderClass minCode to:encoderClass maxCode) + skip:skippedCodes + ignoreInvalid:ignoreInvalid + + " + self new xTestReversability: (CharacterEncoder::ISO8859_1) self new xTestReversability: (CharacterEncoder::JIS0208) " ! ! @@ -112,6 +175,8 @@ self xTestReversability: (CharacterEncoder::GSM0338) skip:( 16r80 to: 16rFF). + self xTestReversability: (CharacterEncoder::JIS0208) ignoreInvalid:true. + " self new test1 "