+dnl PSPP - a program for statistical analysis.
+dnl Copyright (C) 2017 Free Software Foundation, Inc.
+dnl
+dnl This program is free software: you can redistribute it and/or modify
+dnl it under the terms of the GNU General Public License as published by
+dnl the Free Software Foundation, either version 3 of the License, or
+dnl (at your option) any later version.
+dnl
+dnl This program is distributed in the hope that it will be useful,
+dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
+dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+dnl GNU General Public License for more details.
+dnl
+dnl You should have received a copy of the GNU General Public License
+dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
+dnl
AT_BANNER([CHARTS Rudimentary run tests])
dnl Check that the charts work
dnl Better tests will come later (hopefully)
AT_SETUP([Examine])
+AT_KEYWORDS([slow])
AT_DATA([charts.sps],[
input program.
loop #i = 1 to 1000.
end input program.
examine x y by a
- /plot = histogram, npplot
+ /plot = histogram, npplot spreadlevel(1)
.
examine x y by a
.
])
-AT_CHECK([pspp -O format=csv charts.sps], [0], [ignore])
+AT_CHECK([pspp -o pspp.txt charts.sps], [0], [ignore])
AT_CLEANUP
])
-AT_CHECK([pspp -O format=csv roc.sps], [0], [ignore])
+AT_CHECK([pspp -o pspp.txt roc.sps], [0], [ignore])
AT_CLEANUP
])
-AT_CHECK([pspp -O format=csv scree.sps], [0], [ignore])
+AT_CHECK([pspp -o pspp.txt scree.sps], [0], [ignore])
AT_CLEANUP
+
+
+AT_SETUP([Histogram])
+AT_DATA([histogram.sps],[
+* This test is designed to "torture" the code which
+ generates histograms. It is no-crash test. However
+ the code is rich in assertions, so any problems we
+ hope will be caught there.
+
+
+input program.
+loop #i = 1 to 1000.
+ compute pos = rv.normal (56, 3) + rv.uniform (1, 1).
+ compute neg = rv.normal (-86, 2) + rv.uniform (1, 1).
+ compute pn = rv.normal (0, 2) + rv.uniform (1, 2).
+ compute A = rv.uniform (-1, 1).
+ compute A = (A > 0).
+ end case.
+end loop.
+end file.
+end input program.
+
+
+examine pos neg pn by a
+ /plot = histogram
+ .
+
+frequencies pos neg pn
+ /format=notable
+ /histogram=normal.
+])
+
+
+dnl The --testing-mode flag is important!!
+AT_CHECK([pspp --testing-mode -o pspp.txt histogram.sps], [0], [ignore])
+
+AT_CLEANUP
+
+
+AT_SETUP([FREQUENCIES charts])
+AT_DATA([xxx.sps],[
+DATA LIST LIST /nationality (A10) religion (A20) gender (A8).
+BEGIN DATA.
+Australian Sikh Male
+Australian Sikh Male
+Australian Sikh Male
+Australian Sikh Male
+British Zoroastrian Female
+British Buddist Female
+British Buddist Female
+British Zoroastrian Female
+German Muslim Male
+German Christian Male
+German Christian Female
+German Christian Male
+German Zoroastrian Female
+German Sikh Female
+German Muslim Female
+German Pastafarian Female
+German "Jedi Knight" Female
+Belgian Sikh Male
+French Muslim Male
+French Muslim Male
+French Christian Male
+END DATA.
+
+
+FREQUENCIES /VARIABLES=religion nationality /BARCHART /PIECHART.
+])
+
+
+AT_CHECK([pspp -o pspp.txt xxx.sps], [0], [ignore])
+
+AT_CLEANUP
+
+
+
+AT_SETUP([CROSSTABS charts])
+AT_DATA([xxx.sps],[
+DATA LIST LIST /nationality (A10) religion (A20) gender (A8).
+BEGIN DATA.
+Australian Sikh Male
+Australian Sikh Male
+Australian Sikh Male
+Australian Sikh Male
+British Zoroastrian Female
+British Buddist Female
+British Buddist Female
+British Zoroastrian Female
+German Muslim Male
+German Christian Male
+German Christian Female
+German Christian Male
+German Zoroastrian Female
+German Sikh Female
+German Muslim Female
+German Pastafarian Female
+German "Jedi Knight" Female
+Belgian Sikh Male
+French Muslim Male
+French Muslim Male
+French Christian Male
+END DATA.
+
+
+CROSSTABS
+ /tables = nationality by religion by gender
+ /tables = nationality by religion
+ /tables = religion by gender
+ /tables = nationality by religion by gender
+ /barchart.
+])
+
+
+AT_CHECK([pspp -o pspp.txt xxx.sps], [0], [ignore])
+
+AT_CLEANUP
+
+
+
+
+AT_SETUP([BOXPLOT Empty])
+AT_DATA([bp.sps],[
+DATA LIST LIST /X * Y * .
+BEGIN DATA
+1
+2
+2
+2
+3
+END DATA
+
+EXAMINE
+ /VARIABLES = Y
+ /PLOT = BOXPLOT.
+])
+
+
+AT_CHECK([pspp -o pspp.txt bp.sps], [0], [ignore])
+
+AT_CLEANUP
+
+
+
+
+
+
+
+
+
+