summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2014-10-08 19:58:51 -0700
committerKaz Kylheku <kaz@kylheku.com>2014-10-08 19:58:51 -0700
commit5b148568309d4716b3a06a40b4f6bcf6848bf65f (patch)
tree23b0c5891e523466fcba5af9fbb5d8cb40b1ec22
parent2b00fdfe4bc329fbf4d1dd32835a2476c7c1e2f6 (diff)
downloadtxr-5b148568309d4716b3a06a40b4f6bcf6848bf65f.tar.gz
txr-5b148568309d4716b3a06a40b4f6bcf6848bf65f.tar.bz2
txr-5b148568309d4716b3a06a40b4f6bcf6848bf65f.zip
Add test case for recent breakage.
* tests/006/freeform-3.expected: New file. * tests/006/freeform-3.txr: New file. * tests/006/passwd: New file. * Makefile (TXR_ARGS): Set up for new test case.
-rw-r--r--ChangeLog12
-rw-r--r--Makefile1
-rw-r--r--tests/006/freeform-3.expected280
-rw-r--r--tests/006/freeform-3.txr4
-rw-r--r--tests/006/passwd40
5 files changed, 337 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 50bfaabb..b9944620 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,17 @@
2014-10-08 Kaz Kylheku <kaz@kylheku.com>
+ Add test case for recent breakage.
+
+ * tests/006/freeform-3.expected: New file.
+
+ * tests/006/freeform-3.txr: New file.
+
+ * tests/006/passwd: New file.
+
+ * Makefile (TXR_ARGS): Set up for new test case.
+
+2014-10-08 Kaz Kylheku <kaz@kylheku.com>
+
Fix 2011-12-03 regression. The freeform directive code
relies on lazy_str_get_trailing_list and the behavior
of that function changed because (split-str "" any-separator)
diff --git a/Makefile b/Makefile
index 511ed9d5..cd870446 100644
--- a/Makefile
+++ b/Makefile
@@ -121,6 +121,7 @@ tests/005/%: TXR_ARGS := $(top_srcdir)/tests/005/data
tests/005/%: TXR_OPTS := -B
tests/006/%: TXR_ARGS := $(top_srcdir)/tests/006/data
tests/006/%: TXR_OPTS := -B
+tests/006/freeform-3.ok: TXR_ARGS := $(top_srcdir)/tests/006/passwd
tests/008/tokenize.ok: TXR_ARGS := $(top_srcdir)/tests/008/data
tests/008/configfile.ok: TXR_ARGS := $(top_srcdir)/tests/008/configfile
tests/008/students.ok: TXR_ARGS := $(top_srcdir)/tests/008/students.xml
diff --git a/tests/006/freeform-3.expected b/tests/006/freeform-3.expected
new file mode 100644
index 00000000..33a6e6cc
--- /dev/null
+++ b/tests/006/freeform-3.expected
@@ -0,0 +1,280 @@
+token_0[0]="root"
+token_1[0]="x"
+token_2[0]="0"
+token_3[0]="0"
+token_4[0]="root"
+token_5[0]="/root"
+token_6[0]="/bin/bash"
+token_0[1]="daemon"
+token_1[1]="x"
+token_2[1]="1"
+token_3[1]="1"
+token_4[1]="daemon"
+token_5[1]="/usr/sbin"
+token_6[1]="/bin/sh"
+token_0[2]="bin"
+token_1[2]="x"
+token_2[2]="2"
+token_3[2]="2"
+token_4[2]="bin"
+token_5[2]="/bin"
+token_6[2]="/bin/sh"
+token_0[3]="sys"
+token_1[3]="x"
+token_2[3]="3"
+token_3[3]="3"
+token_4[3]="sys"
+token_5[3]="/dev"
+token_6[3]="/bin/sh"
+token_0[4]="sync"
+token_1[4]="x"
+token_2[4]="4"
+token_3[4]="65534"
+token_4[4]="sync"
+token_5[4]="/bin"
+token_6[4]="/bin/sync"
+token_0[5]="games"
+token_1[5]="x"
+token_2[5]="5"
+token_3[5]="60"
+token_4[5]="games"
+token_5[5]="/usr/games"
+token_6[5]="/bin/sh"
+token_0[6]="man"
+token_1[6]="x"
+token_2[6]="6"
+token_3[6]="12"
+token_4[6]="man"
+token_5[6]="/var/cache/man"
+token_6[6]="/bin/sh"
+token_0[7]="lp"
+token_1[7]="x"
+token_2[7]="7"
+token_3[7]="7"
+token_4[7]="lp"
+token_5[7]="/var/spool/lpd"
+token_6[7]="/bin/sh"
+token_0[8]="mail"
+token_1[8]="x"
+token_2[8]="8"
+token_3[8]="8"
+token_4[8]="mail"
+token_5[8]="/var/mail"
+token_6[8]="/bin/sh"
+token_0[9]="news"
+token_1[9]="x"
+token_2[9]="9"
+token_3[9]="9"
+token_4[9]="news"
+token_5[9]="/var/spool/news"
+token_6[9]="/bin/sh"
+token_0[10]="uucp"
+token_1[10]="x"
+token_2[10]="10"
+token_3[10]="10"
+token_4[10]="uucp"
+token_5[10]="/var/spool/uucp"
+token_6[10]="/bin/sh"
+token_0[11]="proxy"
+token_1[11]="x"
+token_2[11]="13"
+token_3[11]="13"
+token_4[11]="proxy"
+token_5[11]="/bin"
+token_6[11]="/bin/sh"
+token_0[12]="www-data"
+token_1[12]="x"
+token_2[12]="33"
+token_3[12]="33"
+token_4[12]="www-data"
+token_5[12]="/var/www"
+token_6[12]="/bin/sh"
+token_0[13]="backup"
+token_1[13]="x"
+token_2[13]="34"
+token_3[13]="34"
+token_4[13]="backup"
+token_5[13]="/var/backups"
+token_6[13]="/bin/sh"
+token_0[14]="list"
+token_1[14]="x"
+token_2[14]="38"
+token_3[14]="38"
+token_4[14]="Mailing List Manager"
+token_5[14]="/var/list"
+token_6[14]="/bin/sh"
+token_0[15]="irc"
+token_1[15]="x"
+token_2[15]="39"
+token_3[15]="39"
+token_4[15]="ircd"
+token_5[15]="/var/run/ircd"
+token_6[15]="/bin/sh"
+token_0[16]="gnats"
+token_1[16]="x"
+token_2[16]="41"
+token_3[16]="41"
+token_4[16]="Gnats Bug-Reporting System (admin)"
+token_5[16]="/var/lib/gnats"
+token_6[16]="/bin/sh"
+token_0[17]="nobody"
+token_1[17]="x"
+token_2[17]="65534"
+token_3[17]="65534"
+token_4[17]="nobody"
+token_5[17]="/nonexistent"
+token_6[17]="/bin/sh"
+token_0[18]="libuuid"
+token_1[18]="x"
+token_2[18]="100"
+token_3[18]="101"
+token_4[18]=""
+token_5[18]="/var/lib/libuuid"
+token_6[18]="/bin/sh"
+token_0[19]="syslog"
+token_1[19]="x"
+token_2[19]="101"
+token_3[19]="103"
+token_4[19]=""
+token_5[19]="/home/syslog"
+token_6[19]="/bin/false"
+token_0[20]="messagebus"
+token_1[20]="x"
+token_2[20]="102"
+token_3[20]="105"
+token_4[20]=""
+token_5[20]="/var/run/dbus"
+token_6[20]="/bin/false"
+token_0[21]="avahi-autoipd"
+token_1[21]="x"
+token_2[21]="103"
+token_3[21]="108"
+token_4[21]="Avahi autoip daemon,,,"
+token_5[21]="/var/lib/avahi-autoipd"
+token_6[21]="/bin/false"
+token_0[22]="avahi"
+token_1[22]="x"
+token_2[22]="104"
+token_3[22]="109"
+token_4[22]="Avahi mDNS daemon,,,"
+token_5[22]="/var/run/avahi-daemon"
+token_6[22]="/bin/false"
+token_0[23]="usbmux"
+token_1[23]="x"
+token_2[23]="105"
+token_3[23]="46"
+token_4[23]="usbmux daemon,,,"
+token_5[23]="/home/usbmux"
+token_6[23]="/bin/false"
+token_0[24]="gdm"
+token_1[24]="x"
+token_2[24]="106"
+token_3[24]="114"
+token_4[24]="Gnome Display Manager"
+token_5[24]="/var/lib/gdm"
+token_6[24]="/bin/false"
+token_0[25]="speech-dispatcher"
+token_1[25]="x"
+token_2[25]="107"
+token_3[25]="29"
+token_4[25]="Speech Dispatcher,,,"
+token_5[25]="/var/run/speech-dispatcher"
+token_6[25]="/bin/sh"
+token_0[26]="kernoops"
+token_1[26]="x"
+token_2[26]="108"
+token_3[26]="65534"
+token_4[26]="Kernel Oops Tracking Daemon,,,"
+token_5[26]="/"
+token_6[26]="/bin/false"
+token_0[27]="pulse"
+token_1[27]="x"
+token_2[27]="109"
+token_3[27]="116"
+token_4[27]="PulseAudio daemon,,,"
+token_5[27]="/var/run/pulse"
+token_6[27]="/bin/false"
+token_0[28]="rtkit"
+token_1[28]="x"
+token_2[28]="110"
+token_3[28]="119"
+token_4[28]="RealtimeKit,,,"
+token_5[28]="/proc"
+token_6[28]="/bin/false"
+token_0[29]="hplip"
+token_1[29]="x"
+token_2[29]="111"
+token_3[29]="7"
+token_4[29]="HPLIP system user,,,"
+token_5[29]="/var/run/hplip"
+token_6[29]="/bin/false"
+token_0[30]="saned"
+token_1[30]="x"
+token_2[30]="112"
+token_3[30]="121"
+token_4[30]=""
+token_5[30]="/home/saned"
+token_6[30]="/bin/false"
+token_0[31]="kaz"
+token_1[31]="x"
+token_2[31]="500"
+token_3[31]="500"
+token_4[31]="Kaz,,,"
+token_5[31]="/home/kaz"
+token_6[31]="/bin/bash"
+token_0[32]="vboxadd"
+token_1[32]="x"
+token_2[32]="999"
+token_3[32]="1"
+token_4[32]=""
+token_5[32]="/var/run/vboxadd"
+token_6[32]="/bin/false"
+token_0[33]="sshd"
+token_1[33]="x"
+token_2[33]="113"
+token_3[33]="65534"
+token_4[33]=""
+token_5[33]="/var/run/sshd"
+token_6[33]="/usr/sbin/nologin"
+token_0[34]="oprofile"
+token_1[34]="x"
+token_2[34]="115"
+token_3[34]="124"
+token_4[34]="OProfile JIT user,,,"
+token_5[34]="/var/lib/oprofile"
+token_6[34]="/bin/bash"
+token_0[35]="ntp"
+token_1[35]="x"
+token_2[35]="116"
+token_3[35]="125"
+token_4[35]=""
+token_5[35]="/home/ntp"
+token_6[35]="/bin/false"
+token_0[36]="lightdm"
+token_1[36]="x"
+token_2[36]="117"
+token_3[36]="126"
+token_4[36]="Light Display Manager"
+token_5[36]="/var/lib/lightdm"
+token_6[36]="/bin/false"
+token_0[37]="colord"
+token_1[37]="x"
+token_2[37]="118"
+token_3[37]="127"
+token_4[37]="colord colour management daemon,,,"
+token_5[37]="/var/lib/colord"
+token_6[37]="/bin/false"
+token_0[38]="whoopsie"
+token_1[38]="x"
+token_2[38]="114"
+token_3[38]="123"
+token_4[38]=""
+token_5[38]="/nonexistent"
+token_6[38]="/bin/false"
+token_0[39]="postfix"
+token_1[39]="x"
+token_2[39]="119"
+token_3[39]="130"
+token_4[39]=""
+token_5[39]="/var/spool/postfix"
+token_6[39]="/bin/false"
diff --git a/tests/006/freeform-3.txr b/tests/006/freeform-3.txr
new file mode 100644
index 00000000..04629820
--- /dev/null
+++ b/tests/006/freeform-3.txr
@@ -0,0 +1,4 @@
+@(collect)
+@(freeform 1 ":")
+@(coll)@{token /[^:]*/}:@(end)
+@(end)
diff --git a/tests/006/passwd b/tests/006/passwd
new file mode 100644
index 00000000..1a0a678b
--- /dev/null
+++ b/tests/006/passwd
@@ -0,0 +1,40 @@
+root:x:0:0:root:/root:/bin/bash
+daemon:x:1:1:daemon:/usr/sbin:/bin/sh
+bin:x:2:2:bin:/bin:/bin/sh
+sys:x:3:3:sys:/dev:/bin/sh
+sync:x:4:65534:sync:/bin:/bin/sync
+games:x:5:60:games:/usr/games:/bin/sh
+man:x:6:12:man:/var/cache/man:/bin/sh
+lp:x:7:7:lp:/var/spool/lpd:/bin/sh
+mail:x:8:8:mail:/var/mail:/bin/sh
+news:x:9:9:news:/var/spool/news:/bin/sh
+uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
+proxy:x:13:13:proxy:/bin:/bin/sh
+www-data:x:33:33:www-data:/var/www:/bin/sh
+backup:x:34:34:backup:/var/backups:/bin/sh
+list:x:38:38:Mailing List Manager:/var/list:/bin/sh
+irc:x:39:39:ircd:/var/run/ircd:/bin/sh
+gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
+nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
+libuuid:x:100:101::/var/lib/libuuid:/bin/sh
+syslog:x:101:103::/home/syslog:/bin/false
+messagebus:x:102:105::/var/run/dbus:/bin/false
+avahi-autoipd:x:103:108:Avahi autoip daemon,,,:/var/lib/avahi-autoipd:/bin/false
+avahi:x:104:109:Avahi mDNS daemon,,,:/var/run/avahi-daemon:/bin/false
+usbmux:x:105:46:usbmux daemon,,,:/home/usbmux:/bin/false
+gdm:x:106:114:Gnome Display Manager:/var/lib/gdm:/bin/false
+speech-dispatcher:x:107:29:Speech Dispatcher,,,:/var/run/speech-dispatcher:/bin/sh
+kernoops:x:108:65534:Kernel Oops Tracking Daemon,,,:/:/bin/false
+pulse:x:109:116:PulseAudio daemon,,,:/var/run/pulse:/bin/false
+rtkit:x:110:119:RealtimeKit,,,:/proc:/bin/false
+hplip:x:111:7:HPLIP system user,,,:/var/run/hplip:/bin/false
+saned:x:112:121::/home/saned:/bin/false
+kaz:x:500:500:Kaz,,,:/home/kaz:/bin/bash
+vboxadd:x:999:1::/var/run/vboxadd:/bin/false
+sshd:x:113:65534::/var/run/sshd:/usr/sbin/nologin
+oprofile:x:115:124:OProfile JIT user,,,:/var/lib/oprofile:/bin/bash
+ntp:x:116:125::/home/ntp:/bin/false
+lightdm:x:117:126:Light Display Manager:/var/lib/lightdm:/bin/false
+colord:x:118:127:colord colour management daemon,,,:/var/lib/colord:/bin/false
+whoopsie:x:114:123::/nonexistent:/bin/false
+postfix:x:119:130::/var/spool/postfix:/bin/false