summaryrefslogtreecommitdiff
path: root/tests/test/tcase28.pp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test/tcase28.pp')
-rw-r--r--tests/test/tcase28.pp89
1 files changed, 89 insertions, 0 deletions
diff --git a/tests/test/tcase28.pp b/tests/test/tcase28.pp
new file mode 100644
index 0000000000..f14c379251
--- /dev/null
+++ b/tests/test/tcase28.pp
@@ -0,0 +1,89 @@
+{ test for simple comparsion }
+
+{$H-}
+
+var
+ my_str: string;
+ my_str_wide: widestring;
+ my_str_ansi: ansistring;
+ my_str_uni: unicodestring;
+ i: integer;
+
+begin
+ my_str := 'ababaca';
+ my_str_wide := 'ababaca';
+ my_str_ansi := 'ababaca';
+ my_str_uni := 'ababaca';
+ i := -1;
+
+ case my_str of
+ 'abba': i := 1;
+ 'ababac': i := 2;
+ 'ababacaa': i := 3;
+ 'ababaca ': i := 4;
+ ' ababaca': i := 5;
+ ' ababac': i := 6;
+ 'ababaca': i := 7;
+ else i := 0;
+ end;
+
+ writeln(i);
+ if (i <> 7) then begin
+ writeln('Error');
+ Halt(1);
+ end;
+
+
+ case my_str_wide of
+ 'abba': i := 1;
+ 'ababac': i := 2;
+ 'ababacaa': i := 3;
+ 'ababaca ': i := 4;
+ ' ababaca': i := 5;
+ ' ababac': i := 6;
+ 'ababaca': i := 7;
+ else i := 0;
+ end;
+
+ writeln(i);
+ if (i <> 7) then begin
+ writeln('Error');
+ Halt(1);
+ end;
+
+
+ case my_str_ansi of
+ 'abba': i := 1;
+ 'ababac': i := 2;
+ 'ababacaa': i := 3;
+ 'ababaca ': i := 4;
+ ' ababaca': i := 5;
+ ' ababac': i := 6;
+ 'ababaca': i := 7;
+ else i := 0;
+ end;
+
+ writeln(i);
+ if (i <> 7) then begin
+ writeln('Error');
+ Halt(1);
+ end;
+
+
+ case my_str_uni of
+ 'abba': i := 1;
+ 'ababac': i := 2;
+ 'ababacaa': i := 3;
+ 'ababaca ': i := 4;
+ ' ababaca': i := 5;
+ ' ababac': i := 6;
+ 'ababaca': i := 7;
+ else i := 0;
+ end;
+
+ writeln(i);
+ if (i <> 7) then begin
+ writeln('Error');
+ Halt(1);
+ end;
+end.