Skip to content

Commit c803e89

Browse files
committed
test(*): Added case where parent calls multiple programs to test CANCEL ALL
* Added tests related to modifying cob_push_call_stack_list
1 parent cdd2ac2 commit c803e89

File tree

1 file changed

+65
-0
lines changed

1 file changed

+65
-0
lines changed

tests/run.src/misc.at

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -605,6 +605,71 @@ AT_CHECK([./prog], [0],
605605

606606
AT_CLEANUP
607607

608+
AT_SETUP([CANCEL ALL horizontal program])
609+
610+
AT_DATA([prog.cob], [
611+
IDENTIFICATION DIVISION.
612+
PROGRAM-ID. prog.
613+
PROCEDURE DIVISION.
614+
CALL "call01"
615+
END-CALL.
616+
CALL "call02"
617+
END-CALL.
618+
CALL "call03"
619+
END-CALL.
620+
CANCEL ALL.
621+
CALL "call01"
622+
END-CALL.
623+
CALL "call02"
624+
END-CALL.
625+
CALL "call03"
626+
END-CALL.
627+
STOP RUN.
628+
])
629+
630+
AT_DATA([call01.cob], [
631+
IDENTIFICATION DIVISION.
632+
PROGRAM-ID. call01.
633+
DATA DIVISION.
634+
WORKING-STORAGE SECTION.
635+
PROCEDURE DIVISION.
636+
GOBACK.
637+
])
638+
639+
AT_DATA([call02.cob], [
640+
IDENTIFICATION DIVISION.
641+
PROGRAM-ID. call02.
642+
DATA DIVISION.
643+
WORKING-STORAGE SECTION.
644+
PROCEDURE DIVISION.
645+
GOBACK.
646+
])
647+
648+
AT_DATA([call03.cob], [
649+
IDENTIFICATION DIVISION.
650+
PROGRAM-ID. call03.
651+
DATA DIVISION.
652+
WORKING-STORAGE SECTION.
653+
01 X PIC 9.
654+
PROCEDURE DIVISION.
655+
ADD 1 TO X.
656+
DISPLAY X
657+
END-DISPLAY.
658+
EXIT PROGRAM.
659+
GOBACK.
660+
])
661+
662+
AT_CHECK([${COMPILE} -o prog prog.cob])
663+
AT_CHECK([${COMPILE_MODULE} call01.cob])
664+
AT_CHECK([${COMPILE_MODULE} call02.cob])
665+
AT_CHECK([${COMPILE_MODULE} call03.cob])
666+
AT_CHECK([./prog], [0],
667+
[1
668+
1
669+
])
670+
671+
AT_CLEANUP
672+
608673
AT_SETUP([CALL binary literal parameter/LENGTH OF - so])
609674

610675
AT_CHECK([test $SHREXT != "dll" || exit 77])

0 commit comments

Comments
 (0)