quickSelfTest/stx_goodies_builder_quickSelfTest.st
author sr
Fri, 13 Oct 2017 16:13:34 +0200
changeset 462 7aa684f2049c
parent 439 7dd8e85586cb
child 473 3211c7a00310
permissions -rw-r--r--
#OTHER by sr added references
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
462
7aa684f2049c #OTHER by sr
sr
parents: 439
diff changeset
     1
"{ Encoding: utf8 }"
7aa684f2049c #OTHER by sr
sr
parents: 439
diff changeset
     2
370
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
     3
"{ Package: 'stx:goodies/builder/quickSelfTest' }"
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
     4
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
     5
"{ NameSpace: Smalltalk }"
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
     6
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
     7
ApplicationDefinition subclass:#stx_goodies_builder_quickSelfTest
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
     8
	instanceVariableNames:''
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
     9
	classVariableNames:''
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    10
	poolDictionaries:''
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    11
	category:'* Projects & Packages *'
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    12
!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    13
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    14
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    15
!stx_goodies_builder_quickSelfTest class methodsFor:'description'!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    16
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    17
applicationIconFileName
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    18
    ^ nil
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    19
!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    20
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    21
excludedFromPreRequisites
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    22
    "obsolete; temporarily, this is still called for, but will eventually vanish.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    23
    
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    24
     List packages which are to be explicitely excluded from the automatic constructed
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    25
     prerequisites lists (both). 
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    26
     If empty, everything that is found along the inheritance of any of
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    27
     my classes is considered to be a prerequisite package."
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    28
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    29
    ^ #(
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    30
    )
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    31
!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    32
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    33
isGUIApplication
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    34
    "return true, if this is a GUI application.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    35
     (these need more libraries and use a different startup procedure)"
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    36
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    37
    ^ false
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    38
!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    39
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    40
mandatoryPreRequisites
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    41
    "list packages which are mandatory as a prerequisite.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    42
     This are packages containing superclasses of my classes and classes which
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    43
     are extended by myself.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    44
     They are mandatory, because we need these packages as a prerequisite for loading and compiling.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    45
     This method is generated automatically,
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    46
     by searching along the inheritance chain of all of my classes.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    47
     Please take a look at the #referencedPreRequisites method as well."
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    48
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    49
    ^ #(
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    50
        #'stx:libbasic'    "ApplicationDefinition - superclass of stx_goodies_builder_quickSelfTest"
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    51
    )
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    52
!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    53
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    54
referencedPreRequisites
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    55
    "list packages which are a prerequisite, because they contain
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    56
     classes which are referenced by my classes.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    57
     These packages are NOT needed as a prerequisite for compiling or loading,
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    58
     however, a class from it may be referenced during execution and having it
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    59
     unloaded then may lead to a runtime doesNotUnderstand error, unless the caller
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    60
     includes explicit checks for the package being present.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    61
     This method is generated automatically,
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    62
     by searching all classes (and their packages) which are referenced by my classes.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    63
     Please also take a look at the #mandatoryPreRequisites method"
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    64
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    65
    ^ #(
439
7dd8e85586cb #OTHER by sr
sr
parents: 395
diff changeset
    66
        #'stx:goodies/regression'    "RegressionTests::IntegerTest - referenced by RunUnitTestsStart class>>main:"
7dd8e85586cb #OTHER by sr
sr
parents: 395
diff changeset
    67
        #'stx:goodies/sunit'    "TestResultReporter - referenced by RunUnitTests class>>runWithCompiledUnitTestClasses:arguments:debug:"
7dd8e85586cb #OTHER by sr
sr
parents: 395
diff changeset
    68
        #'stx:libcomp'    "ParserFlags - referenced by RunUnitTests class>>runWithCompiledUnitTestClasses:arguments:debug:"
462
7aa684f2049c #OTHER by sr
sr
parents: 439
diff changeset
    69
        #'exept:libcrypt'    "referred by RegressionTests::CryptTests"
370
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    70
    )
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    71
!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    72
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    73
subProjects
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    74
    "list packages which are known as subprojects.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    75
     This method is generated automatically; however, when generating automatically,
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    76
     packages are only added - never removed, unless listed in #excludedFromSubProjects."
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    77
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    78
    ^ #(
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    79
)
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    80
! !
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    81
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    82
!stx_goodies_builder_quickSelfTest class methodsFor:'description - contents'!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    83
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    84
classNamesAndAttributes
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    85
    "lists the classes which are to be included in the project.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    86
     Each entry in the list may be: a single class-name (symbol),
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    87
     or an array-literal consisting of class name and attributes.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    88
     Attributes are: #autoload or #<os> where os is one of win32, unix,..."
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    89
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    90
    ^ #(
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    91
        "<className> or (<className> attributes...) in load order"
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    92
        RunUnitTests
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    93
        RunUnitTestsStart
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    94
        #'stx_goodies_builder_quickSelfTest'
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    95
    )
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    96
!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    97
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    98
extensionMethodNames
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
    99
    "lists the extension methods which are to be included in the project.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   100
     Entries are 2-element array literals, consisting of class-name and selector.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   101
     A correponding method with real names must be present in my concrete subclasses
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   102
     if it has extensions."
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   103
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   104
    ^ #(
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   105
    )
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   106
! !
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   107
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   108
!stx_goodies_builder_quickSelfTest class methodsFor:'description - project information'!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   109
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   110
companyName
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   111
    "Returns a company string which will appear in <lib>.rc.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   112
     Under win32, this is placed into the dll's file-info.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   113
     Other systems may put it elsewhere, or ignore it."
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   114
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   115
    ^ 'Claus Gittinger & eXept Software AG'
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   116
!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   117
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   118
description
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   119
    "Returns a description string which will appear in nt.def / bc.def"
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   120
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   121
    ^ 'Smalltalk/X Application'
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   122
!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   123
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   124
legalCopyright
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   125
    "Returns a copyright string which will appear in <lib>.rc.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   126
     Under win32, this is placed into the dll's file-info.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   127
     Other systems may put it elsewhere, or ignore it."
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   128
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   129
    ^ 'Copyright Claus Gittinger 2017\nCopyright eXept Software AG 2017'
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   130
!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   131
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   132
productInstallDirBaseName
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   133
    "Returns a default installDir which will appear in <app>.nsi.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   134
     This is usually not the one you want to keep"
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   135
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   136
    ^ (self package asCollectionOfSubstringsSeparatedByAny:':/') last
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   137
!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   138
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   139
productName
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   140
    " we get this error, if the concrete class has not yet redefined"
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   141
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   142
    ^ 'Smalltalk/X'
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   143
! !
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   144
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   145
!stx_goodies_builder_quickSelfTest class methodsFor:'description - startup'!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   146
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   147
startupClassName
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   148
    "the name of the class which starts the show in its <startupSelector> method.
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   149
     Usually, the name of a subclass of StandAloneStartup."
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   150
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   151
    ^ 'RunUnitTestsStart'
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   152
!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   153
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   154
startupSelector
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   155
    "the message that is sent to the startupClass to start the show"
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   156
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   157
    ^ #'start'        
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   158
! !
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   159
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   160
!stx_goodies_builder_quickSelfTest class methodsFor:'documentation'!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   161
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   162
version
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   163
    ^ '$Header$'
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   164
!
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   165
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   166
version_CVS
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   167
    ^ '$Header$'
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   168
! !
d9b3eb6618eb initial checkin
sr
parents:
diff changeset
   169