(main): When testing mode is enabled, use a built-in output driver
[pspp-builds.git] / tests / command / t-test-1s.sh
1 #!/bin/sh
2
3 # This program tests that the T-TEST /TESTVAL command works OK
4
5 TEMPDIR=/tmp/pspp-tst-$$
6 TESTFILE=$TEMPDIR/`basename $0`.sps
7
8 # ensure that top_builddir  are absolute
9 if [ -z "$top_builddir" ] ; then top_builddir=. ; fi
10 if [ -z "$top_srcdir" ] ; then top_srcdir=. ; fi
11 top_builddir=`cd $top_builddir; pwd`
12 PSPP=$top_builddir/src/ui/terminal/pspp
13
14 # ensure that top_srcdir is absolute
15 top_srcdir=`cd $top_srcdir; pwd`
16
17 STAT_CONFIG_PATH=$top_srcdir/config
18 export STAT_CONFIG_PATH
19
20
21 cleanup()
22 {
23      cd /
24      rm -rf $TEMPDIR
25 }
26
27
28 fail()
29 {
30     echo $activity
31     echo FAILED
32     cleanup;
33     exit 1;
34 }
35
36
37 no_result()
38 {
39     echo $activity
40     echo NO RESULT;
41     cleanup;
42     exit 2;
43 }
44
45 pass()
46 {
47     cleanup;
48     exit 0;
49 }
50
51 mkdir -p $TEMPDIR
52
53 cd $TEMPDIR
54
55 activity="create program"
56 cat > $TESTFILE <<EOF
57 data list list /ID * ABC *.
58 begin data.
59 1 3.5
60 2 2.0
61 3 2.0
62 4 3.5
63 5 3.0
64 6 4.0
65 end data.
66
67 t-test /testval=2.0 /var=abc.
68 EOF
69 if [ $? -ne 0 ] ; then no_result ; fi
70
71
72 activity="run program"
73 $SUPERVISOR $PSPP --testing-mode $TESTFILE
74 if [ $? -ne 0 ] ; then no_result ; fi
75
76 activity="compare output"
77 perl -pi -e 's/^\s*$//g' $TEMPDIR/pspp.list
78 diff  -b $TEMPDIR/pspp.list - <<EOF
79 1.1 DATA LIST.  Reading free-form data from INLINE.
80 +--------+------+
81 |Variable|Format|
82 #========#======#
83 |ID      |F8.0  |
84 |ABC     |F8.0  |
85 +--------+------+
86 2.1 T-TEST.  One-Sample Statistics
87 #===#=#====#==============#========#
88 #   #N|Mean|Std. Deviation|SE. Mean#
89 #===#=#====#==============#========#
90 #ABC#6|3.00|           .84|    .342#
91 #===#=#====#==============#========#
92 2.2 T-TEST.  One-Sample Test
93 #===#=====================================================#
94 #   #                Test Value = 2.000000                #
95 #   #-----+--+---------------+---------------+------------#
96 #   #     |  |               |               |    95%     #
97 #   #     |  |               |               +-----+------#
98 #   #  t  |df|Sig. (2-tailed)|Mean Difference|Lower| Upper#
99 #===#=====#==#===============#===============#=====#======#
100 #ABC#2.928| 5|           .033|          1.000|.1220|1.8780#
101 #===#=====#==#===============#===============#=====#======#
102 EOF
103 if [ $? -ne 0 ] ; then fail ; fi
104
105
106 pass