SVN__CommitTests.st
changeset 492 74ff0960961c
parent 386 a189c8f3954d
child 1162 6558c17e1a7f
equal deleted inserted replaced
491:19c6e1b8dfff 492:74ff0960961c
     1 "{ Package: 'stx:libsvn' }"
     1 "{ Package: 'stx:libsvn' }"
     2 
     2 
     3 "{ NameSpace: SVN }"
     3 "{ NameSpace: SVN }"
     4 
     4 
     5 nil subclass:#CommitTests
     5 TestCase subclass:#CommitTests
     6 	instanceVariableNames:''
     6 	instanceVariableNames:''
     7 	classVariableNames:''
     7 	classVariableNames:''
     8 	poolDictionaries:''
     8 	poolDictionaries:''
     9 	category:'SVN-Tests'
     9 	category:'SVN-Tests'
    10 !
    10 !
    14 
    14 
    15 setUp
    15 setUp
    16 
    16 
    17     super setUp.
    17     super setUp.
    18     Class withoutUpdatingChangesDo:
    18     Class withoutUpdatingChangesDo:
    19         [self source_stx_goodies_libsvn_CommitTests_st readStream fileIn.
    19 	[self source_stx_goodies_libsvn_CommitTests_st readStream fileIn.
    20         self source_SVN__CommitTestsMockA_st readStream fileIn.
    20 	self source_SVN__CommitTestsMockA_st readStream fileIn.
    21         self source_SVN__CommitTestsMockB_st readStream fileIn]
    21 	self source_SVN__CommitTestsMockB_st readStream fileIn]
    22 
    22 
    23     "Created: / 19-08-2009 / 14:59:20 / Jan Vrany <vranyj1@fel.cvut.cz>"
    23     "Created: / 19-08-2009 / 14:59:20 / Jan Vrany <vranyj1@fel.cvut.cz>"
    24 ! !
    24 ! !
    25 
    25 
    26 !CommitTests methodsFor:'sources'!
    26 !CommitTests methodsFor:'sources'!
    27 
    27 
    28 source_SVN__CommitTestsMockA_st
    28 source_SVN__CommitTestsMockA_st
    29 
    29 
    30         "
    30 	"
    31         SVN::CommitTestsMockA fileOutAsMethodIn: SVN::CommitTests selector: #'source_SVN__CommitTestsMockA_st' category: 'sources'
    31 	SVN::CommitTestsMockA fileOutAsMethodIn: SVN::CommitTests selector: #'source_SVN__CommitTestsMockA_st' category: 'sources'
    32 
    32 
    33         SVN::CommitTests new source_SVN__CommitTestsMockA_st
    33 	SVN::CommitTests new source_SVN__CommitTestsMockA_st
    34         "
    34 	"
    35 
    35 
    36 ^'''From Smalltalk/X, Version:5.4.4 on 08-04-2009 at 09:23:01 PM''                  !!
    36 ^'''From Smalltalk/X, Version:5.4.4 on 08-04-2009 at 09:23:01 PM''                  !!
    37 
    37 
    38 "{ Package: ''stx:goodies/libsvn_CommitTests'' }"
    38 "{ Package: ''stx:goodies/libsvn_CommitTests'' }"
    39 
    39 
    40 "{ NameSpace: SVN }"
    40 "{ NameSpace: SVN }"
    41 
    41 
    42 Object subclass:#CommitTestsMockA
    42 Object subclass:#CommitTestsMockA
    43         instanceVariableNames:''''
    43 	instanceVariableNames:''''
    44         classVariableNames:''''
    44 	classVariableNames:''''
    45         poolDictionaries:''''
    45 	poolDictionaries:''''
    46         category:''SVN-Tests-Mocks''
    46 	category:''SVN-Tests-Mocks''
    47 !!
    47 !!
    48 
    48 
    49 '
    49 '
    50 
    50 
    51     "Modified: / 19-08-2009 / 13:33:52 / Jan Vrany <vranyj1@fel.cvut.cz>"
    51     "Modified: / 19-08-2009 / 13:33:52 / Jan Vrany <vranyj1@fel.cvut.cz>"
    52 !
    52 !
    53 
    53 
    54 source_SVN__CommitTestsMockB_st
    54 source_SVN__CommitTestsMockB_st
    55 
    55 
    56         "
    56 	"
    57         SVN::CommitTestsMockA fileOutAsMethodIn: SVN::CommitTests selector: #'source_SVN__CommitTestsMockA_st' category: 'sources'
    57 	SVN::CommitTestsMockA fileOutAsMethodIn: SVN::CommitTests selector: #'source_SVN__CommitTestsMockA_st' category: 'sources'
    58 
    58 
    59         SVN::CommitTests new source_SVN__CommitTestsMockA_st
    59 	SVN::CommitTests new source_SVN__CommitTestsMockA_st
    60         "
    60 	"
    61 
    61 
    62 ^'"{ Package: ''stx:goodies/libsvn_CommitTests'' }"
    62 ^'"{ Package: ''stx:goodies/libsvn_CommitTests'' }"
    63 
    63 
    64 "{ NameSpace: SVN }"
    64 "{ NameSpace: SVN }"
    65 
    65 
    66 Object subclass:#CommitTestsMockB
    66 Object subclass:#CommitTestsMockB
    67         instanceVariableNames:''''
    67 	instanceVariableNames:''''
    68         classVariableNames:''''
    68 	classVariableNames:''''
    69         poolDictionaries:''''
    69 	poolDictionaries:''''
    70         category:''SVN-Tests-Mocks''
    70 	category:''SVN-Tests-Mocks''
    71 !!
    71 !!
    72 
    72 
    73 '
    73 '
    74 
    74 
    75     "Created: / 09-04-2009 / 17:41:32 / Jan Vrany <vranyj1@fel.cvut.cz>"
    75     "Created: / 09-04-2009 / 17:41:32 / Jan Vrany <vranyj1@fel.cvut.cz>"
    76     "Modified: / 19-08-2009 / 13:33:57 / Jan Vrany <vranyj1@fel.cvut.cz>"
    76     "Modified: / 19-08-2009 / 13:33:57 / Jan Vrany <vranyj1@fel.cvut.cz>"
    77 !
    77 !
    78 
    78 
    79 source_stx_goodies_libsvn_CommitTests_st
    79 source_stx_goodies_libsvn_CommitTests_st
    80 
    80 
    81         "
    81 	"
    82         stx_goodies_libsvnCommitTests fileOutAsMethodIn: SVN::CommitTests selector: #'source_stx_goodies_libsvnCommitTests_st' category: 'sources'
    82 	stx_goodies_libsvnCommitTests fileOutAsMethodIn: SVN::CommitTests selector: #'source_stx_goodies_libsvnCommitTests_st' category: 'sources'
    83 
    83 
    84         SVN::CommitTests new source_stx_goodies_libsvnCommitTests_st
    84 	SVN::CommitTests new source_stx_goodies_libsvnCommitTests_st
    85         "
    85 	"
    86 
    86 
    87 ^'''From Smalltalk/X, Version:5.4.4 on 08-04-2009 at 09:23:54 PM''                  !!
    87 ^'''From Smalltalk/X, Version:5.4.4 on 08-04-2009 at 09:23:54 PM''                  !!
    88 
    88 
    89 "{ Package: ''stx:goodies/libsvn_CommitTests'' }"
    89 "{ Package: ''stx:goodies/libsvn_CommitTests'' }"
    90 
    90 
    91 LibraryDefinition subclass:#stx_goodies_libsvn_CommitTests
    91 LibraryDefinition subclass:#stx_goodies_libsvn_CommitTests
    92         instanceVariableNames:''''
    92 	instanceVariableNames:''''
    93         classVariableNames:''''
    93 	classVariableNames:''''
    94         poolDictionaries:''''
    94 	poolDictionaries:''''
    95         category:''* Projects & Packages *''
    95 	category:''* Projects & Packages *''
    96 !!
    96 !!
    97 
    97 
    98 !!stx_goodies_libsvn_CommitTests class methodsFor:''description''!!
    98 !!stx_goodies_libsvn_CommitTests class methodsFor:''description''!!
    99 
    99 
   100 preRequisites
   100 preRequisites
   101     ^ #(
   101     ^ #(
   102         #''stx:libbasic''    "LibraryDefinition - superclass of stx_goodies_libsvnCommitTests "
   102 	#''stx:libbasic''    "LibraryDefinition - superclass of stx_goodies_libsvnCommitTests "
   103     )
   103     )
   104 !! !!
   104 !! !!
   105 
   105 
   106 !!stx_goodies_libsvn_CommitTests class methodsFor:''description - contents''!!
   106 !!stx_goodies_libsvn_CommitTests class methodsFor:''description - contents''!!
   107 
   107 
   108 classNamesAndAttributes
   108 classNamesAndAttributes
   109     ^ #(
   109     ^ #(
   110         "<className> or (<className> attributes...) in load order"
   110 	"<className> or (<className> attributes...) in load order"
   111         #''SVN::CommitTestsMockA''
   111 	#''SVN::CommitTestsMockA''
   112         #''SVN::CommitTestsMockB''
   112 	#''SVN::CommitTestsMockB''
   113         #''stx_goodies_libsvn_CommitTests''
   113 	#''stx_goodies_libsvn_CommitTests''
   114     )
   114     )
   115 !!
   115 !!
   116 
   116 
   117 extensionMethodNames
   117 extensionMethodNames
   118     ^ #(
   118     ^ #(
   157     "Created: / 19-08-2009 / 13:34:32 / Jan Vrany <vranyj1@fel.cvut.cz>"
   157     "Created: / 19-08-2009 / 13:34:32 / Jan Vrany <vranyj1@fel.cvut.cz>"
   158 !
   158 !
   159 
   159 
   160 sources
   160 sources
   161 
   161 
   162     ^super sources , 
   162     ^super sources ,
   163     #(
   163     #(
   164         (dir  'trunk')
   164 	(dir  'trunk')
   165         (file 'trunk/SVN__CommitTestsMockA.st'          source_SVN__CommitTestsMockA_st)
   165 	(file 'trunk/SVN__CommitTestsMockA.st'          source_SVN__CommitTestsMockA_st)
   166         (file 'trunk/SVN__CommitTestsMockB.st'          source_SVN__CommitTestsMockB_st)
   166 	(file 'trunk/SVN__CommitTestsMockB.st'          source_SVN__CommitTestsMockB_st)
   167         (file 'trunk/stx_goodies_libsvn_CommitTests.st'  source_stx_goodies_libsvn_CommitTests_st)
   167 	(file 'trunk/stx_goodies_libsvn_CommitTests.st'  source_stx_goodies_libsvn_CommitTests_st)
   168 
   168 
   169         (dir  'branches')
   169 	(dir  'branches')
   170 
   170 
   171         (dir  'tags')
   171 	(dir  'tags')
   172     )
   172     )
   173 
   173 
   174     "Created: / 08-04-2009 / 21:25:37 / Jan Vrany <vranyj1@fel.cvut.cz>"
   174     "Created: / 08-04-2009 / 21:25:37 / Jan Vrany <vranyj1@fel.cvut.cz>"
   175     "Modified: / 19-08-2009 / 13:35:05 / Jan Vrany <vranyj1@fel.cvut.cz>"
   175     "Modified: / 19-08-2009 / 13:35:05 / Jan Vrany <vranyj1@fel.cvut.cz>"
   176 ! !
   176 ! !
   178 !CommitTests methodsFor:'tests'!
   178 !CommitTests methodsFor:'tests'!
   179 
   179 
   180 test_01_simple
   180 test_01_simple
   181 
   181 
   182     "
   182     "
   183         Tests the simpliest commit
   183 	Tests the simpliest commit
   184     "
   184     "
   185 
   185 
   186     Class packageQuerySignal answer: self package do:
   186     Class packageQuerySignal answer: self package do:
   187         [SVN::CommitTestsMockA compile: 'r1 ^''Revision 1''' classified: 'methods - r1'].
   187 	[SVN::CommitTestsMockA compile: 'r1 ^''Revision 1''' classified: 'methods - r1'].
   188 
   188 
   189     wc commit:'CommitTests>>test_01 commit'.
   189     wc commit:'CommitTests>>test_01 commit'.
   190 
   190 
   191     self assert:
   191     self assert:
   192         (wc branch cat: 'SVN__CommitTestsMockA.st')
   192 	(wc branch cat: 'SVN__CommitTestsMockA.st')
   193             = (String streamContents:[:s| SVN::CommitTestsMockA fileOutOn: s withTimeStamp: false]).
   193 	    = (String streamContents:[:s| SVN::CommitTestsMockA fileOutOn: s withTimeStamp: false]).
   194 
   194 
   195     "Created: / 12-06-2009 / 21:46:04 / Jan Vrany <vranyj1@fel.cvut.cz>"
   195     "Created: / 12-06-2009 / 21:46:04 / Jan Vrany <vranyj1@fel.cvut.cz>"
   196     "Modified: / 19-08-2009 / 14:57:46 / Jan Vrany <vranyj1@fel.cvut.cz>"
   196     "Modified: / 19-08-2009 / 14:57:46 / Jan Vrany <vranyj1@fel.cvut.cz>"
   197 !
   197 !
   198 
   198 
   201     | w repositoryCode imageCode |
   201     | w repositoryCode imageCode |
   202 
   202 
   203     self assert:(Smalltalk at: #'SVN::CommitTestsMockA' ifAbsent:[nil]) notNil.
   203     self assert:(Smalltalk at: #'SVN::CommitTestsMockA' ifAbsent:[nil]) notNil.
   204 
   204 
   205     Class packageQuerySignal answer: self package do:
   205     Class packageQuerySignal answer: self package do:
   206         [SVN::CommitTestsMockA compile: 'r1 ^''Revision 1''' classified: 'methods - r1'].
   206 	[SVN::CommitTestsMockA compile: 'r1 ^''Revision 1''' classified: 'methods - r1'].
   207 
   207 
   208 
   208 
   209     w := CommitWizard new.
   209     w := CommitWizard new.
   210     w task: wc commitTask.
   210     w task: wc commitTask.
   211     [ w open ] fork.
   211     [ w open ] fork.
   223     repositoryCode := (wc branch cat: 'SVN__CommitTestsMockA.st').
   223     repositoryCode := (wc branch cat: 'SVN__CommitTestsMockA.st').
   224     imageCode := (String streamContents:[:s| SVN::CommitTestsMockA fileOutOn: s withTimeStamp: false]).
   224     imageCode := (String streamContents:[:s| SVN::CommitTestsMockA fileOutOn: s withTimeStamp: false]).
   225 
   225 
   226     self assert: (repositoryCode = imageCode).
   226     self assert: (repositoryCode = imageCode).
   227     "
   227     "
   228         DiffTextView openOn: repositoryCode and: imageCode
   228 	DiffTextView openOn: repositoryCode and: imageCode
   229     "
   229     "
   230 
   230 
   231     "Created: / 12-06-2009 / 21:46:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
   231     "Created: / 12-06-2009 / 21:46:11 / Jan Vrany <vranyj1@fel.cvut.cz>"
   232     "Modified: / 19-08-2009 / 15:10:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
   232     "Modified: / 19-08-2009 / 15:10:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
   233 !
   233 !
   234 
   234 
   235 test_02_selective_commit
   235 test_02_selective_commit
   236 
   236 
   237     "
   237     "
   238         Selective class commit test
   238 	Selective class commit test
   239     "
   239     "
   240 
   240 
   241     self assert:(Smalltalk at: #'SVN::CommitTestsMockA' ifAbsent:[nil]) notNil.
   241     self assert:(Smalltalk at: #'SVN::CommitTestsMockA' ifAbsent:[nil]) notNil.
   242     self assert:(Smalltalk at: #'SVN::CommitTestsMockB' ifAbsent:[nil]) notNil.
   242     self assert:(Smalltalk at: #'SVN::CommitTestsMockB' ifAbsent:[nil]) notNil.
   243     
   243 
   244     Class packageQuerySignal answer: self package do:
   244     Class packageQuerySignal answer: self package do:
   245         [SVN::CommitTestsMockA compile: 'r1 ^''Revision 1''' classified: 'methods - r1'].
   245 	[SVN::CommitTestsMockA compile: 'r1 ^''Revision 1''' classified: 'methods - r1'].
   246 
   246 
   247     Class packageQuerySignal answer: self package do:
   247     Class packageQuerySignal answer: self package do:
   248         [SVN::CommitTestsMockB compile: 'r1 ^''Revision 1''' classified: 'methods - r1'].
   248 	[SVN::CommitTestsMockB compile: 'r1 ^''Revision 1''' classified: 'methods - r1'].
   249 
   249 
   250     wc commitTask
   250     wc commitTask
   251         classes: (Array with: SVN::CommitTestsMockA);
   251 	classes: (Array with: SVN::CommitTestsMockA);
   252         message: 'CommitTests>>test_03 commit';
   252 	message: 'CommitTests>>test_03 commit';
   253         do.
   253 	do.
   254 
   254 
   255     self assert:
   255     self assert:
   256         (wc branch cat: 'SVN__CommitTestsMockA.st')
   256 	(wc branch cat: 'SVN__CommitTestsMockA.st')
   257             = (String streamContents:[:s| SVN::CommitTestsMockA fileOutOn: s withTimeStamp: false]).
   257 	    = (String streamContents:[:s| SVN::CommitTestsMockA fileOutOn: s withTimeStamp: false]).
   258 
   258 
   259     self assert:
   259     self assert:
   260         (wc branch cat: 'SVN__CommitTestsMockB.st')
   260 	(wc branch cat: 'SVN__CommitTestsMockB.st')
   261             = self source_SVN__CommitTestsMockB_st.
   261 	    = self source_SVN__CommitTestsMockB_st.
   262 
   262 
   263     "Created: / 12-06-2009 / 21:46:25 / Jan Vrany <vranyj1@fel.cvut.cz>"
   263     "Created: / 12-06-2009 / 21:46:25 / Jan Vrany <vranyj1@fel.cvut.cz>"
   264     "Modified: / 19-08-2009 / 14:57:54 / Jan Vrany <vranyj1@fel.cvut.cz>"
   264     "Modified: / 19-08-2009 / 14:57:54 / Jan Vrany <vranyj1@fel.cvut.cz>"
   265 !
   265 !
   266 
   266 
   267 test_03_class_remove
   267 test_03_class_remove
   268 
   268 
   269     "
   269     "
   270         Tests class remove
   270 	Tests class remove
   271     "
   271     "
   272 
   272 
   273     self assert:(Smalltalk at: #'SVN::CommitTestsMockA' ifAbsent:[nil]) notNil.
   273     self assert:(Smalltalk at: #'SVN::CommitTestsMockA' ifAbsent:[nil]) notNil.
   274     self assert:(Smalltalk at: #'SVN::CommitTestsMockB' ifAbsent:[nil]) notNil.
   274     self assert:(Smalltalk at: #'SVN::CommitTestsMockB' ifAbsent:[nil]) notNil.
   275 
   275 
   276     Smalltalk removeClass: SVN::CommitTestsMockB.
   276     Smalltalk removeClass: SVN::CommitTestsMockB.
   277 
   277 
   278     wc commitTask
   278     wc commitTask
   279         message: 'CommitTests>>test_03 commit';
   279 	message: 'CommitTests>>test_03 commit';
   280         do.
   280 	do.
   281     self assert: (wc branch list size = (2 + 4)"Make.spec, Make.proto, abbrev.stc, libInit.cc")
   281     self assert: (wc branch list size = (2 + 4)"Make.spec, Make.proto, abbrev.stc, libInit.cc")
   282 
   282 
   283     "Created: / 12-06-2009 / 21:52:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
   283     "Created: / 12-06-2009 / 21:52:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
   284     "Modified: / 19-08-2009 / 15:09:26 / Jan Vrany <vranyj1@fel.cvut.cz>"
   284     "Modified: / 19-08-2009 / 15:09:26 / Jan Vrany <vranyj1@fel.cvut.cz>"
   285 ! !
   285 ! !