X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=tests%2Fdata%2Fsys-file.at;h=a2980853e1224e4cbde2bb36580add60d70fa3a0;hb=a1731b6d1de448afb3a1b3ba7b774dcb50d543a4;hp=721578e6a0aadf23048adaa846ba6ce35ca41502;hpb=2820390b7d06dd494ba73eeebfbcebd15c76492a;p=pspp-builds.git diff --git a/tests/data/sys-file.at b/tests/data/sys-file.at index 721578e6..a2980853 100644 --- a/tests/data/sys-file.at +++ b/tests/data/sys-file.at @@ -55,14 +55,13 @@ GET FILE='com.sav'. LIST. ]) AT_CHECK([pspp -o pspp.csv sysfile.sps]) -dnl Make sure file really was compressd. -AT_CHECK([dd if=com.sav bs=1 skip=72 count=4 2> /dev/null | od | sed '1q' > com.txt]) -dnl Allow big- or little-endian format. +dnl Make sure file really was compressd, allowing big- or little-endian format. +AT_CHECK([dd if=com.sav bs=1 skip=72 count=4 2> /dev/null > com.sav.subset]) +od com.sav.subset AT_CHECK( - [(echo '0000000 000000 000001' | diff com.txt -) || - (echo '0000000 000001 000000' | diff com.txt -)], [0], + [(printf '\000\000\000\001' | cmp -l com.sav.subset -) || + (printf '\001\000\000\000' | cmp -l com.sav.subset -)], [0], [ignore]) -AT_CAPTURE_FILE([com.txt]) AT_CLEANUP AT_SETUP([overwriting system file]) @@ -380,3 +379,78 @@ d,Format: A32767,,4 VLS_WRITE([UNCOMPRESSED]) VLS_WRITE([COMPRESSED]) + +dnl This test writes non-ASCII characters to most of the string fields in +dnl a .sav file and demonstrates that they are properly read back in. +dnl XXX mrsets tests are missing. +AT_SETUP([system file character encoding]) +AT_CHECK([supports_encodings windows-1252]) +AT_DATA([save.sps], [dnl +SET LOCALE='windows-1252'. +DATA LIST LIST NOTABLE /àéîöç * roué (A9) croûton (A1000). +FILE LABEL 'clientèle confrère cortège crèche'. +DOCUMENT coördinate smörgåsbord +épée séance soufflé soirée +jalapeño vicuña. +VALUE LABEL + /àéîöç 1 'éclair élan' + /roué 'abcdefghi' 'sauté précis'. +VARIABLE LABEL + roué 'Provençal soupçon'. +DATAFILE ATTRIBUTE + ATTRIBUTE=Furtwängler('kindergärtner'). +VARIABLE ATTRIBUTE + VARIABLES=àéîöç + ATTRIBUTE=Atatürk('Düsseldorf Gewürztraminer'). +BEGIN DATA. +1 a x +2 b y +3 c z +END DATA. +SAVE OUTFILE='foo.sav'. +]) +AT_CHECK([pspp -O format=csv save.sps]) +AT_DATA([get.sps], [dnl +GET FILE='foo.sav'. +DISPLAY FILE LABEL. +DISPLAY DOCUMENTS. +DISPLAY DICTIONARY. +]) +AT_CHECK([pspp -o pspp.csv get.sps]) +AT_CHECK([[sed 's/(Entered [^)]*)/(Entered )/' pspp.csv]], [0], [dnl +File label: clientèle confrère cortège crèche + +Documents in the active dataset: + +DOCUMENT coördinate smörgåsbord + +épée séance soufflé soirée + +jalapeño vicuña. + +(Entered ) + +Variable,Description,,Position +àéîöç,Format: F8.2,,1 +,Measure: Scale,, +,Display Alignment: Right,, +,Display Width: 8,, +,1.00,éclair élan, +,Custom attributes:,, +,Atatürk,Düsseldorf Gewürztraminer, +roué,Provençal soupçon,,2 +,Format: A9,, +,Measure: Nominal,, +,Display Alignment: Left,, +,Display Width: 9,, +,abcdefghi,sauté précis, +croûton,Format: A1000,,3 +,Measure: Nominal,, +,Display Alignment: Left,, +,Display Width: 32,, + +Table: Custom data file attributes. +Attribute,Value +Furtwängler,kindergärtner +]) +AT_CLEANUP