(none)
authormkobetic
Mon, 30 Jan 2012 22:23:15 +0000
changeset 69 d789d222be67
parent 68 81c27d13124a
child 70 fc6a1f7e4315
(none)
core/tests/Make.proto
core/tests/Make.spec
core/tests/Xtreams__BufferTest.st
core/tests/Xtreams__ElasticBufferTest.st
core/tests/Xtreams__FiniteReadingWritingTests.st
core/tests/Xtreams__InfiniteReadingWritingTests.st
core/tests/Xtreams__PositionReadStreamTest.st
core/tests/Xtreams__PositionWriteStreamTest.st
core/tests/Xtreams__ReadingWritingTest.st
core/tests/Xtreams__RingBufferTest.st
core/tests/abbrev.stc
core/tests/bc.mak
core/tests/bmake.bat
core/tests/extensions.st
core/tests/stx_goodies_xtreams_core_tests.st
core/tests/tests.rc
core/tests/vcmake.bat
--- a/core/tests/Make.proto	Mon Jan 30 22:21:28 2012 +0000
+++ b/core/tests/Make.proto	Mon Jan 30 22:23:15 2012 +0000
@@ -1,7 +1,7 @@
 # $Header$
 #
 # DO NOT EDIT
-# automagically generated from the projectDefinition: stx_goodies_xtreams_core_tests.
+# automagically generated from the projectDefinition: stx_goodies_xtreams_core_tests at 2012-01-30 17:23:17.690.
 #
 # Warning: once you modify this file, do not rerun
 # stmkmp or projectDefinition-build again - otherwise, your changes are lost.
@@ -44,7 +44,7 @@
 LOCALDEFINES=
 
 LIBNAME=libstx_goodies_xtreams_core_tests
-STCLOCALOPT='-package=$(PACKAGE)' -I. $(LOCALINCLUDES) $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES) -H.  -varPrefix=$(LIBNAME)
+STCLOCALOPT='-package=$(PACKAGE)' -I. $(LOCALINCLUDES) $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES) -headerDir=.  -varPrefix=$(LIBNAME)
 
 
 # ********** OPTIONAL: MODIFY the next line ***
@@ -68,14 +68,20 @@
 
 
 update-svn-revision:
-	if [ ! -r .svnversion -o "$(shell svnversion -n)" != "$(shell cat .svnversion)" ]; then \
-		svnversion -n > .svnversion; \
-		sed -i -e "s/\"\$$SVN\-Revision:\".*\"\$$\"/\"\$$SVN-Revision:\"'$(shell svnversion -n)'\"\$$\"/g" \
-			stx_goodies_xtreams_core_tests.st; \
+	if [ -d .svn ]; then \
+		rev=$(shell svnversion -n); \
+		if [ ! -r .svnversion -o "$$rev" != "$$(cat .svnversion)" ]; then \
+			echo -n $$rev > .svnversion; \
+			rev2=$$(printf "%15s" \'$$rev\'); \
+			sed -i -e "s/\"\$$SVN\-Revision:\".*\"\$$\"/\"\$$SVN-Revision:\"$$rev2\"\$$\"/g" \
+				stx_goodies_xtreams_core_tests.st; \
+		fi \
 	fi
 .PHONY: update-svn-revision
 
 
+
+
 # add more install actions here
 install::
 
@@ -90,28 +96,18 @@
 
 prereq: $(REQUIRED_SUPPORT_DIRS)
 	cd ../../../../libbasic && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
-	cd ../../../refactoryBrowser/parser && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
-	cd ../../terminals && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../../../../libbasic2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
-	cd ../../../../libcomp && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../ && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../../../../libview && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
-	cd ../../../../libbasic3 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+	cd ../../substreams && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../../../../libview2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
-	cd ../../../../libboss && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../../../sunit && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
-	cd ../../../../libui && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
-	cd ../../../../libwidg && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
-	cd ../../../../libwidg2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
-	cd ../../../../libwidg3 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
-	cd ../../../../libtool && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
-	cd ../../../../libcompat && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
-	cd ../../substreams && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 	cd ../../../../librun && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
 
 
 
 cleanjunk::
+	-rm -f *.s *.s2
 
 clean::
 	-rm -f *.o *.H
--- a/core/tests/Make.spec	Mon Jan 30 22:21:28 2012 +0000
+++ b/core/tests/Make.spec	Mon Jan 30 22:23:15 2012 +0000
@@ -1,7 +1,7 @@
 # $Header$
 #
 # DO NOT EDIT
-# automagically generated from the projectDefinition: stx_goodies_xtreams_core_tests.
+# automagically generated from the projectDefinition: stx_goodies_xtreams_core_tests at 2012-01-30 17:23:17.681.
 #
 # Warning: once you modify this file, do not rerun
 # stmkmp or projectDefinition-build again - otherwise, your changes are lost.
@@ -18,7 +18,7 @@
 
 
 # Argument(s) to the stc compiler (stc --usage).
-#  -H.         : create header files locally
+#  -headerDir=. : create header files locally
 #                (if removed, they will be created as common
 #  -Pxxx       : defines the package
 #  -Zxxx       : a prefix for variables within the classLib
--- a/core/tests/Xtreams__BufferTest.st	Mon Jan 30 22:21:28 2012 +0000
+++ b/core/tests/Xtreams__BufferTest.st	Mon Jan 30 22:23:15 2012 +0000
@@ -1,5 +1,3 @@
-'From Smalltalk/X, Version:6.2.1 on 16-01-2012 at 12:53:33 AM'                  !
-
 "{ Package: 'stx:goodies/xtreams/core/tests' }"
 
 "{ NameSpace: Xtreams }"
--- a/core/tests/Xtreams__ElasticBufferTest.st	Mon Jan 30 22:21:28 2012 +0000
+++ b/core/tests/Xtreams__ElasticBufferTest.st	Mon Jan 30 22:23:15 2012 +0000
@@ -1,5 +1,3 @@
-'From Smalltalk/X, Version:6.2.1 on 16-01-2012 at 12:53:33 AM'                  !
-
 "{ Package: 'stx:goodies/xtreams/core/tests' }"
 
 "{ NameSpace: Xtreams }"
--- a/core/tests/Xtreams__FiniteReadingWritingTests.st	Mon Jan 30 22:21:28 2012 +0000
+++ b/core/tests/Xtreams__FiniteReadingWritingTests.st	Mon Jan 30 22:23:15 2012 +0000
@@ -1,5 +1,3 @@
-'From Smalltalk/X, Version:6.2.1 on 16-01-2012 at 12:53:33 AM'                  !
-
 "{ Package: 'stx:goodies/xtreams/core/tests' }"
 
 "{ NameSpace: Xtreams }"
@@ -207,15 +205,6 @@
 	self assert: result = (data select: [ :e | e odd ]).
 ! !
 
-!FiniteReadingWritingTests methodsFor:'tests - interpreting'!
-
-testInterpretingDoubles
-        | doubles result |
-        doubles := (1 to: 10) reading collect: [ :i | i reciprocal asDouble ].
-        (self output interpreting: #double) write: doubles; close.
-        result := (self input interpreting: #double) rest.
-        self assert: result = doubles asArray
-! !
 
 !FiniteReadingWritingTests methodsFor:'tests - seeking'!
 
@@ -345,444 +334,8 @@
 	self assert: result = message
 ! !
 
-!FiniteReadingWritingTests methodsFor:'tests - substream slicing'!
-
-testReadClosing
-	| closing closed |
-	self output write: #[ 1 2 3 4 5 6 7 8 9 ]; close.
-	closed := 0.
-	closing := (self input closing: [ closed := closed + 1 ]) slicing.
-
-	self assert: (closing get read: 3) = #[ 1 2 3 ].
-	self assert: (closing get read: 4) = #[ 4 5 6 7 ].
-	self assert: closed = 1.
-	self assert: (closing get read: 2) = #[ 8 9 ].
-	self assert: closed = 2.
-	self should: [closing get get] raise: Incomplete.
-	self assert: closed = 3.
-	self should: [closing get] raise: Incomplete
-!
-
-testReadEndingBlock
-	| substream ender |
-	self output write: #[ 1 2 3 4 5 6 7 8 9 ]; close.
-	ender := (self input ending: [:e | e = 4]) slicing.
-	substream := ender get.
-	self assert: (substream read: 3) = #[ 1 2 3 ].
-	self should: [substream get] raise: Incomplete.
-	substream := ender get.
-	self assert: (substream read: 5) = #[ 5 6 7 8 9 ].
-	self should: [substream get] raise: Incomplete.
-	self should: [ender get] raise: Incomplete
-!
-
-testReadEndingBlockPositioning
-	| substream ender |
-	self output write: #[ 1 2 3 4 5 6 7 8 9 ]; close.
-	ender := (self input ending: [:e | e = 4]) slicing.
-	substream := ender get.
-	substream ++ 2.
-	self assert: substream get = 3.
-	self should: [substream ++ 3] raise: Incomplete.
-	self should: [substream -- 2] raise: Error. "not positionable"
-	substream := ender get.
-	self assert: substream get = 5.
-	substream -= 0.
-	self should: [substream get] raise: Incomplete.
-	self should: [ender get] raise: Incomplete
-!
-
-testReadEndingBlockTail
-	| substream ender |
-	self output write: #[ 1 2 3 4 5 6 7 8 9 ]; close.
-	ender := (self input ending: [:e | e = 4] inclusive: true) slicing.
-	substream := ender get.
-	self assert: (substream read: 4) = #[ 1 2 3 4 ].
-	self should: [substream get] raise: Incomplete.
-	self should: [substream get] raise: Incomplete.
-	substream := ender get.
-	self assert: (substream read: 5) = #[ 5 6 7 8 9 ].
-	self should: [substream get] raise: Incomplete.
-	self should: [ender get] raise: Incomplete
-!
-
-testReadEndingCollection
-	| substream ender |
-	self output write: #[ 0 1 1 2 1 2 3 4 5 6 ]; close.
-	ender := (self input ending: #[ 1 2 3 ]) slicing.
-	substream := ender get.
-	self assert: (substream read: 4) = #[ 0 1 1 2 ].
-	self should: [substream get] raise: Incomplete.
-	substream := ender get.
-	self assert: (substream read: 3) = #[ 4 5 6 ].
-	self should: [substream get] raise: Incomplete.
-	self should: [ender get] raise: Incomplete
-!
-
-testReadEndingCollectionPositioning
-	| substream ender |
-	self output write: #[ 0 1 1 2 1 2 3 4 5 6 ]; close.
-	ender := (self input ending: #[ 1 2 3 ]) slicing.
-	substream := ender get.
-	substream ++ 3.
-	self assert: substream get = 2.
-	self should: [substream ++ 3] raise: Incomplete.
-	self should: [substream -- 2] raise: Error. "not positionable"
-	substream := ender get.
-	self assert: substream get = 4.
-	substream -= 0.
-	self should: [substream get] raise: Incomplete.
-	self should: [ender get] raise: Incomplete
-!
-
-testReadEndingCollectionTail
-	| substream ender |
-	self output write: #[ 0 1 1 2 1 2 3 4 5 6 ]; close.
-	ender := (self input ending: #[ 1 2 3 ] inclusive: true) slicing.
-	substream := ender get.
-	self assert: (substream read: 7) = #[ 0 1 1 2 1 2 3 ].
-	self should: [substream get] raise: Incomplete.
-	substream := ender get.
-	self assert: (substream read: 3) = #[ 4 5 6 ].
-	self should: [substream get] raise: Incomplete.
-	self should: [ender get] raise: Incomplete
-!
-
-testReadEndingObject
-	| substream ender |
-	self output write: #[ 1 2 3 4 5 6 7 8 9 ]; close.
-	ender := (self input ending: 4) slicing.
-	substream := ender get.
-	self assert: (substream read: 3) = #[ 1 2 3 ].
-	self should: [substream get] raise: Incomplete.
-	substream := ender get.
-	self assert: (substream read: 5) = #[ 5 6 7 8 9 ].
-	self should: [substream get] raise: Incomplete.
-	self should: [ender get] raise: Incomplete
-!
-
-testReadEndingObjectPositioning
-	| substream ender |
-	self output write: #[ 1 2 3 4 5 6 7 8 9 ]; close.
-	ender := (self input ending: 4) slicing.
-	substream := ender get.
-	substream ++ 2.
-	self assert: substream get = 3.
-	self should: [substream ++ 3] raise: Incomplete.
-	self should: [substream -- 2] raise: Error. "not positionable"
-	substream := ender get.
-	self assert: substream get = 5.
-	substream -= 0.
-	self should: [substream get] raise: Incomplete.
-	self should: [ender get] raise: Incomplete
-!
-
-testReadEndingObjectTail
-	| substream ender |
-	self output write: #[ 1 2 3 4 5 6 7 8 9 ]; close.
-	ender := (self input ending: 4 inclusive: true) slicing.
-	substream := ender get.
-	self assert: (substream read: 4) = #[ 1 2 3 4 ].
-	self should: [substream get] raise: Incomplete.
-	self should: [substream get] raise: Incomplete.
-	substream := ender get.
-	self assert: (substream read: 5) = #[ 5 6 7 8 9 ].
-	self should: [substream get] raise: Incomplete.
-	self should: [ender get] raise: Incomplete
-!
-
-testReadLimiting
-	| subinput limiter |
-	self output write: #[ 1 1 1 2 2 2 ]; close.
-	limiter := (self input limiting: 3) slicing.
-
-	subinput := limiter get.
-	self assert: (subinput read: 3) = #[ 1 1 1 ].
-	self should: [subinput get] raise: Incomplete.
-
-	subinput := limiter get.
-	self assert: (subinput read: 3) = #[ 2 2 2 ].
-	self should: [subinput get] raise: Incomplete.
-
-	self should: [limiter get get] raise: Incomplete.
-	self should: [limiter get] raise: Incomplete
-!
-
-testReadLimitingPositioning
-	| subinput limiter |
-	self output write: #[ 1 1 1 2 2 2 ]; close.
-	limiter := (self input limiting: 3) slicing.
-
-	subinput := limiter get.
-	subinput ++ 2.
-	self assert: subinput rest = #[ 1 ].
-	subinput isPositionable
-		ifTrue: [ subinput -- 2.
-			self assert: subinput rest = #[ 1 1 ].
-			subinput += 1.
-			self assert: subinput rest = #[ 1 1 ].
-			subinput -= 2.
-			self assert: subinput rest = #[ 1 1 ] ]
-		ifFalse: [ self should: [ subinput -- 2 ] raise: Error ].
-	self should: [subinput get] raise: Incomplete.
-
-	subinput := limiter get.
-	self assert: (subinput read: 3) = #[ 2 2 2 ].
-	self should: [subinput get] raise: Incomplete.
-
-	self should: [limiter get get] raise: Incomplete.
-	self should: [limiter get] raise: Incomplete
-!
-
-testWriteClosing
-	| closing suboutput |
-	closing := (self output closing: [ :s | s put: 0 ]) slicing.
-
-	suboutput := closing get.
-	suboutput write: #[ 1 1 1 ]; close.
-
-	suboutput := closing get.
-	suboutput write: #[ 2 2 2 ]; close.
-	closing close.
-
-	self assert: (self input read: 8) = #[ 1 1 1 0 2 2 2 0 ]
-!
-
-testWriteClosingPositioning
-	| closing suboutput |
-
-	"If we're on a non-positionable stream, there's no point trying to test substream positioning"
-	self output isPositionable ifFalse: [^self].
-
-	closing := (self output closing: [ :s | s put: 0 ]) slicing.
-
-	suboutput := closing get.
-	suboutput write: #[ 1 3 3 ].
-	self assert: suboutput position = 3.
-	suboutput -- 2.
-	self assert: suboutput position = 1.
-	suboutput write: #[ 1 1 ]; close.
 
-	suboutput := closing get.
-	suboutput write: #[ 2 2 3 ].
-	suboutput += 1.
-	self assert: suboutput position = 1.
-	suboutput ++ 1.
-	suboutput put: 2; close.
 
-	closing close.
-
-	self assert: (self input read: 8) = #[ 1 1 1 0 2 2 2 0 ]
-!
-
-testWriteEndingBlock
-	| ender |
-	ender := (self output ending: [:e | e = 4]) slicing.
-	self should: [ ender get write: #[ 1 2 3 4 5 6 7 8 9 ] ] raise: Incomplete.
-	self shouldnt: [ ender get write: #[ 5 6 7 8 9 ] ] raise: Incomplete.
-	ender close.
-	self assert: (self input read: 8) = #[ 1 2 3 5 6 7 8 9 ].
-	self should: [self input get] raise: Incomplete
-!
-
-testWriteEndingBlockTail
-	| ender |
-	ender := (self output ending: [:e | e = 4] inclusive: true) slicing.
-	self should: [ ender get write: #[ 1 2 3 4 5 6 7 8 9 ] ] raise: Incomplete.
-	self shouldnt: [ ender get write: #[ 5 6 7 8 9 ] ] raise: Incomplete.
-	ender close.
-	self assert: (self input read: 9) = #[ 1 2 3 4 5 6 7 8 9 ].
-	self should: [self input get] raise: Incomplete
-!
-
-testWriteEndingCollection
-	| ender |
-	ender := (self output ending: #[ 1 2 3 ]) slicing.
-	self should: [ ender get write: #[ 0 1 1 2 1 2 3 4 5 6 ] ] raise: Incomplete.
-	self shouldnt: [ ender get write: #[ 4 5 6 ] ] raise: Incomplete.
-	ender close.
-	self assert: (self input read: 7) = #[ 0 1 1 2 4 5 6 ].
-	self should: [self input get] raise: Incomplete
-!
-
-testWriteEndingCollectionTail
-	| ender |
-	ender := (self output ending: #[ 1 2 3 ] inclusive: true) slicing.
-	self should: [ ender get write: #[ 0 1 1 2 1 2 3 4 5 6 ] ] raise: Incomplete.
-	self shouldnt: [ ender get write: #[ 4 5 6 ] ] raise: Incomplete.
-	ender close.
-	self assert: (self input read: 10) = #[ 0 1 1 2 1 2 3 4 5 6 ].
-	self should: [self input get] raise: Incomplete
-!
-
-testWriteEndingObject
-	| ender |
-	ender := (self output ending: 4) slicing.
-	self should: [ ender get write: #[ 1 2 3 4 5 6 7 8 9 ] ] raise: Incomplete.
-	self shouldnt: [ ender get write: #[ 5 6 7 8 9 ] ] raise: Incomplete.
-	ender close.
-	self assert: (self input read: 8) = #[ 1 2 3 5 6 7 8 9 ].
-	self should: [self input get] raise: Incomplete
-!
-
-testWriteEndingObjectTail
-	| ender |
-	ender := (self output ending: 4 inclusive: true) slicing.
-	self should: [ ender get write: #[ 1 2 3 4 5 6 7 8 9 ] ] raise: Incomplete.
-	self shouldnt: [ ender get write: #[ 5 6 7 8 9 ] ] raise: Incomplete.
-	ender close.
-	self assert: (self input read: 9) = #[ 1 2 3 4 5 6 7 8 9 ].
-	self should: [self input get] raise: Incomplete
-!
-
-testWriteLimiting
-	| limiting suboutput |
-	limiting := (self output limiting: 3) slicing.
-
-	suboutput := limiting get.
-	suboutput write: #[ 1 1 1 ].
-	self should: [suboutput put: 1] raise: Incomplete.
-
-	suboutput := limiting get.
-	suboutput write: #[ 2 2 2 ].
-	self should: [suboutput put: 2] raise: Incomplete.
-
-	suboutput := limiting get.
-	suboutput write: #[ 3 3 3 ].
-	self should: [suboutput put: 3] raise: Incomplete.
-
-	limiting close.
-	self assert: (self input read: 9) = #[ 1 1 1 2 2 2 3 3 3 ]
-!
-
-testWriteLimitingPositioning
-	| limiting suboutput |
-
-	"If we're not on a positioning stream, there's no point testing substream positioning"
-	self output isPositionable ifFalse: [^self].
-
-	limiting := (self output limiting: 3) slicing.
-
-	suboutput := limiting get.
-	suboutput write: #[ 1 4 4 ].
-	self assert: suboutput position = 3.
-	self assert: suboutput length = 3.
-	self assert: suboutput available = 0.
-	suboutput -- 2.
-	self assert: suboutput position = 1.
-	self assert: suboutput length = 3.
-	self assert: suboutput available = 2.
-	suboutput write: #[ 1 1 ].
-	self should: [suboutput put: 1] raise: Incomplete.
-
-	suboutput := limiting get.
-	suboutput write: #[ 2 2 3 ].
-	suboutput += 1.
-	self assert: suboutput position = 1.
-	self assert: suboutput length = 3.
-	self assert: suboutput available = 2.
-	suboutput ++ 1.
-	self assert: suboutput position = 2.
-	self assert: suboutput length = 3.
-	self assert: suboutput available = 1.
-	suboutput put: 2.
-	self should: [suboutput put: 2] raise: Incomplete.
-
-	limiting close.
-	self assert: (self input read: 6) = #[ 1 1 1 2 2 2 ]
-! !
-
-!FiniteReadingWritingTests methodsFor:'tests - substream stitching'!
-
-testReadStitchLimiting
-"Note that a plain [ self input limiting: 3 ] reading stitching stream would never end because it keeps generating empty limiting: streams at the end of the input.
-That's why additional measure is necessary to make sure the slice source eventually generates Incomplete.
-" 
-	| limiter wasEmpty |
-	self output write: #[ 1 1 1 2 2 2 ]; close.
-	wasEmpty := false.
-	limiter := [
-			wasEmpty ifTrue: [ Incomplete zero raise ]. wasEmpty := true.
-			(self input doing: [ :e | wasEmpty := false ]) limiting: 3
-		] reading stitching.
-
-	self assert: limiter rest = #[ 1 1 1 2 2 2].
-	self should: [limiter get] raise: Incomplete
-!
-
-testReadStitchingChunks
-"Chunks are prefixed with size in the first byte. Below we have 3 chunks of size 1, 3 and 7, and terminating 0 chunk."
-
-	| chunks contents stitched |
-	chunks := (ByteArray withAll: (1 to: 14)), #[0].
-	self output write: chunks; close.
-	stitched := [ self input limiting: self input get ] reading stitching.
-	contents := stitched rest.
-	self assert: contents = #[2 4 5 6 8 9 10 11 12 13 14]
-!
-
-testWriteStitchLimiting
-	| limiting |
-	limiting := [self output limiting: 3] reading stitching.
-
-	limiting write: #[ 1 1 1 2 2 2 3 3 3 ].
-	limiting close.
-
-	self assert: (self input read: 9) = #[ 1 1 1 2 2 2 3 3 3 ]
-!
-
-testWriteStitchingChunks
-"Chunks are prefixed with size in the first byte. Below we have 3 chunks of size 1, 3 and 7, and terminating 0 chunk."
-
-	| contents buffer |
-	buffer := RingBuffer on: (ByteArray new: 3).
-	[	(buffer writing limiting: buffer cacheSize)
-			closeBlock: [ self output put: buffer readSize; write: buffer ];
-			yourself
-	] reading stitching
-		write: (1 to: 7); flush;
-		write: (8 to: 15); close.
-	self output close.
-	contents := self input rest.
-	self assert: contents =
-		#[	3 1 2 3 "first chunk"
-			3 4 5 6 "second chunk"
-			1 7		"short chunk after flush"
-			3 8 9 10 "full chunk"
-			3 11 12 13 "full chunk"
-			2 14 15	"final short chunk" ]
-! !
-
-!FiniteReadingWritingTests methodsFor:'tests - transforming'!
-
-testWriteTransformingOverLimitingPastEnd
-
-	| limited transferred |
-	limited := (self output limiting: 10) transforming: [ :in :out | out put: in get ].
-	self assert: (
-		[	limited write: (ByteArray withAll: (1 to: 20)).
-			false
-		] on: Incomplete do: [ :ex | ex count = 11 ] ).
-	transferred := self input read: 10.
-	self assert: transferred = (ByteArray withAll: (1 to: 10))
-!
-
-testWriteTransformingPastEnd
-	| count transformed |
-	count := 1.
-	transformed := self output transforming: [:in :out |
-		count = 2 ifTrue: [Incomplete zero raise].
-		out put: in get.
-		count := count + 1].
-	self assert: (
-		[	transformed write: #[ 1 2 3 ].
-			false
-		] on: Incomplete do: [ :ex | ex count = 1 ]).
-	transformed close.
-	self assert: self input get = 1.
-	self should: [self input get] raise: Incomplete.
-	self should: [self input get] raise: Incomplete
-! !
 
 !FiniteReadingWritingTests class methodsFor:'documentation'!
 
--- a/core/tests/Xtreams__InfiniteReadingWritingTests.st	Mon Jan 30 22:21:28 2012 +0000
+++ b/core/tests/Xtreams__InfiniteReadingWritingTests.st	Mon Jan 30 22:23:15 2012 +0000
@@ -1,5 +1,3 @@
-'From Smalltalk/X, Version:6.2.1 on 16-01-2012 at 12:53:33 AM'                  !
-
 "{ Package: 'stx:goodies/xtreams/core/tests' }"
 
 "{ NameSpace: Xtreams }"
--- a/core/tests/Xtreams__PositionReadStreamTest.st	Mon Jan 30 22:21:28 2012 +0000
+++ b/core/tests/Xtreams__PositionReadStreamTest.st	Mon Jan 30 22:23:15 2012 +0000
@@ -1,5 +1,3 @@
-'From Smalltalk/X, Version:6.2.1 on 16-01-2012 at 12:53:33 AM'                  !
-
 "{ Package: 'stx:goodies/xtreams/core/tests' }"
 
 "{ NameSpace: Xtreams }"
--- a/core/tests/Xtreams__PositionWriteStreamTest.st	Mon Jan 30 22:21:28 2012 +0000
+++ b/core/tests/Xtreams__PositionWriteStreamTest.st	Mon Jan 30 22:23:15 2012 +0000
@@ -1,5 +1,3 @@
-'From Smalltalk/X, Version:6.2.1 on 16-01-2012 at 12:53:33 AM'                  !
-
 "{ Package: 'stx:goodies/xtreams/core/tests' }"
 
 "{ NameSpace: Xtreams }"
--- a/core/tests/Xtreams__ReadingWritingTest.st	Mon Jan 30 22:21:28 2012 +0000
+++ b/core/tests/Xtreams__ReadingWritingTest.st	Mon Jan 30 22:23:15 2012 +0000
@@ -1,5 +1,3 @@
-'From Smalltalk/X, Version:6.2.1 on 16-01-2012 at 12:53:33 AM'                  !
-
 "{ Package: 'stx:goodies/xtreams/core/tests' }"
 
 "{ NameSpace: Xtreams }"
@@ -155,136 +153,7 @@
 	self assert: (self input read: record size) = record
 ! !
 
-!ReadingWritingTest methodsFor:'tests - encoding'!
 
-testReadDecodingBase64
-	(self output encoding: #ascii)
-		write: 
-'TWFuIGlzIGRpc3Rpbmd1aXNoZWQsIG5vdCBvbmx5IGJ5IGhpcyByZWFzb24sIGJ1dCBieSB0aGlz
-IHNpbmd1bGFyIHBhc3Npb24gZnJvbSBvdGhlciBhbmltYWxzLCB3aGljaCBpcyBhIGx1c3Qgb2Yg
-dGhlIG1pbmQsIHRoYXQgYnkgYSBwZXJzZXZlcmFuY2Ugb2YgZGVsaWdodCBpbiB0aGUgY29udGlu
-dWVkIGFuZCBpbmRlZmF0aWdhYmxlIGdlbmVyYXRpb24gb2Yga25vd2xlZGdlLCBleGNlZWRzIHRo
-ZSBzaG9ydCB2ZWhlbWVuY2Ugb2YgYW55IGNhcm5hbCBwbGVhc3VyZS4=';
-		close.
-	self assert: (((self input encoding: #ascii) encodingBase64 encoding: #ascii) read: 269) = 'Man is distinguished, not only by his reason, but by this singular passion from other animals, which is a lust of the mind, that by a perseverance of delight in the continued and indefatigable generation of knowledge, exceeds the short vehemence of any carnal pleasure.'
-!
-
-testReadDecodingCRLF
-
-	| result |
-	self output write: #[104 101 108 108 111 13 10 119 111 114 108 100 10 13 13 10 10 ]; close.
-	result := (self input encoding: #ascii) read: 15.
-	self assert: result = 'hello\world\\\\' withCRs
-!
-
-testReadDecodingTransparent
-
-	| result bytes |
-	bytes := #[104 101 108 108 111 13 10 119 111 114 108 100 13 10 13 10 13 10 ].
-	self output write: bytes; close.
-	result := (self input encoding: #ascii) setLineEndTransparent read: bytes size.
-	self assert: result = (String withAll: (bytes asArray collect: #asCharacter))
-!
-
-testReadDecodingUTF16
-
-	| result bytes |
-	bytes := #[0 72 0 101 0 108 0 108 0 111 0 32 0 87 0 111 0 114 0 108 0 100 0 33].
-	self output write: bytes; close.
-	result := (self input encoding: #utf16) read: 12.
-	self assert: result = 'Hello World!!'
-!
-
-testReadDecodingUTF8
-
-	| result bytes text |
-	text := 'Příliš žluťoučký kůň úpěl ďábelské ódy'.
-	bytes := #[80 197 153 195 173 108 105 197 161 32 197 190 108 117 197 165 111 117 196 141 107 195 189 32 107 197 175 197 136 32 195 186 112 196 155 108 32 196 143 195 161 98 101 108 115 107 195 169 32 195 179 100 121].
-	self output write: bytes; close.
-	result := (self input encoding: #utf8) read: text size.
-	self assert: result = text
-!
-
-testWriteEncodingBase64
-	((self output encoding: #ascii) encodingBase64 encoding: #ascii)
-		write: 'Man is distinguished, not only by his reason, but by this singular passion from other animals, which is a lust of the mind, that by a perseverance of delight in the continued and indefatigable generation of knowledge, exceeds the short vehemence of any carnal pleasure.';
-		close.
-	self assert: ((self input encoding: #ascii) read: 360) = 'TWFuIGlzIGRpc3Rpbmd1aXNoZWQsIG5vdCBvbmx5IGJ5IGhpcyByZWFzb24sIGJ1dCBieSB0aGlzIHNpbmd1bGFyIHBhc3Npb24gZnJvbSBvdGhlciBhbmltYWxzLCB3aGljaCBpcyBhIGx1c3Qgb2YgdGhlIG1pbmQsIHRoYXQgYnkgYSBwZXJzZXZlcmFuY2Ugb2YgZGVsaWdodCBpbiB0aGUgY29udGludWVkIGFuZCBpbmRlZmF0aWdhYmxlIGdlbmVyYXRpb24gb2Yga25vd2xlZGdlLCBleGNlZWRzIHRoZSBzaG9ydCB2ZWhlbWVuY2Ugb2YgYW55IGNhcm5hbCBwbGVhc3VyZS4='
-!
-
-testWriteEncodingCRLF
-
-	| result isCRLF |
-	(self output encoding: #ascii)
-		write: 'hello\world\\\' withCRs;
-		close.
-	isCRLF := IOAccessor defaultClass = PCIOAccessor.
-	result := self input read: (isCRLF ifTrue: [18] ifFalse: [14]).
-	
-	self assert: result = (isCRLF
-		ifTrue: [#[104 101 108 108 111 13 10 119 111 114 108 100 13 10 13 10 13 10 ] ]
-		ifFalse: [#[104 101 108 108 111 10 119 111 114 108 100 10 10 10 ] ])
-!
-
-testWriteEncodingTransparent
-
-	| data result bytes |
-	bytes := #[104 101 108 108 111 13 10 119 111 114 108 100 13 10 13 10 13 10 ].
-	data := String withAll: (bytes asArray collect: #asCharacter).
-	(self output encoding: #ascii)
-		setLineEndTransparent;
-		write: data;
-		close.
-	result := self input read: data size.
-	self assert: result = bytes
-!
-
-testWriteEncodingUTF16
-
-	| result bytes |
-	bytes := #[0 72 0 101 0 108 0 108 0 111 0 32 0 87 0 111 0 114 0 108 0 100 0 33].
-	(self output encoding: #utf16) write: 'Hello World!!'; close.
-	result := self input read: 24.
-	self assert: result = bytes
-!
-
-testWriteEncodingUTF8
-
-	| result bytes text |
-	text := 'Příliš žluťoučký kůň úpěl ďábelské ódy'.
-	bytes := #[80 197 153 195 173 108 105 197 161 32 197 190 108 117 197 165 111 117 196 141 107 195 189 32 107 197 175 197 136 32 195 186 112 196 155 108 32 196 143 195 161 98 101 108 115 107 195 169 32 195 179 100 121].
-	(self output encoding: #utf8) write: text; close.
-	result := self input read: bytes size.
-	self assert: result = bytes
-! !
-
-!ReadingWritingTest methodsFor:'tests - interpreting'!
-
-testInterpretingPoints
-
-	| points result |
-	points := (Random new reading transforming: [ :in :out | out put: in get @ in get ]) read: 5.
-	(self output interpreting: [ :b :i :o | b doubleAt: i put: o x. b doubleAt: i + 8 put: o y ] size: 16 )
-		write: points;
-		close.
-	result := (self input interpreting: [ :b :i | (b doubleAt: i) @ (b doubleAt: i + 8) ] size: 16 cacheSize: 5) read: points size.
-	self assert: points = result
-!
-
-testReadUnsignedShortEndianness
-
-	self output write: #[ 16rFF 16r00 16rFF 00]; close.
-	self assert: (self input interpreting: #unsignedShort_le) get = 16rFF.
-	self assert: (self input interpreting: #unsignedShort_be) get = 16rFF00.
-!
-
-testWriteUnsignedShortEndianness
-
-	(self output interpreting: #unsignedShort_le) put: 16rFF.
-	(self output interpreting: #unsignedShort_be) put: 16rFF00.
-	self output close.
-	self assert: (self input read: 4) = #[ 16rFF 16r00 16rFF 00]
-! !
 
 !ReadingWritingTest methodsFor:'tests - transforming'!
 
@@ -294,176 +163,6 @@
                 backspace; bell; cr; delete; ff; lf; q; qq; space; tab; vtab; escape;
                 close.
         self assert: (self input read: 12) = #[8 7 13 127 12 10 39 34 32 9 11 27]
-!
-
-testDoing
-	| outing inning |
-	outing := ByteArray new writing.
-	(self output doing: [:each | outing put: each]) write: #[ 1 2 3 4 5 ].
-	self assert: outing contents = #[ 1 2 3 4 5 ].
-
-	inning := ByteArray new writing.
-	self assert: ((self input doing: [:each | inning put: each]) read: 5) = #[ 1 2 3 4 5 ].
-	self assert: inning contents = #[ 1 2 3 4 5 ]
-!
-
-testReadCollecting
-	| data |
-	data := #[ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ].
-	self output write: data.
-	self assert: ((self input collecting: [:e | e * e]) read: data size) = (ByteArray withAll: (data collect: [:e | e * e]))
-!
-
-testReadCollectingContentsSpeciesChanged
-	| data result |
-	data := ByteArray withAll: ((1 to: 16) collect: [:index | 65]).
-	self output write: data.
-	result :=
-		(self input collecting: [:e | Character codePoint: e])
-			contentsSpecies: String;
-			read: data size.
-	self assert: result = (String withAll: (data asArray collect: [:e | Character codePoint: e]))
-!
-
-testReadDuplicating
-
-	| copy contents |
-	contents := Array withAll: (0 to: 15).
-	copy := Array new writing.
-	self assert: (contents reading duplicating: copy) rest = contents.
-	self assert: copy conclusion = contents
-!
-
-testReadInjecting
-	self output write: #[ 1 2 3 4 ].
-	self assert: ((self input injecting: 0 into: [:all :each | all + each]) read: 4) = #[ 1 3 6 10 ]
-!
-
-testReadRejecting
-	self output write: #[ 1 2 3 4 5 6 7 8 9 ].
-	self assert: ((self input rejecting: #even) read: 5) = #[ 1 3 5 7 9 ]
-!
-
-testReadSelecting
-	self output write: #[ 1 2 3 4 5 6 7 8 9 ].
-	self assert: ((self input selecting: #even) read: 4) = #[ 2 4 6 8 ]
-!
-
-testReadTransforming1into2
-	| result |
-	self output write: #[ 1 2 3 ].
-	result :=
-		(self input transforming: [:in :out | | x | x := in get. out put: x; put: x])
-			read: 6.
-	self assert: result = #[ 1 1 2 2 3 3 ]
-!
-
-testReadTransforming2into1
-	| result |
-	self output write: #[ 1 2 3 4 ].
-	result :=
-		(self input transforming: [:in :out | in get. out put: in get])
-			read: 2.
-	self assert: result = #[ 2 4 ]
-!
-
-testReadTransformingPastEnd
-	| count transformed |
-	count := 1.
-	self output write: #[ 1 2 3 ]; close.
-	transformed := self input transforming: [:in :out |
-		count = 2 ifTrue: [Incomplete zero raise].
-		out put: in get.
-		count := count + 1].
-	self assert: transformed get = 1.
-	self should: [transformed get] raise: Incomplete.
-	self should: [transformed get] raise: Incomplete
-!
-
-testWriteCollecting
-	| data |
-	data := 1 to: 15.
-	(self output collecting: [:e | e * e]) write: data.
-	self assert: (self input read: data size) = (ByteArray withAll: (data collect: [:e | e * e]))
-!
-
-testWriteCollectingIncompatibleContentSpecies
-	| data |
-	data := (1 to: 15) collect: [ :x | x @ 0 ].
-	(self output collecting: [:e | e x ]) write: data.
-	self assert: (self input read: data size) = (ByteArray withAll: (data collect: [:e | e x]))
-!
-
-testWriteCollectingMultipleBufferSize
-	| data |
-	data := (1 to: DefaultBufferSize + 500) collect: [ :i | i \\ 16 ].
-	self timeout: 1 seconds
-		server:
-			[(self output collecting: [:e | e * e])
-				write: data;
-				close.
-			true]
-		client: [(self input read: data size) = (ByteArray withAll: (data collect: [:e | e * e]))]
-!
-
-testWriteDuplicating
-
-	| original copy contents |
-	contents := Array withAll: (0 to: 15).
-	original := Array new writing.
-	copy := Array new writing.
-	(original duplicating: copy) write: contents.
-	self assert: original conclusion = contents.
-	self assert: copy conclusion = contents
-!
-
-testWriteInjecting
-	(self output injecting: 0 into: [:all :each | all + each])
-		write: #[ 1 2 3 4 ]; close.
-	self assert: (self input read: 4) = #[ 1 3 6 10 ]
-!
-
-testWriteRejecting
-	(self output rejecting: #even) write: #[ 1 2 3 4 5 6 7 8 9 ]; close.
-	self assert: (self input read: 5) = #[ 1 3 5 7 9 ]
-!
-
-testWriteSelecting
-	(self output selecting: #even) write: #[ 1 2 3 4 5 6 7 8 9 ]; close.
-	self assert: (self input read: 4) = #[ 2 4 6 8 ]
-!
-
-testWriteTransformHexToByte
-	| hex2Byte decoder result |
-	decoder := [ :char | ('0123456789ABCDEF' indexOf: char asUppercase) - 1 ].
-	hex2Byte := 
-		self output transforming: [ :in :out |
-			out put: (((decoder value: in get) bitShift: 4) + (decoder value: in get)) ].
-	hex2Byte buffer: (ElasticBuffer on: (ByteString new: 16)).
-	hex2Byte write: 'ab'.
-	self assert: self input get = 16rAB.
-	hex2Byte write: 'cdef'.
-	hex2Byte close.
-	result := self input read: 2.
-	self assert: result = #[16rcd 16ref].
-!
-
-testWriteTransforming1into2
-	| result |
-	(self output transforming: [:in :out | | x | x := in get. out put: x; put: x])
-		write: #[ 1 2 3 ];
-		close.
-	result := (self input read: 6).
-	self assert: result = #[ 1 1 2 2 3 3 ]
-!
-
-testWriteTransforming2into1
-	| result |
-	(self output transforming: [:in :out | in get. out put: in get])
-		write: #[ 1 2 3 4 ];
-		close.
-	result := self input read: 2.
-	self assert: result = #[ 2 4 ]
 ! !
 
 !ReadingWritingTest methodsFor:'utilities'!
--- a/core/tests/Xtreams__RingBufferTest.st	Mon Jan 30 22:21:28 2012 +0000
+++ b/core/tests/Xtreams__RingBufferTest.st	Mon Jan 30 22:23:15 2012 +0000
@@ -1,5 +1,3 @@
-'From Smalltalk/X, Version:6.2.1 on 16-01-2012 at 12:53:33 AM'                  !
-
 "{ Package: 'stx:goodies/xtreams/core/tests' }"
 
 "{ NameSpace: Xtreams }"
--- a/core/tests/abbrev.stc	Mon Jan 30 22:21:28 2012 +0000
+++ b/core/tests/abbrev.stc	Mon Jan 30 22:23:15 2012 +0000
@@ -1,9 +1,9 @@
-Xtreams::BufferTest Xtreams__BufferTest stx:goodies/xtreams/core/tests 'Xtreams' 1
-Xtreams::ElasticBufferTest Xtreams__ElasticBufferTest stx:goodies/xtreams/core/tests 'Xtreams' 1
-Xtreams::PositionReadStreamTest Xtreams__PositionReadStreamTest stx:goodies/xtreams/core/tests 'Xtreams' 1
-Xtreams::PositionWriteStreamTest Xtreams__PositionWriteStreamTest stx:goodies/xtreams/core/tests 'Xtreams' 1
-Xtreams::ReadingWritingTest Xtreams__ReadingWritingTest stx:goodies/xtreams/core/tests 'Xtreams' 1
-Xtreams::RingBufferTest Xtreams__RingBufferTest stx:goodies/xtreams/core/tests 'Xtreams' 1
+Xtreams::BufferTest Xtreams__BufferTest stx:goodies/xtreams/core/tests 'Xtreams-Core-Tests' 1
+Xtreams::ElasticBufferTest Xtreams__ElasticBufferTest stx:goodies/xtreams/core/tests 'Xtreams-Core-Tests' 1
+Xtreams::PositionReadStreamTest Xtreams__PositionReadStreamTest stx:goodies/xtreams/core/tests 'Xtreams-Core-Tests' 1
+Xtreams::PositionWriteStreamTest Xtreams__PositionWriteStreamTest stx:goodies/xtreams/core/tests 'Xtreams-Core-Tests' 1
+Xtreams::ReadingWritingTest Xtreams__ReadingWritingTest stx:goodies/xtreams/core/tests 'Xtreams-Core-Tests' 1
+Xtreams::RingBufferTest Xtreams__RingBufferTest stx:goodies/xtreams/core/tests 'Xtreams-Core-Tests' 1
 stx_goodies_xtreams_core_tests stx_goodies_xtreams_core_tests stx:goodies/xtreams/core/tests '* Projects & Packages *' 3
-Xtreams::FiniteReadingWritingTests Xtreams__FiniteReadingWritingTests stx:goodies/xtreams/core/tests 'Xtreams' 1
-Xtreams::InfiniteReadingWritingTests Xtreams__InfiniteReadingWritingTests stx:goodies/xtreams/core/tests 'Xtreams' 1
+Xtreams::FiniteReadingWritingTests Xtreams__FiniteReadingWritingTests stx:goodies/xtreams/core/tests 'Xtreams-Core-Tests' 1
+Xtreams::InfiniteReadingWritingTests Xtreams__InfiniteReadingWritingTests stx:goodies/xtreams/core/tests 'Xtreams-Core-Tests' 1
--- a/core/tests/bc.mak	Mon Jan 30 22:21:28 2012 +0000
+++ b/core/tests/bc.mak	Mon Jan 30 22:23:15 2012 +0000
@@ -1,18 +1,23 @@
 # $Header$
 #
 # DO NOT EDIT
-# automagically generated from the projectDefinition: stx_goodies_xtreams_core_tests.
+# automagically generated from the projectDefinition: stx_goodies_xtreams_core_tests at 2012-01-30 17:23:17.697.
 #
 # Warning: once you modify this file, do not rerun
 # stmkmp or projectDefinition-build again - otherwise, your changes are lost.
 #
-# This file contains make rules for the win32 platform (using borland-bcc).
+# This file contains make rules for the win32 platform (using borland-bcc or visual-c).
 # It shares common definitions with the unix-make in Make.spec.
 # The nt.mak supports the following targets:
 #    bmake         - compile all st-files to a classLib (dll)
 #    bmake clean   - clean all temp files
 #    bmake clobber - clean all
 #
+# Historic Note:
+#  this used to contain only rules to make with borland 
+#    (called via bmake, by "make.exe -f bc.mak")
+#  this has changed; it is now also possible to build using microsoft visual c
+#    (called via vcmake, by "make.exe -f bc.mak -DUSEVC")
 #
 TOP=..\..\..\..
 INCLUDE_TOP=$(TOP)\..
@@ -31,7 +36,7 @@
 LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\goodies\sunit -I$(INCLUDE_TOP)\stx\goodies\xtreams\core -I$(INCLUDE_TOP)\stx\goodies\xtreams\substreams -I$(INCLUDE_TOP)\stx\libbasic
 LOCALDEFINES=
 
-STCLOCALOPT=-package=$(PACKAGE) -I. $(LOCALINCLUDES) -H. $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES)  -varPrefix=$(LIBNAME)
+STCLOCALOPT=-package=$(PACKAGE) -I. $(LOCALINCLUDES) -headerDir=. $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES)  -varPrefix=$(LIBNAME)
 LOCALLIBS=
 
 OBJS= $(COMMON_OBJS) $(WIN32_OBJS)
@@ -45,28 +50,18 @@
 # build all prerequisite packages for this package
 prereq:
 	pushd ..\..\..\..\libbasic & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
-	pushd ..\..\..\refactoryBrowser\parser & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
-	pushd ..\..\terminals & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\..\..\..\libbasic2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
-	pushd ..\..\..\..\libcomp & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd .. & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\..\..\..\libview & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
-	pushd ..\..\..\..\libbasic3 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+	pushd ..\..\substreams & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\..\..\..\libview2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
-	pushd ..\..\..\..\libboss & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\..\..\sunit & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
-	pushd ..\..\..\..\libui & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
-	pushd ..\..\..\..\libwidg & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
-	pushd ..\..\..\..\libwidg2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
-	pushd ..\..\..\..\libwidg3 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
-	pushd ..\..\..\..\libtool & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
-	pushd ..\..\..\..\libcompat & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
-	pushd ..\..\substreams & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 	pushd ..\..\..\..\librun & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
 
 
 
 
+
 # BEGINMAKEDEPEND --- do not remove this line; make depend needs it
 $(OUTDIR)stx_goodies_xtreams_core_tests.$(O) stx_goodies_xtreams_core_tests.$(H): stx_goodies_xtreams_core_tests.st $(INCLUDE_TOP)\stx\libbasic\LibraryDefinition.$(H) $(INCLUDE_TOP)\stx\libbasic\ProjectDefinition.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 
--- a/core/tests/bmake.bat	Mon Jan 30 22:21:28 2012 +0000
+++ b/core/tests/bmake.bat	Mon Jan 30 22:23:15 2012 +0000
@@ -3,6 +3,6 @@
 @REM type bmake, and wait...
 @REM do not edit - automatically generated from ProjectDefinition
 @REM -------
-make.exe -N -f bc.mak %1 %2
+make.exe -N -f bc.mak %*
 
 
--- a/core/tests/extensions.st	Mon Jan 30 22:21:28 2012 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-"{ Encoding: utf8 }" !
--- a/core/tests/stx_goodies_xtreams_core_tests.st	Mon Jan 30 22:21:28 2012 +0000
+++ b/core/tests/stx_goodies_xtreams_core_tests.st	Mon Jan 30 22:23:15 2012 +0000
@@ -1,5 +1,3 @@
-'From Smalltalk/X, Version:6.2.1 on 16-01-2012 at 12:53:33 AM'                  !
-
 "{ Package: 'stx:goodies/xtreams/core/tests' }"
 
 LibraryDefinition subclass:#stx_goodies_xtreams_core_tests
@@ -46,15 +44,15 @@
 
     ^ #(
         "<className> or (<className> attributes...) in load order"
-        (#'Xtreams::BufferTest')
-        (#'Xtreams::ElasticBufferTest')
-        (#'Xtreams::PositionReadStreamTest')
-        (#'Xtreams::PositionWriteStreamTest')
-        (#'Xtreams::ReadingWritingTest')
-        (#'Xtreams::RingBufferTest')
+        #'Xtreams::BufferTest'
+        #'Xtreams::ElasticBufferTest'
+        #'Xtreams::PositionReadStreamTest'
+        #'Xtreams::PositionWriteStreamTest'
+        #'Xtreams::ReadingWritingTest'
+        #'Xtreams::RingBufferTest'
         #stx_goodies_xtreams_core_tests
-        (#'Xtreams::FiniteReadingWritingTests')
-        (#'Xtreams::InfiniteReadingWritingTests')
+        #'Xtreams::FiniteReadingWritingTests'
+        #'Xtreams::InfiniteReadingWritingTests'
     )
 !
 
--- a/core/tests/tests.rc	Mon Jan 30 22:21:28 2012 +0000
+++ b/core/tests/tests.rc	Mon Jan 30 22:23:15 2012 +0000
@@ -3,13 +3,15 @@
 // automagically generated from the projectDefinition: stx_goodies_xtreams_core_tests.
 //
 VS_VERSION_INFO VERSIONINFO
-  FILEVERSION     6,2,0,1
+  FILEVERSION     6,2,13,13
   PRODUCTVERSION  6,2,1,1
+#if (__BORLANDC__)
   FILEFLAGSMASK   VS_FF_DEBUG | VS_FF_PRERELEASE
   FILEFLAGS       VS_FF_PRERELEASE | VS_FF_SPECIALBUILD
   FILEOS          VOS_NT_WINDOWS32
   FILETYPE        VFT_DLL
   FILESUBTYPE     VS_USER_DEFINED
+#endif
 
 BEGIN
   BLOCK "StringFileInfo"
@@ -18,12 +20,12 @@
     BEGIN
       VALUE "CompanyName", "eXept Software AG\0"
       VALUE "FileDescription", "Smalltalk/X Class library (LIB)\0"
-      VALUE "FileVersion", "6.2.0.1\0"
+      VALUE "FileVersion", "6.2.13.13\0"
       VALUE "InternalName", "stx:goodies/xtreams/core/tests\0"
       VALUE "LegalCopyright", "Copyright Claus Gittinger 1988-2011\nCopyright eXept Software AG 1998-2011\0"
       VALUE "ProductName", "Smalltalk/X\0"
       VALUE "ProductVersion", "6.2.1.1\0"
-      VALUE "ProductDate", "Mon, 22 Aug 2011 15:45:09 GMT\0"
+      VALUE "ProductDate", "Mon, 30 Jan 2012 22:23:17 GMT\0"
     END
 
   END
--- a/core/tests/vcmake.bat	Mon Jan 30 22:21:28 2012 +0000
+++ b/core/tests/vcmake.bat	Mon Jan 30 22:23:15 2012 +0000
@@ -3,6 +3,10 @@
 @REM type vcmake, and wait...
 @REM do not edit - automatically generated from ProjectDefinition
 @REM -------
-make.exe -N -f bc.mak -DUSEVC %1 %2
+
+@if not defined VSINSTALLDIR (
+	call "C:\Program Files\Microsoft Visual Studio 10.0"\VC\bin\vcvars32.bat
+)
+make.exe -N -f bc.mak -DUSEVC %*