RegressionTests__DirectoryStreamTest.st
author sr
Wed, 11 Oct 2017 13:48:06 +0200
changeset 1787 67369aa4a2ca
parent 1447 2351db93aa5b
child 1788 8f8f8310e503
permissions -rw-r--r--
#BUGFIX by sr class: RegressionTests::DirectoryStreamTest class definition changed: #testDirName class: RegressionTests::DirectoryStreamTest class added: #documentation

"{ Encoding: utf8 }"

"{ 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:'cleanup'!

tearDown
    self testDirName recursiveRemove
! !

!DirectoryStreamTest methodsFor:'helpers'!

testDirName
    testDirName isNil ifTrue:[
        testDirName := UUID genRandomUUID printString asFilename.
    ].

    ^ testDirName
! !

!DirectoryStreamTest methodsFor:'tests'!

test01
    "basic open for appending."

    |s dir t|

    dir := self testDirName.
    dir asFilename makeDirectory.
    s := DirectoryStream directoryNamed:dir.

    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.

    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$'
! !