initial checkin
authorsr
Tue, 10 Oct 2017 14:45:04 +0200
changeset 371d9b3eb6618eb
parent 370 11c81b32968a
child 372 27e9ce052ebe
initial checkin
quickSelfTest/stx_goodies_builder_quickSelfTest.st
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/quickSelfTest/stx_goodies_builder_quickSelfTest.st	Tue Oct 10 14:45:04 2017 +0200
     1.3 @@ -0,0 +1,165 @@
     1.4 +"{ Package: 'stx:goodies/builder/quickSelfTest' }"
     1.5 +
     1.6 +"{ NameSpace: Smalltalk }"
     1.7 +
     1.8 +ApplicationDefinition subclass:#stx_goodies_builder_quickSelfTest
     1.9 +	instanceVariableNames:''
    1.10 +	classVariableNames:''
    1.11 +	poolDictionaries:''
    1.12 +	category:'* Projects & Packages *'
    1.13 +!
    1.14 +
    1.15 +
    1.16 +!stx_goodies_builder_quickSelfTest class methodsFor:'description'!
    1.17 +
    1.18 +applicationIconFileName
    1.19 +    ^ nil
    1.20 +!
    1.21 +
    1.22 +excludedFromPreRequisites
    1.23 +    "obsolete; temporarily, this is still called for, but will eventually vanish.
    1.24 +    
    1.25 +     List packages which are to be explicitely excluded from the automatic constructed
    1.26 +     prerequisites lists (both). 
    1.27 +     If empty, everything that is found along the inheritance of any of
    1.28 +     my classes is considered to be a prerequisite package."
    1.29 +
    1.30 +    ^ #(
    1.31 +    )
    1.32 +!
    1.33 +
    1.34 +isGUIApplication
    1.35 +    "return true, if this is a GUI application.
    1.36 +     (these need more libraries and use a different startup procedure)"
    1.37 +
    1.38 +    ^ false
    1.39 +!
    1.40 +
    1.41 +mandatoryPreRequisites
    1.42 +    "list packages which are mandatory as a prerequisite.
    1.43 +     This are packages containing superclasses of my classes and classes which
    1.44 +     are extended by myself.
    1.45 +     They are mandatory, because we need these packages as a prerequisite for loading and compiling.
    1.46 +     This method is generated automatically,
    1.47 +     by searching along the inheritance chain of all of my classes.
    1.48 +     Please take a look at the #referencedPreRequisites method as well."
    1.49 +
    1.50 +    ^ #(
    1.51 +        #'stx:libbasic'    "ApplicationDefinition - superclass of stx_goodies_builder_quickSelfTest"
    1.52 +    )
    1.53 +!
    1.54 +
    1.55 +referencedPreRequisites
    1.56 +    "list packages which are a prerequisite, because they contain
    1.57 +     classes which are referenced by my classes.
    1.58 +     These packages are NOT needed as a prerequisite for compiling or loading,
    1.59 +     however, a class from it may be referenced during execution and having it
    1.60 +     unloaded then may lead to a runtime doesNotUnderstand error, unless the caller
    1.61 +     includes explicit checks for the package being present.
    1.62 +     This method is generated automatically,
    1.63 +     by searching all classes (and their packages) which are referenced by my classes.
    1.64 +     Please also take a look at the #mandatoryPreRequisites method"
    1.65 +
    1.66 +    ^ #(
    1.67 +        #'stx:goodies/sunit'    "TestResultReporter - referenced by RunUnitTests class>>run"
    1.68 +        #'stx:libcomp'    "ParserFlags - referenced by RunUnitTests class>>run"
    1.69 +    )
    1.70 +!
    1.71 +
    1.72 +subProjects
    1.73 +    "list packages which are known as subprojects.
    1.74 +     This method is generated automatically; however, when generating automatically,
    1.75 +     packages are only added - never removed, unless listed in #excludedFromSubProjects."
    1.76 +
    1.77 +    ^ #(
    1.78 +)
    1.79 +! !
    1.80 +
    1.81 +!stx_goodies_builder_quickSelfTest class methodsFor:'description - contents'!
    1.82 +
    1.83 +classNamesAndAttributes
    1.84 +    "lists the classes which are to be included in the project.
    1.85 +     Each entry in the list may be: a single class-name (symbol),
    1.86 +     or an array-literal consisting of class name and attributes.
    1.87 +     Attributes are: #autoload or #<os> where os is one of win32, unix,..."
    1.88 +
    1.89 +    ^ #(
    1.90 +        "<className> or (<className> attributes...) in load order"
    1.91 +        RunUnitTests
    1.92 +        RunUnitTestsStart
    1.93 +        #'stx_goodies_builder_quickSelfTest'
    1.94 +    )
    1.95 +!
    1.96 +
    1.97 +extensionMethodNames
    1.98 +    "lists the extension methods which are to be included in the project.
    1.99 +     Entries are 2-element array literals, consisting of class-name and selector.
   1.100 +     A correponding method with real names must be present in my concrete subclasses
   1.101 +     if it has extensions."
   1.102 +
   1.103 +    ^ #(
   1.104 +    )
   1.105 +! !
   1.106 +
   1.107 +!stx_goodies_builder_quickSelfTest class methodsFor:'description - project information'!
   1.108 +
   1.109 +companyName
   1.110 +    "Returns a company string which will appear in <lib>.rc.
   1.111 +     Under win32, this is placed into the dll's file-info.
   1.112 +     Other systems may put it elsewhere, or ignore it."
   1.113 +
   1.114 +    ^ 'Claus Gittinger & eXept Software AG'
   1.115 +!
   1.116 +
   1.117 +description
   1.118 +    "Returns a description string which will appear in nt.def / bc.def"
   1.119 +
   1.120 +    ^ 'Smalltalk/X Application'
   1.121 +!
   1.122 +
   1.123 +legalCopyright
   1.124 +    "Returns a copyright string which will appear in <lib>.rc.
   1.125 +     Under win32, this is placed into the dll's file-info.
   1.126 +     Other systems may put it elsewhere, or ignore it."
   1.127 +
   1.128 +    ^ 'Copyright Claus Gittinger 2017\nCopyright eXept Software AG 2017'
   1.129 +!
   1.130 +
   1.131 +productInstallDirBaseName
   1.132 +    "Returns a default installDir which will appear in <app>.nsi.
   1.133 +     This is usually not the one you want to keep"
   1.134 +
   1.135 +    ^ (self package asCollectionOfSubstringsSeparatedByAny:':/') last
   1.136 +!
   1.137 +
   1.138 +productName
   1.139 +    " we get this error, if the concrete class has not yet redefined"
   1.140 +
   1.141 +    ^ 'Smalltalk/X'
   1.142 +! !
   1.143 +
   1.144 +!stx_goodies_builder_quickSelfTest class methodsFor:'description - startup'!
   1.145 +
   1.146 +startupClassName
   1.147 +    "the name of the class which starts the show in its <startupSelector> method.
   1.148 +     Usually, the name of a subclass of StandAloneStartup."
   1.149 +
   1.150 +    ^ 'RunUnitTestsStart'
   1.151 +!
   1.152 +
   1.153 +startupSelector
   1.154 +    "the message that is sent to the startupClass to start the show"
   1.155 +
   1.156 +    ^ #'start'        
   1.157 +! !
   1.158 +
   1.159 +!stx_goodies_builder_quickSelfTest class methodsFor:'documentation'!
   1.160 +
   1.161 +version
   1.162 +    ^ '$Header$'
   1.163 +!
   1.164 +
   1.165 +version_CVS
   1.166 +    ^ '$Header$'
   1.167 +! !
   1.168 +