test/MCSnapshotResource.st
author Jan Vrany <jan.vrany@labware.com>
Fri, 17 May 2024 23:06:48 +0100
branchjv
changeset 1179 2b0400211720
parent 1121 c5661215109c
permissions -rw-r--r--
Tonel: fix possible endless recursion in `TonelRepository class >> discover:` This commit fixes horrible bug in `TonelRepository class >> discover:` when using relative directories that caused endless recursion. This is because `Filename >> directory` does not handle well relative directories: following code causes endless loop: f := '.' asFilename. [ f isRootDirectory ] whileFalse:[f := f directory]. while this one does not: f := Filename currentDirectory. [ f isRootDirectory ] whileFalse:[f := f directory]. Clearly, this is something that has to be fixed in `Filename`, but meanwhile, we fix it here too. While at it, rewrite this method using loop as opposed ro recursion.

"
COPYRIGHT (c) 2020 LabWare
"
"{ Package: 'stx:goodies/monticello/test' }"

"{ NameSpace: Smalltalk }"

TestResource subclass:#MCSnapshotResource
	instanceVariableNames:'snapshot'
	classVariableNames:''
	poolDictionaries:''
	category:'SCM-Monticello-Tests'
!

!MCSnapshotResource class methodsFor:'documentation'!

copyright
"
COPYRIGHT (c) 2020 LabWare


"
! !

!MCSnapshotResource class methodsFor:'as yet unclassified'!

mockPackage
	^ (MCPackage new name: self mockPackageName)
!

mockPackageName
	^ MCMockPackageInfo new packageName
!

takeSnapshot
	^ self mockPackage snapshot
! !

!MCSnapshotResource methodsFor:'as yet unclassified'!

definitions
	^ snapshot definitions
!

setUp
    snapshot := self class takeSnapshot.

    "Modified (format): / 07-07-2020 / 21:23:53 / Jan Vrany <jan.vrany@labware.com>"
!

snapshot
	^ snapshot
! !

!MCSnapshotResource class methodsFor:'documentation'!

version
    ^ '$Header: /cvs/stx/stx/goodies/monticello/test/MCSnapshotResource.st,v 1.2 2013-05-29 00:00:24 vrany Exp $'
! !