Merge commit 'origin/stable'
[pspp-builds.git] / tests / bugs / t-test-alpha.sh
1 #!/bin/sh
2
3 # This program tests that the T-TEST works when the independent
4 # variable is alpha
5 # BUG #11227
6
7 TEMPDIR=/tmp/pspp-tst-$$
8 TESTFILE=$TEMPDIR/`basename $0`.sps
9
10 # ensure that top_builddir  are absolute
11 if [ -z "$top_builddir" ] ; then top_builddir=. ; fi
12 if [ -z "$top_srcdir" ] ; then top_srcdir=. ; fi
13 top_builddir=`cd $top_builddir; pwd`
14 PSPP=$top_builddir/src/ui/terminal/pspp
15
16 # ensure that top_srcdir is absolute
17 top_srcdir=`cd $top_srcdir; pwd`
18
19 STAT_CONFIG_PATH=$top_srcdir/config
20 export STAT_CONFIG_PATH
21
22
23 cleanup()
24 {
25      if [ x"$PSPP_TEST_NO_CLEANUP" != x ] ; then 
26         echo "NOT cleaning $TEMPDIR" 
27         return ; 
28      fi
29      cd /
30      rm -rf $TEMPDIR
31 }
32
33
34 fail()
35 {
36     echo $activity
37     echo FAILED
38     cleanup;
39     exit 1;
40 }
41
42
43 no_result()
44 {
45     echo $activity
46     echo NO RESULT;
47     cleanup;
48     exit 2;
49 }
50
51 pass()
52 {
53     cleanup;
54     exit 0;
55 }
56
57 mkdir -p $TEMPDIR
58
59 cd $TEMPDIR
60
61 activity="create program"
62 cat > $TESTFILE <<EOF
63 data list list /ID * INDEP (a1) DEP1 * DEP2 *.
64 begin data.
65 1  'a' 1 3
66 2  'a' 2 4
67 3  'a' 2 4 
68 4  'a' 2 4 
69 5  'a' 3 5
70 6  'b' 3 1
71 7  'b' 4 2
72 8  'b' 4 2
73 9  'b' 4 2
74 10 'b' 5 3
75 11 'c' 2 2
76 end data.
77
78
79 t-test /GROUPS=indep('a','b') /var=dep1 dep2.
80 EOF
81 if [ $? -ne 0 ] ; then no_result ; fi
82
83
84 activity="run program"
85 $SUPERVISOR $PSPP --testing-mode $TESTFILE
86 if [ $? -ne 0 ] ; then no_result ; fi
87
88 activity="compare output"
89 perl -pi -e 's/^\s*$//g' $TEMPDIR/pspp.list
90 diff  -b $TEMPDIR/pspp.list - <<EOF
91 1.1 DATA LIST.  Reading free-form data from INLINE.
92 +--------+------+
93 |Variable|Format|
94 #========#======#
95 |ID      |F8.0  |
96 |INDEP   |A1    |
97 |DEP1    |F8.0  |
98 |DEP2    |F8.0  |
99 +--------+------+
100 2.1 T-TEST.  Group Statistics
101 #==========#=#====#==============#=========#
102 #     INDEP|N|Mean|Std. Deviation|S.E. Mean#
103 #==========#=#====#==============#=========#
104 #DEP1 a    |5|2.00|           .71|      .32#
105 #     b    |5|4.00|           .71|      .32#
106 #DEP2 a    |5|4.00|           .71|      .32#
107 #     b    |5|2.00|           .71|      .32#
108 #==========#=#====#==============#=========#
109 2.2 T-TEST.  Independent Samples Test
110 #===============================#========#============================================================================#
111 #                               #Levene's|                        t-test for Equality of Means                        #
112 #                               #---+----+-----+----+---------------+---------------+---------------------+-----------#
113 #                               #   |    |     |    |               |               |                     |    95%    #
114 #                               #   |    |     |    |               |               |                     +-----+-----#
115 #                               # F |Sig.|  t  | df |Sig. (2-tailed)|Mean Difference|Std. Error Difference|Lower|Upper#
116 #===============================#===#====#=====#====#===============#===============#=====================#=====#=====#
117 #DEP1Equal variances assumed    #.00|1.00|-4.47|8.00|            .00|          -2.00|                  .45|-3.03| -.97#
118 #    Equal variances not assumed#   |    |-4.47|8.00|            .00|          -2.00|                  .45|-3.03| -.97#
119 #DEP2Equal variances assumed    #.00|1.00| 4.47|8.00|            .00|           2.00|                  .45|  .97| 3.03#
120 #    Equal variances not assumed#   |    | 4.47|8.00|            .00|           2.00|                  .45|  .97| 3.03#
121 #===============================#===#====#=====#====#===============#===============#=====================#=====#=====#
122 EOF
123 if [ $? -ne 0 ] ; then fail ; fi
124
125
126 pass