aboutsummaryrefslogtreecommitdiff
path: root/example/calc/testsuite/config/unix.exp
blob: 9783c9cb848ba9c0e267423b8b807733add3ea78 (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
# Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
#
# This file is part of DejaGnu.
#
# DejaGnu is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# DejaGnu is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with DejaGnu; if not, write to the Free Software Foundation,
# Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.

if ![info exists prompt] then {
    set prompt "calc: "
}
#
# calc_version -- extract and print the version number of calc
#

proc calc_version {} {
    global CALC
    global prompt
    set tmp [exec echo "version" | $CALC]
    regexp "$prompt *(\[^\n\]*)\n.*" $tmp tmp version
    clone_output "[which $CALC] version $version\n"
}
#
# calc_load -- loads the program
#
proc calc_load { arg } {
    #
}

#
# calc_exit -- quit and cleanup
#
proc calc_exit {} {
    send "quit\n"
}

#
# calc_start -- start calc running
#
proc calc_start {} {
    global CALC
    global prompt
    global spawn_id
    global verbose

    if { $verbose > 1 } {
	send_user "starting $CALC\n"
    }
    spawn $CALC
    expect {
	-re "No such file.*" { perror "Can't start $CALC"; exit 1 }
	-re "$prompt$" { }
	timeout { perror "Failed to spawn $CALC (timeout)"; exit 1 }
    }
}

calc_start