X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=tests%2Flanguage%2Fdata-io%2Fupdate.at;h=2968b455ffd780a56e24d68592aab1b6e711c4e8;hb=60b4c9b436dbead4227eb798b8b41343ef3c0054;hp=b2c7c482f232aba5616b44465893fd2bd3e55f33;hpb=691a034d7f2139076fa012739dffd40ef5db4a9b;p=pspp diff --git a/tests/language/data-io/update.at b/tests/language/data-io/update.at index b2c7c482f2..2968b455ff 100644 --- a/tests/language/data-io/update.at +++ b/tests/language/data-io/update.at @@ -1,19 +1,19 @@ dnl PSPP - a program for statistical analysis. -dnl Copyright (C) 2017 Free Software Foundation, Inc. -dnl +dnl Copyright (C) 2017, 2020 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 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 dnl You should have received a copy of the GNU General Public License dnl along with this program. If not, see . -dnl m4_define([CHECK_UPDATE], +m4_define([CHECK_UPDATE], [AT_SETUP([UPDATE $1 with $2]) AT_DATA([a.data], [dnl 1aB @@ -56,7 +56,7 @@ m4_if([$2], [sav], [], [DATA LIST NOTABLE FILE='b.data' /a b c 1-3 (A).]) UPDATE m4_if([$1], [sav], [FILE='a.sav'], [FILE=*]) /IN=InA /SORT m4_if([$2], [sav], [FILE='b.sav'], [FILE=*]) /IN=InB /RENAME c=d - BY a. + /BY a. LIST. ]) cat update.sps @@ -88,3 +88,33 @@ AT_BANNER([UPDATE]) CHECK_UPDATE([sav], [sav]) CHECK_UPDATE([sav], [inline]) CHECK_UPDATE([inline], [sav]) + +dnl Far more syntax errors are possible, but the rest are all covered +dnl by the MATCH FILES tests. +AT_SETUP([UPDATE syntax errors]) +AT_DATA([insert.sps], [dnl +INSERT FILE='update.sps' ERROR=IGNORE. +]) +AT_DATA([update.sps], [dnl +DATA LIST LIST NOTABLE/name (A6) x. +BEGIN DATA. +al,7 +brad,8 +carl,9 +END DATA. +SAVE OUTFILE='x.sav'. + +DATA LIST LIST NOTABLE/name (A7) y. +BEGIN DATA. +al,1 +carl,2 +dan,3 +END DATA. +UPDATE/FILE='x.sav'/FILE=*/RENAME(name=name2). +]) +AT_CHECK([pspp --testing-mode -O format=csv insert.sps], [1], [dnl +"update.sps:15.1-15.46: error: UPDATE: Required subcommand BY was not specified. + 15 | UPDATE/FILE='x.sav'/FILE=*/RENAME(name=name2). + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" +]) +AT_CLEANUP