summaryrefslogtreecommitdiffstats
path: root/pigeonhole/tests/extensions/mime/errors/break.sieve
blob: 1858673513f3772324231e391abfc2f46a8730ae (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
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
require "foreverypart";

foreverypart :name "frop" {
	# 1: Spurious tag
	break :tag;

	# 2: Spurious tests
	break true;

	# 3: Spurious tests
	break anyof(true, false);

	# 4: Bare string
	break "frop";

	# 5: Bare string-list
	break ["frop", "friep"];

	# 6: Several bad arguments
	break 13 ["frop", "friep"];

	# 7: Spurious additional tag
	break :name "frop" :friep;

	# 8: Spurious additional string
	break :name "frop" "friep";

	# 9: Bad name
	break :name 13;

	# 10: Bad name
	break :name ["frop", "friep"];

	# No error
	break;

	# No error
	break :name "frop";

	# No error
	if exists "frop" {
		break;
	}

	# No error
	if exists "frop" {
		break :name "frop";
	}

	# No error	
	foreverypart {
		break :name "frop";
	}

	# No error
	foreverypart :name "friep" {
		break :name "frop";
	}

	# No error
	foreverypart :name "friep" {
		break :name "friep";
	}

	# No error
	foreverypart :name "friep" {
		break;
	}

	# No error	
	foreverypart {
		if exists "frop" {
			break :name "frop";
		}
	}

	# No error
	foreverypart :name "friep" {
		if exists "frop" {
			break :name "frop";
		}
	}

	# No error
	foreverypart :name "friep" {
		if exists "frop" {
			break :name "friep";
		}
	}

	# No error
	foreverypart :name "friep" {
		if exists "frop" {
			break;
		}
	}
}

# 11: Outside loop
break; 

# 12: Outside loop
if exists "frop" {
	break;
}

# 13: Outside loop
break :name "frop";

# 14: Outside loop
if exists "frop" {
	break :name "frop";
}

# 15: Bad name
foreverypart {
	break :name "frop";
}

# 16: Bad name
foreverypart {
	if exists "frop" {
		break :name "frop";
	}
}

# 17: Bad name
foreverypart :name "friep" {
	break :name "frop";
}

# 18: Bad name
foreverypart :name "friep" {
	if exists "frop" {
		break :name "frop";
	}
}

# 19: Bad name
foreverypart :name "friep" {
	foreverypart :name "frop" {
		break :name "frml";
	}
}

# 20: Bad name
foreverypart :name "friep" {
	foreverypart :name "frop" {
		if exists "frop" {
			break :name "frml";
		}
	}
}