"{ Package: 'stx:goodies/regression' }"
"{ NameSpace: RegressionTests }"
TestCase subclass:#DirectoryStreamTest
instanceVariableNames:'testDirName'
classVariableNames:''
poolDictionaries:''
category:'tests-Regression-Streams'
!
!DirectoryStreamTest class methodsFor:'documentation'!
documentation
"
documentation to be added.
[author:]
sr
[instance variables:]
[class variables:]
[see also:]
"
! !
!DirectoryStreamTest methodsFor:'helpers'!
testDirName
testDirName isNil ifTrue:[
testDirName := UUID genRandomUUID printString asFilename.
].
^ testDirName
! !
!DirectoryStreamTest methodsFor:'initialize / release'!
tearDown
self testDirName recursiveRemove
! !
!DirectoryStreamTest methodsFor:'tests'!
test01
"basic open for appending."
|s dir t|
dir := self testDirName.
dir asFilename makeDirectory.
s := DirectoryStream directoryNamed:dir.
OperatingSystem isMSDOSlike ifTrue:[
"/ skip '.', '..'
s nextLine; nextLine.
].
self assert:s atEnd.
self assert:s nextLine isNil.
s close.
self assert:dir asFilename directoryContents size == 0.
(dir asFilename construct:'file1') writingFileDo:[:s | s nextPutAll:'foo'].
dir := self testDirName.
dir asFilename makeDirectory.
s := DirectoryStream directoryNamed:dir.
OperatingSystem isMSDOSlike ifTrue:[
"/ skip '.', '..'
s nextLine; nextLine.
].
self assert:s atEnd not.
self assert:(t := s nextLine) = 'file1'.
self assert:s atEnd.
self assert:s nextLine isNil.
s close.
self assert:dir asFilename directoryContents size == 1.
"
self new test01
"
! !
!DirectoryStreamTest class methodsFor:'documentation'!
version
^ '$Header$'
!
version_CVS
^ '$Header$'
! !