summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gnat.dg/expect3.adb
blob: a833ea9945b8cd900ae391c9a1b1bdfc56dd5c62 (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
--  { dg-do run }

with Ada.Text_IO;

with GNAT.Expect.TTY;
with GNAT.OS_Lib;

procedure Expect3 is
   Pid    : GNAT.Expect.TTY.TTY_Process_Descriptor;
   Args   : GNAT.OS_Lib.Argument_List (1 .. 0);
   Result : GNAT.Expect.Expect_Match;

begin
   Pid.Non_Blocking_Spawn ("true", Args);

   begin
      Pid.Expect (Result, ".*");

      raise Program_Error;

   exception
      when GNAT.Expect.Process_Died =>
         declare
            File : Ada.Text_IO.File_Type;

         begin
            Ada.Text_IO.Create (File);
            Pid.Close;
            Ada.Text_IO.Put_Line (File, "Test of write operation");
            Ada.Text_IO.Close (File);
         end;
   end;
end Expect3;