RegressionTests__StackFrameTest.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 14 Aug 2013 19:16:04 +0200
branchinitialV
changeset 1445 e5bcaa3ce590
parent 145 940e50066f85
child 181 a56517005229
permissions -rw-r--r--
checkin from stx browser
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
71
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"{ Package: 'exept:regression' }"
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
"{ NameSpace: RegressionTests }"
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
99
c06dffcc18d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
     5
TestCase subclass:#StackFrameTest
71
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
	instanceVariableNames:''
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
	classVariableNames:''
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
	poolDictionaries:''
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
	category:'Tests-Regression'
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
!
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
99
c06dffcc18d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 71
diff changeset
    13
!StackFrameTest methodsFor:'tests'!
71
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
145
940e50066f85 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 99
diff changeset
    15
testUnlimitedStack1
940e50066f85 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 99
diff changeset
    16
    10 timesRepeat:[
940e50066f85 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 99
diff changeset
    17
        |a|
940e50066f85 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 99
diff changeset
    18
940e50066f85 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 99
diff changeset
    19
        a := Array with:('1' copy) with:('2' copy) with:('3' copy) with:('4' copy) with:('5' copy).
940e50066f85 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 99
diff changeset
    20
        self unlimitedStackTest1:a.
940e50066f85 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 99
diff changeset
    21
        true.
940e50066f85 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 99
diff changeset
    22
    ] 
940e50066f85 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 99
diff changeset
    23
940e50066f85 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 99
diff changeset
    24
    "
940e50066f85 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 99
diff changeset
    25
     self run:#testUnlimitedStack1
940e50066f85 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 99
diff changeset
    26
    "
940e50066f85 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 99
diff changeset
    27
!
940e50066f85 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 99
diff changeset
    28
71
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
unlimitedStackTest1:anArray
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
"
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
[
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
    |a|
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
    a := Array with:'1' copy with:'2' copy with:'3' copy with:'4' copy with:'5' copy.
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
    self unlimitedStackTest1:a.
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
    true.
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
] whileTrue
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
"
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
%{  /* UNLIMITEDSTACK */
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
    OBJ __returnArray;
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
    OBJ __symbol;
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
    OBJ __returnCode;
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
    if (!__isString(__ArrayInstPtr(anArray)->a_element[0])) {
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
        printf("OOPS\n");
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
    };
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
    if (!__isString(__ArrayInstPtr(anArray)->a_element[1])) {
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
        printf("OOPS\n");
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
    };
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
    if (!__isString(__ArrayInstPtr(anArray)->a_element[2])) {
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
        printf("OOPS\n");
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
    };
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
    if (!__isString(__ArrayInstPtr(anArray)->a_element[3])) {
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
        printf("OOPS\n");
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
    };
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
    if (!__isString(__ArrayInstPtr(anArray)->a_element[4])) {
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
        printf("OOPS\n");
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
    };
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
    __PROTECT__(anArray);
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
    __scavenge();
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
    __UNPROTECT__(anArray);
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
    if (!__isString(__ArrayInstPtr(anArray)->a_element[0])) {
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
        printf("OOPS2\n");
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
    };
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
    if (!__isString(__ArrayInstPtr(anArray)->a_element[1])) {
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
        printf("OOPS2\n");
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
    };
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
    if (!__isString(__ArrayInstPtr(anArray)->a_element[2])) {
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
        printf("OOPS2\n");
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
    };
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
    if (!__isString(__ArrayInstPtr(anArray)->a_element[3])) {
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
        printf("OOPS2\n");
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
    };
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
    if (!__isString(__ArrayInstPtr(anArray)->a_element[4])) {
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
        printf("OOPS2\n");
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
    };
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
%}.
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
! !
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
!StackFrameTest class methodsFor:'documentation'!
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
version
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
    ^ '$Header$'
5d3b7394a36a initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
! !