Of course this is not next but int16 :)
I will look further into testInt16Aliases | input writer | writer := [ :block | ByteArray streamContents: [ :out | ZnBufferedWriteStream on: out do: block ] ]. input := ByteArray readHexFrom: '04D2'. self assert: (ZnBufferedReadStream on: input readStream) int16 equals: 1234. self assert: (ZnBufferedReadStream on: input readStream) uint16 equals: 1234. self assert: (ZnBufferedReadStream on: input readStream) nextWord equals: 1234. self assert: ((ZnBufferedReadStream on: input readStream) nextNumber: 2) equals: 1234. self assert: ((ZnBufferedReadStream on: input reversed readStream) nextLittleEndianNumber: 2) equals: 1234. self assert: (writer value: [ :out | out int16: 1234 ]) equals: input. self assert: (writer value: [ :out | out uint16: 1234 ]) equals: input. self assert: (writer value: [ :out | out nextWordPut: 1234 ]) equals: input. self assert: (writer value: [ :out | out nextNumber: 2 put: 1234 ]) equals: input. self assert: (writer value: [ :out | out nextLittleEndianNumber: 2 put: 1234 ]) equals: input reversed. input := ByteArray readHexFrom: 'FB2E'. self assert: (ZnBufferedReadStream on: input readStream) int16 equals: -1234. self assert: (writer value: [ :out | out int16: -1234 ]) equals: input On Fri, Dec 21, 2018 at 10:40 PM Stephane Ducasse <[email protected]> wrote: > > Hi > > I'm fighting with super badly written code and my first reaction is a > to be able to write tests and parametrize the code. > > I have some byteArray (contents of a CDB database) that I would like > to manipulate using stream API. > I'm looking for something like this > > ZnBinaryStream on: aByteArray; > next; next; skip: 10; ... > > Stef
