Added copyright notice.
"
COPYRIGHT (c) 2012-2013 by Jan Vrany
All Rights Reserved
This software is furnished under a license and may be used
only in accordance with the terms of that license and with the
inclusion of the above copyright notice. This software may not
be provided or otherwise made available to, or used by, any
other person. No title to or ownership of the software is
hereby transferred.
"
"{ Package: 'stx:libscm/mercurial' }"
TestCase subclass:#HGTestCase
instanceVariableNames:'repositories'
classVariableNames:'Verbose'
poolDictionaries:''
category:'SCM-Mercurial-Tests'
!
!HGTestCase class methodsFor:'documentation'!
copyright
"
COPYRIGHT (c) 2012-2013 by Jan Vrany
All Rights Reserved
This software is furnished under a license and may be used
only in accordance with the terms of that license and with the
inclusion of the above copyright notice. This software may not
be provided or otherwise made available to, or used by, any
other person. No title to or ownership of the software is
hereby transferred.
"
!
documentation
"
An anbstract base class for Mercurial tests
[author:]
Jan Vrany <jan.vrany@fit.cvut.cz>
[instance variables:]
[class variables:]
[see also:]
"
! !
!HGTestCase class methodsFor:'accessing'!
resources
^Array with: HGRepositoriesResource
"Created: / 19-09-2012 / 18:55:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 17-10-2012 / 13:01:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!HGTestCase class methodsFor:'testing'!
isAbstract
^self == HGTestCase
"Created: / 17-11-2012 / 11:00:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!HGTestCase methodsFor:'debugging'!
dumpRepositoryLog: repo
^self dumpRepositoryLog: repo on: Transcript sender: thisContext sender
"Created: / 22-11-2012 / 11:08:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
dumpRepositoryLog: repo on: stream
self dumpRepositoryLog: repo on: stream sender: thisContext sender.
"Created: / 22-11-2012 / 11:10:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
dumpRepositoryLog: repo on: stream sender: sender
Verbose == true ifFalse:[ ^ self ].
stream cr.
stream nextPutAll: '+-- hg log '; nextPutAll: repo pathName; nextPutAll:' -- '; cr.
stream nextPutAll: '+-- sender: '; nextPutAll: sender printString ; nextPutAll:' -- '; cr.
(OperatingSystem getFullCommandOutputFrom:'hg log ', repo pathName) do:[:line|
stream nextPutAll:'| '; nextPutAll: line; cr.
].
stream nextPutAll: '+------------- '; cr.
"Created: / 22-11-2012 / 11:10:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!HGTestCase methodsFor:'private'!
performTest
HGAuthorQuery answer: (testSelector , ' <', testSelector , '@', self class name, '>') do:[
super performTest
].
"Created: / 30-09-2012 / 10:02:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 22-11-2012 / 11:25:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!HGTestCase methodsFor:'running'!
setUp
repositories:= OrderedCollection new.
"Created: / 19-09-2012 / 19:01:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 16-12-2012 / 12:58:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
tearDown
HGPackageModelRegistry current flush:'mocks*'.
HGRepositoriesResource current directoryForRepositories directoryContentsAsFilenames do:[:e|
[
Verbose == true ifTrue:[
Transcript cr; show: '+-- removing '; showCR: e pathName.
].
e asFilename recursiveRemove.
] on: Error do:[:ex|
"Stupid windows"
ex halt
]
].
repositories := nil.
"Created: / 19-09-2012 / 19:03:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 30-09-2012 / 05:26:48 / jv"
"Modified: / 22-11-2012 / 11:35:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!HGTestCase methodsFor:'utilities'!
repositoryNamed: nm
^self repositoryNamed: nm unpack: true
"Created: / 19-09-2012 / 19:04:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 14-01-2013 / 13:20:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
repositoryNamed: nm unpack: unpack
| dir |
dir := HGRepositoriesResource current directoryForRepositoryNamed: nm unpack: unpack.
repositories add: dir.
^HGRepository on: dir.
"Created: / 14-01-2013 / 13:20:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!HGTestCase class methodsFor:'documentation'!
version_HG
^ '$Changeset: <not expanded> $'
! !