blob: 53fdb1014af31dedc3849bafc4fb2ea33e680465 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
|
#!./perl
# $Header: cmd.while,v 3.0 89/10/18 15:25:07 lwall Locked $
print "1..10\n";
open (tmp,'>Cmd.while.tmp') || die "Can't create Cmd.while.tmp.";
print tmp "tvi925\n";
print tmp "tvi920\n";
print tmp "vt100\n";
print tmp "Amiga\n";
print tmp "paper\n";
close tmp;
# test "last" command
open(fh,'Cmd.while.tmp') || die "Can't open Cmd.while.tmp.";
while (<fh>) {
last if /vt100/;
}
if (!eof && /vt100/) {print "ok 1\n";} else {print "not ok 1 $_\n";}
# test "next" command
$bad = '';
open(fh,'Cmd.while.tmp') || die "Can't open Cmd.while.tmp.";
while (<fh>) {
next if /vt100/;
$bad = 1 if /vt100/;
}
if (!eof || /vt100/ || $bad) {print "not ok 2\n";} else {print "ok 2\n";}
# test "redo" command
$bad = '';
open(fh,'Cmd.while.tmp') || die "Can't open Cmd.while.tmp.";
while (<fh>) {
if (s/vt100/VT100/g) {
s/VT100/Vt100/g;
redo;
}
$bad = 1 if /vt100/;
$bad = 1 if /VT100/;
}
if (!eof || $bad) {print "not ok 3\n";} else {print "ok 3\n";}
# now do the same with a label and a continue block
# test "last" command
$badcont = '';
open(fh,'Cmd.while.tmp') || die "Can't open Cmd.while.tmp.";
line: while (<fh>) {
if (/vt100/) {last line;}
} continue {
$badcont = 1 if /vt100/;
}
if (!eof && /vt100/) {print "ok 4\n";} else {print "not ok 4\n";}
if (!$badcont) {print "ok 5\n";} else {print "not ok 5\n";}
# test "next" command
$bad = '';
$badcont = 1;
open(fh,'Cmd.while.tmp') || die "Can't open Cmd.while.tmp.";
entry: while (<fh>) {
next entry if /vt100/;
$bad = 1 if /vt100/;
} continue {
$badcont = '' if /vt100/;
}
if (!eof || /vt100/ || $bad) {print "not ok 6\n";} else {print "ok 6\n";}
if (!$badcont) {print "ok 7\n";} else {print "not ok 7\n";}
# test "redo" command
$bad = '';
$badcont = '';
open(fh,'Cmd.while.tmp') || die "Can't open Cmd.while.tmp.";
loop: while (<fh>) {
if (s/vt100/VT100/g) {
s/VT100/Vt100/g;
redo loop;
}
$bad = 1 if /vt100/;
$bad = 1 if /VT100/;
} continue {
$badcont = 1 if /vt100/;
}
if (!eof || $bad) {print "not ok 8\n";} else {print "ok 8\n";}
if (!$badcont) {print "ok 9\n";} else {print "not ok 9\n";}
`/bin/rm -f Cmd.while.tmp`;
#$x = 0;
#while (1) {
# if ($x > 1) {last;}
# next;
#} continue {
# if ($x++ > 10) {last;}
# next;
#}
#
#if ($x < 10) {print "ok 10\n";} else {print "not ok 10\n";}
$i = 9;
{
$i++;
}
print "ok $i\n";
|