Fixed package set in test case generators
authorJakub Nesveda <jakubnesveda@seznam.cz>
Sat, 31 Jan 2015 23:28:34 +0100
changeset 806 c1983320e2cf
parent 805 07ad47e55ce9
child 807 e615fdd7511d
Fixed package set in test case generators
CustomCodeGeneratorOrRefactoringTestCaseCodeGenerator.st
CustomTestCaseCodeGenerator.st
CustomTestCaseCodeGeneratorTests.st
CustomTestCaseSetUpCodeGenerator.st
CustomTestCaseSetUpCodeGeneratorTests.st
CustomTestCaseTearDownCodeGenerator.st
CustomTestCaseTearDownCodeGeneratorTests.st
CustomValueHolderGetterMethodsCodeGeneratorTests.st
Make.proto
Make.spec
abbrev.stc
bc.mak
jn_refactoring_custom.st
libInit.cc
patches/patches.rc
refactoring_custom.rc
--- a/CustomCodeGeneratorOrRefactoringTestCaseCodeGenerator.st	Sat Jan 31 19:29:49 2015 +0100
+++ b/CustomCodeGeneratorOrRefactoringTestCaseCodeGenerator.st	Sat Jan 31 23:28:34 2015 +0100
@@ -62,11 +62,16 @@
 !CustomCodeGeneratorOrRefactoringTestCaseCodeGenerator methodsFor:'executing - private'!
 
 generateTestCaseCodeFor:aTestClass forClassUnderTest:aClass 
-    | source className |
+    | source className package |
 
     super generateTestCaseCodeFor:aTestClass forClassUnderTest:aClass.
     className := aClass theNonMetaClass name.
 
+    package := PackageId noProjectID.
+    samePackageAsTestedClass ifTrue: [ 
+        package := aClass package
+    ].
+
     source := 'test_code_generated
     | expectedSource |
 
@@ -81,6 +86,7 @@
 
         protocol: 'tests';
         source: source;
+        package: package;
         compile.
 
     model createMethod
@@ -90,10 +96,11 @@
         source: 'generatorOrRefactoring
     ^ `className new';
         replace: '`className' with: className asString;
+        package: package;
         compile
 
     "Created: / 16-09-2014 / 10:40:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-    "Modified: / 30-10-2014 / 21:16:38 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+    "Modified: / 31-01-2015 / 18:39:38 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
 ! !
 
 !CustomCodeGeneratorOrRefactoringTestCaseCodeGenerator class methodsFor:'documentation'!
--- a/CustomTestCaseCodeGenerator.st	Sat Jan 31 19:29:49 2015 +0100
+++ b/CustomTestCaseCodeGenerator.st	Sat Jan 31 23:28:34 2015 +0100
@@ -260,32 +260,36 @@
     "Modified: / 15-11-2014 / 15:32:01 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
 !
 
-generateTestCaseSetUpCodeFor:testCase 
-    generateSetUp ifTrue:[
+generateTestCaseSetUpCodeFor: testCase   
+    generateSetUp ifTrue: [
         | subcontext |
 
         subcontext := CustomSubContext new.
-        subcontext selectedClasses:(Array with:testCase).
-        (self defaultSetUpCodeGeneratorClass subGeneratorOrRefactoringOf:self) 
-            executeInContext:subcontext.
+        subcontext selectedClasses: (Array with: testCase). Transcript showCR:'LL',testCase asString.
+        (self defaultSetUpCodeGeneratorClass subGeneratorOrRefactoringOf: self)
+            samePackageAsTestedClass: self samePackageAsTestedClass;  
+            executeInContext: subcontext.
     ].
 
     "Created: / 16-09-2014 / 11:15:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified: / 01-10-2014 / 23:52:40 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 31-01-2015 / 23:11:49 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
 !
 
-generateTestCaseTearDownCodeFor:testCase 
-    generateTearDown ifTrue:[
+generateTestCaseTearDownCodeFor: testCase 
+    generateTearDown ifTrue: [
         | subcontext |
 
         subcontext := CustomSubContext new.
-        subcontext selectedClasses:(Array with:testCase).
-        (self defaultTearDownCodeGeneratorClass subGeneratorOrRefactoringOf:self) 
+        subcontext selectedClasses: (Array with: testCase).
+        (self defaultTearDownCodeGeneratorClass subGeneratorOrRefactoringOf: self) 
+            samePackageAsTestedClass: self samePackageAsTestedClass;  
             executeInContext:subcontext.
     ].
 
     "Created: / 16-09-2014 / 11:15:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
     "Modified: / 01-10-2014 / 23:52:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 31-01-2015 / 22:14:22 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
 ! !
 
 !CustomTestCaseCodeGenerator class methodsFor:'documentation'!
--- a/CustomTestCaseCodeGeneratorTests.st	Sat Jan 31 19:29:49 2015 +0100
+++ b/CustomTestCaseCodeGeneratorTests.st	Sat Jan 31 23:28:34 2015 +0100
@@ -18,6 +18,102 @@
 
 !CustomTestCaseCodeGeneratorTests methodsFor:'tests'!
 
+test_available_in_context_classes_all_test_case_subclass
+
+    context selectedClasses: {self class}.  
+    
+    self deny: (generatorOrRefactoring class availableInContext: context)
+
+    "Created: / 31-01-2015 / 22:05:27 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+test_available_in_context_classes_none_test_case_subclass
+
+    context selectedClasses: {Object}.  
+    
+    self assert: (generatorOrRefactoring class availableInContext: context)
+
+    "Created: / 31-01-2015 / 22:03:26 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+test_available_in_context_classes_one_test_case_subclass
+
+    context selectedClasses: {Object. self class}.  
+    
+    self deny: (generatorOrRefactoring class availableInContext: context)
+
+    "Created: / 31-01-2015 / 22:04:36 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+test_available_in_context_empty_classes
+
+    context selectedClasses: #().  
+    
+    self assert: (generatorOrRefactoring class availableInContext: context)
+
+    "Modified: / 31-01-2015 / 22:01:24 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+test_available_in_context_unknown_classes
+
+    context selectedClasses: nil.  
+    
+    self assert: (generatorOrRefactoring class availableInContext: context)
+
+    "Created: / 31-01-2015 / 22:01:51 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+test_available_in_perspective
+    
+    self assert: (generatorOrRefactoring class availableInPerspective: CustomPerspective classPerspective)
+
+    "Modified: / 31-01-2015 / 22:07:06 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+test_test_class_generated_all_checked
+    | class testClass setUpSource tearDownSource |
+
+    class := self classWithInstanceVariable
+        category: 'Some-Category';
+        package: #some_package_01;
+        yourself.
+
+    self assertClassNotExists: class name.
+
+    context selectedClasses: {class}.
+
+    generatorOrRefactoring
+        configureInContext: context;
+        samePackageAsTestedClass: true;
+        generateSetUp: true;
+        generateTearDown: true;
+        testClassCategory: 'Some-Tests';
+        testClassName: #DummyClassTests;
+        testSuperName: #TestCase;
+        executeInContext: context.
+
+    testClass := Smalltalk at: #DummyClassTests.
+
+    self assert: (testClass package) = #some_package_01.
+    self assert: (testClass superclass name) = #TestCase.
+    self assert: (testClass category) = 'Some-Tests'.
+
+    setUpSource := 'setUp
+    super setUp.
+
+    "Add your own code here..."'.
+    self assertMethodSource: setUpSource atSelector: #setUp forClass: testClass. 
+
+    tearDownSource := 'tearDown
+    "Add your own code here..."
+
+    super tearDown.'
+.
+    self assertMethodSource: tearDownSource atSelector: #tearDown forClass: testClass
+
+    "Created: / 31-01-2015 / 23:02:44 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
 test_test_class_generated_for_metaclass
     | class |
 
--- a/CustomTestCaseSetUpCodeGenerator.st	Sat Jan 31 19:29:49 2015 +0100
+++ b/CustomTestCaseSetUpCodeGenerator.st	Sat Jan 31 23:28:34 2015 +0100
@@ -3,7 +3,7 @@
 "{ NameSpace: Smalltalk }"
 
 CustomCodeGenerator subclass:#CustomTestCaseSetUpCodeGenerator
-	instanceVariableNames:''
+	instanceVariableNames:'samePackageAsTestedClass'
 	classVariableNames:''
 	poolDictionaries:''
 	category:'Interface-Refactoring-Custom-Generators'
@@ -50,10 +50,39 @@
     "Modified: / 05-08-2014 / 13:49:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
+!CustomTestCaseSetUpCodeGenerator methodsFor:'accessing'!
+
+samePackageAsTestedClass
+    "Returns true when we should assign TestCase class 
+    to the same package as tested class."
+
+    ^ samePackageAsTestedClass
+
+    "Created: / 15-11-2014 / 11:54:37 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+samePackageAsTestedClass: aBoolean
+    "see samePackageAsTestedClass"
+
+    samePackageAsTestedClass := aBoolean
+
+    "Created: / 15-11-2014 / 11:56:36 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+! !
+
+!CustomTestCaseSetUpCodeGenerator methodsFor:'accessing - defaults'!
+
+defaultSamePackageAsTestedClass
+    "default value for samePackageAsTestedClass"
+
+    ^ true
+
+    "Created: / 15-11-2014 / 12:21:40 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+! !
+
 !CustomTestCaseSetUpCodeGenerator methodsFor:'executing'!
 
 buildForClass: class
-    | source category superHasSetup current |
+    | source category superHasSetup current package |
 
     current := class.
     superHasSetup := false.
@@ -79,14 +108,20 @@
         category := (TestCase compiledMethodAt: #setUp) category.
     ].
 
+    package := PackageId noProjectID.
+    samePackageAsTestedClass ? self defaultSamePackageAsTestedClass ifTrue: [ 
+        package := class package
+    ].
+
     model createMethod
         class: class;
         source: source;
         category: category;
+        package: package;
         compile.
 
     "Created: / 05-08-2014 / 14:17:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-    "Modified: / 11-10-2014 / 00:02:09 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+    "Modified: / 31-01-2015 / 18:32:53 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
 !
 
 buildInContext:aCustomContext
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/CustomTestCaseSetUpCodeGeneratorTests.st	Sat Jan 31 23:28:34 2015 +0100
@@ -0,0 +1,140 @@
+"{ Package: 'jn:refactoring_custom' }"
+
+"{ NameSpace: Smalltalk }"
+
+CustomCodeGeneratorOrRefactoringTestCase subclass:#CustomTestCaseSetUpCodeGeneratorTests
+	instanceVariableNames:''
+	classVariableNames:''
+	poolDictionaries:''
+	category:'Interface-Refactoring-Custom-Generators-Tests'
+!
+
+!CustomTestCaseSetUpCodeGeneratorTests methodsFor:'accessing'!
+
+generatorOrRefactoring
+    ^ CustomTestCaseSetUpCodeGenerator new
+! !
+
+!CustomTestCaseSetUpCodeGeneratorTests methodsFor:'tests'!
+
+test_set_up_method_generated_default_package
+    | expectedPackage class actualPackage |
+
+    class := model createClass
+        name: #DummyTestCase01;
+        superclassName: #TestCase;
+        package: #dummy_package01;
+        compile;
+        yourself. 
+
+    context selectedClasses: {class}.  
+
+    expectedPackage := #dummy_package01.
+    generatorOrRefactoring executeInContext: context.
+    actualPackage := ((Smalltalk at: #DummyTestCase01) compiledMethodAt: #setUp) package.  
+    self assert: expectedPackage = actualPackage
+
+    "Created: / 31-01-2015 / 21:26:09 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+test_set_up_method_generated_not_same_package
+    | expectedPackage class actualPackage |
+
+    class := model createClass
+        name: #DummyTestCase01;
+        superclassName: #TestCase;
+        package: #dummy_package01;
+        compile;
+        yourself. 
+
+    context selectedClasses: {class}.  
+
+    expectedPackage := PackageId noProjectID.
+    generatorOrRefactoring samePackageAsTestedClass: false.  
+    generatorOrRefactoring executeInContext: context.
+    actualPackage := ((Smalltalk at: #DummyTestCase01) compiledMethodAt: #setUp) package.  
+    self assert: expectedPackage = actualPackage
+
+    "Created: / 31-01-2015 / 21:31:21 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+test_set_up_method_generated_same_method_protocol  
+    | class expectedCategory actualCategory |
+
+    class := model createClass
+        name: #DummyTestCase01;
+        superclassName: #TestCase;
+        compile;
+        yourself. 
+
+    context selectedClasses: {class}.  
+
+    expectedCategory := (TestCase compiledMethodAt: #setUp) category.
+    generatorOrRefactoring executeInContext: context.
+    actualCategory := ((Smalltalk at: #DummyTestCase01) compiledMethodAt: #setUp) category.
+    self assert: expectedCategory = actualCategory
+
+    "Created: / 31-01-2015 / 21:36:48 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+test_set_up_method_generated_same_package
+    | expectedPackage class actualPackage |
+
+    class := model createClass
+        name: #DummyTestCase01;
+        superclassName: #TestCase;
+        package: #dummy_package01;
+        compile;
+        yourself. 
+
+    context selectedClasses: {class}.  
+
+    expectedPackage := #dummy_package01.
+    generatorOrRefactoring samePackageAsTestedClass: true.  
+    generatorOrRefactoring executeInContext: context.
+    actualPackage := ((Smalltalk at: #DummyTestCase01) compiledMethodAt: #setUp) package.  
+    self assert: expectedPackage = actualPackage
+
+    "Created: / 31-01-2015 / 21:30:22 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+test_set_up_method_generated_set_up_implemented
+    | expectedSource class |
+
+    class := model createClass
+        name: #DummyTestCase01;
+        superclassName: #TestCase;
+        compile;
+        yourself. 
+
+    context selectedClasses: {class}.  
+
+    expectedSource := 'setUp
+    super setUp.
+
+    "Add your own code here..."'.
+    generatorOrRefactoring executeInContext: context.  
+    self assertMethodSource: expectedSource atSelector: #setUp forClass: class
+
+    "Created: / 31-01-2015 / 20:30:22 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+test_set_up_method_generated_set_up_not_implemented
+    | expectedSource class |
+
+    class := model createClass
+        name: #DummyTestCase01;
+        compile;
+        yourself.
+
+    context selectedClasses: {class}.  
+
+    expectedSource := 'setUp
+    "/ super setUp.
+    "Add your own code here..."'.
+    generatorOrRefactoring buildForClass: class.  
+    self assertMethodSource: expectedSource atSelector: #setUp forClass: class
+
+    "Created: / 31-01-2015 / 20:30:55 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+! !
+
--- a/CustomTestCaseTearDownCodeGenerator.st	Sat Jan 31 19:29:49 2015 +0100
+++ b/CustomTestCaseTearDownCodeGenerator.st	Sat Jan 31 23:28:34 2015 +0100
@@ -3,7 +3,7 @@
 "{ NameSpace: Smalltalk }"
 
 CustomCodeGenerator subclass:#CustomTestCaseTearDownCodeGenerator
-	instanceVariableNames:''
+	instanceVariableNames:'samePackageAsTestedClass'
 	classVariableNames:''
 	poolDictionaries:''
 	category:'Interface-Refactoring-Custom-Generators'
@@ -50,10 +50,39 @@
     "Modified: / 05-08-2014 / 13:49:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 ! !
 
+!CustomTestCaseTearDownCodeGenerator methodsFor:'accessing'!
+
+samePackageAsTestedClass
+    "Returns true when we should assign TestCase class 
+    to the same package as tested class."
+
+    ^ samePackageAsTestedClass
+
+    "Created: / 15-11-2014 / 11:54:37 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+samePackageAsTestedClass: aBoolean
+    "see samePackageAsTestedClass"
+
+    samePackageAsTestedClass := aBoolean
+
+    "Created: / 15-11-2014 / 11:56:36 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+! !
+
+!CustomTestCaseTearDownCodeGenerator methodsFor:'accessing - defaults'!
+
+defaultSamePackageAsTestedClass
+    "default value for samePackageAsTestedClass"
+
+    ^ true
+
+    "Created: / 15-11-2014 / 12:21:40 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+! !
+
 !CustomTestCaseTearDownCodeGenerator methodsFor:'executing'!
 
 buildForClass: class
-    | source category superHasSetup current |
+    | source category superHasSetup current package |
 
     current := class.
     superHasSetup := false.
@@ -80,14 +109,20 @@
         category := (TestCase compiledMethodAt: #tearDown ) category.
     ].
 
+    package := PackageId noProjectID.
+    samePackageAsTestedClass ? self defaultSamePackageAsTestedClass ifTrue: [ 
+        package := class package
+    ].
+
     model createMethod
         class: class;
         source: source;
         category: category;
+        package: package;
         compile.
 
     "Created: / 05-08-2014 / 14:17:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
-    "Modified: / 11-10-2014 / 00:05:41 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+    "Modified: / 31-01-2015 / 18:34:32 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
 !
 
 buildInContext:aCustomContext
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/CustomTestCaseTearDownCodeGeneratorTests.st	Sat Jan 31 23:28:34 2015 +0100
@@ -0,0 +1,140 @@
+"{ Package: 'jn:refactoring_custom' }"
+
+"{ NameSpace: Smalltalk }"
+
+CustomCodeGeneratorOrRefactoringTestCase subclass:#CustomTestCaseTearDownCodeGeneratorTests
+	instanceVariableNames:''
+	classVariableNames:''
+	poolDictionaries:''
+	category:'Interface-Refactoring-Custom-Generators-Tests'
+!
+
+!CustomTestCaseTearDownCodeGeneratorTests methodsFor:'accessing'!
+
+generatorOrRefactoring
+    ^ CustomTestCaseTearDownCodeGenerator new
+! !
+
+!CustomTestCaseTearDownCodeGeneratorTests methodsFor:'tests'!
+
+test_tear_down_method_generated_default_package
+    | expectedPackage class actualPackage |
+
+    class := model createClass
+        name: #DummyTestCase01;
+        superclassName: #TestCase;
+        package: #dummy_package01;
+        compile;
+        yourself. 
+
+    context selectedClasses: {class}.  
+
+    expectedPackage := #dummy_package01.
+    generatorOrRefactoring executeInContext: context.
+    actualPackage := ((Smalltalk at: #DummyTestCase01) compiledMethodAt: #tearDown) package.  
+    self assert: expectedPackage = actualPackage
+
+    "Created: / 31-01-2015 / 21:41:26 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+test_tear_down_method_generated_not_same_package
+    | expectedPackage class actualPackage |
+
+    class := model createClass
+        name: #DummyTestCase01;
+        superclassName: #TestCase;
+        package: #dummy_package01;
+        compile;
+        yourself. 
+
+    context selectedClasses: {class}.  
+
+    expectedPackage := PackageId noProjectID.
+    generatorOrRefactoring samePackageAsTestedClass: false.  
+    generatorOrRefactoring executeInContext: context.
+    actualPackage := ((Smalltalk at: #DummyTestCase01) compiledMethodAt: #tearDown) package.  
+    self assert: expectedPackage = actualPackage
+
+    "Created: / 31-01-2015 / 21:42:32 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+test_tear_down_method_generated_same_method_protocol  
+    | class expectedCategory actualCategory |
+
+    class := model createClass
+        name: #DummyTestCase01;
+        superclassName: #TestCase;
+        compile;
+        yourself. 
+
+    context selectedClasses: {class}.  
+
+    expectedCategory := (TestCase compiledMethodAt: #tearDown) category.
+    generatorOrRefactoring executeInContext: context.
+    actualCategory := ((Smalltalk at: #DummyTestCase01) compiledMethodAt: #tearDown) category.
+    self assert: expectedCategory = actualCategory
+
+    "Created: / 31-01-2015 / 21:42:23 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+test_tear_down_method_generated_same_package
+    | expectedPackage class actualPackage |
+
+    class := model createClass
+        name: #DummyTestCase01;
+        superclassName: #TestCase;
+        package: #dummy_package01;
+        compile;
+        yourself. 
+
+    context selectedClasses: {class}.  
+
+    expectedPackage := #dummy_package01.
+    generatorOrRefactoring samePackageAsTestedClass: true.  
+    generatorOrRefactoring executeInContext: context.
+    actualPackage := ((Smalltalk at: #DummyTestCase01) compiledMethodAt: #tearDown) package.  
+    self assert: expectedPackage = actualPackage
+
+    "Created: / 31-01-2015 / 21:42:12 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+test_tear_down_method_generated_tear_down_implemented
+    | expectedSource class |
+
+    class := model createClass
+        name: #DummyTestCase01;
+        superclassName: #TestCase;
+        compile;
+        yourself. 
+
+    context selectedClasses: {class}.  
+
+    expectedSource := 'tearDown
+    "Add your own code here..."
+
+    super tearDown.'.
+    generatorOrRefactoring executeInContext: context.  
+    self assertMethodSource: expectedSource atSelector: #tearDown forClass: class
+
+    "Created: / 31-01-2015 / 21:42:03 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+!
+
+test_tear_down_method_generated_tear_down_not_implemented
+    | expectedSource class |
+
+    class := model createClass
+        name: #DummyTestCase01;
+        compile;
+        yourself.
+
+    context selectedClasses: {class}.  
+
+    expectedSource := 'tearDown
+    "Add your own code here..."
+    "/ super tearDown.'.
+    generatorOrRefactoring buildForClass: class.  
+    self assertMethodSource: expectedSource atSelector: #tearDown forClass: class
+
+    "Created: / 31-01-2015 / 21:41:48 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
+! !
+
--- a/CustomValueHolderGetterMethodsCodeGeneratorTests.st	Sat Jan 31 19:29:49 2015 +0100
+++ b/CustomValueHolderGetterMethodsCodeGeneratorTests.st	Sat Jan 31 23:28:34 2015 +0100
@@ -9,6 +9,7 @@
 	category:'Interface-Refactoring-Custom-Generators-Tests'
 !
 
+
 !CustomValueHolderGetterMethodsCodeGeneratorTests methodsFor:'accessing'!
 
 generatorOrRefactoring
@@ -55,3 +56,10 @@
     "Modified: / 24-06-2014 / 22:12:09 / Jakub Nesveda <nesvejak@fit.cvut.cz>"
 ! !
 
+!CustomValueHolderGetterMethodsCodeGeneratorTests class methodsFor:'documentation'!
+
+version_HG
+
+    ^ '$Changeset: <not expanded> $'
+! !
+
--- a/Make.proto	Sat Jan 31 19:29:49 2015 +0100
+++ b/Make.proto	Sat Jan 31 23:28:34 2015 +0100
@@ -197,6 +197,7 @@
 $(OUTDIR)CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator.$(O) CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator.$(H): CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator.st $(INCLUDE_TOP)/jn/refactoring_custom/CustomAccessMethodsCodeGenerator.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGenerator.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)CustomValueHolderWithChangeNotificationSetterMethodsCodeGenerator.$(O) CustomValueHolderWithChangeNotificationSetterMethodsCodeGenerator.$(H): CustomValueHolderWithChangeNotificationSetterMethodsCodeGenerator.st $(INCLUDE_TOP)/jn/refactoring_custom/CustomAccessMethodsCodeGenerator.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGenerator.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)CustomVisitorCodeGeneratorAcceptVisitor.$(O) CustomVisitorCodeGeneratorAcceptVisitor.$(H): CustomVisitorCodeGeneratorAcceptVisitor.st $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGenerator.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomVisitorCodeGenerator.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)CustomJavaScriptSimpleSetterMethodsCodeGenerator.$(O) CustomJavaScriptSimpleSetterMethodsCodeGenerator.$(H): CustomJavaScriptSimpleSetterMethodsCodeGenerator.st $(INCLUDE_TOP)/jn/refactoring_custom/CustomAccessMethodsCodeGenerator.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGenerator.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)/jn/refactoring_custom/CustomSimpleSetterMethodsCodeGenerator.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
 $(OUTDIR)extensions.$(O): extensions.st $(INCLUDE_TOP)/stx/goodies/refactoryBrowser/changes/AddClassChange.$(H) $(INCLUDE_TOP)/stx/goodies/refactoryBrowser/changes/AddMethodChange.$(H) $(INCLUDE_TOP)/stx/goodies/refactoryBrowser/changes/RefactoryChange.$(H) $(INCLUDE_TOP)/stx/goodies/refactoryBrowser/changes/RefactoryClassChange.$(H) $(INCLUDE_TOP)/stx/goodies/refactoryBrowser/helpers/RBAbstractClass.$(H) $(INCLUDE_TOP)/stx/goodies/refactoryBrowser/helpers/RBClass.$(H) $(INCLUDE_TOP)/stx/goodies/refactoryBrowser/helpers/RBMetaclass.$(H) $(INCLUDE_TOP)/stx/goodies/refactoryBrowser/helpers/RBMethod.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(INCLUDE_TOP)/stx/libtool/SystemBrowser.$(H) $(INCLUDE_TOP)/stx/libtool/Tools__NewSystemBrowser.$(H) $(INCLUDE_TOP)/stx/libview2/ApplicationModel.$(H) $(INCLUDE_TOP)/stx/libview2/Model.$(H) $(STCHDR)
 
 # ENDMAKEDEPEND --- do not remove this line
--- a/Make.spec	Sat Jan 31 19:29:49 2015 +0100
+++ b/Make.spec	Sat Jan 31 23:28:34 2015 +0100
@@ -114,6 +114,7 @@
 	CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator \
 	CustomValueHolderWithChangeNotificationSetterMethodsCodeGenerator \
 	CustomVisitorCodeGeneratorAcceptVisitor \
+	CustomJavaScriptSimpleSetterMethodsCodeGenerator \
 
 
 
@@ -182,6 +183,7 @@
     $(OUTDIR_SLASH)CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator.$(O) \
     $(OUTDIR_SLASH)CustomValueHolderWithChangeNotificationSetterMethodsCodeGenerator.$(O) \
     $(OUTDIR_SLASH)CustomVisitorCodeGeneratorAcceptVisitor.$(O) \
+    $(OUTDIR_SLASH)CustomJavaScriptSimpleSetterMethodsCodeGenerator.$(O) \
     $(OUTDIR_SLASH)extensions.$(O) \
 
 
--- a/abbrev.stc	Sat Jan 31 19:29:49 2015 +0100
+++ b/abbrev.stc	Sat Jan 31 23:28:34 2015 +0100
@@ -79,6 +79,8 @@
 CustomSubclassResponsibilityCodeGeneratorTests CustomSubclassResponsibilityCodeGeneratorTests jn:refactoring_custom 'Interface-Refactoring-Custom-Generators-Tests' 1
 CustomTestCaseCodeGeneratorTests CustomTestCaseCodeGeneratorTests jn:refactoring_custom 'Interface-Refactoring-Custom-Generators-Tests' 1
 CustomTestCaseMethodCodeGeneratorTests CustomTestCaseMethodCodeGeneratorTests jn:refactoring_custom 'Interface-Refactoring-Custom-Generators-Tests' 1
+CustomTestCaseSetUpCodeGeneratorTests CustomTestCaseSetUpCodeGeneratorTests jn:refactoring_custom 'Interface-Refactoring-Custom-Generators-Tests' 1
+CustomTestCaseTearDownCodeGeneratorTests CustomTestCaseTearDownCodeGeneratorTests jn:refactoring_custom 'Interface-Refactoring-Custom-Generators-Tests' 1
 CustomUpdateTestCaseCategoryRefactoringTests CustomUpdateTestCaseCategoryRefactoringTests jn:refactoring_custom 'Interface-Refactoring-Custom-Refactorings-Tests' 1
 CustomUserDialog CustomUserDialog jn:refactoring_custom 'Interface-Refactoring-Custom-UI' 0
 CustomValueHolderAccessMethodsCodeGeneratorTests CustomValueHolderAccessMethodsCodeGeneratorTests jn:refactoring_custom 'Interface-Refactoring-Custom-Generators-Tests' 1
@@ -122,3 +124,4 @@
 CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator jn:refactoring_custom 'Interface-Refactoring-Custom-Generators' 0
 CustomValueHolderWithChangeNotificationSetterMethodsCodeGenerator CustomValueHolderWithChangeNotificationSetterMethodsCodeGenerator jn:refactoring_custom 'Interface-Refactoring-Custom-Generators' 0
 CustomVisitorCodeGeneratorAcceptVisitor CustomVisitorCodeGeneratorAcceptVisitor jn:refactoring_custom 'Interface-Refactoring-Custom-Generators' 0
+CustomJavaScriptSimpleSetterMethodsCodeGenerator CustomJavaScriptSimpleSetterMethodsCodeGenerator jn:refactoring_custom 'Interface-Refactoring-Custom-Generators' 0
--- a/bc.mak	Sat Jan 31 19:29:49 2015 +0100
+++ b/bc.mak	Sat Jan 31 23:28:34 2015 +0100
@@ -144,6 +144,7 @@
 $(OUTDIR)CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator.$(O) CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator.$(H): CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator.st $(INCLUDE_TOP)\jn\refactoring_custom\CustomAccessMethodsCodeGenerator.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGenerator.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)CustomValueHolderWithChangeNotificationSetterMethodsCodeGenerator.$(O) CustomValueHolderWithChangeNotificationSetterMethodsCodeGenerator.$(H): CustomValueHolderWithChangeNotificationSetterMethodsCodeGenerator.st $(INCLUDE_TOP)\jn\refactoring_custom\CustomAccessMethodsCodeGenerator.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGenerator.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)CustomVisitorCodeGeneratorAcceptVisitor.$(O) CustomVisitorCodeGeneratorAcceptVisitor.$(H): CustomVisitorCodeGeneratorAcceptVisitor.st $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGenerator.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomVisitorCodeGenerator.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)CustomJavaScriptSimpleSetterMethodsCodeGenerator.$(O) CustomJavaScriptSimpleSetterMethodsCodeGenerator.$(H): CustomJavaScriptSimpleSetterMethodsCodeGenerator.st $(INCLUDE_TOP)\jn\refactoring_custom\CustomAccessMethodsCodeGenerator.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGenerator.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomCodeGeneratorOrRefactoring.$(H) $(INCLUDE_TOP)\jn\refactoring_custom\CustomSimpleSetterMethodsCodeGenerator.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
 $(OUTDIR)extensions.$(O): extensions.st $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\changes\AddClassChange.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\changes\AddMethodChange.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\changes\RefactoryChange.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\changes\RefactoryClassChange.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\helpers\RBAbstractClass.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\helpers\RBClass.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\helpers\RBMetaclass.$(H) $(INCLUDE_TOP)\stx\goodies\refactoryBrowser\helpers\RBMethod.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(INCLUDE_TOP)\stx\libtool\SystemBrowser.$(H) $(INCLUDE_TOP)\stx\libtool\Tools__NewSystemBrowser.$(H) $(INCLUDE_TOP)\stx\libview2\ApplicationModel.$(H) $(INCLUDE_TOP)\stx\libview2\Model.$(H) $(STCHDR)
 
 # ENDMAKEDEPEND --- do not remove this line
--- a/jn_refactoring_custom.st	Sat Jan 31 19:29:49 2015 +0100
+++ b/jn_refactoring_custom.st	Sat Jan 31 23:28:34 2015 +0100
@@ -173,6 +173,7 @@
         (CustomTestCaseCodeGeneratorTests autoload)
         (CustomTestCaseMethodCodeGeneratorTests autoload)
         (CustomTestCaseSetUpCodeGeneratorTests autoload)
+        (CustomTestCaseTearDownCodeGeneratorTests autoload)
         (CustomUpdateTestCaseCategoryRefactoringTests autoload)
         CustomUserDialog
         (CustomValueHolderAccessMethodsCodeGeneratorTests autoload)
--- a/libInit.cc	Sat Jan 31 19:29:49 2015 +0100
+++ b/libInit.cc	Sat Jan 31 23:28:34 2015 +0100
@@ -90,6 +90,7 @@
 _CustomValueHolderWithChangeNotificationGetterMethodsCodeGenerator_Init(pass,__pRT__,snd);
 _CustomValueHolderWithChangeNotificationSetterMethodsCodeGenerator_Init(pass,__pRT__,snd);
 _CustomVisitorCodeGeneratorAcceptVisitor_Init(pass,__pRT__,snd);
+_CustomJavaScriptSimpleSetterMethodsCodeGenerator_Init(pass,__pRT__,snd);
 
 _jn_137refactoring_137custom_extensions_Init(pass,__pRT__,snd);
 __END_PACKAGE__();
--- a/patches/patches.rc	Sat Jan 31 19:29:49 2015 +0100
+++ b/patches/patches.rc	Sat Jan 31 23:28:34 2015 +0100
@@ -25,7 +25,7 @@
       VALUE "LegalCopyright", "My CopyRight or CopyLeft\0"
       VALUE "ProductName", "LibraryName\0"
       VALUE "ProductVersion", "6.2.5.1516\0"
-      VALUE "ProductDate", "Sun, 25 Jan 2015 15:24:43 GMT\0"
+      VALUE "ProductDate", "Sat, 31 Jan 2015 22:15:54 GMT\0"
     END
 
   END
--- a/refactoring_custom.rc	Sat Jan 31 19:29:49 2015 +0100
+++ b/refactoring_custom.rc	Sat Jan 31 23:28:34 2015 +0100
@@ -25,7 +25,7 @@
       VALUE "LegalCopyright", "My CopyRight or CopyLeft\0"
       VALUE "ProductName", "ProductName\0"
       VALUE "ProductVersion", "6.2.5.1516\0"
-      VALUE "ProductDate", "Sun, 25 Jan 2015 15:24:41 GMT\0"
+      VALUE "ProductDate", "Sat, 31 Jan 2015 22:15:53 GMT\0"
     END
 
   END