--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/RegressionTests__CharacterEncoderTests.st Wed Feb 11 13:09:55 2004 +0100
@@ -0,0 +1,123 @@
+"{ Package: 'exept:regression' }"
+
+TestCase subclass:#CharacterEncoderTests
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'Collections-Text-Encodings'
+!
+
+!CharacterEncoderTests class methodsFor:'documentation'!
+
+documentation
+"
+ documentation to be added.
+
+ [author:]
+ Claus Gittinger (cg@alan)
+
+ [instance variables:]
+
+ [class variables:]
+
+ [see also:]
+
+"
+!
+
+history
+ "Created: / 11.2.2004 / 12:25:54 / cg"
+! !
+
+!CharacterEncoderTests methodsFor:'helpers'!
+
+xTestReversability:encoderClass
+ self xTestReversability:encoderClass skip:#()
+
+ "
+ self new xTestReversability: (CharacterEncoder::ISO8859_1)
+ "
+!
+
+xTestReversability:encoderClass skip:skippedCodes
+ |encoder|
+
+ encoder := encoderClass new.
+ 0 to:255 do:[:code |
+ |unicode code2|
+
+ (skippedCodes includes:code) ifTrue:[
+ self should:[ encoder decode:code ] raise:CharacterEncoderError.
+ ] ifFalse:[
+ unicode := encoder decode:code.
+ code2 := encoder encode:unicode.
+ self assert:(code == code2).
+ ]
+ ].
+
+ "
+ self new xTestReversability: (CharacterEncoder::ISO8859_1)
+ "
+! !
+
+!CharacterEncoderTests methodsFor:'initialize / release'!
+
+setUp
+ "common setup - invoked before testing."
+
+ super setUp
+!
+
+tearDown
+ "common cleanup - invoked after testing."
+
+ super tearDown
+! !
+
+!CharacterEncoderTests methodsFor:'tests'!
+
+test1
+ self xTestReversability: (CharacterEncoder::ISO8859_1).
+ self xTestReversability: (CharacterEncoder::ISO8859_2).
+ self xTestReversability: (CharacterEncoder::ISO8859_3) skip:#( 16rA5 16rAE 16rBE 16rC3 16rD0 16rE3 16rF0 ).
+ self xTestReversability: (CharacterEncoder::ISO8859_4).
+ self xTestReversability: (CharacterEncoder::ISO8859_5).
+ self xTestReversability: (CharacterEncoder::ISO8859_6) skip:#( 16rA1 16rA2 16rA3 16rA5 16rA6 16rA7
+ 16rA8 16rA9 16rAA 16rAB 16rAE 16rAF
+ 16rB0 16rB1 16rB2 16rB3 16rB4 16rB5 16rB6 16rB7
+ 16rB8 16rB9 16rBA 16rBC 16rBD 16rBE
+ 16rC0
+ 16rDB 16rDC 16rDD 16rDE 16rDF
+ 16rF3 16rF4 16rF5 16rF6 16rF7
+ 16rF8 16rF9 16rFA 16rFB 16rFC 16rFD 16rFE 16rFF
+ ).
+ self xTestReversability: (CharacterEncoder::ISO8859_7) skip:#( 16rAE 16rD2 16rFF ).
+ self xTestReversability: (CharacterEncoder::ISO8859_8) skip:#( 16rA1 16rBF
+ 16rC0 16rC1 16rC2 16rC3 16rC4 16rC5 16rC6 16rC7
+ 16rC8 16rC9 16rCA 16rCB 16rCC 16rCD 16rCE 16rCF
+ 16rD0 16rD1 16rD2 16rD3 16rD4 16rD5 16rD6 16rD7
+ 16rD8 16rD9 16rDA 16rDB 16rDC 16rDD 16rDE
+ 16rFB 16rFC 16rFF
+ ).
+ self xTestReversability: (CharacterEncoder::ISO8859_9).
+ self xTestReversability: (CharacterEncoder::ISO8859_10).
+ self xTestReversability: (CharacterEncoder::ISO8859_11) skip:#( 16rDB 16rDC 16rDD 16rDE 16rFC 16rFD 16rFE 16rFF ).
+ self xTestReversability: (CharacterEncoder::ISO8859_13).
+ self xTestReversability: (CharacterEncoder::ISO8859_14).
+ self xTestReversability: (CharacterEncoder::ISO8859_15).
+ self xTestReversability: (CharacterEncoder::ISO8859_16).
+ self xTestReversability: (CharacterEncoder::KOI8_U).
+ self xTestReversability: (CharacterEncoder::KOI8_R).
+
+ self xTestReversability: (CharacterEncoder::GSM0338) skip:( 16r80 to: 16rFF).
+
+ "
+ self new test1
+ "
+! !
+
+!CharacterEncoderTests class methodsFor:'documentation'!
+
+version
+ ^ '$Header$'
+! !