summaryrefslogtreecommitdiff
path: root/fpcsrc/tests/test/units/system/tseg.pp
blob: 82d5f3a8d317d8debfa5ae9e8cb8b1da2933c9cd (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
{ Part of System unit testsuit        }
{ Carl Eric Codere Copyright (c) 2002 }
program tseg;

const
 cst : integer = 0;
var
 variable : integer;

procedure fail;
 begin
  WriteLn('Failure!');
  halt(1);
 end;

procedure test_cseg;
 begin
   Write('Testing CSeg()...');
   if cseg <> 0 then
     fail
   else
     WriteLn('Success!');
 end;

procedure test_dseg;
 begin
   Write('Testing DSeg()...');
   if dseg <> 0 then
     fail
   else
     WriteLn('Success!');
 end;

procedure test_sseg;
 begin
   Write('Testing SSeg()...');
   if sseg <> 0 then
     fail
   else
     WriteLn('Success!');
 end;

procedure test_seg;
 var
   x : longint;
   _result : boolean;
 begin
   _result := true;
   Write('Testing Seg()...');
   if seg(x) <> 0 then
     _result := false;
   if seg(cst) <> 0 then
     _result := false;
   if seg(variable) <> 0 then
     _result := false;
   if not _result then
     fail
   else
     WriteLn('Success!');
 end;

Begin
  test_cseg;
  test_dseg;
  test_seg;
  test_sseg;
end.