I: pbuilder: network access will be disabled during build I: Current time: Fri Apr 9 20:41:59 +14 2021 I: pbuilder-time-stamp: 1617950519 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/buster-reproducible-base.tgz] I: copying local configuration I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: using eatmydata during job I: Copying source file I: copying [mwparserfromhell_0.5.2-2.dsc] I: copying [./mwparserfromhell_0.5.2.orig.tar.gz] I: copying [./mwparserfromhell_0.5.2-2.debian.tar.xz] I: Extracting source gpgv: unknown type of key resource 'trustedkeys.kbx' gpgv: keyblock resource '/root/.gnupg/trustedkeys.kbx': General error gpgv: Signature made Sat Mar 2 10:35:46 2019 +14 gpgv: using RSA key D8CB59F05DBB9E0538C4819DF105F8101B05269B gpgv: issuer "legoktm@debian.org" gpgv: Can't check signature: No public key dpkg-source: warning: failed to verify signature on ./mwparserfromhell_0.5.2-2.dsc dpkg-source: info: extracting mwparserfromhell in mwparserfromhell-0.5.2 dpkg-source: info: unpacking mwparserfromhell_0.5.2.orig.tar.gz dpkg-source: info: unpacking mwparserfromhell_0.5.2-2.debian.tar.xz I: Not using root during the build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/51016/tmp/hooks/D01_modify_environment starting disorder-fs debug: Running on profitbricks-build16-i386. I: Changing host+domainname to test build reproducibility I: Adding a custom variable just for the fun of it... I: Changing /bin/sh to bash Removing 'diversion of /bin/sh to /bin/sh.distrib by dash' Adding 'diversion of /bin/sh to /bin/sh.distrib by bash' Removing 'diversion of /usr/share/man/man1/sh.1.gz to /usr/share/man/man1/sh.distrib.1.gz by dash' Adding 'diversion of /usr/share/man/man1/sh.1.gz to /usr/share/man/man1/sh.distrib.1.gz by bash' I: Setting pbuilder2's login shell to /bin/bash I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other I: user script /srv/workspace/pbuilder/51016/tmp/hooks/D01_modify_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy Version: 0.invalid.0 Architecture: i386 Maintainer: Debian Pbuilder Team Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder This package was created automatically by pbuilder to satisfy the build-dependencies of the package being currently built. Depends: python3-setuptools, python3-all-dev, python-setuptools, python-all-dev, debhelper (>= 11), dh-python dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19231 files and directories currently installed.) Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ... Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ... dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested: pbuilder-satisfydepends-dummy depends on python3-setuptools; however: Package python3-setuptools is not installed. pbuilder-satisfydepends-dummy depends on python3-all-dev; however: Package python3-all-dev is not installed. pbuilder-satisfydepends-dummy depends on python-setuptools; however: Package python-setuptools is not installed. pbuilder-satisfydepends-dummy depends on python-all-dev; however: Package python-all-dev is not installed. pbuilder-satisfydepends-dummy depends on debhelper (>= 11); however: Package debhelper is not installed. pbuilder-satisfydepends-dummy depends on dh-python; however: Package dh-python is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdmainutils{a} debhelper{a} dh-autoreconf{a} dh-python{a} dh-strip-nondeterminism{a} dwz{a} file{a} gettext{a} gettext-base{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libbsd0{a} libcroco3{a} libelf1{a} libexpat1{a} libexpat1-dev{a} libfile-stripnondeterminism-perl{a} libglib2.0-0{a} libicu63{a} libmagic-mgc{a} libmagic1{a} libmpdec2{a} libncurses6{a} libpipeline1{a} libpython-all-dev{a} libpython-dev{a} libpython-stdlib{a} libpython2-dev{a} libpython2-stdlib{a} libpython2.7{a} libpython2.7-dev{a} libpython2.7-minimal{a} libpython2.7-stdlib{a} libpython3-all-dev{a} libpython3-dev{a} libpython3-stdlib{a} libpython3.7{a} libpython3.7-dev{a} libpython3.7-minimal{a} libpython3.7-stdlib{a} libreadline7{a} libsigsegv2{a} libssl1.1{a} libtool{a} libuchardet0{a} libxml2{a} m4{a} man-db{a} mime-support{a} po-debconf{a} python{a} python-all{a} python-all-dev{a} python-dev{a} python-minimal{a} python-pkg-resources{a} python-setuptools{a} python2{a} python2-dev{a} python2-minimal{a} python2.7{a} python2.7-dev{a} python2.7-minimal{a} python3{a} python3-all{a} python3-all-dev{a} python3-dev{a} python3-distutils{a} python3-lib2to3{a} python3-minimal{a} python3-pkg-resources{a} python3-setuptools{a} python3.7{a} python3.7-dev{a} python3.7-minimal{a} readline-common{a} sensible-utils{a} The following packages are RECOMMENDED but will NOT be installed: curl libarchive-cpio-perl libglib2.0-data libgpm2 libltdl-dev libmail-sendmail-perl lynx shared-mime-info wget xdg-user-dirs 0 packages upgraded, 82 newly installed, 0 to remove and 0 not upgraded. Need to get 114 MB of archives. After unpacking 253 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian buster/main i386 libbsd0 i386 0.9.1-2 [104 kB] Get: 2 http://deb.debian.org/debian buster/main i386 bsdmainutils i386 11.1.2+b1 [193 kB] Get: 3 http://deb.debian.org/debian buster/main i386 libuchardet0 i386 0.0.6-3 [65.2 kB] Get: 4 http://deb.debian.org/debian buster/main i386 groff-base i386 1.22.4-3 [935 kB] Get: 5 http://deb.debian.org/debian buster/main i386 libpipeline1 i386 1.5.1-2 [33.3 kB] Get: 6 http://deb.debian.org/debian buster/main i386 man-db i386 2.8.5-2 [1284 kB] Get: 7 http://deb.debian.org/debian buster/main i386 libpython2.7-minimal i386 2.7.16-2+deb10u1 [395 kB] Get: 8 http://deb.debian.org/debian buster/main i386 python2.7-minimal i386 2.7.16-2+deb10u1 [1381 kB] Get: 9 http://deb.debian.org/debian buster/main i386 python2-minimal i386 2.7.16-1 [41.4 kB] Get: 10 http://deb.debian.org/debian buster/main i386 python-minimal i386 2.7.16-1 [21.0 kB] Get: 11 http://deb.debian.org/debian buster/main i386 libssl1.1 i386 1.1.1d-0+deb10u2 [1538 kB] Get: 12 http://deb.debian.org/debian buster/main i386 mime-support all 3.62 [37.2 kB] Get: 13 http://deb.debian.org/debian buster/main i386 libexpat1 i386 2.2.6-2+deb10u1 [104 kB] Get: 14 http://deb.debian.org/debian buster/main i386 readline-common all 7.0-5 [70.6 kB] Get: 15 http://deb.debian.org/debian buster/main i386 libreadline7 i386 7.0-5 [156 kB] Get: 16 http://deb.debian.org/debian buster/main i386 libpython2.7-stdlib i386 2.7.16-2+deb10u1 [1934 kB] Get: 17 http://deb.debian.org/debian buster/main i386 python2.7 i386 2.7.16-2+deb10u1 [305 kB] Get: 18 http://deb.debian.org/debian buster/main i386 libpython2-stdlib i386 2.7.16-1 [20.8 kB] Get: 19 http://deb.debian.org/debian buster/main i386 libpython-stdlib i386 2.7.16-1 [20.8 kB] Get: 20 http://deb.debian.org/debian buster/main i386 python2 i386 2.7.16-1 [41.6 kB] Get: 21 http://deb.debian.org/debian buster/main i386 python i386 2.7.16-1 [22.8 kB] Get: 22 http://deb.debian.org/debian buster/main i386 libpython3.7-minimal i386 3.7.3-2+deb10u1 [590 kB] Get: 23 http://deb.debian.org/debian buster/main i386 python3.7-minimal i386 3.7.3-2+deb10u1 [1745 kB] Get: 24 http://deb.debian.org/debian buster/main i386 python3-minimal i386 3.7.3-1 [36.6 kB] Get: 25 http://deb.debian.org/debian buster/main i386 libmpdec2 i386 2.4.2-2 [83.2 kB] Get: 26 http://deb.debian.org/debian buster/main i386 libpython3.7-stdlib i386 3.7.3-2+deb10u1 [1750 kB] Get: 27 http://deb.debian.org/debian buster/main i386 python3.7 i386 3.7.3-2+deb10u1 [330 kB] Get: 28 http://deb.debian.org/debian buster/main i386 libpython3-stdlib i386 3.7.3-1 [20.0 kB] Get: 29 http://deb.debian.org/debian buster/main i386 python3 i386 3.7.3-1 [61.5 kB] Get: 30 http://deb.debian.org/debian buster/main i386 sensible-utils all 0.0.12 [15.8 kB] Get: 31 http://deb.debian.org/debian buster/main i386 libmagic-mgc i386 1:5.35-4+deb10u1 [242 kB] Get: 32 http://deb.debian.org/debian buster/main i386 libmagic1 i386 1:5.35-4+deb10u1 [124 kB] Get: 33 http://deb.debian.org/debian buster/main i386 file i386 1:5.35-4+deb10u1 [66.3 kB] Get: 34 http://deb.debian.org/debian buster/main i386 gettext-base i386 0.19.8.1-9 [124 kB] Get: 35 http://deb.debian.org/debian buster/main i386 libsigsegv2 i386 2.12-2 [33.2 kB] Get: 36 http://deb.debian.org/debian buster/main i386 m4 i386 1.4.18-2 [205 kB] Get: 37 http://deb.debian.org/debian buster/main i386 autoconf all 2.69-11 [341 kB] Get: 38 http://deb.debian.org/debian buster/main i386 autotools-dev all 20180224.1 [77.0 kB] Get: 39 http://deb.debian.org/debian buster/main i386 automake all 1:1.16.1-4 [771 kB] Get: 40 http://deb.debian.org/debian buster/main i386 autopoint all 0.19.8.1-9 [434 kB] Get: 41 http://deb.debian.org/debian buster/main i386 libtool all 2.4.6-9 [547 kB] Get: 42 http://deb.debian.org/debian buster/main i386 dh-autoreconf all 19 [16.9 kB] Get: 43 http://deb.debian.org/debian buster/main i386 libarchive-zip-perl all 1.64-1 [96.8 kB] Get: 44 http://deb.debian.org/debian buster/main i386 libfile-stripnondeterminism-perl all 1.1.2-1 [19.8 kB] Get: 45 http://deb.debian.org/debian buster/main i386 dh-strip-nondeterminism all 1.1.2-1 [13.0 kB] Get: 46 http://deb.debian.org/debian buster/main i386 libelf1 i386 0.176-1.1 [166 kB] Get: 47 http://deb.debian.org/debian buster/main i386 dwz i386 0.12-3 [81.4 kB] Get: 48 http://deb.debian.org/debian buster/main i386 libglib2.0-0 i386 2.58.3-2+deb10u2 [1334 kB] Get: 49 http://deb.debian.org/debian buster/main i386 libicu63 i386 63.1-6 [8443 kB] Get: 50 http://deb.debian.org/debian buster/main i386 libxml2 i386 2.9.4+dfsg1-7+b3 [721 kB] Get: 51 http://deb.debian.org/debian buster/main i386 libcroco3 i386 0.6.12-3 [151 kB] Get: 52 http://deb.debian.org/debian buster/main i386 libncurses6 i386 6.1+20181013-2+deb10u2 [109 kB] Get: 53 http://deb.debian.org/debian buster/main i386 gettext i386 0.19.8.1-9 [1314 kB] Get: 54 http://deb.debian.org/debian buster/main i386 intltool-debian all 0.35.0+20060710.5 [26.8 kB] Get: 55 http://deb.debian.org/debian buster/main i386 po-debconf all 1.0.21 [248 kB] Get: 56 http://deb.debian.org/debian buster/main i386 debhelper all 12.1.1 [1016 kB] Get: 57 http://deb.debian.org/debian buster/main i386 python3-lib2to3 all 3.7.3-1 [76.7 kB] Get: 58 http://deb.debian.org/debian buster/main i386 python3-distutils all 3.7.3-1 [142 kB] Get: 59 http://deb.debian.org/debian buster/main i386 dh-python all 3.20190308 [99.3 kB] Get: 60 http://deb.debian.org/debian buster/main i386 libexpat1-dev i386 2.2.6-2+deb10u1 [156 kB] Get: 61 http://deb.debian.org/debian buster/main i386 libpython2.7 i386 2.7.16-2+deb10u1 [1059 kB] Get: 62 http://deb.debian.org/debian buster/main i386 libpython2.7-dev i386 2.7.16-2+deb10u1 [31.4 MB] Get: 63 http://deb.debian.org/debian buster/main i386 libpython2-dev i386 2.7.16-1 [20.9 kB] Get: 64 http://deb.debian.org/debian buster/main i386 libpython-dev i386 2.7.16-1 [20.9 kB] Get: 65 http://deb.debian.org/debian buster/main i386 libpython-all-dev i386 2.7.16-1 [1068 B] Get: 66 http://deb.debian.org/debian buster/main i386 libpython3.7 i386 3.7.3-2+deb10u1 [1506 kB] Get: 67 http://deb.debian.org/debian buster/main i386 libpython3.7-dev i386 3.7.3-2+deb10u1 [47.7 MB] Get: 68 http://deb.debian.org/debian buster/main i386 libpython3-dev i386 3.7.3-1 [20.2 kB] Get: 69 http://deb.debian.org/debian buster/main i386 libpython3-all-dev i386 3.7.3-1 [1068 B] Get: 70 http://deb.debian.org/debian buster/main i386 python-all i386 2.7.16-1 [1044 B] Get: 71 http://deb.debian.org/debian buster/main i386 python2.7-dev i386 2.7.16-2+deb10u1 [295 kB] Get: 72 http://deb.debian.org/debian buster/main i386 python2-dev i386 2.7.16-1 [1208 B] Get: 73 http://deb.debian.org/debian buster/main i386 python-dev i386 2.7.16-1 [1184 B] Get: 74 http://deb.debian.org/debian buster/main i386 python-all-dev i386 2.7.16-1 [1068 B] Get: 75 http://deb.debian.org/debian buster/main i386 python-pkg-resources all 40.8.0-1 [182 kB] Get: 76 http://deb.debian.org/debian buster/main i386 python-setuptools all 40.8.0-1 [382 kB] Get: 77 http://deb.debian.org/debian buster/main i386 python3-all i386 3.7.3-1 [1068 B] Get: 78 http://deb.debian.org/debian buster/main i386 python3.7-dev i386 3.7.3-2+deb10u1 [509 kB] Get: 79 http://deb.debian.org/debian buster/main i386 python3-dev i386 3.7.3-1 [1260 B] Get: 80 http://deb.debian.org/debian buster/main i386 python3-all-dev i386 3.7.3-1 [1068 B] Get: 81 http://deb.debian.org/debian buster/main i386 python3-pkg-resources all 40.8.0-1 [153 kB] Get: 82 http://deb.debian.org/debian buster/main i386 python3-setuptools all 40.8.0-1 [306 kB] Fetched 114 MB in 1s (88.5 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package libbsd0:i386. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19231 files and directories currently installed.) Preparing to unpack .../00-libbsd0_0.9.1-2_i386.deb ... Unpacking libbsd0:i386 (0.9.1-2) ... Selecting previously unselected package bsdmainutils. Preparing to unpack .../01-bsdmainutils_11.1.2+b1_i386.deb ... Unpacking bsdmainutils (11.1.2+b1) ... Selecting previously unselected package libuchardet0:i386. Preparing to unpack .../02-libuchardet0_0.0.6-3_i386.deb ... Unpacking libuchardet0:i386 (0.0.6-3) ... Selecting previously unselected package groff-base. Preparing to unpack .../03-groff-base_1.22.4-3_i386.deb ... Unpacking groff-base (1.22.4-3) ... Selecting previously unselected package libpipeline1:i386. Preparing to unpack .../04-libpipeline1_1.5.1-2_i386.deb ... Unpacking libpipeline1:i386 (1.5.1-2) ... Selecting previously unselected package man-db. Preparing to unpack .../05-man-db_2.8.5-2_i386.deb ... Unpacking man-db (2.8.5-2) ... Selecting previously unselected package libpython2.7-minimal:i386. Preparing to unpack .../06-libpython2.7-minimal_2.7.16-2+deb10u1_i386.deb ... Unpacking libpython2.7-minimal:i386 (2.7.16-2+deb10u1) ... Selecting previously unselected package python2.7-minimal. Preparing to unpack .../07-python2.7-minimal_2.7.16-2+deb10u1_i386.deb ... Unpacking python2.7-minimal (2.7.16-2+deb10u1) ... Selecting previously unselected package python2-minimal. Preparing to unpack .../08-python2-minimal_2.7.16-1_i386.deb ... Unpacking python2-minimal (2.7.16-1) ... Selecting previously unselected package python-minimal. Preparing to unpack .../09-python-minimal_2.7.16-1_i386.deb ... Unpacking python-minimal (2.7.16-1) ... Selecting previously unselected package libssl1.1:i386. Preparing to unpack .../10-libssl1.1_1.1.1d-0+deb10u2_i386.deb ... Unpacking libssl1.1:i386 (1.1.1d-0+deb10u2) ... Selecting previously unselected package mime-support. Preparing to unpack .../11-mime-support_3.62_all.deb ... Unpacking mime-support (3.62) ... Selecting previously unselected package libexpat1:i386. Preparing to unpack .../12-libexpat1_2.2.6-2+deb10u1_i386.deb ... Unpacking libexpat1:i386 (2.2.6-2+deb10u1) ... Selecting previously unselected package readline-common. Preparing to unpack .../13-readline-common_7.0-5_all.deb ... Unpacking readline-common (7.0-5) ... Selecting previously unselected package libreadline7:i386. Preparing to unpack .../14-libreadline7_7.0-5_i386.deb ... Unpacking libreadline7:i386 (7.0-5) ... Selecting previously unselected package libpython2.7-stdlib:i386. Preparing to unpack .../15-libpython2.7-stdlib_2.7.16-2+deb10u1_i386.deb ... Unpacking libpython2.7-stdlib:i386 (2.7.16-2+deb10u1) ... Selecting previously unselected package python2.7. Preparing to unpack .../16-python2.7_2.7.16-2+deb10u1_i386.deb ... Unpacking python2.7 (2.7.16-2+deb10u1) ... Selecting previously unselected package libpython2-stdlib:i386. Preparing to unpack .../17-libpython2-stdlib_2.7.16-1_i386.deb ... Unpacking libpython2-stdlib:i386 (2.7.16-1) ... Selecting previously unselected package libpython-stdlib:i386. Preparing to unpack .../18-libpython-stdlib_2.7.16-1_i386.deb ... Unpacking libpython-stdlib:i386 (2.7.16-1) ... Setting up libpython2.7-minimal:i386 (2.7.16-2+deb10u1) ... Setting up python2.7-minimal (2.7.16-2+deb10u1) ... Setting up python2-minimal (2.7.16-1) ... Selecting previously unselected package python2. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 20696 files and directories currently installed.) Preparing to unpack .../python2_2.7.16-1_i386.deb ... Unpacking python2 (2.7.16-1) ... Setting up python-minimal (2.7.16-1) ... Selecting previously unselected package python. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 20729 files and directories currently installed.) Preparing to unpack .../python_2.7.16-1_i386.deb ... Unpacking python (2.7.16-1) ... Selecting previously unselected package libpython3.7-minimal:i386. Preparing to unpack .../libpython3.7-minimal_3.7.3-2+deb10u1_i386.deb ... Unpacking libpython3.7-minimal:i386 (3.7.3-2+deb10u1) ... Selecting previously unselected package python3.7-minimal. Preparing to unpack .../python3.7-minimal_3.7.3-2+deb10u1_i386.deb ... Unpacking python3.7-minimal (3.7.3-2+deb10u1) ... Setting up libssl1.1:i386 (1.1.1d-0+deb10u2) ... Setting up libpython3.7-minimal:i386 (3.7.3-2+deb10u1) ... Setting up libexpat1:i386 (2.2.6-2+deb10u1) ... Setting up python3.7-minimal (3.7.3-2+deb10u1) ... Selecting previously unselected package python3-minimal. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 20983 files and directories currently installed.) Preparing to unpack .../python3-minimal_3.7.3-1_i386.deb ... Unpacking python3-minimal (3.7.3-1) ... Selecting previously unselected package libmpdec2:i386. Preparing to unpack .../libmpdec2_2.4.2-2_i386.deb ... Unpacking libmpdec2:i386 (2.4.2-2) ... Selecting previously unselected package libpython3.7-stdlib:i386. Preparing to unpack .../libpython3.7-stdlib_3.7.3-2+deb10u1_i386.deb ... Unpacking libpython3.7-stdlib:i386 (3.7.3-2+deb10u1) ... Selecting previously unselected package python3.7. Preparing to unpack .../python3.7_3.7.3-2+deb10u1_i386.deb ... Unpacking python3.7 (3.7.3-2+deb10u1) ... Selecting previously unselected package libpython3-stdlib:i386. Preparing to unpack .../libpython3-stdlib_3.7.3-1_i386.deb ... Unpacking libpython3-stdlib:i386 (3.7.3-1) ... Setting up python3-minimal (3.7.3-1) ... Selecting previously unselected package python3. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 21395 files and directories currently installed.) Preparing to unpack .../00-python3_3.7.3-1_i386.deb ... Unpacking python3 (3.7.3-1) ... Selecting previously unselected package sensible-utils. Preparing to unpack .../01-sensible-utils_0.0.12_all.deb ... Unpacking sensible-utils (0.0.12) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../02-libmagic-mgc_1%3a5.35-4+deb10u1_i386.deb ... Unpacking libmagic-mgc (1:5.35-4+deb10u1) ... Selecting previously unselected package libmagic1:i386. Preparing to unpack .../03-libmagic1_1%3a5.35-4+deb10u1_i386.deb ... Unpacking libmagic1:i386 (1:5.35-4+deb10u1) ... Selecting previously unselected package file. Preparing to unpack .../04-file_1%3a5.35-4+deb10u1_i386.deb ... Unpacking file (1:5.35-4+deb10u1) ... Selecting previously unselected package gettext-base. Preparing to unpack .../05-gettext-base_0.19.8.1-9_i386.deb ... Unpacking gettext-base (0.19.8.1-9) ... Selecting previously unselected package libsigsegv2:i386. Preparing to unpack .../06-libsigsegv2_2.12-2_i386.deb ... Unpacking libsigsegv2:i386 (2.12-2) ... Selecting previously unselected package m4. Preparing to unpack .../07-m4_1.4.18-2_i386.deb ... Unpacking m4 (1.4.18-2) ... Selecting previously unselected package autoconf. Preparing to unpack .../08-autoconf_2.69-11_all.deb ... Unpacking autoconf (2.69-11) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../09-autotools-dev_20180224.1_all.deb ... Unpacking autotools-dev (20180224.1) ... Selecting previously unselected package automake. Preparing to unpack .../10-automake_1%3a1.16.1-4_all.deb ... Unpacking automake (1:1.16.1-4) ... Selecting previously unselected package autopoint. Preparing to unpack .../11-autopoint_0.19.8.1-9_all.deb ... Unpacking autopoint (0.19.8.1-9) ... Selecting previously unselected package libtool. Preparing to unpack .../12-libtool_2.4.6-9_all.deb ... Unpacking libtool (2.4.6-9) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../13-dh-autoreconf_19_all.deb ... Unpacking dh-autoreconf (19) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../14-libarchive-zip-perl_1.64-1_all.deb ... Unpacking libarchive-zip-perl (1.64-1) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../15-libfile-stripnondeterminism-perl_1.1.2-1_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.1.2-1) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../16-dh-strip-nondeterminism_1.1.2-1_all.deb ... Unpacking dh-strip-nondeterminism (1.1.2-1) ... Selecting previously unselected package libelf1:i386. Preparing to unpack .../17-libelf1_0.176-1.1_i386.deb ... Unpacking libelf1:i386 (0.176-1.1) ... Selecting previously unselected package dwz. Preparing to unpack .../18-dwz_0.12-3_i386.deb ... Unpacking dwz (0.12-3) ... Selecting previously unselected package libglib2.0-0:i386. Preparing to unpack .../19-libglib2.0-0_2.58.3-2+deb10u2_i386.deb ... Unpacking libglib2.0-0:i386 (2.58.3-2+deb10u2) ... Selecting previously unselected package libicu63:i386. Preparing to unpack .../20-libicu63_63.1-6_i386.deb ... Unpacking libicu63:i386 (63.1-6) ... Selecting previously unselected package libxml2:i386. Preparing to unpack .../21-libxml2_2.9.4+dfsg1-7+b3_i386.deb ... Unpacking libxml2:i386 (2.9.4+dfsg1-7+b3) ... Selecting previously unselected package libcroco3:i386. Preparing to unpack .../22-libcroco3_0.6.12-3_i386.deb ... Unpacking libcroco3:i386 (0.6.12-3) ... Selecting previously unselected package libncurses6:i386. Preparing to unpack .../23-libncurses6_6.1+20181013-2+deb10u2_i386.deb ... Unpacking libncurses6:i386 (6.1+20181013-2+deb10u2) ... Selecting previously unselected package gettext. Preparing to unpack .../24-gettext_0.19.8.1-9_i386.deb ... Unpacking gettext (0.19.8.1-9) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../25-intltool-debian_0.35.0+20060710.5_all.deb ... Unpacking intltool-debian (0.35.0+20060710.5) ... Selecting previously unselected package po-debconf. Preparing to unpack .../26-po-debconf_1.0.21_all.deb ... Unpacking po-debconf (1.0.21) ... Selecting previously unselected package debhelper. Preparing to unpack .../27-debhelper_12.1.1_all.deb ... Unpacking debhelper (12.1.1) ... Selecting previously unselected package python3-lib2to3. Preparing to unpack .../28-python3-lib2to3_3.7.3-1_all.deb ... Unpacking python3-lib2to3 (3.7.3-1) ... Selecting previously unselected package python3-distutils. Preparing to unpack .../29-python3-distutils_3.7.3-1_all.deb ... Unpacking python3-distutils (3.7.3-1) ... Selecting previously unselected package dh-python. Preparing to unpack .../30-dh-python_3.20190308_all.deb ... Unpacking dh-python (3.20190308) ... Selecting previously unselected package libexpat1-dev:i386. Preparing to unpack .../31-libexpat1-dev_2.2.6-2+deb10u1_i386.deb ... Unpacking libexpat1-dev:i386 (2.2.6-2+deb10u1) ... Selecting previously unselected package libpython2.7:i386. Preparing to unpack .../32-libpython2.7_2.7.16-2+deb10u1_i386.deb ... Unpacking libpython2.7:i386 (2.7.16-2+deb10u1) ... Selecting previously unselected package libpython2.7-dev:i386. Preparing to unpack .../33-libpython2.7-dev_2.7.16-2+deb10u1_i386.deb ... Unpacking libpython2.7-dev:i386 (2.7.16-2+deb10u1) ... Selecting previously unselected package libpython2-dev:i386. Preparing to unpack .../34-libpython2-dev_2.7.16-1_i386.deb ... Unpacking libpython2-dev:i386 (2.7.16-1) ... Selecting previously unselected package libpython-dev:i386. Preparing to unpack .../35-libpython-dev_2.7.16-1_i386.deb ... Unpacking libpython-dev:i386 (2.7.16-1) ... Selecting previously unselected package libpython-all-dev:i386. Preparing to unpack .../36-libpython-all-dev_2.7.16-1_i386.deb ... Unpacking libpython-all-dev:i386 (2.7.16-1) ... Selecting previously unselected package libpython3.7:i386. Preparing to unpack .../37-libpython3.7_3.7.3-2+deb10u1_i386.deb ... Unpacking libpython3.7:i386 (3.7.3-2+deb10u1) ... Selecting previously unselected package libpython3.7-dev:i386. Preparing to unpack .../38-libpython3.7-dev_3.7.3-2+deb10u1_i386.deb ... Unpacking libpython3.7-dev:i386 (3.7.3-2+deb10u1) ... Selecting previously unselected package libpython3-dev:i386. Preparing to unpack .../39-libpython3-dev_3.7.3-1_i386.deb ... Unpacking libpython3-dev:i386 (3.7.3-1) ... Selecting previously unselected package libpython3-all-dev:i386. Preparing to unpack .../40-libpython3-all-dev_3.7.3-1_i386.deb ... Unpacking libpython3-all-dev:i386 (3.7.3-1) ... Selecting previously unselected package python-all. Preparing to unpack .../41-python-all_2.7.16-1_i386.deb ... Unpacking python-all (2.7.16-1) ... Selecting previously unselected package python2.7-dev. Preparing to unpack .../42-python2.7-dev_2.7.16-2+deb10u1_i386.deb ... Unpacking python2.7-dev (2.7.16-2+deb10u1) ... Selecting previously unselected package python2-dev. Preparing to unpack .../43-python2-dev_2.7.16-1_i386.deb ... Unpacking python2-dev (2.7.16-1) ... Selecting previously unselected package python-dev. Preparing to unpack .../44-python-dev_2.7.16-1_i386.deb ... Unpacking python-dev (2.7.16-1) ... Selecting previously unselected package python-all-dev. Preparing to unpack .../45-python-all-dev_2.7.16-1_i386.deb ... Unpacking python-all-dev (2.7.16-1) ... Selecting previously unselected package python-pkg-resources. Preparing to unpack .../46-python-pkg-resources_40.8.0-1_all.deb ... Unpacking python-pkg-resources (40.8.0-1) ... Selecting previously unselected package python-setuptools. Preparing to unpack .../47-python-setuptools_40.8.0-1_all.deb ... Unpacking python-setuptools (40.8.0-1) ... Selecting previously unselected package python3-all. Preparing to unpack .../48-python3-all_3.7.3-1_i386.deb ... Unpacking python3-all (3.7.3-1) ... Selecting previously unselected package python3.7-dev. Preparing to unpack .../49-python3.7-dev_3.7.3-2+deb10u1_i386.deb ... Unpacking python3.7-dev (3.7.3-2+deb10u1) ... Selecting previously unselected package python3-dev. Preparing to unpack .../50-python3-dev_3.7.3-1_i386.deb ... Unpacking python3-dev (3.7.3-1) ... Selecting previously unselected package python3-all-dev. Preparing to unpack .../51-python3-all-dev_3.7.3-1_i386.deb ... Unpacking python3-all-dev (3.7.3-1) ... Selecting previously unselected package python3-pkg-resources. Preparing to unpack .../52-python3-pkg-resources_40.8.0-1_all.deb ... Unpacking python3-pkg-resources (40.8.0-1) ... Selecting previously unselected package python3-setuptools. Preparing to unpack .../53-python3-setuptools_40.8.0-1_all.deb ... Unpacking python3-setuptools (40.8.0-1) ... Setting up libpipeline1:i386 (1.5.1-2) ... Setting up mime-support (3.62) ... Setting up libmagic-mgc (1:5.35-4+deb10u1) ... Setting up libarchive-zip-perl (1.64-1) ... Setting up libglib2.0-0:i386 (2.58.3-2+deb10u2) ... No schema files found: doing nothing. Setting up libmagic1:i386 (1:5.35-4+deb10u1) ... Setting up gettext-base (0.19.8.1-9) ... Setting up file (1:5.35-4+deb10u1) ... Setting up libicu63:i386 (63.1-6) ... Setting up autotools-dev (20180224.1) ... Setting up libexpat1-dev:i386 (2.2.6-2+deb10u1) ... Setting up libncurses6:i386 (6.1+20181013-2+deb10u2) ... Setting up libsigsegv2:i386 (2.12-2) ... Setting up autopoint (0.19.8.1-9) ... Setting up sensible-utils (0.0.12) ... Setting up libuchardet0:i386 (0.0.6-3) ... Setting up libmpdec2:i386 (2.4.2-2) ... Setting up libbsd0:i386 (0.9.1-2) ... Setting up libelf1:i386 (0.176-1.1) ... Setting up readline-common (7.0-5) ... Setting up libxml2:i386 (2.9.4+dfsg1-7+b3) ... Setting up libreadline7:i386 (7.0-5) ... Setting up libfile-stripnondeterminism-perl (1.1.2-1) ... Setting up libpython3.7-stdlib:i386 (3.7.3-2+deb10u1) ... Setting up libpython3.7:i386 (3.7.3-2+deb10u1) ... Setting up libtool (2.4.6-9) ... Setting up libpython3.7-dev:i386 (3.7.3-2+deb10u1) ... Setting up m4 (1.4.18-2) ... Setting up libpython2.7-stdlib:i386 (2.7.16-2+deb10u1) ... Setting up bsdmainutils (11.1.2+b1) ... update-alternatives: using /usr/bin/bsd-write to provide /usr/bin/write (write) in auto mode update-alternatives: using /usr/bin/bsd-from to provide /usr/bin/from (from) in auto mode Setting up libcroco3:i386 (0.6.12-3) ... Setting up autoconf (2.69-11) ... Setting up dwz (0.12-3) ... Setting up groff-base (1.22.4-3) ... Setting up libpython3-stdlib:i386 (3.7.3-1) ... Setting up automake (1:1.16.1-4) ... update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode Setting up python3.7 (3.7.3-2+deb10u1) ... Setting up libpython2.7:i386 (2.7.16-2+deb10u1) ... Setting up libpython2.7-dev:i386 (2.7.16-2+deb10u1) ... Setting up gettext (0.19.8.1-9) ... Setting up libpython3-dev:i386 (3.7.3-1) ... Setting up python2.7 (2.7.16-2+deb10u1) ... Setting up libpython2-stdlib:i386 (2.7.16-1) ... Setting up python3 (3.7.3-1) ... Setting up man-db (2.8.5-2) ... Not building database; man-db/auto-update is not 'true'. Setting up python2 (2.7.16-1) ... Setting up python3.7-dev (3.7.3-2+deb10u1) ... Setting up intltool-debian (0.35.0+20060710.5) ... Setting up libpython-stdlib:i386 (2.7.16-1) ... Setting up libpython3-all-dev:i386 (3.7.3-1) ... Setting up libpython2-dev:i386 (2.7.16-1) ... Setting up python3-lib2to3 (3.7.3-1) ... Setting up python (2.7.16-1) ... Setting up python2.7-dev (2.7.16-2+deb10u1) ... Setting up python3-pkg-resources (40.8.0-1) ... Setting up python3-distutils (3.7.3-1) ... Setting up dh-python (3.20190308) ... Setting up python2-dev (2.7.16-1) ... Setting up python3-setuptools (40.8.0-1) ... Setting up python-pkg-resources (40.8.0-1) ... Setting up po-debconf (1.0.21) ... Setting up python3-all (3.7.3-1) ... Setting up python-all (2.7.16-1) ... Setting up libpython-dev:i386 (2.7.16-1) ... Setting up python3-dev (3.7.3-1) ... Setting up python-setuptools (40.8.0-1) ... Setting up python-dev (2.7.16-1) ... Setting up python3-all-dev (3.7.3-1) ... Setting up libpython-all-dev:i386 (2.7.16-1) ... Setting up python-all-dev (2.7.16-1) ... Setting up debhelper (12.1.1) ... Setting up dh-autoreconf (19) ... Setting up dh-strip-nondeterminism (1.1.2-1) ... Processing triggers for libc-bin (2.28-10) ... Reading package lists... Building dependency tree... Reading state information... Reading extended state information... Initializing package states... Writing extended state information... Building tag database... -> Finished parsing the build-deps I: Building the package I: Running cd /build/mwparserfromhell-0.5.2/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b dpkg-buildpackage: info: source package mwparserfromhell dpkg-buildpackage: info: source version 0.5.2-2 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Kunal Mehta dpkg-source --before-build . dpkg-buildpackage: info: host architecture i386 debian/rules clean dh clean --with=python2,python3 --buildsystem=pybuild dh_auto_clean -O--buildsystem=pybuild I: pybuild base:217: python2.7 setup.py clean running clean removing '/build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build' (and everything under it) 'build/bdist.linux-i386' does not exist -- can't clean it 'build/scripts-2.7' does not exist -- can't clean it I: pybuild base:217: python3.7 setup.py clean running clean removing '/build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build' (and everything under it) 'build/bdist.linux-i386' does not exist -- can't clean it 'build/scripts-3.7' does not exist -- can't clean it dh_autoreconf_clean -O--buildsystem=pybuild dh_clean -O--buildsystem=pybuild debian/rules binary dh binary --with=python2,python3 --buildsystem=pybuild dh_update_autotools_config -O--buildsystem=pybuild dh_autoreconf -O--buildsystem=pybuild dh_auto_configure -O--buildsystem=pybuild I: pybuild base:217: python2.7 setup.py config running config I: pybuild base:217: python3.7 setup.py config running config dh_auto_build -O--buildsystem=pybuild I: pybuild base:217: /usr/bin/python setup.py build running build running build_py creating /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell copying mwparserfromhell/wikicode.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell copying mwparserfromhell/definitions.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell copying mwparserfromhell/__init__.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell copying mwparserfromhell/string_mixin.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell copying mwparserfromhell/utils.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell copying mwparserfromhell/smart_list.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell copying mwparserfromhell/compat.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell creating /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/template.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/external_link.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/heading.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/html_entity.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/argument.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/text.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/__init__.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/comment.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/tag.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/wikilink.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes creating /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/parser copying mwparserfromhell/parser/tokens.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/parser copying mwparserfromhell/parser/tokenizer.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/parser copying mwparserfromhell/parser/builder.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/parser copying mwparserfromhell/parser/__init__.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/parser copying mwparserfromhell/parser/contexts.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/parser creating /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes/extras copying mwparserfromhell/nodes/extras/attribute.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes/extras copying mwparserfromhell/nodes/extras/__init__.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes/extras copying mwparserfromhell/nodes/extras/parameter.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes/extras running build_ext building 'mwparserfromhell.parser._tokenizer' extension creating build creating build/temp.linux-i386-2.7 creating build/temp.linux-i386-2.7/mwparserfromhell creating build/temp.linux-i386-2.7/mwparserfromhell/parser creating build/temp.linux-i386-2.7/mwparserfromhell/parser/ctokenizer i686-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python2.7 -c mwparserfromhell/parser/ctokenizer/avl_tree.c -o build/temp.linux-i386-2.7/mwparserfromhell/parser/ctokenizer/avl_tree.o i686-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python2.7 -c mwparserfromhell/parser/ctokenizer/definitions.c -o build/temp.linux-i386-2.7/mwparserfromhell/parser/ctokenizer/definitions.o i686-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python2.7 -c mwparserfromhell/parser/ctokenizer/tag_data.c -o build/temp.linux-i386-2.7/mwparserfromhell/parser/ctokenizer/tag_data.o i686-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python2.7 -c mwparserfromhell/parser/ctokenizer/textbuffer.c -o build/temp.linux-i386-2.7/mwparserfromhell/parser/ctokenizer/textbuffer.o i686-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python2.7 -c mwparserfromhell/parser/ctokenizer/tok_parse.c -o build/temp.linux-i386-2.7/mwparserfromhell/parser/ctokenizer/tok_parse.o i686-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python2.7 -c mwparserfromhell/parser/ctokenizer/tok_support.c -o build/temp.linux-i386-2.7/mwparserfromhell/parser/ctokenizer/tok_support.o i686-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python2.7 -c mwparserfromhell/parser/ctokenizer/tokenizer.c -o build/temp.linux-i386-2.7/mwparserfromhell/parser/ctokenizer/tokenizer.o i686-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python2.7 -c mwparserfromhell/parser/ctokenizer/tokens.c -o build/temp.linux-i386-2.7/mwparserfromhell/parser/ctokenizer/tokens.o i686-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/build/python2.7-EBAgX8/python2.7-2.7.16=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -Wl,-z,now -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-i386-2.7/mwparserfromhell/parser/ctokenizer/avl_tree.o build/temp.linux-i386-2.7/mwparserfromhell/parser/ctokenizer/definitions.o build/temp.linux-i386-2.7/mwparserfromhell/parser/ctokenizer/tag_data.o build/temp.linux-i386-2.7/mwparserfromhell/parser/ctokenizer/textbuffer.o build/temp.linux-i386-2.7/mwparserfromhell/parser/ctokenizer/tok_parse.o build/temp.linux-i386-2.7/mwparserfromhell/parser/ctokenizer/tok_support.o build/temp.linux-i386-2.7/mwparserfromhell/parser/ctokenizer/tokenizer.o build/temp.linux-i386-2.7/mwparserfromhell/parser/ctokenizer/tokens.o -o /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/parser/_tokenizer.so I: pybuild base:217: /usr/bin/python3 setup.py build running build running build_py creating /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell copying mwparserfromhell/wikicode.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell copying mwparserfromhell/definitions.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell copying mwparserfromhell/__init__.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell copying mwparserfromhell/string_mixin.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell copying mwparserfromhell/utils.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell copying mwparserfromhell/smart_list.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell copying mwparserfromhell/compat.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell creating /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/template.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/external_link.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/heading.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/html_entity.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/argument.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/text.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/__init__.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/comment.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/tag.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes copying mwparserfromhell/nodes/wikilink.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes creating /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/parser copying mwparserfromhell/parser/tokens.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/parser copying mwparserfromhell/parser/tokenizer.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/parser copying mwparserfromhell/parser/builder.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/parser copying mwparserfromhell/parser/__init__.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/parser copying mwparserfromhell/parser/contexts.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/parser creating /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes/extras copying mwparserfromhell/nodes/extras/attribute.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes/extras copying mwparserfromhell/nodes/extras/__init__.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes/extras copying mwparserfromhell/nodes/extras/parameter.py -> /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes/extras running build_ext building 'mwparserfromhell.parser._tokenizer' extension creating build/temp.linux-i386-3.7 creating build/temp.linux-i386-3.7/mwparserfromhell creating build/temp.linux-i386-3.7/mwparserfromhell/parser creating build/temp.linux-i386-3.7/mwparserfromhell/parser/ctokenizer i686-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.7m -c mwparserfromhell/parser/ctokenizer/avl_tree.c -o build/temp.linux-i386-3.7/mwparserfromhell/parser/ctokenizer/avl_tree.o i686-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.7m -c mwparserfromhell/parser/ctokenizer/definitions.c -o build/temp.linux-i386-3.7/mwparserfromhell/parser/ctokenizer/definitions.o i686-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.7m -c mwparserfromhell/parser/ctokenizer/tag_data.c -o build/temp.linux-i386-3.7/mwparserfromhell/parser/ctokenizer/tag_data.o i686-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.7m -c mwparserfromhell/parser/ctokenizer/textbuffer.c -o build/temp.linux-i386-3.7/mwparserfromhell/parser/ctokenizer/textbuffer.o i686-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.7m -c mwparserfromhell/parser/ctokenizer/tok_parse.c -o build/temp.linux-i386-3.7/mwparserfromhell/parser/ctokenizer/tok_parse.o i686-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.7m -c mwparserfromhell/parser/ctokenizer/tok_support.c -o build/temp.linux-i386-3.7/mwparserfromhell/parser/ctokenizer/tok_support.o i686-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.7m -c mwparserfromhell/parser/ctokenizer/tokenizer.c -o build/temp.linux-i386-3.7/mwparserfromhell/parser/ctokenizer/tokenizer.o i686-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.7m -c mwparserfromhell/parser/ctokenizer/tokens.c -o build/temp.linux-i386-3.7/mwparserfromhell/parser/ctokenizer/tokens.o i686-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,relro -Wl,-z,now -g -O2 -ffile-prefix-map=/build/mwparserfromhell-0.5.2=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-i386-3.7/mwparserfromhell/parser/ctokenizer/avl_tree.o build/temp.linux-i386-3.7/mwparserfromhell/parser/ctokenizer/definitions.o build/temp.linux-i386-3.7/mwparserfromhell/parser/ctokenizer/tag_data.o build/temp.linux-i386-3.7/mwparserfromhell/parser/ctokenizer/textbuffer.o build/temp.linux-i386-3.7/mwparserfromhell/parser/ctokenizer/tok_parse.o build/temp.linux-i386-3.7/mwparserfromhell/parser/ctokenizer/tok_support.o build/temp.linux-i386-3.7/mwparserfromhell/parser/ctokenizer/tokenizer.o build/temp.linux-i386-3.7/mwparserfromhell/parser/ctokenizer/tokens.o -o /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/parser/_tokenizer.cpython-37m-i386-linux-gnu.so dh_auto_test -O--buildsystem=pybuild I: pybuild base:217: python2.7 setup.py test running test running egg_info creating mwparserfromhell.egg-info writing mwparserfromhell.egg-info/PKG-INFO writing top-level names to mwparserfromhell.egg-info/top_level.txt writing dependency_links to mwparserfromhell.egg-info/dependency_links.txt writing manifest file 'mwparserfromhell.egg-info/SOURCES.txt' reading manifest file 'mwparserfromhell.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' writing manifest file 'mwparserfromhell.egg-info/SOURCES.txt' running build_ext copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/parser/_tokenizer.so -> mwparserfromhell/parser test_arguments01_blank (tests.test_roundtripping.TestRoundtripping) argument with no content ... ok test_arguments02_blank_with_default (tests.test_roundtripping.TestRoundtripping) argument with no content but a pipe ... ok test_arguments03_basic (tests.test_roundtripping.TestRoundtripping) simplest type of argument ... ok test_arguments04_default (tests.test_roundtripping.TestRoundtripping) argument with a default value ... ok test_arguments05_blank_with_multiple_defaults (tests.test_roundtripping.TestRoundtripping) no content, multiple pipes ... ok test_arguments06_multiple_defaults (tests.test_roundtripping.TestRoundtripping) multiple values separated by pipes ... ok test_arguments07_newline (tests.test_roundtripping.TestRoundtripping) newline as only content ... ok test_arguments08_right_braces (tests.test_roundtripping.TestRoundtripping) multiple } scattered throughout text ... ok test_arguments09_right_braces_default (tests.test_roundtripping.TestRoundtripping) multiple } scattered throughout text, with a default value ... ok test_arguments10_nested (tests.test_roundtripping.TestRoundtripping) an argument nested within another argument ... ok test_arguments11_invalid_braces (tests.test_roundtripping.TestRoundtripping) invalid argument: multiple braces that are not part of a template or argument ... ok test_arguments12_incomplete_open_only (tests.test_roundtripping.TestRoundtripping) incomplete arguments: just an open ... ok test_arguments13_incomplete_open_text (tests.test_roundtripping.TestRoundtripping) incomplete arguments: an open with some text ... ok test_arguments14_incomplete_open_text_pipe (tests.test_roundtripping.TestRoundtripping) incomplete arguments: an open, text, then a pipe ... ok test_arguments15_incomplete_open_pipe (tests.test_roundtripping.TestRoundtripping) incomplete arguments: an open, then a pipe ... ok test_arguments16_incomplete_open_pipe_text (tests.test_roundtripping.TestRoundtripping) incomplete arguments: an open, then a pipe, then text ... ok test_arguments17_incomplete_open_pipes_text (tests.test_roundtripping.TestRoundtripping) incomplete arguments: a pipe, then text then two pipes ... ok test_arguments18_incomplete_open_partial_close (tests.test_roundtripping.TestRoundtripping) incomplete arguments: an open, then one right brace ... ok test_arguments19_incomplete_preserve_previous (tests.test_roundtripping.TestRoundtripping) incomplete arguments: a valid argument followed by an invalid one ... ok test_comments1_blank (tests.test_roundtripping.TestRoundtripping) a blank comment ... ok test_comments2_basic (tests.test_roundtripping.TestRoundtripping) a basic comment ... ok test_comments3_tons_of_nonsense (tests.test_roundtripping.TestRoundtripping) a comment with tons of ignorable garbage in it ... ok test_comments4_incomplete_blank (tests.test_roundtripping.TestRoundtripping) a comment that doesn't close ... ok test_comments5_incomplete_text (tests.test_roundtripping.TestRoundtripping) a comment that doesn't close, with text ... ok test_comments6_incomplete_partial_close (tests.test_roundtripping.TestRoundtripping) a comment that doesn't close, with a partial close ... ok test_comments7_incomplete_part_only (tests.test_roundtripping.TestRoundtripping) a comment that only has a < and ! ... ok test_external_links01_basic (tests.test_roundtripping.TestRoundtripping) basic external link ... ok test_external_links02_basic_brackets (tests.test_roundtripping.TestRoundtripping) basic external link in brackets ... ok test_external_links03_brackets_space (tests.test_roundtripping.TestRoundtripping) basic external link in brackets, with a space after ... ok test_external_links04_brackets_title (tests.test_roundtripping.TestRoundtripping) basic external link in brackets, with a title ... ok test_external_links05_brackets_multiword_title (tests.test_roundtripping.TestRoundtripping) basic external link in brackets, with a multi-word title ... ok test_external_links06_brackets_adjacent (tests.test_roundtripping.TestRoundtripping) three adjacent bracket-enclosed external links ... ok test_external_links07_brackets_newline_before (tests.test_roundtripping.TestRoundtripping) bracket-enclosed link with a newline before the title ... ok test_external_links08_brackets_newline_inside (tests.test_roundtripping.TestRoundtripping) bracket-enclosed link with a newline in the title ... ok test_external_links09_brackets_newline_after (tests.test_roundtripping.TestRoundtripping) bracket-enclosed link with a newline after the title ... ok test_external_links10_brackets_space_before (tests.test_roundtripping.TestRoundtripping) bracket-enclosed link with a space before the URL ... ok test_external_links11_brackets_title_like_url (tests.test_roundtripping.TestRoundtripping) bracket-enclosed link with a title that looks like a URL ... ok test_external_links12_brackets_recursive (tests.test_roundtripping.TestRoundtripping) bracket-enclosed link with a bracket-enclosed link as the title ... ok test_external_links13_brackets_recursive_2 (tests.test_roundtripping.TestRoundtripping) bracket-enclosed link with a double bracket-enclosed link as the title ... ok test_external_links14_period_after (tests.test_roundtripping.TestRoundtripping) a period after a free link that is excluded ... ok test_external_links15_colons_after (tests.test_roundtripping.TestRoundtripping) colons after a free link that are excluded ... ok test_external_links16_close_paren_after_excluded (tests.test_roundtripping.TestRoundtripping) a closing parenthesis after a free link that is excluded ... ok test_external_links17_close_paren_after_included (tests.test_roundtripping.TestRoundtripping) a closing parenthesis after a free link that is included because of an opening parenthesis in the URL ... ok test_external_links18_open_bracket_inside (tests.test_roundtripping.TestRoundtripping) an open bracket inside a free link that causes it to be ended abruptly ... ok test_external_links19_brackets_period_after (tests.test_roundtripping.TestRoundtripping) a period after a bracket-enclosed link that is included ... ok test_external_links20_brackets_punct_after (tests.test_roundtripping.TestRoundtripping) punctuation after a bracket-enclosed link that are included ... ok test_external_links21_brackets_close_paren_after_included (tests.test_roundtripping.TestRoundtripping) a closing parenthesis after a bracket-enclosed link that is included ... ok test_external_links22_brackets_close_paren_after_included_2 (tests.test_roundtripping.TestRoundtripping) a closing parenthesis after a bracket-enclosed link that is also included ... ok test_external_links23_brackets_open_bracket_inside (tests.test_roundtripping.TestRoundtripping) an open bracket inside a bracket-enclosed link that is also included ... ok test_external_links24_adjacent_space (tests.test_roundtripping.TestRoundtripping) two free links separated by a space ... ok test_external_links25_adjacent_newline (tests.test_roundtripping.TestRoundtripping) two free links separated by a newline ... ok test_external_links26_adjacent_close_bracket (tests.test_roundtripping.TestRoundtripping) two free links separated by a close bracket ... ok test_external_links27_html_entity_in_url (tests.test_roundtripping.TestRoundtripping) a HTML entity parsed correctly inside a free link ... ok test_external_links28_template_in_url (tests.test_roundtripping.TestRoundtripping) a template parsed correctly inside a free link ... ok test_external_links29_argument_in_url (tests.test_roundtripping.TestRoundtripping) an argument parsed correctly inside a free link ... ok test_external_links30_wikilink_in_url (tests.test_roundtripping.TestRoundtripping) a wikilink that destroys a free link ... ok test_external_links31_external_link_in_url (tests.test_roundtripping.TestRoundtripping) a bracketed link that destroys a free link ... ok test_external_links32_spaces_padding (tests.test_roundtripping.TestRoundtripping) spaces padding a free link ... ok test_external_links33_text_and_spaces_padding (tests.test_roundtripping.TestRoundtripping) text and spaces padding a free link ... ok test_external_links34_template_before (tests.test_roundtripping.TestRoundtripping) a template before a free link ... ok test_external_links35_spaces_padding_no_slashes (tests.test_roundtripping.TestRoundtripping) spaces padding a free link with no slashes after the colon ... ok test_external_links36_text_and_spaces_padding_no_slashes (tests.test_roundtripping.TestRoundtripping) text and spaces padding a free link with no slashes after the colon ... ok test_external_links37_template_before_no_slashes (tests.test_roundtripping.TestRoundtripping) a template before a free link with no slashes after the colon ... ok test_external_links38_no_slashes (tests.test_roundtripping.TestRoundtripping) a free link with no slashes after the colon ... ok test_external_links39_slashes_optional (tests.test_roundtripping.TestRoundtripping) a free link using a scheme that doesn't need slashes, but has them anyway ... ok test_external_links40_short (tests.test_roundtripping.TestRoundtripping) a very short free link ... ok test_external_links41_slashes_missing (tests.test_roundtripping.TestRoundtripping) slashes missing from a free link with a scheme that requires them ... ok test_external_links42_no_scheme_but_slashes (tests.test_roundtripping.TestRoundtripping) no scheme in a free link, but slashes (protocol-relative free links are not supported) ... ok test_external_links43_no_scheme_but_colon (tests.test_roundtripping.TestRoundtripping) no scheme in a free link, but a colon ... ok test_external_links44_no_scheme_but_colon_and_slashes (tests.test_roundtripping.TestRoundtripping) no scheme in a free link, but a colon and slashes ... ok test_external_links45_fake_scheme_no_slashes (tests.test_roundtripping.TestRoundtripping) a nonexistent scheme in a free link, without slashes ... ok test_external_links46_fake_scheme_slashes (tests.test_roundtripping.TestRoundtripping) a nonexistent scheme in a free link, with slashes ... ok test_external_links47_fake_scheme_brackets_no_slashes (tests.test_roundtripping.TestRoundtripping) a nonexistent scheme in a bracketed link, without slashes ... ok test_external_links48_fake_scheme_brackets_slashes (tests.test_roundtripping.TestRoundtripping) #=a nonexistent scheme in a bracketed link, with slashes ... ok test_external_links49_interrupted_scheme (tests.test_roundtripping.TestRoundtripping) an otherwise valid scheme with something in the middle of it, in a free link ... ok test_external_links50_interrupted_scheme_brackets (tests.test_roundtripping.TestRoundtripping) an otherwise valid scheme with something in the middle of it, in a bracketed link ... ok test_external_links51_no_slashes_brackets (tests.test_roundtripping.TestRoundtripping) no slashes after the colon in a bracketed link ... ok test_external_links52_space_before_no_slashes_brackets (tests.test_roundtripping.TestRoundtripping) a space before a bracketed link with no slashes after the colon ... ok test_external_links53_slashes_optional_brackets (tests.test_roundtripping.TestRoundtripping) a bracketed link using a scheme that doesn't need slashes, but has them anyway ... ok test_external_links54_short_brackets (tests.test_roundtripping.TestRoundtripping) a very short link in brackets ... ok test_external_links55_slashes_missing_brackets (tests.test_roundtripping.TestRoundtripping) slashes missing from a scheme that requires them in a bracketed link ... ok test_external_links56_protcol_relative (tests.test_roundtripping.TestRoundtripping) a protocol-relative link (in brackets) ... ok test_external_links57_scheme_missing_but_colon_brackets (tests.test_roundtripping.TestRoundtripping) scheme missing from a bracketed link, but with a colon ... ok test_external_links58_scheme_missing_but_colon_slashes_brackets (tests.test_roundtripping.TestRoundtripping) scheme missing from a bracketed link, but with a colon and slashes ... ok test_external_links59_unclosed_protocol_relative (tests.test_roundtripping.TestRoundtripping) an unclosed protocol-relative bracketed link ... ok test_external_links60_space_before_protcol_relative (tests.test_roundtripping.TestRoundtripping) a space before a protocol-relative bracketed link ... ok test_external_links61_unclosed_just_scheme (tests.test_roundtripping.TestRoundtripping) an unclosed bracketed link, ending after the scheme ... ok test_external_links62_unclosed_scheme_colon (tests.test_roundtripping.TestRoundtripping) an unclosed bracketed link, ending after the colon ... ok test_external_links63_unclosed_scheme_colon_slashes (tests.test_roundtripping.TestRoundtripping) an unclosed bracketed link, ending after the slashes ... ok test_external_links64_incomplete_bracket (tests.test_roundtripping.TestRoundtripping) just an open bracket ... ok test_external_links65_incomplete_scheme_colon (tests.test_roundtripping.TestRoundtripping) a free link with just a scheme and a colon ... ok test_external_links66_incomplete_scheme_colon_slashes (tests.test_roundtripping.TestRoundtripping) a free link with just a scheme, colon, and slashes ... ok test_external_links67_brackets_scheme_but_no_url (tests.test_roundtripping.TestRoundtripping) brackets around a scheme and a colon ... ok test_external_links68_brackets_scheme_slashes_but_no_url (tests.test_roundtripping.TestRoundtripping) brackets around a scheme, colon, and slashes ... ok test_external_links69_brackets_scheme_title_but_no_url (tests.test_roundtripping.TestRoundtripping) brackets around a scheme, colon, and slashes, with a title ... ok test_headings01_level_1 (tests.test_roundtripping.TestRoundtripping) a basic level-1 heading ... ok test_headings02_level_2 (tests.test_roundtripping.TestRoundtripping) a basic level-2 heading ... ok test_headings03_level_3 (tests.test_roundtripping.TestRoundtripping) a basic level-3 heading ... ok test_headings04_level_4 (tests.test_roundtripping.TestRoundtripping) a basic level-4 heading ... ok test_headings05_level_5 (tests.test_roundtripping.TestRoundtripping) a basic level-5 heading ... ok test_headings06_level_6 (tests.test_roundtripping.TestRoundtripping) a basic level-6 heading ... ok test_headings07_level_7 (tests.test_roundtripping.TestRoundtripping) a level-6 heading that pretends to be a level-7 heading ... ok test_headings08_level_3_2 (tests.test_roundtripping.TestRoundtripping) a level-2 heading that pretends to be a level-3 heading ... ok test_headings09_level_4_6 (tests.test_roundtripping.TestRoundtripping) a level-4 heading that pretends to be a level-6 heading ... ok test_headings10_newline_before (tests.test_roundtripping.TestRoundtripping) a heading that starts after a newline ... ok test_headings11_text_after (tests.test_roundtripping.TestRoundtripping) text on the same line after ... ok test_headings12_invalid_text_before (tests.test_roundtripping.TestRoundtripping) invalid headings: text on the same line before ... ok test_headings13_invalid_newline_middle (tests.test_roundtripping.TestRoundtripping) invalid headings: newline in the middle ... ok test_headings14_invalid_newline_end (tests.test_roundtripping.TestRoundtripping) invalid headings: newline in the middle ... ok test_headings15_invalid_nesting (tests.test_roundtripping.TestRoundtripping) invalid headings: attempts at nesting ... ok test_headings16_incomplete (tests.test_roundtripping.TestRoundtripping) a heading that starts but doesn't finish ... ok test_html_entities01_named (tests.test_roundtripping.TestRoundtripping) a basic named HTML entity ... ok test_html_entities02_numeric_decimal (tests.test_roundtripping.TestRoundtripping) a basic decimal HTML entity ... ok test_html_entities03_numeric_hexadecimal_x (tests.test_roundtripping.TestRoundtripping) a basic hexadecimal HTML entity, using 'x' as a signal ... ok test_html_entities04_numeric_hexadecimal_X (tests.test_roundtripping.TestRoundtripping) a basic hexadecimal HTML entity, using 'X' as a signal ... ok test_html_entities05_numeric_decimal_max (tests.test_roundtripping.TestRoundtripping) the maximum acceptable decimal numeric entity ... ok test_html_entities06_numeric_hex_max (tests.test_roundtripping.TestRoundtripping) the maximum acceptable hexadecimal numeric entity ... ok test_html_entities07_numeric_zeros (tests.test_roundtripping.TestRoundtripping) zeros accepted at the beginning of a numeric entity ... ok test_html_entities08_numeric_hex_zeros (tests.test_roundtripping.TestRoundtripping) zeros accepted at the beginning of a hex numeric entity ... ok test_html_entities09_invalid_named_too_long (tests.test_roundtripping.TestRoundtripping) a named entity that is too long ... ok test_html_entities10_invalid_named_undefined (tests.test_roundtripping.TestRoundtripping) a named entity that doesn't exist ... ok test_html_entities11_invalid_named_nonascii (tests.test_roundtripping.TestRoundtripping) a named entity with non-ASCII characters ... ok test_html_entities12_invalid_numeric_out_of_range_1 (tests.test_roundtripping.TestRoundtripping) a numeric entity that is out of range: < 1 ... ok test_html_entities13_invalid_numeric_out_of_range_2 (tests.test_roundtripping.TestRoundtripping) a hex numeric entity that is out of range: < 1 ... ok test_html_entities14_invalid_numeric_out_of_range_3 (tests.test_roundtripping.TestRoundtripping) a numeric entity that is out of range: > 0x10FFFF ... ok test_html_entities15_invalid_numeric_out_of_range_4 (tests.test_roundtripping.TestRoundtripping) a hex numeric entity that is out of range: > 0x10FFFF ... ok test_html_entities16_invalid_partial_amp (tests.test_roundtripping.TestRoundtripping) invalid entities: just an ampersand ... ok test_html_entities17_invalid_partial_amp_semicolon (tests.test_roundtripping.TestRoundtripping) invalid entities: an ampersand and semicolon ... ok test_html_entities18_invalid_partial_amp_pound (tests.test_roundtripping.TestRoundtripping) invalid entities: just an ampersand, pound sign ... ok test_html_entities19_invalid_partial_amp_pound_x (tests.test_roundtripping.TestRoundtripping) invalid entities: just an ampersand, pound sign, x ... ok test_html_entities20_invalid_partial_amp_pound_semicolon (tests.test_roundtripping.TestRoundtripping) invalid entities: an ampersand, pound sign, and semicolon ... ok test_html_entities21_invalid_partial_amp_pound_x_semicolon (tests.test_roundtripping.TestRoundtripping) invalid entities: an ampersand, pound sign, x, and semicolon ... ok test_html_entities22_invalid_partial_amp_pound_numbers (tests.test_roundtripping.TestRoundtripping) invalid entities: an ampersand, pound sign, numbers ... ok test_html_entities23_invalid_partial_amp_pound_x_semicolon (tests.test_roundtripping.TestRoundtripping) invalid entities: an ampersand, pound sign, and x ... ok test_integration01_empty (tests.test_roundtripping.TestRoundtripping) sanity check that parsing an empty string yields nothing ... ok test_integration02_template_argument_mix (tests.test_roundtripping.TestRoundtripping) an ambiguous mix of templates and arguments ... ok test_integration03_link_in_template_name (tests.test_roundtripping.TestRoundtripping) a wikilink inside a template name, which breaks the template ... ok test_integration04_rich_heading (tests.test_roundtripping.TestRoundtripping) a heading with templates/wikilinks in it ... ok test_integration05_html_entity_with_template (tests.test_roundtripping.TestRoundtripping) a HTML entity with a template embedded inside ... ok test_integration06_html_entity_with_comment (tests.test_roundtripping.TestRoundtripping) a HTML entity with a comment embedded inside ... ok test_integration07_rich_tags (tests.test_roundtripping.TestRoundtripping) a HTML tag with tons of other things in it ... ok test_integration08_wildcard (tests.test_roundtripping.TestRoundtripping) a wildcard assortment of various things ... ok test_integration09_wildcard_redux (tests.test_roundtripping.TestRoundtripping) an even wilder assortment of various things ... ok test_integration10_link_inside_dl (tests.test_roundtripping.TestRoundtripping) an external link inside a def list, such that the external link is parsed ... ok test_integration11_link_inside_dl_2 (tests.test_roundtripping.TestRoundtripping) an external link inside a def list, such that the external link is not parsed ... ok test_integration12_link_inside_template (tests.test_roundtripping.TestRoundtripping) an external link nested inside a template, before the end ... ok test_integration13_link_inside_template_2 (tests.test_roundtripping.TestRoundtripping) an external link nested inside a template, before a separator ... ok test_integration14_link_inside_template_3 (tests.test_roundtripping.TestRoundtripping) an external link nested inside a template, before an equal sign ... ok test_integration15_link_inside_argument (tests.test_roundtripping.TestRoundtripping) an external link nested inside an argument ... ok test_integration16_link_inside_heading (tests.test_roundtripping.TestRoundtripping) an external link nested inside a heading ... ok test_integration17_link_inside_tag_body (tests.test_roundtripping.TestRoundtripping) an external link nested inside the body of a tag ... ok test_integration18_link_inside_tag_style (tests.test_roundtripping.TestRoundtripping) an external link nested inside style tags ... ok test_integration19_style_tag_inside_link (tests.test_roundtripping.TestRoundtripping) style tags disrupting an external link ... ok test_integration20_comment_inside_link (tests.test_roundtripping.TestRoundtripping) an HTML comment inside an external link ... ok test_integration21_bracketed_link_inside_template (tests.test_roundtripping.TestRoundtripping) a bracketed external link nested inside a template, before the end ... ok test_integration22_comment_inside_bracketed_link (tests.test_roundtripping.TestRoundtripping) an HTML comment inside a bracketed external link ... ok test_integration23_wikilink_inside_external_link (tests.test_roundtripping.TestRoundtripping) a wikilink inside an external link, which the parser considers valid (see issue #61) ... ok test_integration24_external_link_inside_wikilink (tests.test_roundtripping.TestRoundtripping) an external link inside a wikilink, valid in the case of images (see issue #62) ... ok test_integration25_external_link_inside_wikilink_brackets (tests.test_roundtripping.TestRoundtripping) an external link with brackets inside a wikilink ... ok test_integration26_external_link_inside_wikilink_title (tests.test_roundtripping.TestRoundtripping) an external link inside a wikilink title, which is not parsed ... ok test_integration27_italics_inside_external_link_inside_incomplete_list (tests.test_roundtripping.TestRoundtripping) italic text inside an external link inside an incomplete list ... ok test_integration28_nodes_inside_external_link_after_punct (tests.test_roundtripping.TestRoundtripping) various complex nodes inside an external link following punctuation ... ok test_integration29_newline_and_comment_in_template_name (tests.test_roundtripping.TestRoundtripping) a template name containing a newline followed by a comment ... ok test_integration30_newline_and_comment_in_template_name_2 (tests.test_roundtripping.TestRoundtripping) a template name containing a newline followed by a comment ... ok test_integration31_newline_and_comment_in_template_name_3 (tests.test_roundtripping.TestRoundtripping) a template name containing a newline followed by a comment ... ok test_integration32_newline_and_comment_in_template_name_4 (tests.test_roundtripping.TestRoundtripping) a template name containing a newline followed by a comment ... ok test_integration33_newline_and_comment_in_template_name_5 (tests.test_roundtripping.TestRoundtripping) a template name containing a newline followed by a comment ... ok test_integration34_newline_and_comment_in_template_name_6 (tests.test_roundtripping.TestRoundtripping) a template name containing a newline followed by a comment ... ok test_integration35_newline_and_comment_in_template_name_7 (tests.test_roundtripping.TestRoundtripping) a template name containing a newline followed by a comment ... ok test_integration36_newline_and_comment_in_template_name_8 (tests.test_roundtripping.TestRoundtripping) a template name containing a newline followed by a comment ... ok test_integration37_tag_in_link_title (tests.test_roundtripping.TestRoundtripping) HTML tags are invalid in link titles, even when complete ... ok test_integration38_tag_in_template_name (tests.test_roundtripping.TestRoundtripping) HTML tags are invalid in template names, even when complete ... ok test_integration39_tag_in_link_text (tests.test_roundtripping.TestRoundtripping) HTML tags are valid in link text ... ok test_integration40_comment_in_link_title (tests.test_roundtripping.TestRoundtripping) comments are valid in link titles ... ok test_integration41_incomplete_comment_in_link_title (tests.test_roundtripping.TestRoundtripping) incomplete comments are invalid in link titles ... ok test_integration42_incomplete_comment_in_link_title_2 (tests.test_roundtripping.TestRoundtripping) incomplete comments are invalid in link titles ... ok test_integration43_incomplete_comment_in_link_title_3 (tests.test_roundtripping.TestRoundtripping) incomplete comments are invalid in link titles ... ok test_integration44_incomplete_comment_in_link_title_4 (tests.test_roundtripping.TestRoundtripping) incomplete comments are invalid in link titles ... ok test_integration45_incomplete_comment_in_link_title_5 (tests.test_roundtripping.TestRoundtripping) incomplete comments are invalid in link titles ... ok test_integration46_incomplete_comment_in_link_title_6 (tests.test_roundtripping.TestRoundtripping) incomplete comments are invalid in link titles ... ok test_integration47_wikilink_to_external_link_fallback (tests.test_roundtripping.TestRoundtripping) an external link enclosed in an extra pair of brackets (see issue #120) ... ok test_integration48_wikilink_to_external_link_fallback_2 (tests.test_roundtripping.TestRoundtripping) an external link enclosed in an extra pair of brackets (see issue #120) ... ok test_integration49_tables_in_templates (tests.test_roundtripping.TestRoundtripping) catch error handling mistakes when wikitables are inside templates ... ok test_integration50_tables_in_templates_2 (tests.test_roundtripping.TestRoundtripping) catch error handling mistakes when wikitables are inside templates ... ok test_integration51_many_invalid_nested_tags (tests.test_roundtripping.TestRoundtripping) many unending nested tags that should be treated as plain text, followed by valid wikitext (see issues #42, #183) ... ok test_tables01_empty_table (tests.test_roundtripping.TestRoundtripping) parsing an empty table ... ok test_tables02_inline_table (tests.test_roundtripping.TestRoundtripping) tables with a close on the same line are not valid ... ok test_tables03_no_table_close_simple (tests.test_roundtripping.TestRoundtripping) no table close on inline table ... ok test_tables04_no_table_close_newline (tests.test_roundtripping.TestRoundtripping) no table close with a newline ... ok test_tables05_no_table_close_inside_cell (tests.test_roundtripping.TestRoundtripping) no table close while inside of a cell ... ok test_tables06_no_table_close_inside_cell_after_newline (tests.test_roundtripping.TestRoundtripping) no table close while inside of a cell after a newline ... ok test_tables07_no_table_close_inside_cell_with_attributes (tests.test_roundtripping.TestRoundtripping) no table close while inside of a cell with attributes ... ok test_tables08_no_table_close_inside_row (tests.test_roundtripping.TestRoundtripping) no table close while inside of a row ... ok test_tables09_no_table_close_inside_row_after_newline (tests.test_roundtripping.TestRoundtripping) no table close while inside of a row after a newline ... ok test_tables10_no_table_close_row_and_cell (tests.test_roundtripping.TestRoundtripping) no table close while inside a cell inside a row ... ok test_tables11_no_table_close_attributes (tests.test_roundtripping.TestRoundtripping) don't parse attributes as attributes if the table doesn't exist ... ok test_tables12_no_table_close_unclosed_attributes (tests.test_roundtripping.TestRoundtripping) don't parse unclosed attributes if the table doesn't exist ... ok test_tables13_no_table_close_row_attributes (tests.test_roundtripping.TestRoundtripping) don't parse row attributes as attributes if the table doesn't exist ... ok test_tables14_no_table_close_cell (tests.test_roundtripping.TestRoundtripping) don't parse cells if the table doesn't close ... ok test_tables15_crazy_no_table_close (tests.test_roundtripping.TestRoundtripping) lots of opened wiki syntax without closes ... ok test_tables16_leading_whitespace_table (tests.test_roundtripping.TestRoundtripping) handle leading whitespace for a table ... ok test_tables17_whitespace_after_table (tests.test_roundtripping.TestRoundtripping) handle whitespace after a table close ... ok test_tables18_different_whitespace_after_table (tests.test_roundtripping.TestRoundtripping) handle spaces after a table close ... ok test_tables19_characters_after_table (tests.test_roundtripping.TestRoundtripping) handle characters after a table close ... ok test_tables20_characters_after_inline_table (tests.test_roundtripping.TestRoundtripping) handle characters after an inline table close ... ok test_tables21_leading_characters_table (tests.test_roundtripping.TestRoundtripping) don't parse as a table when leading characters are not newline or whitespace ... ok test_tables22_table_row_simple (tests.test_roundtripping.TestRoundtripping) simple table row ... ok test_tables23_table_row_multiple (tests.test_roundtripping.TestRoundtripping) simple table row ... ok test_tables24_table_cell_simple (tests.test_roundtripping.TestRoundtripping) simple table cell ... ok test_tables25_table_cell_inline (tests.test_roundtripping.TestRoundtripping) multiple inline table cells ... ok test_tables26_table_cell_multiple (tests.test_roundtripping.TestRoundtripping) multiple table cells (non-inline) ... ok test_tables27_table_header_simple (tests.test_roundtripping.TestRoundtripping) simple header cell ... ok test_tables28_table_header_inline (tests.test_roundtripping.TestRoundtripping) multiple inline header cells ... ok test_tables29_table_header_multiple (tests.test_roundtripping.TestRoundtripping) multiple table header cells (non-inline) ... ok test_tables30_nested_cells_and_rows (tests.test_roundtripping.TestRoundtripping) combination of cells and rows in a table ... ok test_tables31_table_cell_fake_close (tests.test_roundtripping.TestRoundtripping) looks like a table close but is not ... ok test_tables32_table_cell_more_fake_close (tests.test_roundtripping.TestRoundtripping) looks like a table close but is not ... ok test_tables33_table_cell_extra_close (tests.test_roundtripping.TestRoundtripping) process second close as text ... ok test_tables34_nowiki_inside_table (tests.test_roundtripping.TestRoundtripping) nowiki handles pipe characters in tables ... ok test_tables35_table_text_outside_cell (tests.test_roundtripping.TestRoundtripping) parse text inside table but outside of a cell ... ok test_tables36_no_table_cell_with_leading_characters (tests.test_roundtripping.TestRoundtripping) fail to create a table cell when there are leading non-whitespace characters ... ok test_tables37_no_table_row_with_leading_characters (tests.test_roundtripping.TestRoundtripping) fail to create a table row when there are leading non-whitespace characters ... ok test_tables38_template_inside_table_cell (tests.test_roundtripping.TestRoundtripping) template within table cell ... ok test_tables39_table_cell_attributes (tests.test_roundtripping.TestRoundtripping) parse table cell style attributes ... ok test_tables40_table_cell_empty_attributes (tests.test_roundtripping.TestRoundtripping) parse table cell with style markers but no attributes ... ok test_tables41_table_cell_with_dash (tests.test_roundtripping.TestRoundtripping) parse a situation in which a cell line looks like a row line ... ok test_tables42_table_cell_attributes_quote_with_pipe (tests.test_roundtripping.TestRoundtripping) pipe inside an attribute quote should still be used as a style separator ... ok test_tables43_table_cell_attributes_name_with_pipe (tests.test_roundtripping.TestRoundtripping) pipe inside an attribute name should still be used as a style separator ... ok test_tables44_table_cell_attributes_pipe_after_equals (tests.test_roundtripping.TestRoundtripping) pipe inside an attribute should still be used as a style separator after an equals ... ok test_tables45_table_cell_attributes_templates (tests.test_roundtripping.TestRoundtripping) pipe inside attributes shouldn't be style separator ... ok test_tables46_header_cell_attributes (tests.test_roundtripping.TestRoundtripping) parse header cell style attributes ... ok test_tables47_inline_cell_attributes (tests.test_roundtripping.TestRoundtripping) parse cell style attributes of inline cells ... ok test_tables48_table_row_attributes (tests.test_roundtripping.TestRoundtripping) parse table row style attributes ... ok test_tables49_table_row_attributes_crazy_whitespace (tests.test_roundtripping.TestRoundtripping) parse table row style attributes with different whitespace ... ok test_tables50_table_attributes (tests.test_roundtripping.TestRoundtripping) parse table style attributes ... ok test_tables51_inline_table_attributes (tests.test_roundtripping.TestRoundtripping) handle attributes in inline tables ... ok test_tables52_table_incorrect_attributes (tests.test_roundtripping.TestRoundtripping) parse incorrect table style attributes ... ok test_tables53_templates_in_table_attribute (tests.test_roundtripping.TestRoundtripping) templates in the attributes of a table, after the start ... ok test_tables54_templates_in_table_attribute_2 (tests.test_roundtripping.TestRoundtripping) templates in the attributes of a table, after the start ... ok test_tables55_inappropriate_marker_at_line_start (tests.test_roundtripping.TestRoundtripping) an inappropriate marker (a right bracket) at the start of a line in the table ... ok test_tables56_fake_close_near_start (tests.test_roundtripping.TestRoundtripping) a fake closing token at the end of the first line in the table ... ok test_tables57_fake_close_near_start_2 (tests.test_roundtripping.TestRoundtripping) a fake closing token at the end of the first line in the table ... ok test_tables58_junk_after_table_start (tests.test_roundtripping.TestRoundtripping) ignore more junk on the first line of the table ... ok test_tables59_junk_after_table_row (tests.test_roundtripping.TestRoundtripping) ignore junk on the first line of a table row ... ok test_tags01_basic (tests.test_roundtripping.TestRoundtripping) a basic tag with an open and close ... ok test_tags02_basic_selfclosing (tests.test_roundtripping.TestRoundtripping) a basic self-closing tag ... ok test_tags03_content (tests.test_roundtripping.TestRoundtripping) a tag with some content in the middle ... ok test_tags04_padded_open (tests.test_roundtripping.TestRoundtripping) a tag with some padding in the open tag ... ok test_tags05_padded_close (tests.test_roundtripping.TestRoundtripping) a tag with some padding in the close tag ... ok test_tags06_padded_selfclosing (tests.test_roundtripping.TestRoundtripping) a self-closing tag with padding ... ok test_tags07_attribute (tests.test_roundtripping.TestRoundtripping) a tag with a single attribute ... ok test_tags08_attribute_value (tests.test_roundtripping.TestRoundtripping) a tag with a single attribute with a value ... ok test_tags09_attribute_quoted (tests.test_roundtripping.TestRoundtripping) a tag with a single quoted attribute ... ok test_tags10_attribute_single_quoted (tests.test_roundtripping.TestRoundtripping) a tag with a single singly-quoted attribute ... ok test_tags11_attribute_hyphen (tests.test_roundtripping.TestRoundtripping) a tag with a single attribute, containing a hyphen ... ok test_tags12_attribute_quoted_hyphen (tests.test_roundtripping.TestRoundtripping) a tag with a single quoted attribute, containing a hyphen ... ok test_tags13_attribute_selfclosing (tests.test_roundtripping.TestRoundtripping) a self-closing tag with a single attribute ... ok test_tags14_attribute_selfclosing_value (tests.test_roundtripping.TestRoundtripping) a self-closing tag with a single attribute with a value ... ok test_tags15_attribute_selfclosing_value_quoted (tests.test_roundtripping.TestRoundtripping) a self-closing tag with a single quoted attribute ... ok test_tags16_nested_tag (tests.test_roundtripping.TestRoundtripping) a tag nested within the attributes of another ... ok test_tags17_nested_tag_quoted (tests.test_roundtripping.TestRoundtripping) a tag nested within the attributes of another, quoted ... ok test_tags18_nested_troll_tag (tests.test_roundtripping.TestRoundtripping) a bogus tag that appears to be nested within the attributes of another ... ok test_tags19_nested_troll_tag_quoted (tests.test_roundtripping.TestRoundtripping) a bogus tag that appears to be nested within the attributes of another, quoted ... ok test_tags20_nested_tag_selfclosing (tests.test_roundtripping.TestRoundtripping) a tag nested within the attributes of another; outer tag implicitly self-closing ... ok test_tags21_invalid_space_begin_open (tests.test_roundtripping.TestRoundtripping) invalid tag: a space at the beginning of the open tag ... ok test_tags22_invalid_space_begin_close (tests.test_roundtripping.TestRoundtripping) invalid tag: a space at the beginning of the close tag ... ok test_tags23_valid_space_end (tests.test_roundtripping.TestRoundtripping) valid tag: spaces at the ends of both the open and close tags ... ok test_tags24_invalid_template_ends (tests.test_roundtripping.TestRoundtripping) invalid tag: a template at the ends of both the open and close tags ... ok test_tags25_invalid_template_ends_nospace (tests.test_roundtripping.TestRoundtripping) invalid tag: a template at the ends of both the open and close tags, without spacing ... ok test_tags26_valid_template_end_open (tests.test_roundtripping.TestRoundtripping) valid tag: a template at the end of the open tag ... ok test_tags27_valid_template_end_open_space_end_close (tests.test_roundtripping.TestRoundtripping) valid tag: a template at the end of the open tag; whitespace at the end of the close tag ... ok test_tags28_invalid_template_end_open_nospace (tests.test_roundtripping.TestRoundtripping) invalid tag: a template at the end of the open tag, without spacing ... ok test_tags29_invalid_template_start_close (tests.test_roundtripping.TestRoundtripping) invalid tag: a template at the beginning of the close tag ... ok test_tags30_invalid_template_start_open (tests.test_roundtripping.TestRoundtripping) invalid tag: a template at the beginning of the open tag ... ok test_tags31_unclosed_quote (tests.test_roundtripping.TestRoundtripping) a quoted attribute that is never closed ... ok test_tags32_fake_quote (tests.test_roundtripping.TestRoundtripping) a fake quoted attribute ... ok test_tags33_fake_quote_complex (tests.test_roundtripping.TestRoundtripping) a fake quoted attribute, with spaces and templates and links ... ok test_tags34_quotes_in_quotes (tests.test_roundtripping.TestRoundtripping) singly-quoted text inside a doubly-quoted attribute ... ok test_tags35_quotes_in_quotes_2 (tests.test_roundtripping.TestRoundtripping) doubly-quoted text inside a singly-quoted attribute ... ok test_tags36_quotes_in_quotes_3 (tests.test_roundtripping.TestRoundtripping) doubly-quoted text inside a singly-quoted attribute, with backslashes ... ok test_tags37_incomplete_lbracket (tests.test_roundtripping.TestRoundtripping) incomplete tags: just a left bracket ... ok test_tags38_incomplete_lbracket_junk (tests.test_roundtripping.TestRoundtripping) incomplete tags: just a left bracket, surrounded by stuff ... ok test_tags39_incomplete_unclosed_open (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed open tag ... ok test_tags40_incomplete_unclosed_open_space (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed open tag, space ... ok test_tags41_incomplete_unclosed_open_unnamed_attr (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed open tag, unnamed attribute ... ok test_tags42_incomplete_unclosed_open_attr_equals (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed open tag, attribute, equal sign ... ok test_tags43_incomplete_unclosed_open_attr_equals_quoted (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed open tag, attribute, equal sign, quote ... ok test_tags44_incomplete_unclosed_open_attr (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed open tag, attribute with a key/value ... ok test_tags45_incomplete_unclosed_open_attr_quoted (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed open tag, attribute with a key/value, quoted ... ok test_tags46_incomplete_open (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag ... ok test_tags47_incomplete_open_unnamed_attr (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, unnamed attribute ... ok test_tags48_incomplete_open_attr_equals (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, attribute, equal sign ... ok test_tags49_incomplete_open_attr (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, attribute with a key/value ... ok test_tags50_incomplete_open_attr_quoted (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, attribute with a key/value, quoted ... ok test_tags51_incomplete_open_text (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, text ... ok test_tags52_incomplete_open_attr_text (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, attribute with a key/value, text ... ok test_tags53_incomplete_open_text_lbracket (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, text, left open bracket ... ok test_tags54_incomplete_open_text_lbracket_slash (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, text, left bracket, slash ... ok test_tags55_incomplete_open_text_unclosed_close (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, text, unclosed close ... ok test_tags56_incomplete_open_text_wrong_close (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, text, wrong close ... ok test_tags57_incomplete_unclosed_close (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed close tag ... ok test_tags58_incomplete_unclosed_close_text (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed close tag, with text ... ok test_tags59_incomplete_close (tests.test_roundtripping.TestRoundtripping) incomplete tags: a close tag ... ok test_tags60_incomplete_no_tag_name_open (tests.test_roundtripping.TestRoundtripping) incomplete tags: no tag name within brackets; just an open ... ok test_tags61_incomplete_no_tag_name_selfclosing (tests.test_roundtripping.TestRoundtripping) incomplete tags: no tag name within brackets; self-closing ... ok test_tags62_incomplete_no_tag_name_open_close (tests.test_roundtripping.TestRoundtripping) incomplete tags: no tag name within brackets; open and close ... ok test_tags63_backslash_premature_before (tests.test_roundtripping.TestRoundtripping) a backslash before a quote before a space ... ok test_tags64_backslash_premature_after (tests.test_roundtripping.TestRoundtripping) a backslash before a quote after a space ... ok test_tags65_backslash_premature_middle (tests.test_roundtripping.TestRoundtripping) a backslash before a quote in the middle of a word ... ok test_tags66_backslash_adjacent (tests.test_roundtripping.TestRoundtripping) escaped quotes next to unescaped quotes ... ok test_tags67_backslash_endquote (tests.test_roundtripping.TestRoundtripping) backslashes before the end quote, causing the attribute to become unquoted ... ok test_tags68_backslash_double (tests.test_roundtripping.TestRoundtripping) two adjacent backslashes, which do *not* affect the quote ... ok test_tags69_backslash_triple (tests.test_roundtripping.TestRoundtripping) three adjacent backslashes, which do *not* affect the quote ... ok test_tags70_backslash_unaffecting (tests.test_roundtripping.TestRoundtripping) backslashes near quotes, but not immediately adjacent, thus having no effect ... ok test_tags71_unparsable (tests.test_roundtripping.TestRoundtripping) a tag that should not be put through the normal parser ... ok test_tags72_unparsable_complex (tests.test_roundtripping.TestRoundtripping) a tag that should not be put through the normal parser; lots of stuff inside ... ok test_tags73_unparsable_attributed (tests.test_roundtripping.TestRoundtripping) a tag that should not be put through the normal parser; parsed attributes ... ok test_tags74_unparsable_incomplete (tests.test_roundtripping.TestRoundtripping) a tag that should not be put through the normal parser; incomplete ... ok test_tags75_unparsable_entity (tests.test_roundtripping.TestRoundtripping) a HTML entity inside unparsable text is still parsed ... ok test_tags76_unparsable_entity_incomplete (tests.test_roundtripping.TestRoundtripping) an incomplete HTML entity inside unparsable text ... ok test_tags77_unparsable_entity_incomplete_2 (tests.test_roundtripping.TestRoundtripping) an incomplete HTML entity inside unparsable text ... ok test_tags78_single_open_close (tests.test_roundtripping.TestRoundtripping) a tag that supports being single; both an open and a close tag ... ok test_tags79_single_open (tests.test_roundtripping.TestRoundtripping) a tag that supports being single; just an open tag ... ok test_tags80_single_selfclose (tests.test_roundtripping.TestRoundtripping) a tag that supports being single; a self-closing tag ... ok test_tags81_single_close (tests.test_roundtripping.TestRoundtripping) a tag that supports being single; just a close tag ... ok test_tags82_single_only_open_close (tests.test_roundtripping.TestRoundtripping) a tag that can only be single; both an open and a close tag ... ok test_tags83_single_only_open (tests.test_roundtripping.TestRoundtripping) a tag that can only be single; just an open tag ... ok test_tags84_single_only_selfclose (tests.test_roundtripping.TestRoundtripping) a tag that can only be single; a self-closing tag ... ok test_tags85_single_only_close (tests.test_roundtripping.TestRoundtripping) a tag that can only be single; just a close tag ... ok test_tags86_single_only_double (tests.test_roundtripping.TestRoundtripping) a tag that can only be single; a tag with backslashes at the beginning and end ... ok test_tags87_single_only_close_attribute (tests.test_roundtripping.TestRoundtripping) a tag that can only be single; presented as a close tag with an attribute ... ok test_tags88_capitalization (tests.test_roundtripping.TestRoundtripping) caps should be ignored within tag names ... ok test_tags89_unparsable_incomplete_close (tests.test_roundtripping.TestRoundtripping) an unparsable tag with an incomplete close afterwards ... ok test_tags90_unparsable_with_intermediates (tests.test_roundtripping.TestRoundtripping) an unparsable tag with intermediate tags inside of it ... ok test_tags91_unparsable_with_intermediates_normalize (tests.test_roundtripping.TestRoundtripping) an unparsable tag with intermediate tags inside of it, requiring normalization ... ok test_tags92_non_ascii_open (tests.test_roundtripping.TestRoundtripping) a open tag containing non-ASCII characters ... ok test_tags93_non_ascii_full (tests.test_roundtripping.TestRoundtripping) an open/close tag pair containing non-ASCII characters ... ok test_tags94_single_nested_selfclosing (tests.test_roundtripping.TestRoundtripping) a single (unpaired) tag with a self-closing tag in the middle (see issue #147) ... ok test_tags_wikimarkup01_basic_italics (tests.test_roundtripping.TestRoundtripping) basic italic text ... ok test_tags_wikimarkup02_basic_bold (tests.test_roundtripping.TestRoundtripping) basic bold text ... ok test_tags_wikimarkup03_basic_ul (tests.test_roundtripping.TestRoundtripping) basic unordered list ... ok test_tags_wikimarkup04_basic_ol (tests.test_roundtripping.TestRoundtripping) basic ordered list ... ok test_tags_wikimarkup05_basic_dt (tests.test_roundtripping.TestRoundtripping) basic description term ... ok test_tags_wikimarkup06_basic_dd (tests.test_roundtripping.TestRoundtripping) basic description item ... ok test_tags_wikimarkup07_basic_hr (tests.test_roundtripping.TestRoundtripping) basic horizontal rule ... ok test_tags_wikimarkup08_complex_italics (tests.test_roundtripping.TestRoundtripping) italics with a lot in them ... ok test_tags_wikimarkup09_multiline_italics (tests.test_roundtripping.TestRoundtripping) italics spanning mulitple lines ... ok test_tags_wikimarkup10_unending_italics (tests.test_roundtripping.TestRoundtripping) italics without an ending tag ... ok test_tags_wikimarkup11_misleading_italics_end (tests.test_roundtripping.TestRoundtripping) italics with something that looks like an end but isn't ... ok test_tags_wikimarkup12_italics_start_outside_end_inside (tests.test_roundtripping.TestRoundtripping) italics that start outside a link and end inside it ... ok test_tags_wikimarkup13_italics_start_inside_end_outside (tests.test_roundtripping.TestRoundtripping) italics that start inside a link and end outside it ... ok test_tags_wikimarkup14_complex_bold (tests.test_roundtripping.TestRoundtripping) bold with a lot in it ... ok test_tags_wikimarkup15_multiline_bold (tests.test_roundtripping.TestRoundtripping) bold spanning mulitple lines ... ok test_tags_wikimarkup16_unending_bold (tests.test_roundtripping.TestRoundtripping) bold without an ending tag ... ok test_tags_wikimarkup17_misleading_bold_end (tests.test_roundtripping.TestRoundtripping) bold with something that looks like an end but isn't ... ok test_tags_wikimarkup18_bold_start_outside_end_inside (tests.test_roundtripping.TestRoundtripping) bold that start outside a link and end inside it ... ok test_tags_wikimarkup19_bold_start_inside_end_outside (tests.test_roundtripping.TestRoundtripping) bold that start inside a link and end outside it ... ok test_tags_wikimarkup20_bold_and_italics (tests.test_roundtripping.TestRoundtripping) bold and italics together ... ok test_tags_wikimarkup21_both_then_bold (tests.test_roundtripping.TestRoundtripping) text that starts bold/italic, then is just bold ... ok test_tags_wikimarkup22_both_then_italics (tests.test_roundtripping.TestRoundtripping) text that starts bold/italic, then is just italic ... ok test_tags_wikimarkup23_bold_then_both (tests.test_roundtripping.TestRoundtripping) text that starts just bold, then is bold/italic ... ok test_tags_wikimarkup24_italics_then_both (tests.test_roundtripping.TestRoundtripping) text that starts just italic, then is bold/italic ... ok test_tags_wikimarkup25_italics_then_bold (tests.test_roundtripping.TestRoundtripping) text that starts italic, then is bold ... ok test_tags_wikimarkup26_bold_then_italics (tests.test_roundtripping.TestRoundtripping) text that starts bold, then is italic ... ok test_tags_wikimarkup27_five_three (tests.test_roundtripping.TestRoundtripping) five ticks to open, three to close (bold) ... ok test_tags_wikimarkup28_five_two (tests.test_roundtripping.TestRoundtripping) five ticks to open, two to close (bold) ... ok test_tags_wikimarkup29_four (tests.test_roundtripping.TestRoundtripping) four ticks ... ok test_tags_wikimarkup30_four_two (tests.test_roundtripping.TestRoundtripping) four ticks to open, two to close ... ok test_tags_wikimarkup31_two_three (tests.test_roundtripping.TestRoundtripping) two ticks to open, three to close ... ok test_tags_wikimarkup32_two_four (tests.test_roundtripping.TestRoundtripping) two ticks to open, four to close ... ok test_tags_wikimarkup33_two_three_two (tests.test_roundtripping.TestRoundtripping) two ticks to open, three to close, two afterwards ... ok test_tags_wikimarkup34_two_four_four (tests.test_roundtripping.TestRoundtripping) two ticks to open, four to close, four afterwards ... ok test_tags_wikimarkup35_seven (tests.test_roundtripping.TestRoundtripping) seven ticks ... ok test_tags_wikimarkup36_unending_bold_and_italics (tests.test_roundtripping.TestRoundtripping) five ticks (bold and italics) that don't end ... ok test_tags_wikimarkup37_complex_ul (tests.test_roundtripping.TestRoundtripping) ul with a lot in it ... ok test_tags_wikimarkup38_ul_multiline_template (tests.test_roundtripping.TestRoundtripping) ul with a template that spans multiple lines ... ok test_tags_wikimarkup39_ul_adjacent (tests.test_roundtripping.TestRoundtripping) multiple adjacent uls ... ok test_tags_wikimarkup40_ul_depths (tests.test_roundtripping.TestRoundtripping) multiple adjacent uls, with differing depths ... ok test_tags_wikimarkup41_ul_space_before (tests.test_roundtripping.TestRoundtripping) uls with space before them ... ok test_tags_wikimarkup42_ul_interruption (tests.test_roundtripping.TestRoundtripping) high-depth ul with something blocking it ... ok test_tags_wikimarkup43_complex_ol (tests.test_roundtripping.TestRoundtripping) ol with a lot in it ... ok test_tags_wikimarkup44_ol_multiline_template (tests.test_roundtripping.TestRoundtripping) ol with a template that spans moltiple lines ... ok test_tags_wikimarkup45_ol_adjacent (tests.test_roundtripping.TestRoundtripping) moltiple adjacent ols ... ok test_tags_wikimarkup46_ol_depths (tests.test_roundtripping.TestRoundtripping) moltiple adjacent ols, with differing depths ... ok test_tags_wikimarkup47_ol_space_before (tests.test_roundtripping.TestRoundtripping) ols with space before them ... ok test_tags_wikimarkup48_ol_interruption (tests.test_roundtripping.TestRoundtripping) high-depth ol with something blocking it ... ok test_tags_wikimarkup49_ul_ol_mix (tests.test_roundtripping.TestRoundtripping) a mix of adjacent uls and ols ... ok test_tags_wikimarkup50_complex_dt (tests.test_roundtripping.TestRoundtripping) dt with a lot in it ... ok test_tags_wikimarkup51_dt_multiline_template (tests.test_roundtripping.TestRoundtripping) dt with a template that spans mdttiple lines ... ok test_tags_wikimarkup52_dt_adjacent (tests.test_roundtripping.TestRoundtripping) mdttiple adjacent dts ... ok test_tags_wikimarkup53_dt_depths (tests.test_roundtripping.TestRoundtripping) mdttiple adjacent dts, with differing depths ... ok test_tags_wikimarkup54_dt_space_before (tests.test_roundtripping.TestRoundtripping) dts with space before them ... ok test_tags_wikimarkup55_dt_interruption (tests.test_roundtripping.TestRoundtripping) high-depth dt with something blocking it ... ok test_tags_wikimarkup56_complex_dd (tests.test_roundtripping.TestRoundtripping) dd with a lot in it ... ok test_tags_wikimarkup57_dd_multiline_template (tests.test_roundtripping.TestRoundtripping) dd with a template that spans mddtiple lines ... ok test_tags_wikimarkup58_dd_adjacent (tests.test_roundtripping.TestRoundtripping) mddtiple adjacent dds ... ok test_tags_wikimarkup59_dd_depths (tests.test_roundtripping.TestRoundtripping) mddtiple adjacent dds, with differing depths ... ok test_tags_wikimarkup60_dd_space_before (tests.test_roundtripping.TestRoundtripping) dds with space before them ... ok test_tags_wikimarkup61_dd_interruption (tests.test_roundtripping.TestRoundtripping) high-depth dd with something blocking it ... ok test_tags_wikimarkup62_dt_dd_mix (tests.test_roundtripping.TestRoundtripping) a mix of adjacent dts and dds ... ok test_tags_wikimarkup63_dt_dd_mix2 (tests.test_roundtripping.TestRoundtripping) the correct usage of a dt/dd unit, as in a dl ... ok test_tags_wikimarkup64_dt_dd_mix3 (tests.test_roundtripping.TestRoundtripping) another example of correct (but strange) dt/dd usage ... ok test_tags_wikimarkup65_dt_dd_mix4 (tests.test_roundtripping.TestRoundtripping) another example of correct dt/dd usage, with a trigger for a specific parse route ... ok test_tags_wikimarkup66_ul_ol_dt_dd_mix (tests.test_roundtripping.TestRoundtripping) an assortment of uls, ols, dds, and dts ... ok test_tags_wikimarkup67_hr_text_before (tests.test_roundtripping.TestRoundtripping) text before an otherwise-valid hr ... ok test_tags_wikimarkup68_hr_text_after (tests.test_roundtripping.TestRoundtripping) text after a valid hr ... ok test_tags_wikimarkup69_hr_text_before_after (tests.test_roundtripping.TestRoundtripping) text at both ends of an otherwise-valid hr ... ok test_tags_wikimarkup70_hr_newlines (tests.test_roundtripping.TestRoundtripping) newlines surrounding a valid hr ... ok test_tags_wikimarkup71_hr_adjacent (tests.test_roundtripping.TestRoundtripping) two adjacent hrs ... ok test_tags_wikimarkup72_hr_adjacent_space (tests.test_roundtripping.TestRoundtripping) two adjacent hrs, with a space before the second one, making it invalid ... ok test_tags_wikimarkup73_hr_short (tests.test_roundtripping.TestRoundtripping) an invalid three-hyphen-long hr ... ok test_tags_wikimarkup74_hr_long (tests.test_roundtripping.TestRoundtripping) a very long, valid hr ... ok test_tags_wikimarkup75_hr_interruption_short (tests.test_roundtripping.TestRoundtripping) a hr that is interrupted, making it invalid ... ok test_tags_wikimarkup76_hr_interruption_long (tests.test_roundtripping.TestRoundtripping) a hr that is interrupted, but the first part remains valid because it is long enough ... ok test_tags_wikimarkup77_nowiki_cancel (tests.test_roundtripping.TestRoundtripping) a nowiki tag before a list causes it to not be parsed ... ok test_templates001_no_params (tests.test_roundtripping.TestRoundtripping) simplest type of template ... ok test_templates002_one_param_unnamed (tests.test_roundtripping.TestRoundtripping) basic template with one unnamed parameter ... ok test_templates003_one_param_named (tests.test_roundtripping.TestRoundtripping) basic template with one named parameter ... ok test_templates004_multiple_unnamed_params (tests.test_roundtripping.TestRoundtripping) basic template with multiple unnamed parameters ... ok test_templates005_multiple_named_params (tests.test_roundtripping.TestRoundtripping) basic template with multiple named parameters ... ok test_templates006_multiple_mixed_params (tests.test_roundtripping.TestRoundtripping) basic template with multiple unnamed/named parameters ... ok test_templates007_multiple_mixed_params2 (tests.test_roundtripping.TestRoundtripping) basic template with multiple unnamed/named parameters in another order ... ok test_templates008_blank_params (tests.test_roundtripping.TestRoundtripping) template with blank parameters (mix of pipes and equal signs) ... ok test_templates009_nested_unnamed_param (tests.test_roundtripping.TestRoundtripping) nested template as an unnamed parameter ... ok test_templates010_nested_named_param_value (tests.test_roundtripping.TestRoundtripping) nested template as a parameter value with a named parameter ... ok test_templates011_nested_named_param_name_and_value (tests.test_roundtripping.TestRoundtripping) nested templates as a parameter name and value ... ok test_templates012_nested_name_start (tests.test_roundtripping.TestRoundtripping) nested template at the beginning of a template name ... ok test_templates013_nested_name_start_unnamed_param (tests.test_roundtripping.TestRoundtripping) nested template at the beginning of a template name and as an unnamed parameter ... ok test_templates014_nested_name_start_named_param_value (tests.test_roundtripping.TestRoundtripping) nested template at the beginning of a template name and as a parameter value with a named parameter ... ok test_templates015_nested_name_start_named_param_name_and_value (tests.test_roundtripping.TestRoundtripping) nested template at the beginning of a template name and as a parameter name and value ... ok test_templates016_nested_name_end (tests.test_roundtripping.TestRoundtripping) nested template at the end of a template name ... ok test_templates017_nested_name_end_unnamed_param (tests.test_roundtripping.TestRoundtripping) nested template at the end of a template name and as an unnamed parameter ... ok test_templates018_nested_name_end_named_param_value (tests.test_roundtripping.TestRoundtripping) nested template at the end of a template name and as a parameter value with a named parameter ... ok test_templates019_nested_name_end_named_param_name_and_value (tests.test_roundtripping.TestRoundtripping) nested template at the end of a template name and as a parameter name and value ... ok test_templates020_nested_name_mid (tests.test_roundtripping.TestRoundtripping) nested template in the middle of a template name ... ok test_templates021_nested_name_mid_unnamed_param (tests.test_roundtripping.TestRoundtripping) nested template in the middle of a template name and as an unnamed parameter ... ok test_templates022_nested_name_mid_named_param_value (tests.test_roundtripping.TestRoundtripping) nested template in the middle of a template name and as a parameter value with a named parameter ... ok test_templates023_nested_name_mid_named_param_name_and_value (tests.test_roundtripping.TestRoundtripping) nested template in the middle of a template name and as a parameter name and value ... ok test_templates024_nested_name_start_end (tests.test_roundtripping.TestRoundtripping) nested template at the beginning and end of a template name ... ok test_templates025_nested_name_start_end_unnamed_param (tests.test_roundtripping.TestRoundtripping) nested template at the beginning and end of a template name and as an unnamed parameter ... ok test_templates026_nested_name_start_end_named_param_value (tests.test_roundtripping.TestRoundtripping) nested template at the beginning and end of a template name and as a parameter value with a named parameter ... ok test_templates027_nested_name_start_end_named_param_name_and_value (tests.test_roundtripping.TestRoundtripping) nested template at the beginning and end of a template name and as a parameter name and value ... ok test_templates028_nested_names_multiple (tests.test_roundtripping.TestRoundtripping) multiple nested templates within nested templates ... ok test_templates029_nested_names_multiple_unnamed_param (tests.test_roundtripping.TestRoundtripping) multiple nested templates within nested templates with a nested unnamed parameter ... ok test_templates030_nested_names_multiple_named_param_value (tests.test_roundtripping.TestRoundtripping) multiple nested templates within nested templates with a nested parameter value in a named parameter ... ok test_templates031_nested_names_multiple_named_param_name_and_value (tests.test_roundtripping.TestRoundtripping) multiple nested templates within nested templates with a nested parameter name and value ... ok test_templates032_mixed_nested_templates (tests.test_roundtripping.TestRoundtripping) mixed assortment of nested templates within template names, parameter names, and values ... ok test_templates033_nested_two_args (tests.test_roundtripping.TestRoundtripping) template whose first parameter is unnamed with two templates, followed by a named parameter ... ok test_templates034_newlines_start (tests.test_roundtripping.TestRoundtripping) a newline at the start of a template name ... ok test_templates035_newlines_end (tests.test_roundtripping.TestRoundtripping) a newline at the end of a template name ... ok test_templates036_newlines_start_end (tests.test_roundtripping.TestRoundtripping) a newline at the start and end of a template name ... ok test_templates037_newlines_mid (tests.test_roundtripping.TestRoundtripping) a newline at the middle of a template name ... ok test_templates038_newlines_start_mid (tests.test_roundtripping.TestRoundtripping) a newline at the start and middle of a template name ... ok test_templates039_newlines_mid_end (tests.test_roundtripping.TestRoundtripping) a newline at the middle and end of a template name ... ok test_templates040_newlines_start_mid_end (tests.test_roundtripping.TestRoundtripping) a newline at the start, middle, and end of a template name ... ok test_templates041_newlines_unnamed_param (tests.test_roundtripping.TestRoundtripping) newlines within an unnamed template parameter ... ok test_templates042_newlines_enclose_template_name_unnamed_param (tests.test_roundtripping.TestRoundtripping) newlines enclosing a template name and within an unnamed template parameter ... ok test_templates043_newlines_within_template_name_unnamed_param (tests.test_roundtripping.TestRoundtripping) newlines within a template name and within an unnamed template parameter ... ok test_templates044_newlines_enclose_template_name_named_param_value (tests.test_roundtripping.TestRoundtripping) newlines enclosing a template name and within a named parameter value ... ok test_templates045_newlines_within_template_name_named_param_value (tests.test_roundtripping.TestRoundtripping) newlines within a template name and within a named parameter value ... ok test_templates046_newlines_named_param_name (tests.test_roundtripping.TestRoundtripping) newlines within a parameter name ... ok test_templates047_newlines_named_param_name_param_value (tests.test_roundtripping.TestRoundtripping) newlines within a parameter name and within a parameter value ... ok test_templates048_newlines_enclose_template_name_named_param_name (tests.test_roundtripping.TestRoundtripping) newlines enclosing a template name and within a parameter name ... ok test_templates049_newlines_enclose_template_name_named_param_name_param_value (tests.test_roundtripping.TestRoundtripping) newlines enclosing a template name and within a parameter name and within a parameter value ... ok test_templates050_newlines_within_template_name_named_param_name (tests.test_roundtripping.TestRoundtripping) newlines within a template name and within a parameter name ... ok test_templates051_newlines_within_template_name_named_param_name_param_value (tests.test_roundtripping.TestRoundtripping) newlines within a template name and within a parameter name and within a parameter value ... ok test_templates052_newlines_wildcard (tests.test_roundtripping.TestRoundtripping) a random, complex assortment of templates and newlines ... ok test_templates053_newlines_wildcard_redux (tests.test_roundtripping.TestRoundtripping) an even more random and complex assortment of templates and newlines ... ok test_templates054_newlines_wildcard_redux_invalid (tests.test_roundtripping.TestRoundtripping) a variation of the newlines_wildcard_redux test that is invalid ... ok test_templates055_newlines_spaces (tests.test_roundtripping.TestRoundtripping) newlines in the middle of a template name, followed by spaces ... ok test_templates056_newlines_spaces_param (tests.test_roundtripping.TestRoundtripping) newlines in the middle of a template name, followed by spaces, with a parameter ... ok test_templates057_invalid_blank (tests.test_roundtripping.TestRoundtripping) invalid template with no content ... ok test_templates058_invalid_blank_whitespace (tests.test_roundtripping.TestRoundtripping) invalid template with no content, but whitespace ... ok test_templates059_invalid_blank_pipe (tests.test_roundtripping.TestRoundtripping) invalid template with no content, but a parameter ... ok test_templates060_invalid_blank_whitespace_pipe (tests.test_roundtripping.TestRoundtripping) invalid template with no content, but whitespace and a parameter ... ok test_templates061_invalid_name_left_brace_middle (tests.test_roundtripping.TestRoundtripping) invalid characters in template name: left brace in middle ... ok test_templates062_invalid_name_right_brace_middle (tests.test_roundtripping.TestRoundtripping) invalid characters in template name: right brace in middle ... ok test_templates063_invalid_name_left_braces (tests.test_roundtripping.TestRoundtripping) invalid characters in template name: two left braces in middle ... ok test_templates064_invalid_name_left_bracket_middle (tests.test_roundtripping.TestRoundtripping) invalid characters in template name: left bracket in middle ... ok test_templates065_invalid_name_right_bracket_middle (tests.test_roundtripping.TestRoundtripping) invalid characters in template name: right bracket in middle ... ok test_templates066_invalid_name_left_bracket_start (tests.test_roundtripping.TestRoundtripping) invalid characters in template name: left bracket at start ... ok test_templates067_invalid_name_right_bracket_start (tests.test_roundtripping.TestRoundtripping) invalid characters in template name: right bracket at end ... ok test_templates068_valid_name_left_brace_start (tests.test_roundtripping.TestRoundtripping) valid characters in template name: left brace at start ... ok test_templates069_valid_unnamed_param_left_brace (tests.test_roundtripping.TestRoundtripping) valid characters in unnamed template parameter: left brace ... ok test_templates070_valid_unnamed_param_braces (tests.test_roundtripping.TestRoundtripping) valid characters in unnamed template parameter: left and right braces ... ok test_templates071_valid_param_name_braces (tests.test_roundtripping.TestRoundtripping) valid characters in template parameter name: left and right braces ... ok test_templates072_valid_param_name_brackets (tests.test_roundtripping.TestRoundtripping) valid characters in unnamed template parameter: left and right brackets ... ok test_templates073_valid_param_name_double_left_brackets (tests.test_roundtripping.TestRoundtripping) valid characters in unnamed template parameter: double left brackets ... ok test_templates074_valid_param_name_double_right_brackets (tests.test_roundtripping.TestRoundtripping) valid characters in unnamed template parameter: double right brackets ... ok test_templates075_valid_param_name_double_brackets (tests.test_roundtripping.TestRoundtripping) valid characters in unnamed template parameter: double left and right brackets ... ok test_templates076_invalid_param_name_double_left_braces (tests.test_roundtripping.TestRoundtripping) invalid characters in template parameter name: double left braces ... ok test_templates077_invalid_param_name_double_braces (tests.test_roundtripping.TestRoundtripping) invalid characters in template parameter name: double left and right braces ... ok test_templates078_invalid_left_angle_bracket (tests.test_roundtripping.TestRoundtripping) invalid template: left angle bracket in name ... ok test_templates079_invalid_right_angle_bracket (tests.test_roundtripping.TestRoundtripping) invalid template: right angle bracket in name ... ok test_templates080_incomplete_stub (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: just an opening ... ok test_templates081_incomplete_plain (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: no close whatsoever ... ok test_templates082_incomplete_right_brace (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: only one right brace ... ok test_templates083_incomplete_pipe (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: a pipe ... ok test_templates084_incomplete_unnamed_param (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: an unnamed parameter ... ok test_templates085_incomplete_unnamed_param_pipe (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: an unnamed parameter, then a pipe ... ok test_templates086_incomplete_valueless_param (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: an a named parameter with no value ... ok test_templates087_incomplete_valueless_param_pipe (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: a named parameter with no value, then a pipe ... ok test_templates088_incomplete_named_param (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: a named parameter with a value ... ok test_templates089_incomplete_named_param_pipe (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: a named parameter with a value, then a paipe ... ok test_templates090_incomplete_two_unnamed_params (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: two unnamed parameters ... ok test_templates091_incomplete_unnamed_param_valueless_param (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: an unnamed parameter, then a named parameter with no value ... ok test_templates092_incomplete_unnamed_param_named_param (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: an unnamed parameter, then a named parameter with a value ... ok test_templates093_incomplete_named_param_unnamed_param (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: a named parameter with a value, then an unnamed parameter ... ok test_templates094_incomplete_named_param_valueless_param (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: a named parameter with a value, then a named parameter with no value ... ok test_templates095_incomplete_two_named_params (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: two named parameters with values ... ok test_templates096_incomplete_nested_template_as_unnamed_param (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: a valid nested template as an unnamed parameter ... ok test_templates097_incomplete_nested_template_as_param_value (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: a valid nested template as a parameter value ... ok test_templates098_recursion_five_hundred_opens (tests.test_roundtripping.TestRoundtripping) test potentially dangerous recursion: five hundred template openings, without spaces ... ok test_templates099_recursion_one_hundred_opens (tests.test_roundtripping.TestRoundtripping) test potentially dangerous recursion: one hundred template openings, with spaces ... ok test_templates100_recursion_opens_and_closes (tests.test_roundtripping.TestRoundtripping) test potentially dangerous recursion: template openings and closings ... ok test_text1_basic (tests.test_roundtripping.TestRoundtripping) sanity check for basic text parsing, no gimmicks ... ok test_text2_newlines (tests.test_roundtripping.TestRoundtripping) slightly more complex text parsing, with newlines ... ok test_text3_unicode (tests.test_roundtripping.TestRoundtripping) ensure unicode data is handled properly ... ok test_text4_unicode2 (tests.test_roundtripping.TestRoundtripping) additional unicode check for non-BMP codepoints ... ok test_text5_large (tests.test_roundtripping.TestRoundtripping) a lot of text, requiring proper storage in the C tokenizer ... ok test_wikilinks01_blank (tests.test_roundtripping.TestRoundtripping) wikilink with no content ... ok test_wikilinks02_blank_with_text (tests.test_roundtripping.TestRoundtripping) wikilink with no content but a pipe ... ok test_wikilinks03_basic (tests.test_roundtripping.TestRoundtripping) simplest type of wikilink ... ok test_wikilinks04_with_text (tests.test_roundtripping.TestRoundtripping) wikilink with a text value ... ok test_wikilinks05_blank_with_multiple_texts (tests.test_roundtripping.TestRoundtripping) no content, multiple pipes ... ok test_wikilinks06_multiple_texts (tests.test_roundtripping.TestRoundtripping) multiple text values separated by pipes ... ok test_wikilinks07_newline_text (tests.test_roundtripping.TestRoundtripping) a newline in the middle of the text ... ok test_wikilinks08_bracket_text (tests.test_roundtripping.TestRoundtripping) a left bracket in the middle of the text ... ok test_wikilinks09_nested (tests.test_roundtripping.TestRoundtripping) a wikilink nested within another ... ok test_wikilinks10_nested_padding (tests.test_roundtripping.TestRoundtripping) a wikilink nested within another, separated by other data ... ok test_wikilinks11_invalid_newline (tests.test_roundtripping.TestRoundtripping) invalid wikilink: newline as only content ... ok test_wikilinks12_invalid_right_brace (tests.test_roundtripping.TestRoundtripping) invalid wikilink: right brace ... ok test_wikilinks13_invalid_left_brace (tests.test_roundtripping.TestRoundtripping) invalid wikilink: left brace ... ok test_wikilinks14_invalid_right_bracket (tests.test_roundtripping.TestRoundtripping) invalid wikilink: right bracket ... ok test_wikilinks15_invalid_left_bracket (tests.test_roundtripping.TestRoundtripping) invalid wikilink: left bracket ... ok test_wikilinks16_invalid_nested (tests.test_roundtripping.TestRoundtripping) invalid wikilink: trying to nest in the wrong context ... ok test_wikilinks17_invalid_nested_padding (tests.test_roundtripping.TestRoundtripping) invalid wikilink: trying to nest in the wrong context, with a text param ... ok test_wikilinks18_invalid_nested_no_close (tests.test_roundtripping.TestRoundtripping) invalid wikilink: a wikilink nested within the value of another, missing a pair of closing brackets ... ok test_wikilinks19_invalid_left_angle_bracket (tests.test_roundtripping.TestRoundtripping) invalid wikilink: left angle bracket ... ok test_wikilinks20_invalid_right_angle_bracket (tests.test_roundtripping.TestRoundtripping) invalid wikilink: right angle bracket ... ok test_wikilinks21_invalid_newline_at_start (tests.test_roundtripping.TestRoundtripping) invalid wikilink: newline at start of title ... ok test_wikilinks22_invalid_newline_at_end (tests.test_roundtripping.TestRoundtripping) invalid wikilink: newline at end of title ... ok test_wikilinks23_incomplete_open_only (tests.test_roundtripping.TestRoundtripping) incomplete wikilinks: just an open ... ok test_wikilinks24_incomplete_open_text (tests.test_roundtripping.TestRoundtripping) incomplete wikilinks: an open with some text ... ok test_wikilinks25_incomplete_open_text_pipe (tests.test_roundtripping.TestRoundtripping) incomplete wikilinks: an open, text, then a pipe ... ok test_wikilinks26_incomplete_open_pipe (tests.test_roundtripping.TestRoundtripping) incomplete wikilinks: an open, then a pipe ... ok test_wikilinks27_incomplete_open_pipe_text (tests.test_roundtripping.TestRoundtripping) incomplete wikilinks: an open, then a pipe, then text ... ok test_wikilinks28_incomplete_open_pipes_text (tests.test_roundtripping.TestRoundtripping) incomplete wikilinks: a pipe, then text then two pipes ... ok test_wikilinks29_incomplete_open_partial_close (tests.test_roundtripping.TestRoundtripping) incomplete wikilinks: an open, then one right brace ... ok test_wikilinks30_incomplete_preserve_previous (tests.test_roundtripping.TestRoundtripping) incomplete wikilinks: a valid wikilink followed by an invalid one ... ok test_children (tests.test_argument.TestArgument) test Argument.__children__() ... ok test_default (tests.test_argument.TestArgument) test getter/setter for the default attribute ... ok test_name (tests.test_argument.TestArgument) test getter/setter for the name attribute ... ok test_showtree (tests.test_argument.TestArgument) test Argument.__showtree__() ... ok test_strip (tests.test_argument.TestArgument) test Argument.__strip__() ... ok test_unicode (tests.test_argument.TestArgument) test Argument.__unicode__() ... ok test_attributes (tests.test_tokens.TestTokens) check that Token attributes can be managed properly ... ok test_equality (tests.test_tokens.TestTokens) check that equivalent tokens are considered equal ... ok test_issubclass (tests.test_tokens.TestTokens) check that all classes within the tokens module are really Tokens ... ok test_repr (tests.test_tokens.TestTokens) check that repr() on a Token works as expected ... ok test_repr_equality (tests.test_tokens.TestTokens) check that eval(repr(token)) == token ... ok test_readme_1 (tests.test_docs.TestDocs) test a block of example code in the README ... ok test_readme_2 (tests.test_docs.TestDocs) test a block of example code in the README ... ok test_readme_3 (tests.test_docs.TestDocs) test a block of example code in the README ... ok test_readme_4 (tests.test_docs.TestDocs) test a block of example code in the README ... ok test_readme_5 (tests.test_docs.TestDocs) test a block of example code in the README; includes a web call ... skipped 'cannot continue because of unsuccessful web call' test_children (tests.test_html_entity.TestHTMLEntity) test HTMLEntity.__children__() ... ok test_hex_char (tests.test_html_entity.TestHTMLEntity) test getter/setter for the hex_char attribute ... ok test_hexadecimal (tests.test_html_entity.TestHTMLEntity) test getter/setter for the hexadecimal attribute ... ok test_named (tests.test_html_entity.TestHTMLEntity) test getter/setter for the named attribute ... ok test_normalize (tests.test_html_entity.TestHTMLEntity) test getter/setter for the normalize attribute ... ok test_showtree (tests.test_html_entity.TestHTMLEntity) test HTMLEntity.__showtree__() ... ok test_strip (tests.test_html_entity.TestHTMLEntity) test HTMLEntity.__strip__() ... ok test_unicode (tests.test_html_entity.TestHTMLEntity) test HTMLEntity.__unicode__() ... ok test_value (tests.test_html_entity.TestHTMLEntity) test getter/setter for the value attribute ... ok test_append (tests.test_wikicode.TestWikicode) test Wikicode.append() ... ok test_contains (tests.test_wikicode.TestWikicode) test Wikicode.contains() ... ok test_filter_family (tests.test_wikicode.TestWikicode) test the Wikicode.i?filter() family of functions ... ok test_get (tests.test_wikicode.TestWikicode) test Wikicode.get() ... ok test_get_ancestors_parent (tests.test_wikicode.TestWikicode) test Wikicode.get_ancestors() and Wikicode.get_parent() ... ok test_get_sections (tests.test_wikicode.TestWikicode) test Wikicode.get_sections() ... ok test_get_tree (tests.test_wikicode.TestWikicode) test Wikicode.get_tree() ... ok test_index (tests.test_wikicode.TestWikicode) test Wikicode.index() ... ok test_insert (tests.test_wikicode.TestWikicode) test Wikicode.insert() ... ok test_insert_after (tests.test_wikicode.TestWikicode) test Wikicode.insert_after() ... ok test_insert_before (tests.test_wikicode.TestWikicode) test Wikicode.insert_before() ... ok test_matches (tests.test_wikicode.TestWikicode) test Wikicode.matches() ... ok test_nodes (tests.test_wikicode.TestWikicode) test getter/setter for the nodes attribute ... ok test_remove (tests.test_wikicode.TestWikicode) test Wikicode.remove() ... ok test_replace (tests.test_wikicode.TestWikicode) test Wikicode.replace() ... ok test_set (tests.test_wikicode.TestWikicode) test Wikicode.set() ... ok test_strip_code (tests.test_wikicode.TestWikicode) test Wikicode.strip_code() ... ok test_unicode (tests.test_wikicode.TestWikicode) test Wikicode.__unicode__() ... ok test_children (tests.test_heading.TestHeading) test Heading.__children__() ... ok test_level (tests.test_heading.TestHeading) test getter/setter for the level attribute ... ok test_showtree (tests.test_heading.TestHeading) test Heading.__showtree__() ... ok test_strip (tests.test_heading.TestHeading) test Heading.__strip__() ... ok test_title (tests.test_heading.TestHeading) test getter/setter for the title attribute ... ok test_unicode (tests.test_heading.TestHeading) test Heading.__unicode__() ... ok test_parsing (tests.test_parser.TestParser) integration test for parsing overall ... ok test_skip_style_tags (tests.test_parser.TestParser) test Parser.parse(skip_style_tags=True) ... ok test_use_c (tests.test_parser.TestParser) make sure the correct tokenizer is used ... ok test_arguments01_blank (tests.test_pytokenizer.TestPyTokenizer) argument with no content ... ok test_arguments02_blank_with_default (tests.test_pytokenizer.TestPyTokenizer) argument with no content but a pipe ... ok test_arguments03_basic (tests.test_pytokenizer.TestPyTokenizer) simplest type of argument ... ok test_arguments04_default (tests.test_pytokenizer.TestPyTokenizer) argument with a default value ... ok test_arguments05_blank_with_multiple_defaults (tests.test_pytokenizer.TestPyTokenizer) no content, multiple pipes ... ok test_arguments06_multiple_defaults (tests.test_pytokenizer.TestPyTokenizer) multiple values separated by pipes ... ok test_arguments07_newline (tests.test_pytokenizer.TestPyTokenizer) newline as only content ... ok test_arguments08_right_braces (tests.test_pytokenizer.TestPyTokenizer) multiple } scattered throughout text ... ok test_arguments09_right_braces_default (tests.test_pytokenizer.TestPyTokenizer) multiple } scattered throughout text, with a default value ... ok test_arguments10_nested (tests.test_pytokenizer.TestPyTokenizer) an argument nested within another argument ... ok test_arguments11_invalid_braces (tests.test_pytokenizer.TestPyTokenizer) invalid argument: multiple braces that are not part of a template or argument ... ok test_arguments12_incomplete_open_only (tests.test_pytokenizer.TestPyTokenizer) incomplete arguments: just an open ... ok test_arguments13_incomplete_open_text (tests.test_pytokenizer.TestPyTokenizer) incomplete arguments: an open with some text ... ok test_arguments14_incomplete_open_text_pipe (tests.test_pytokenizer.TestPyTokenizer) incomplete arguments: an open, text, then a pipe ... ok test_arguments15_incomplete_open_pipe (tests.test_pytokenizer.TestPyTokenizer) incomplete arguments: an open, then a pipe ... ok test_arguments16_incomplete_open_pipe_text (tests.test_pytokenizer.TestPyTokenizer) incomplete arguments: an open, then a pipe, then text ... ok test_arguments17_incomplete_open_pipes_text (tests.test_pytokenizer.TestPyTokenizer) incomplete arguments: a pipe, then text then two pipes ... ok test_arguments18_incomplete_open_partial_close (tests.test_pytokenizer.TestPyTokenizer) incomplete arguments: an open, then one right brace ... ok test_arguments19_incomplete_preserve_previous (tests.test_pytokenizer.TestPyTokenizer) incomplete arguments: a valid argument followed by an invalid one ... ok test_comments1_blank (tests.test_pytokenizer.TestPyTokenizer) a blank comment ... ok test_comments2_basic (tests.test_pytokenizer.TestPyTokenizer) a basic comment ... ok test_comments3_tons_of_nonsense (tests.test_pytokenizer.TestPyTokenizer) a comment with tons of ignorable garbage in it ... ok test_comments4_incomplete_blank (tests.test_pytokenizer.TestPyTokenizer) a comment that doesn't close ... ok test_comments5_incomplete_text (tests.test_pytokenizer.TestPyTokenizer) a comment that doesn't close, with text ... ok test_comments6_incomplete_partial_close (tests.test_pytokenizer.TestPyTokenizer) a comment that doesn't close, with a partial close ... ok test_comments7_incomplete_part_only (tests.test_pytokenizer.TestPyTokenizer) a comment that only has a < and ! ... ok test_external_links01_basic (tests.test_pytokenizer.TestPyTokenizer) basic external link ... ok test_external_links02_basic_brackets (tests.test_pytokenizer.TestPyTokenizer) basic external link in brackets ... ok test_external_links03_brackets_space (tests.test_pytokenizer.TestPyTokenizer) basic external link in brackets, with a space after ... ok test_external_links04_brackets_title (tests.test_pytokenizer.TestPyTokenizer) basic external link in brackets, with a title ... ok test_external_links05_brackets_multiword_title (tests.test_pytokenizer.TestPyTokenizer) basic external link in brackets, with a multi-word title ... ok test_external_links06_brackets_adjacent (tests.test_pytokenizer.TestPyTokenizer) three adjacent bracket-enclosed external links ... ok test_external_links07_brackets_newline_before (tests.test_pytokenizer.TestPyTokenizer) bracket-enclosed link with a newline before the title ... ok test_external_links08_brackets_newline_inside (tests.test_pytokenizer.TestPyTokenizer) bracket-enclosed link with a newline in the title ... ok test_external_links09_brackets_newline_after (tests.test_pytokenizer.TestPyTokenizer) bracket-enclosed link with a newline after the title ... ok test_external_links10_brackets_space_before (tests.test_pytokenizer.TestPyTokenizer) bracket-enclosed link with a space before the URL ... ok test_external_links11_brackets_title_like_url (tests.test_pytokenizer.TestPyTokenizer) bracket-enclosed link with a title that looks like a URL ... ok test_external_links12_brackets_recursive (tests.test_pytokenizer.TestPyTokenizer) bracket-enclosed link with a bracket-enclosed link as the title ... ok test_external_links13_brackets_recursive_2 (tests.test_pytokenizer.TestPyTokenizer) bracket-enclosed link with a double bracket-enclosed link as the title ... ok test_external_links14_period_after (tests.test_pytokenizer.TestPyTokenizer) a period after a free link that is excluded ... ok test_external_links15_colons_after (tests.test_pytokenizer.TestPyTokenizer) colons after a free link that are excluded ... ok test_external_links16_close_paren_after_excluded (tests.test_pytokenizer.TestPyTokenizer) a closing parenthesis after a free link that is excluded ... ok test_external_links17_close_paren_after_included (tests.test_pytokenizer.TestPyTokenizer) a closing parenthesis after a free link that is included because of an opening parenthesis in the URL ... ok test_external_links18_open_bracket_inside (tests.test_pytokenizer.TestPyTokenizer) an open bracket inside a free link that causes it to be ended abruptly ... ok test_external_links19_brackets_period_after (tests.test_pytokenizer.TestPyTokenizer) a period after a bracket-enclosed link that is included ... ok test_external_links20_brackets_punct_after (tests.test_pytokenizer.TestPyTokenizer) punctuation after a bracket-enclosed link that are included ... ok test_external_links21_brackets_close_paren_after_included (tests.test_pytokenizer.TestPyTokenizer) a closing parenthesis after a bracket-enclosed link that is included ... ok test_external_links22_brackets_close_paren_after_included_2 (tests.test_pytokenizer.TestPyTokenizer) a closing parenthesis after a bracket-enclosed link that is also included ... ok test_external_links23_brackets_open_bracket_inside (tests.test_pytokenizer.TestPyTokenizer) an open bracket inside a bracket-enclosed link that is also included ... ok test_external_links24_adjacent_space (tests.test_pytokenizer.TestPyTokenizer) two free links separated by a space ... ok test_external_links25_adjacent_newline (tests.test_pytokenizer.TestPyTokenizer) two free links separated by a newline ... ok test_external_links26_adjacent_close_bracket (tests.test_pytokenizer.TestPyTokenizer) two free links separated by a close bracket ... ok test_external_links27_html_entity_in_url (tests.test_pytokenizer.TestPyTokenizer) a HTML entity parsed correctly inside a free link ... ok test_external_links28_template_in_url (tests.test_pytokenizer.TestPyTokenizer) a template parsed correctly inside a free link ... ok test_external_links29_argument_in_url (tests.test_pytokenizer.TestPyTokenizer) an argument parsed correctly inside a free link ... ok test_external_links30_wikilink_in_url (tests.test_pytokenizer.TestPyTokenizer) a wikilink that destroys a free link ... ok test_external_links31_external_link_in_url (tests.test_pytokenizer.TestPyTokenizer) a bracketed link that destroys a free link ... ok test_external_links32_spaces_padding (tests.test_pytokenizer.TestPyTokenizer) spaces padding a free link ... ok test_external_links33_text_and_spaces_padding (tests.test_pytokenizer.TestPyTokenizer) text and spaces padding a free link ... ok test_external_links34_template_before (tests.test_pytokenizer.TestPyTokenizer) a template before a free link ... ok test_external_links35_spaces_padding_no_slashes (tests.test_pytokenizer.TestPyTokenizer) spaces padding a free link with no slashes after the colon ... ok test_external_links36_text_and_spaces_padding_no_slashes (tests.test_pytokenizer.TestPyTokenizer) text and spaces padding a free link with no slashes after the colon ... ok test_external_links37_template_before_no_slashes (tests.test_pytokenizer.TestPyTokenizer) a template before a free link with no slashes after the colon ... ok test_external_links38_no_slashes (tests.test_pytokenizer.TestPyTokenizer) a free link with no slashes after the colon ... ok test_external_links39_slashes_optional (tests.test_pytokenizer.TestPyTokenizer) a free link using a scheme that doesn't need slashes, but has them anyway ... ok test_external_links40_short (tests.test_pytokenizer.TestPyTokenizer) a very short free link ... ok test_external_links41_slashes_missing (tests.test_pytokenizer.TestPyTokenizer) slashes missing from a free link with a scheme that requires them ... ok test_external_links42_no_scheme_but_slashes (tests.test_pytokenizer.TestPyTokenizer) no scheme in a free link, but slashes (protocol-relative free links are not supported) ... ok test_external_links43_no_scheme_but_colon (tests.test_pytokenizer.TestPyTokenizer) no scheme in a free link, but a colon ... ok test_external_links44_no_scheme_but_colon_and_slashes (tests.test_pytokenizer.TestPyTokenizer) no scheme in a free link, but a colon and slashes ... ok test_external_links45_fake_scheme_no_slashes (tests.test_pytokenizer.TestPyTokenizer) a nonexistent scheme in a free link, without slashes ... ok test_external_links46_fake_scheme_slashes (tests.test_pytokenizer.TestPyTokenizer) a nonexistent scheme in a free link, with slashes ... ok test_external_links47_fake_scheme_brackets_no_slashes (tests.test_pytokenizer.TestPyTokenizer) a nonexistent scheme in a bracketed link, without slashes ... ok test_external_links48_fake_scheme_brackets_slashes (tests.test_pytokenizer.TestPyTokenizer) #=a nonexistent scheme in a bracketed link, with slashes ... ok test_external_links49_interrupted_scheme (tests.test_pytokenizer.TestPyTokenizer) an otherwise valid scheme with something in the middle of it, in a free link ... ok test_external_links50_interrupted_scheme_brackets (tests.test_pytokenizer.TestPyTokenizer) an otherwise valid scheme with something in the middle of it, in a bracketed link ... ok test_external_links51_no_slashes_brackets (tests.test_pytokenizer.TestPyTokenizer) no slashes after the colon in a bracketed link ... ok test_external_links52_space_before_no_slashes_brackets (tests.test_pytokenizer.TestPyTokenizer) a space before a bracketed link with no slashes after the colon ... ok test_external_links53_slashes_optional_brackets (tests.test_pytokenizer.TestPyTokenizer) a bracketed link using a scheme that doesn't need slashes, but has them anyway ... ok test_external_links54_short_brackets (tests.test_pytokenizer.TestPyTokenizer) a very short link in brackets ... ok test_external_links55_slashes_missing_brackets (tests.test_pytokenizer.TestPyTokenizer) slashes missing from a scheme that requires them in a bracketed link ... ok test_external_links56_protcol_relative (tests.test_pytokenizer.TestPyTokenizer) a protocol-relative link (in brackets) ... ok test_external_links57_scheme_missing_but_colon_brackets (tests.test_pytokenizer.TestPyTokenizer) scheme missing from a bracketed link, but with a colon ... ok test_external_links58_scheme_missing_but_colon_slashes_brackets (tests.test_pytokenizer.TestPyTokenizer) scheme missing from a bracketed link, but with a colon and slashes ... ok test_external_links59_unclosed_protocol_relative (tests.test_pytokenizer.TestPyTokenizer) an unclosed protocol-relative bracketed link ... ok test_external_links60_space_before_protcol_relative (tests.test_pytokenizer.TestPyTokenizer) a space before a protocol-relative bracketed link ... ok test_external_links61_unclosed_just_scheme (tests.test_pytokenizer.TestPyTokenizer) an unclosed bracketed link, ending after the scheme ... ok test_external_links62_unclosed_scheme_colon (tests.test_pytokenizer.TestPyTokenizer) an unclosed bracketed link, ending after the colon ... ok test_external_links63_unclosed_scheme_colon_slashes (tests.test_pytokenizer.TestPyTokenizer) an unclosed bracketed link, ending after the slashes ... ok test_external_links64_incomplete_bracket (tests.test_pytokenizer.TestPyTokenizer) just an open bracket ... ok test_external_links65_incomplete_scheme_colon (tests.test_pytokenizer.TestPyTokenizer) a free link with just a scheme and a colon ... ok test_external_links66_incomplete_scheme_colon_slashes (tests.test_pytokenizer.TestPyTokenizer) a free link with just a scheme, colon, and slashes ... ok test_external_links67_brackets_scheme_but_no_url (tests.test_pytokenizer.TestPyTokenizer) brackets around a scheme and a colon ... ok test_external_links68_brackets_scheme_slashes_but_no_url (tests.test_pytokenizer.TestPyTokenizer) brackets around a scheme, colon, and slashes ... ok test_external_links69_brackets_scheme_title_but_no_url (tests.test_pytokenizer.TestPyTokenizer) brackets around a scheme, colon, and slashes, with a title ... ok test_headings01_level_1 (tests.test_pytokenizer.TestPyTokenizer) a basic level-1 heading ... ok test_headings02_level_2 (tests.test_pytokenizer.TestPyTokenizer) a basic level-2 heading ... ok test_headings03_level_3 (tests.test_pytokenizer.TestPyTokenizer) a basic level-3 heading ... ok test_headings04_level_4 (tests.test_pytokenizer.TestPyTokenizer) a basic level-4 heading ... ok test_headings05_level_5 (tests.test_pytokenizer.TestPyTokenizer) a basic level-5 heading ... ok test_headings06_level_6 (tests.test_pytokenizer.TestPyTokenizer) a basic level-6 heading ... ok test_headings07_level_7 (tests.test_pytokenizer.TestPyTokenizer) a level-6 heading that pretends to be a level-7 heading ... ok test_headings08_level_3_2 (tests.test_pytokenizer.TestPyTokenizer) a level-2 heading that pretends to be a level-3 heading ... ok test_headings09_level_4_6 (tests.test_pytokenizer.TestPyTokenizer) a level-4 heading that pretends to be a level-6 heading ... ok test_headings10_newline_before (tests.test_pytokenizer.TestPyTokenizer) a heading that starts after a newline ... ok test_headings11_text_after (tests.test_pytokenizer.TestPyTokenizer) text on the same line after ... ok test_headings12_invalid_text_before (tests.test_pytokenizer.TestPyTokenizer) invalid headings: text on the same line before ... ok test_headings13_invalid_newline_middle (tests.test_pytokenizer.TestPyTokenizer) invalid headings: newline in the middle ... ok test_headings14_invalid_newline_end (tests.test_pytokenizer.TestPyTokenizer) invalid headings: newline in the middle ... ok test_headings15_invalid_nesting (tests.test_pytokenizer.TestPyTokenizer) invalid headings: attempts at nesting ... ok test_headings16_incomplete (tests.test_pytokenizer.TestPyTokenizer) a heading that starts but doesn't finish ... ok test_html_entities01_named (tests.test_pytokenizer.TestPyTokenizer) a basic named HTML entity ... ok test_html_entities02_numeric_decimal (tests.test_pytokenizer.TestPyTokenizer) a basic decimal HTML entity ... ok test_html_entities03_numeric_hexadecimal_x (tests.test_pytokenizer.TestPyTokenizer) a basic hexadecimal HTML entity, using 'x' as a signal ... ok test_html_entities04_numeric_hexadecimal_X (tests.test_pytokenizer.TestPyTokenizer) a basic hexadecimal HTML entity, using 'X' as a signal ... ok test_html_entities05_numeric_decimal_max (tests.test_pytokenizer.TestPyTokenizer) the maximum acceptable decimal numeric entity ... ok test_html_entities06_numeric_hex_max (tests.test_pytokenizer.TestPyTokenizer) the maximum acceptable hexadecimal numeric entity ... ok test_html_entities07_numeric_zeros (tests.test_pytokenizer.TestPyTokenizer) zeros accepted at the beginning of a numeric entity ... ok test_html_entities08_numeric_hex_zeros (tests.test_pytokenizer.TestPyTokenizer) zeros accepted at the beginning of a hex numeric entity ... ok test_html_entities09_invalid_named_too_long (tests.test_pytokenizer.TestPyTokenizer) a named entity that is too long ... ok test_html_entities10_invalid_named_undefined (tests.test_pytokenizer.TestPyTokenizer) a named entity that doesn't exist ... ok test_html_entities11_invalid_named_nonascii (tests.test_pytokenizer.TestPyTokenizer) a named entity with non-ASCII characters ... ok test_html_entities12_invalid_numeric_out_of_range_1 (tests.test_pytokenizer.TestPyTokenizer) a numeric entity that is out of range: < 1 ... ok test_html_entities13_invalid_numeric_out_of_range_2 (tests.test_pytokenizer.TestPyTokenizer) a hex numeric entity that is out of range: < 1 ... ok test_html_entities14_invalid_numeric_out_of_range_3 (tests.test_pytokenizer.TestPyTokenizer) a numeric entity that is out of range: > 0x10FFFF ... ok test_html_entities15_invalid_numeric_out_of_range_4 (tests.test_pytokenizer.TestPyTokenizer) a hex numeric entity that is out of range: > 0x10FFFF ... ok test_html_entities16_invalid_partial_amp (tests.test_pytokenizer.TestPyTokenizer) invalid entities: just an ampersand ... ok test_html_entities17_invalid_partial_amp_semicolon (tests.test_pytokenizer.TestPyTokenizer) invalid entities: an ampersand and semicolon ... ok test_html_entities18_invalid_partial_amp_pound (tests.test_pytokenizer.TestPyTokenizer) invalid entities: just an ampersand, pound sign ... ok test_html_entities19_invalid_partial_amp_pound_x (tests.test_pytokenizer.TestPyTokenizer) invalid entities: just an ampersand, pound sign, x ... ok test_html_entities20_invalid_partial_amp_pound_semicolon (tests.test_pytokenizer.TestPyTokenizer) invalid entities: an ampersand, pound sign, and semicolon ... ok test_html_entities21_invalid_partial_amp_pound_x_semicolon (tests.test_pytokenizer.TestPyTokenizer) invalid entities: an ampersand, pound sign, x, and semicolon ... ok test_html_entities22_invalid_partial_amp_pound_numbers (tests.test_pytokenizer.TestPyTokenizer) invalid entities: an ampersand, pound sign, numbers ... ok test_html_entities23_invalid_partial_amp_pound_x_semicolon (tests.test_pytokenizer.TestPyTokenizer) invalid entities: an ampersand, pound sign, and x ... ok test_integration01_empty (tests.test_pytokenizer.TestPyTokenizer) sanity check that parsing an empty string yields nothing ... ok test_integration02_template_argument_mix (tests.test_pytokenizer.TestPyTokenizer) an ambiguous mix of templates and arguments ... ok test_integration03_link_in_template_name (tests.test_pytokenizer.TestPyTokenizer) a wikilink inside a template name, which breaks the template ... ok test_integration04_rich_heading (tests.test_pytokenizer.TestPyTokenizer) a heading with templates/wikilinks in it ... ok test_integration05_html_entity_with_template (tests.test_pytokenizer.TestPyTokenizer) a HTML entity with a template embedded inside ... ok test_integration06_html_entity_with_comment (tests.test_pytokenizer.TestPyTokenizer) a HTML entity with a comment embedded inside ... ok test_integration07_rich_tags (tests.test_pytokenizer.TestPyTokenizer) a HTML tag with tons of other things in it ... ok test_integration08_wildcard (tests.test_pytokenizer.TestPyTokenizer) a wildcard assortment of various things ... ok test_integration09_wildcard_redux (tests.test_pytokenizer.TestPyTokenizer) an even wilder assortment of various things ... ok test_integration10_link_inside_dl (tests.test_pytokenizer.TestPyTokenizer) an external link inside a def list, such that the external link is parsed ... ok test_integration11_link_inside_dl_2 (tests.test_pytokenizer.TestPyTokenizer) an external link inside a def list, such that the external link is not parsed ... ok test_integration12_link_inside_template (tests.test_pytokenizer.TestPyTokenizer) an external link nested inside a template, before the end ... ok test_integration13_link_inside_template_2 (tests.test_pytokenizer.TestPyTokenizer) an external link nested inside a template, before a separator ... ok test_integration14_link_inside_template_3 (tests.test_pytokenizer.TestPyTokenizer) an external link nested inside a template, before an equal sign ... ok test_integration15_link_inside_argument (tests.test_pytokenizer.TestPyTokenizer) an external link nested inside an argument ... ok test_integration16_link_inside_heading (tests.test_pytokenizer.TestPyTokenizer) an external link nested inside a heading ... ok test_integration17_link_inside_tag_body (tests.test_pytokenizer.TestPyTokenizer) an external link nested inside the body of a tag ... ok test_integration18_link_inside_tag_style (tests.test_pytokenizer.TestPyTokenizer) an external link nested inside style tags ... ok test_integration19_style_tag_inside_link (tests.test_pytokenizer.TestPyTokenizer) style tags disrupting an external link ... ok test_integration20_comment_inside_link (tests.test_pytokenizer.TestPyTokenizer) an HTML comment inside an external link ... ok test_integration21_bracketed_link_inside_template (tests.test_pytokenizer.TestPyTokenizer) a bracketed external link nested inside a template, before the end ... ok test_integration22_comment_inside_bracketed_link (tests.test_pytokenizer.TestPyTokenizer) an HTML comment inside a bracketed external link ... ok test_integration23_wikilink_inside_external_link (tests.test_pytokenizer.TestPyTokenizer) a wikilink inside an external link, which the parser considers valid (see issue #61) ... ok test_integration24_external_link_inside_wikilink (tests.test_pytokenizer.TestPyTokenizer) an external link inside a wikilink, valid in the case of images (see issue #62) ... ok test_integration25_external_link_inside_wikilink_brackets (tests.test_pytokenizer.TestPyTokenizer) an external link with brackets inside a wikilink ... ok test_integration26_external_link_inside_wikilink_title (tests.test_pytokenizer.TestPyTokenizer) an external link inside a wikilink title, which is not parsed ... ok test_integration27_italics_inside_external_link_inside_incomplete_list (tests.test_pytokenizer.TestPyTokenizer) italic text inside an external link inside an incomplete list ... ok test_integration28_nodes_inside_external_link_after_punct (tests.test_pytokenizer.TestPyTokenizer) various complex nodes inside an external link following punctuation ... ok test_integration29_newline_and_comment_in_template_name (tests.test_pytokenizer.TestPyTokenizer) a template name containing a newline followed by a comment ... ok test_integration30_newline_and_comment_in_template_name_2 (tests.test_pytokenizer.TestPyTokenizer) a template name containing a newline followed by a comment ... ok test_integration31_newline_and_comment_in_template_name_3 (tests.test_pytokenizer.TestPyTokenizer) a template name containing a newline followed by a comment ... ok test_integration32_newline_and_comment_in_template_name_4 (tests.test_pytokenizer.TestPyTokenizer) a template name containing a newline followed by a comment ... ok test_integration33_newline_and_comment_in_template_name_5 (tests.test_pytokenizer.TestPyTokenizer) a template name containing a newline followed by a comment ... ok test_integration34_newline_and_comment_in_template_name_6 (tests.test_pytokenizer.TestPyTokenizer) a template name containing a newline followed by a comment ... ok test_integration35_newline_and_comment_in_template_name_7 (tests.test_pytokenizer.TestPyTokenizer) a template name containing a newline followed by a comment ... ok test_integration36_newline_and_comment_in_template_name_8 (tests.test_pytokenizer.TestPyTokenizer) a template name containing a newline followed by a comment ... ok test_integration37_tag_in_link_title (tests.test_pytokenizer.TestPyTokenizer) HTML tags are invalid in link titles, even when complete ... ok test_integration38_tag_in_template_name (tests.test_pytokenizer.TestPyTokenizer) HTML tags are invalid in template names, even when complete ... ok test_integration39_tag_in_link_text (tests.test_pytokenizer.TestPyTokenizer) HTML tags are valid in link text ... ok test_integration40_comment_in_link_title (tests.test_pytokenizer.TestPyTokenizer) comments are valid in link titles ... ok test_integration41_incomplete_comment_in_link_title (tests.test_pytokenizer.TestPyTokenizer) incomplete comments are invalid in link titles ... ok test_integration42_incomplete_comment_in_link_title_2 (tests.test_pytokenizer.TestPyTokenizer) incomplete comments are invalid in link titles ... ok test_integration43_incomplete_comment_in_link_title_3 (tests.test_pytokenizer.TestPyTokenizer) incomplete comments are invalid in link titles ... ok test_integration44_incomplete_comment_in_link_title_4 (tests.test_pytokenizer.TestPyTokenizer) incomplete comments are invalid in link titles ... ok test_integration45_incomplete_comment_in_link_title_5 (tests.test_pytokenizer.TestPyTokenizer) incomplete comments are invalid in link titles ... ok test_integration46_incomplete_comment_in_link_title_6 (tests.test_pytokenizer.TestPyTokenizer) incomplete comments are invalid in link titles ... ok test_integration47_wikilink_to_external_link_fallback (tests.test_pytokenizer.TestPyTokenizer) an external link enclosed in an extra pair of brackets (see issue #120) ... ok test_integration48_wikilink_to_external_link_fallback_2 (tests.test_pytokenizer.TestPyTokenizer) an external link enclosed in an extra pair of brackets (see issue #120) ... ok test_integration49_tables_in_templates (tests.test_pytokenizer.TestPyTokenizer) catch error handling mistakes when wikitables are inside templates ... ok test_integration50_tables_in_templates_2 (tests.test_pytokenizer.TestPyTokenizer) catch error handling mistakes when wikitables are inside templates ... ok test_integration51_many_invalid_nested_tags (tests.test_pytokenizer.TestPyTokenizer) many unending nested tags that should be treated as plain text, followed by valid wikitext (see issues #42, #183) ... ok test_tables01_empty_table (tests.test_pytokenizer.TestPyTokenizer) parsing an empty table ... ok test_tables02_inline_table (tests.test_pytokenizer.TestPyTokenizer) tables with a close on the same line are not valid ... ok test_tables03_no_table_close_simple (tests.test_pytokenizer.TestPyTokenizer) no table close on inline table ... ok test_tables04_no_table_close_newline (tests.test_pytokenizer.TestPyTokenizer) no table close with a newline ... ok test_tables05_no_table_close_inside_cell (tests.test_pytokenizer.TestPyTokenizer) no table close while inside of a cell ... ok test_tables06_no_table_close_inside_cell_after_newline (tests.test_pytokenizer.TestPyTokenizer) no table close while inside of a cell after a newline ... ok test_tables07_no_table_close_inside_cell_with_attributes (tests.test_pytokenizer.TestPyTokenizer) no table close while inside of a cell with attributes ... ok test_tables08_no_table_close_inside_row (tests.test_pytokenizer.TestPyTokenizer) no table close while inside of a row ... ok test_tables09_no_table_close_inside_row_after_newline (tests.test_pytokenizer.TestPyTokenizer) no table close while inside of a row after a newline ... ok test_tables10_no_table_close_row_and_cell (tests.test_pytokenizer.TestPyTokenizer) no table close while inside a cell inside a row ... ok test_tables11_no_table_close_attributes (tests.test_pytokenizer.TestPyTokenizer) don't parse attributes as attributes if the table doesn't exist ... ok test_tables12_no_table_close_unclosed_attributes (tests.test_pytokenizer.TestPyTokenizer) don't parse unclosed attributes if the table doesn't exist ... ok test_tables13_no_table_close_row_attributes (tests.test_pytokenizer.TestPyTokenizer) don't parse row attributes as attributes if the table doesn't exist ... ok test_tables14_no_table_close_cell (tests.test_pytokenizer.TestPyTokenizer) don't parse cells if the table doesn't close ... ok test_tables15_crazy_no_table_close (tests.test_pytokenizer.TestPyTokenizer) lots of opened wiki syntax without closes ... ok test_tables16_leading_whitespace_table (tests.test_pytokenizer.TestPyTokenizer) handle leading whitespace for a table ... ok test_tables17_whitespace_after_table (tests.test_pytokenizer.TestPyTokenizer) handle whitespace after a table close ... ok test_tables18_different_whitespace_after_table (tests.test_pytokenizer.TestPyTokenizer) handle spaces after a table close ... ok test_tables19_characters_after_table (tests.test_pytokenizer.TestPyTokenizer) handle characters after a table close ... ok test_tables20_characters_after_inline_table (tests.test_pytokenizer.TestPyTokenizer) handle characters after an inline table close ... ok test_tables21_leading_characters_table (tests.test_pytokenizer.TestPyTokenizer) don't parse as a table when leading characters are not newline or whitespace ... ok test_tables22_table_row_simple (tests.test_pytokenizer.TestPyTokenizer) simple table row ... ok test_tables23_table_row_multiple (tests.test_pytokenizer.TestPyTokenizer) simple table row ... ok test_tables24_table_cell_simple (tests.test_pytokenizer.TestPyTokenizer) simple table cell ... ok test_tables25_table_cell_inline (tests.test_pytokenizer.TestPyTokenizer) multiple inline table cells ... ok test_tables26_table_cell_multiple (tests.test_pytokenizer.TestPyTokenizer) multiple table cells (non-inline) ... ok test_tables27_table_header_simple (tests.test_pytokenizer.TestPyTokenizer) simple header cell ... ok test_tables28_table_header_inline (tests.test_pytokenizer.TestPyTokenizer) multiple inline header cells ... ok test_tables29_table_header_multiple (tests.test_pytokenizer.TestPyTokenizer) multiple table header cells (non-inline) ... ok test_tables30_nested_cells_and_rows (tests.test_pytokenizer.TestPyTokenizer) combination of cells and rows in a table ... ok test_tables31_table_cell_fake_close (tests.test_pytokenizer.TestPyTokenizer) looks like a table close but is not ... ok test_tables32_table_cell_more_fake_close (tests.test_pytokenizer.TestPyTokenizer) looks like a table close but is not ... ok test_tables33_table_cell_extra_close (tests.test_pytokenizer.TestPyTokenizer) process second close as text ... ok test_tables34_nowiki_inside_table (tests.test_pytokenizer.TestPyTokenizer) nowiki handles pipe characters in tables ... ok test_tables35_table_text_outside_cell (tests.test_pytokenizer.TestPyTokenizer) parse text inside table but outside of a cell ... ok test_tables36_no_table_cell_with_leading_characters (tests.test_pytokenizer.TestPyTokenizer) fail to create a table cell when there are leading non-whitespace characters ... ok test_tables37_no_table_row_with_leading_characters (tests.test_pytokenizer.TestPyTokenizer) fail to create a table row when there are leading non-whitespace characters ... ok test_tables38_template_inside_table_cell (tests.test_pytokenizer.TestPyTokenizer) template within table cell ... ok test_tables39_table_cell_attributes (tests.test_pytokenizer.TestPyTokenizer) parse table cell style attributes ... ok test_tables40_table_cell_empty_attributes (tests.test_pytokenizer.TestPyTokenizer) parse table cell with style markers but no attributes ... ok test_tables41_table_cell_with_dash (tests.test_pytokenizer.TestPyTokenizer) parse a situation in which a cell line looks like a row line ... ok test_tables42_table_cell_attributes_quote_with_pipe (tests.test_pytokenizer.TestPyTokenizer) pipe inside an attribute quote should still be used as a style separator ... ok test_tables43_table_cell_attributes_name_with_pipe (tests.test_pytokenizer.TestPyTokenizer) pipe inside an attribute name should still be used as a style separator ... ok test_tables44_table_cell_attributes_pipe_after_equals (tests.test_pytokenizer.TestPyTokenizer) pipe inside an attribute should still be used as a style separator after an equals ... ok test_tables45_table_cell_attributes_templates (tests.test_pytokenizer.TestPyTokenizer) pipe inside attributes shouldn't be style separator ... ok test_tables46_header_cell_attributes (tests.test_pytokenizer.TestPyTokenizer) parse header cell style attributes ... ok test_tables47_inline_cell_attributes (tests.test_pytokenizer.TestPyTokenizer) parse cell style attributes of inline cells ... ok test_tables48_table_row_attributes (tests.test_pytokenizer.TestPyTokenizer) parse table row style attributes ... ok test_tables49_table_row_attributes_crazy_whitespace (tests.test_pytokenizer.TestPyTokenizer) parse table row style attributes with different whitespace ... ok test_tables50_table_attributes (tests.test_pytokenizer.TestPyTokenizer) parse table style attributes ... ok test_tables51_inline_table_attributes (tests.test_pytokenizer.TestPyTokenizer) handle attributes in inline tables ... ok test_tables52_table_incorrect_attributes (tests.test_pytokenizer.TestPyTokenizer) parse incorrect table style attributes ... ok test_tables53_templates_in_table_attribute (tests.test_pytokenizer.TestPyTokenizer) templates in the attributes of a table, after the start ... ok test_tables54_templates_in_table_attribute_2 (tests.test_pytokenizer.TestPyTokenizer) templates in the attributes of a table, after the start ... ok test_tables55_inappropriate_marker_at_line_start (tests.test_pytokenizer.TestPyTokenizer) an inappropriate marker (a right bracket) at the start of a line in the table ... ok test_tables56_fake_close_near_start (tests.test_pytokenizer.TestPyTokenizer) a fake closing token at the end of the first line in the table ... ok test_tables57_fake_close_near_start_2 (tests.test_pytokenizer.TestPyTokenizer) a fake closing token at the end of the first line in the table ... ok test_tables58_junk_after_table_start (tests.test_pytokenizer.TestPyTokenizer) ignore more junk on the first line of the table ... ok test_tables59_junk_after_table_row (tests.test_pytokenizer.TestPyTokenizer) ignore junk on the first line of a table row ... ok test_tags01_basic (tests.test_pytokenizer.TestPyTokenizer) a basic tag with an open and close ... ok test_tags02_basic_selfclosing (tests.test_pytokenizer.TestPyTokenizer) a basic self-closing tag ... ok test_tags03_content (tests.test_pytokenizer.TestPyTokenizer) a tag with some content in the middle ... ok test_tags04_padded_open (tests.test_pytokenizer.TestPyTokenizer) a tag with some padding in the open tag ... ok test_tags05_padded_close (tests.test_pytokenizer.TestPyTokenizer) a tag with some padding in the close tag ... ok test_tags06_padded_selfclosing (tests.test_pytokenizer.TestPyTokenizer) a self-closing tag with padding ... ok test_tags07_attribute (tests.test_pytokenizer.TestPyTokenizer) a tag with a single attribute ... ok test_tags08_attribute_value (tests.test_pytokenizer.TestPyTokenizer) a tag with a single attribute with a value ... ok test_tags09_attribute_quoted (tests.test_pytokenizer.TestPyTokenizer) a tag with a single quoted attribute ... ok test_tags10_attribute_single_quoted (tests.test_pytokenizer.TestPyTokenizer) a tag with a single singly-quoted attribute ... ok test_tags11_attribute_hyphen (tests.test_pytokenizer.TestPyTokenizer) a tag with a single attribute, containing a hyphen ... ok test_tags12_attribute_quoted_hyphen (tests.test_pytokenizer.TestPyTokenizer) a tag with a single quoted attribute, containing a hyphen ... ok test_tags13_attribute_selfclosing (tests.test_pytokenizer.TestPyTokenizer) a self-closing tag with a single attribute ... ok test_tags14_attribute_selfclosing_value (tests.test_pytokenizer.TestPyTokenizer) a self-closing tag with a single attribute with a value ... ok test_tags15_attribute_selfclosing_value_quoted (tests.test_pytokenizer.TestPyTokenizer) a self-closing tag with a single quoted attribute ... ok test_tags16_nested_tag (tests.test_pytokenizer.TestPyTokenizer) a tag nested within the attributes of another ... ok test_tags17_nested_tag_quoted (tests.test_pytokenizer.TestPyTokenizer) a tag nested within the attributes of another, quoted ... ok test_tags18_nested_troll_tag (tests.test_pytokenizer.TestPyTokenizer) a bogus tag that appears to be nested within the attributes of another ... ok test_tags19_nested_troll_tag_quoted (tests.test_pytokenizer.TestPyTokenizer) a bogus tag that appears to be nested within the attributes of another, quoted ... ok test_tags20_nested_tag_selfclosing (tests.test_pytokenizer.TestPyTokenizer) a tag nested within the attributes of another; outer tag implicitly self-closing ... ok test_tags21_invalid_space_begin_open (tests.test_pytokenizer.TestPyTokenizer) invalid tag: a space at the beginning of the open tag ... ok test_tags22_invalid_space_begin_close (tests.test_pytokenizer.TestPyTokenizer) invalid tag: a space at the beginning of the close tag ... ok test_tags23_valid_space_end (tests.test_pytokenizer.TestPyTokenizer) valid tag: spaces at the ends of both the open and close tags ... ok test_tags24_invalid_template_ends (tests.test_pytokenizer.TestPyTokenizer) invalid tag: a template at the ends of both the open and close tags ... ok test_tags25_invalid_template_ends_nospace (tests.test_pytokenizer.TestPyTokenizer) invalid tag: a template at the ends of both the open and close tags, without spacing ... ok test_tags26_valid_template_end_open (tests.test_pytokenizer.TestPyTokenizer) valid tag: a template at the end of the open tag ... ok test_tags27_valid_template_end_open_space_end_close (tests.test_pytokenizer.TestPyTokenizer) valid tag: a template at the end of the open tag; whitespace at the end of the close tag ... ok test_tags28_invalid_template_end_open_nospace (tests.test_pytokenizer.TestPyTokenizer) invalid tag: a template at the end of the open tag, without spacing ... ok test_tags29_invalid_template_start_close (tests.test_pytokenizer.TestPyTokenizer) invalid tag: a template at the beginning of the close tag ... ok test_tags30_invalid_template_start_open (tests.test_pytokenizer.TestPyTokenizer) invalid tag: a template at the beginning of the open tag ... ok test_tags31_unclosed_quote (tests.test_pytokenizer.TestPyTokenizer) a quoted attribute that is never closed ... ok test_tags32_fake_quote (tests.test_pytokenizer.TestPyTokenizer) a fake quoted attribute ... ok test_tags33_fake_quote_complex (tests.test_pytokenizer.TestPyTokenizer) a fake quoted attribute, with spaces and templates and links ... ok test_tags34_quotes_in_quotes (tests.test_pytokenizer.TestPyTokenizer) singly-quoted text inside a doubly-quoted attribute ... ok test_tags35_quotes_in_quotes_2 (tests.test_pytokenizer.TestPyTokenizer) doubly-quoted text inside a singly-quoted attribute ... ok test_tags36_quotes_in_quotes_3 (tests.test_pytokenizer.TestPyTokenizer) doubly-quoted text inside a singly-quoted attribute, with backslashes ... ok test_tags37_incomplete_lbracket (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: just a left bracket ... ok test_tags38_incomplete_lbracket_junk (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: just a left bracket, surrounded by stuff ... ok test_tags39_incomplete_unclosed_open (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed open tag ... ok test_tags40_incomplete_unclosed_open_space (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed open tag, space ... ok test_tags41_incomplete_unclosed_open_unnamed_attr (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed open tag, unnamed attribute ... ok test_tags42_incomplete_unclosed_open_attr_equals (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed open tag, attribute, equal sign ... ok test_tags43_incomplete_unclosed_open_attr_equals_quoted (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed open tag, attribute, equal sign, quote ... ok test_tags44_incomplete_unclosed_open_attr (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed open tag, attribute with a key/value ... ok test_tags45_incomplete_unclosed_open_attr_quoted (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed open tag, attribute with a key/value, quoted ... ok test_tags46_incomplete_open (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag ... ok test_tags47_incomplete_open_unnamed_attr (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, unnamed attribute ... ok test_tags48_incomplete_open_attr_equals (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, attribute, equal sign ... ok test_tags49_incomplete_open_attr (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, attribute with a key/value ... ok test_tags50_incomplete_open_attr_quoted (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, attribute with a key/value, quoted ... ok test_tags51_incomplete_open_text (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, text ... ok test_tags52_incomplete_open_attr_text (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, attribute with a key/value, text ... ok test_tags53_incomplete_open_text_lbracket (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, text, left open bracket ... ok test_tags54_incomplete_open_text_lbracket_slash (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, text, left bracket, slash ... ok test_tags55_incomplete_open_text_unclosed_close (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, text, unclosed close ... ok test_tags56_incomplete_open_text_wrong_close (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, text, wrong close ... ok test_tags57_incomplete_unclosed_close (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed close tag ... ok test_tags58_incomplete_unclosed_close_text (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed close tag, with text ... ok test_tags59_incomplete_close (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: a close tag ... ok test_tags60_incomplete_no_tag_name_open (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: no tag name within brackets; just an open ... ok test_tags61_incomplete_no_tag_name_selfclosing (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: no tag name within brackets; self-closing ... ok test_tags62_incomplete_no_tag_name_open_close (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: no tag name within brackets; open and close ... ok test_tags63_backslash_premature_before (tests.test_pytokenizer.TestPyTokenizer) a backslash before a quote before a space ... ok test_tags64_backslash_premature_after (tests.test_pytokenizer.TestPyTokenizer) a backslash before a quote after a space ... ok test_tags65_backslash_premature_middle (tests.test_pytokenizer.TestPyTokenizer) a backslash before a quote in the middle of a word ... ok test_tags66_backslash_adjacent (tests.test_pytokenizer.TestPyTokenizer) escaped quotes next to unescaped quotes ... ok test_tags67_backslash_endquote (tests.test_pytokenizer.TestPyTokenizer) backslashes before the end quote, causing the attribute to become unquoted ... ok test_tags68_backslash_double (tests.test_pytokenizer.TestPyTokenizer) two adjacent backslashes, which do *not* affect the quote ... ok test_tags69_backslash_triple (tests.test_pytokenizer.TestPyTokenizer) three adjacent backslashes, which do *not* affect the quote ... ok test_tags70_backslash_unaffecting (tests.test_pytokenizer.TestPyTokenizer) backslashes near quotes, but not immediately adjacent, thus having no effect ... ok test_tags71_unparsable (tests.test_pytokenizer.TestPyTokenizer) a tag that should not be put through the normal parser ... ok test_tags72_unparsable_complex (tests.test_pytokenizer.TestPyTokenizer) a tag that should not be put through the normal parser; lots of stuff inside ... ok test_tags73_unparsable_attributed (tests.test_pytokenizer.TestPyTokenizer) a tag that should not be put through the normal parser; parsed attributes ... ok test_tags74_unparsable_incomplete (tests.test_pytokenizer.TestPyTokenizer) a tag that should not be put through the normal parser; incomplete ... ok test_tags75_unparsable_entity (tests.test_pytokenizer.TestPyTokenizer) a HTML entity inside unparsable text is still parsed ... ok test_tags76_unparsable_entity_incomplete (tests.test_pytokenizer.TestPyTokenizer) an incomplete HTML entity inside unparsable text ... ok test_tags77_unparsable_entity_incomplete_2 (tests.test_pytokenizer.TestPyTokenizer) an incomplete HTML entity inside unparsable text ... ok test_tags78_single_open_close (tests.test_pytokenizer.TestPyTokenizer) a tag that supports being single; both an open and a close tag ... ok test_tags79_single_open (tests.test_pytokenizer.TestPyTokenizer) a tag that supports being single; just an open tag ... ok test_tags80_single_selfclose (tests.test_pytokenizer.TestPyTokenizer) a tag that supports being single; a self-closing tag ... ok test_tags81_single_close (tests.test_pytokenizer.TestPyTokenizer) a tag that supports being single; just a close tag ... ok test_tags82_single_only_open_close (tests.test_pytokenizer.TestPyTokenizer) a tag that can only be single; both an open and a close tag ... ok test_tags83_single_only_open (tests.test_pytokenizer.TestPyTokenizer) a tag that can only be single; just an open tag ... ok test_tags84_single_only_selfclose (tests.test_pytokenizer.TestPyTokenizer) a tag that can only be single; a self-closing tag ... ok test_tags85_single_only_close (tests.test_pytokenizer.TestPyTokenizer) a tag that can only be single; just a close tag ... ok test_tags86_single_only_double (tests.test_pytokenizer.TestPyTokenizer) a tag that can only be single; a tag with backslashes at the beginning and end ... ok test_tags87_single_only_close_attribute (tests.test_pytokenizer.TestPyTokenizer) a tag that can only be single; presented as a close tag with an attribute ... ok test_tags88_capitalization (tests.test_pytokenizer.TestPyTokenizer) caps should be ignored within tag names ... ok test_tags89_unparsable_incomplete_close (tests.test_pytokenizer.TestPyTokenizer) an unparsable tag with an incomplete close afterwards ... ok test_tags90_unparsable_with_intermediates (tests.test_pytokenizer.TestPyTokenizer) an unparsable tag with intermediate tags inside of it ... ok test_tags91_unparsable_with_intermediates_normalize (tests.test_pytokenizer.TestPyTokenizer) an unparsable tag with intermediate tags inside of it, requiring normalization ... ok test_tags92_non_ascii_open (tests.test_pytokenizer.TestPyTokenizer) a open tag containing non-ASCII characters ... ok test_tags93_non_ascii_full (tests.test_pytokenizer.TestPyTokenizer) an open/close tag pair containing non-ASCII characters ... ok test_tags94_single_nested_selfclosing (tests.test_pytokenizer.TestPyTokenizer) a single (unpaired) tag with a self-closing tag in the middle (see issue #147) ... ok test_tags_wikimarkup01_basic_italics (tests.test_pytokenizer.TestPyTokenizer) basic italic text ... ok test_tags_wikimarkup02_basic_bold (tests.test_pytokenizer.TestPyTokenizer) basic bold text ... ok test_tags_wikimarkup03_basic_ul (tests.test_pytokenizer.TestPyTokenizer) basic unordered list ... ok test_tags_wikimarkup04_basic_ol (tests.test_pytokenizer.TestPyTokenizer) basic ordered list ... ok test_tags_wikimarkup05_basic_dt (tests.test_pytokenizer.TestPyTokenizer) basic description term ... ok test_tags_wikimarkup06_basic_dd (tests.test_pytokenizer.TestPyTokenizer) basic description item ... ok test_tags_wikimarkup07_basic_hr (tests.test_pytokenizer.TestPyTokenizer) basic horizontal rule ... ok test_tags_wikimarkup08_complex_italics (tests.test_pytokenizer.TestPyTokenizer) italics with a lot in them ... ok test_tags_wikimarkup09_multiline_italics (tests.test_pytokenizer.TestPyTokenizer) italics spanning mulitple lines ... ok test_tags_wikimarkup10_unending_italics (tests.test_pytokenizer.TestPyTokenizer) italics without an ending tag ... ok test_tags_wikimarkup11_misleading_italics_end (tests.test_pytokenizer.TestPyTokenizer) italics with something that looks like an end but isn't ... ok test_tags_wikimarkup12_italics_start_outside_end_inside (tests.test_pytokenizer.TestPyTokenizer) italics that start outside a link and end inside it ... ok test_tags_wikimarkup13_italics_start_inside_end_outside (tests.test_pytokenizer.TestPyTokenizer) italics that start inside a link and end outside it ... ok test_tags_wikimarkup14_complex_bold (tests.test_pytokenizer.TestPyTokenizer) bold with a lot in it ... ok test_tags_wikimarkup15_multiline_bold (tests.test_pytokenizer.TestPyTokenizer) bold spanning mulitple lines ... ok test_tags_wikimarkup16_unending_bold (tests.test_pytokenizer.TestPyTokenizer) bold without an ending tag ... ok test_tags_wikimarkup17_misleading_bold_end (tests.test_pytokenizer.TestPyTokenizer) bold with something that looks like an end but isn't ... ok test_tags_wikimarkup18_bold_start_outside_end_inside (tests.test_pytokenizer.TestPyTokenizer) bold that start outside a link and end inside it ... ok test_tags_wikimarkup19_bold_start_inside_end_outside (tests.test_pytokenizer.TestPyTokenizer) bold that start inside a link and end outside it ... ok test_tags_wikimarkup20_bold_and_italics (tests.test_pytokenizer.TestPyTokenizer) bold and italics together ... ok test_tags_wikimarkup21_both_then_bold (tests.test_pytokenizer.TestPyTokenizer) text that starts bold/italic, then is just bold ... ok test_tags_wikimarkup22_both_then_italics (tests.test_pytokenizer.TestPyTokenizer) text that starts bold/italic, then is just italic ... ok test_tags_wikimarkup23_bold_then_both (tests.test_pytokenizer.TestPyTokenizer) text that starts just bold, then is bold/italic ... ok test_tags_wikimarkup24_italics_then_both (tests.test_pytokenizer.TestPyTokenizer) text that starts just italic, then is bold/italic ... ok test_tags_wikimarkup25_italics_then_bold (tests.test_pytokenizer.TestPyTokenizer) text that starts italic, then is bold ... ok test_tags_wikimarkup26_bold_then_italics (tests.test_pytokenizer.TestPyTokenizer) text that starts bold, then is italic ... ok test_tags_wikimarkup27_five_three (tests.test_pytokenizer.TestPyTokenizer) five ticks to open, three to close (bold) ... ok test_tags_wikimarkup28_five_two (tests.test_pytokenizer.TestPyTokenizer) five ticks to open, two to close (bold) ... ok test_tags_wikimarkup29_four (tests.test_pytokenizer.TestPyTokenizer) four ticks ... ok test_tags_wikimarkup30_four_two (tests.test_pytokenizer.TestPyTokenizer) four ticks to open, two to close ... ok test_tags_wikimarkup31_two_three (tests.test_pytokenizer.TestPyTokenizer) two ticks to open, three to close ... ok test_tags_wikimarkup32_two_four (tests.test_pytokenizer.TestPyTokenizer) two ticks to open, four to close ... ok test_tags_wikimarkup33_two_three_two (tests.test_pytokenizer.TestPyTokenizer) two ticks to open, three to close, two afterwards ... ok test_tags_wikimarkup34_two_four_four (tests.test_pytokenizer.TestPyTokenizer) two ticks to open, four to close, four afterwards ... ok test_tags_wikimarkup35_seven (tests.test_pytokenizer.TestPyTokenizer) seven ticks ... ok test_tags_wikimarkup36_unending_bold_and_italics (tests.test_pytokenizer.TestPyTokenizer) five ticks (bold and italics) that don't end ... ok test_tags_wikimarkup37_complex_ul (tests.test_pytokenizer.TestPyTokenizer) ul with a lot in it ... ok test_tags_wikimarkup38_ul_multiline_template (tests.test_pytokenizer.TestPyTokenizer) ul with a template that spans multiple lines ... ok test_tags_wikimarkup39_ul_adjacent (tests.test_pytokenizer.TestPyTokenizer) multiple adjacent uls ... ok test_tags_wikimarkup40_ul_depths (tests.test_pytokenizer.TestPyTokenizer) multiple adjacent uls, with differing depths ... ok test_tags_wikimarkup41_ul_space_before (tests.test_pytokenizer.TestPyTokenizer) uls with space before them ... ok test_tags_wikimarkup42_ul_interruption (tests.test_pytokenizer.TestPyTokenizer) high-depth ul with something blocking it ... ok test_tags_wikimarkup43_complex_ol (tests.test_pytokenizer.TestPyTokenizer) ol with a lot in it ... ok test_tags_wikimarkup44_ol_multiline_template (tests.test_pytokenizer.TestPyTokenizer) ol with a template that spans moltiple lines ... ok test_tags_wikimarkup45_ol_adjacent (tests.test_pytokenizer.TestPyTokenizer) moltiple adjacent ols ... ok test_tags_wikimarkup46_ol_depths (tests.test_pytokenizer.TestPyTokenizer) moltiple adjacent ols, with differing depths ... ok test_tags_wikimarkup47_ol_space_before (tests.test_pytokenizer.TestPyTokenizer) ols with space before them ... ok test_tags_wikimarkup48_ol_interruption (tests.test_pytokenizer.TestPyTokenizer) high-depth ol with something blocking it ... ok test_tags_wikimarkup49_ul_ol_mix (tests.test_pytokenizer.TestPyTokenizer) a mix of adjacent uls and ols ... ok test_tags_wikimarkup50_complex_dt (tests.test_pytokenizer.TestPyTokenizer) dt with a lot in it ... ok test_tags_wikimarkup51_dt_multiline_template (tests.test_pytokenizer.TestPyTokenizer) dt with a template that spans mdttiple lines ... ok test_tags_wikimarkup52_dt_adjacent (tests.test_pytokenizer.TestPyTokenizer) mdttiple adjacent dts ... ok test_tags_wikimarkup53_dt_depths (tests.test_pytokenizer.TestPyTokenizer) mdttiple adjacent dts, with differing depths ... ok test_tags_wikimarkup54_dt_space_before (tests.test_pytokenizer.TestPyTokenizer) dts with space before them ... ok test_tags_wikimarkup55_dt_interruption (tests.test_pytokenizer.TestPyTokenizer) high-depth dt with something blocking it ... ok test_tags_wikimarkup56_complex_dd (tests.test_pytokenizer.TestPyTokenizer) dd with a lot in it ... ok test_tags_wikimarkup57_dd_multiline_template (tests.test_pytokenizer.TestPyTokenizer) dd with a template that spans mddtiple lines ... ok test_tags_wikimarkup58_dd_adjacent (tests.test_pytokenizer.TestPyTokenizer) mddtiple adjacent dds ... ok test_tags_wikimarkup59_dd_depths (tests.test_pytokenizer.TestPyTokenizer) mddtiple adjacent dds, with differing depths ... ok test_tags_wikimarkup60_dd_space_before (tests.test_pytokenizer.TestPyTokenizer) dds with space before them ... ok test_tags_wikimarkup61_dd_interruption (tests.test_pytokenizer.TestPyTokenizer) high-depth dd with something blocking it ... ok test_tags_wikimarkup62_dt_dd_mix (tests.test_pytokenizer.TestPyTokenizer) a mix of adjacent dts and dds ... ok test_tags_wikimarkup63_dt_dd_mix2 (tests.test_pytokenizer.TestPyTokenizer) the correct usage of a dt/dd unit, as in a dl ... ok test_tags_wikimarkup64_dt_dd_mix3 (tests.test_pytokenizer.TestPyTokenizer) another example of correct (but strange) dt/dd usage ... ok test_tags_wikimarkup65_dt_dd_mix4 (tests.test_pytokenizer.TestPyTokenizer) another example of correct dt/dd usage, with a trigger for a specific parse route ... ok test_tags_wikimarkup66_ul_ol_dt_dd_mix (tests.test_pytokenizer.TestPyTokenizer) an assortment of uls, ols, dds, and dts ... ok test_tags_wikimarkup67_hr_text_before (tests.test_pytokenizer.TestPyTokenizer) text before an otherwise-valid hr ... ok test_tags_wikimarkup68_hr_text_after (tests.test_pytokenizer.TestPyTokenizer) text after a valid hr ... ok test_tags_wikimarkup69_hr_text_before_after (tests.test_pytokenizer.TestPyTokenizer) text at both ends of an otherwise-valid hr ... ok test_tags_wikimarkup70_hr_newlines (tests.test_pytokenizer.TestPyTokenizer) newlines surrounding a valid hr ... ok test_tags_wikimarkup71_hr_adjacent (tests.test_pytokenizer.TestPyTokenizer) two adjacent hrs ... ok test_tags_wikimarkup72_hr_adjacent_space (tests.test_pytokenizer.TestPyTokenizer) two adjacent hrs, with a space before the second one, making it invalid ... ok test_tags_wikimarkup73_hr_short (tests.test_pytokenizer.TestPyTokenizer) an invalid three-hyphen-long hr ... ok test_tags_wikimarkup74_hr_long (tests.test_pytokenizer.TestPyTokenizer) a very long, valid hr ... ok test_tags_wikimarkup75_hr_interruption_short (tests.test_pytokenizer.TestPyTokenizer) a hr that is interrupted, making it invalid ... ok test_tags_wikimarkup76_hr_interruption_long (tests.test_pytokenizer.TestPyTokenizer) a hr that is interrupted, but the first part remains valid because it is long enough ... ok test_tags_wikimarkup77_nowiki_cancel (tests.test_pytokenizer.TestPyTokenizer) a nowiki tag before a list causes it to not be parsed ... ok test_templates001_no_params (tests.test_pytokenizer.TestPyTokenizer) simplest type of template ... ok test_templates002_one_param_unnamed (tests.test_pytokenizer.TestPyTokenizer) basic template with one unnamed parameter ... ok test_templates003_one_param_named (tests.test_pytokenizer.TestPyTokenizer) basic template with one named parameter ... ok test_templates004_multiple_unnamed_params (tests.test_pytokenizer.TestPyTokenizer) basic template with multiple unnamed parameters ... ok test_templates005_multiple_named_params (tests.test_pytokenizer.TestPyTokenizer) basic template with multiple named parameters ... ok test_templates006_multiple_mixed_params (tests.test_pytokenizer.TestPyTokenizer) basic template with multiple unnamed/named parameters ... ok test_templates007_multiple_mixed_params2 (tests.test_pytokenizer.TestPyTokenizer) basic template with multiple unnamed/named parameters in another order ... ok test_templates008_blank_params (tests.test_pytokenizer.TestPyTokenizer) template with blank parameters (mix of pipes and equal signs) ... ok test_templates009_nested_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) nested template as an unnamed parameter ... ok test_templates010_nested_named_param_value (tests.test_pytokenizer.TestPyTokenizer) nested template as a parameter value with a named parameter ... ok test_templates011_nested_named_param_name_and_value (tests.test_pytokenizer.TestPyTokenizer) nested templates as a parameter name and value ... ok test_templates012_nested_name_start (tests.test_pytokenizer.TestPyTokenizer) nested template at the beginning of a template name ... ok test_templates013_nested_name_start_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) nested template at the beginning of a template name and as an unnamed parameter ... ok test_templates014_nested_name_start_named_param_value (tests.test_pytokenizer.TestPyTokenizer) nested template at the beginning of a template name and as a parameter value with a named parameter ... ok test_templates015_nested_name_start_named_param_name_and_value (tests.test_pytokenizer.TestPyTokenizer) nested template at the beginning of a template name and as a parameter name and value ... ok test_templates016_nested_name_end (tests.test_pytokenizer.TestPyTokenizer) nested template at the end of a template name ... ok test_templates017_nested_name_end_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) nested template at the end of a template name and as an unnamed parameter ... ok test_templates018_nested_name_end_named_param_value (tests.test_pytokenizer.TestPyTokenizer) nested template at the end of a template name and as a parameter value with a named parameter ... ok test_templates019_nested_name_end_named_param_name_and_value (tests.test_pytokenizer.TestPyTokenizer) nested template at the end of a template name and as a parameter name and value ... ok test_templates020_nested_name_mid (tests.test_pytokenizer.TestPyTokenizer) nested template in the middle of a template name ... ok test_templates021_nested_name_mid_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) nested template in the middle of a template name and as an unnamed parameter ... ok test_templates022_nested_name_mid_named_param_value (tests.test_pytokenizer.TestPyTokenizer) nested template in the middle of a template name and as a parameter value with a named parameter ... ok test_templates023_nested_name_mid_named_param_name_and_value (tests.test_pytokenizer.TestPyTokenizer) nested template in the middle of a template name and as a parameter name and value ... ok test_templates024_nested_name_start_end (tests.test_pytokenizer.TestPyTokenizer) nested template at the beginning and end of a template name ... ok test_templates025_nested_name_start_end_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) nested template at the beginning and end of a template name and as an unnamed parameter ... ok test_templates026_nested_name_start_end_named_param_value (tests.test_pytokenizer.TestPyTokenizer) nested template at the beginning and end of a template name and as a parameter value with a named parameter ... ok test_templates027_nested_name_start_end_named_param_name_and_value (tests.test_pytokenizer.TestPyTokenizer) nested template at the beginning and end of a template name and as a parameter name and value ... ok test_templates028_nested_names_multiple (tests.test_pytokenizer.TestPyTokenizer) multiple nested templates within nested templates ... ok test_templates029_nested_names_multiple_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) multiple nested templates within nested templates with a nested unnamed parameter ... ok test_templates030_nested_names_multiple_named_param_value (tests.test_pytokenizer.TestPyTokenizer) multiple nested templates within nested templates with a nested parameter value in a named parameter ... ok test_templates031_nested_names_multiple_named_param_name_and_value (tests.test_pytokenizer.TestPyTokenizer) multiple nested templates within nested templates with a nested parameter name and value ... ok test_templates032_mixed_nested_templates (tests.test_pytokenizer.TestPyTokenizer) mixed assortment of nested templates within template names, parameter names, and values ... ok test_templates033_nested_two_args (tests.test_pytokenizer.TestPyTokenizer) template whose first parameter is unnamed with two templates, followed by a named parameter ... ok test_templates034_newlines_start (tests.test_pytokenizer.TestPyTokenizer) a newline at the start of a template name ... ok test_templates035_newlines_end (tests.test_pytokenizer.TestPyTokenizer) a newline at the end of a template name ... ok test_templates036_newlines_start_end (tests.test_pytokenizer.TestPyTokenizer) a newline at the start and end of a template name ... ok test_templates037_newlines_mid (tests.test_pytokenizer.TestPyTokenizer) a newline at the middle of a template name ... ok test_templates038_newlines_start_mid (tests.test_pytokenizer.TestPyTokenizer) a newline at the start and middle of a template name ... ok test_templates039_newlines_mid_end (tests.test_pytokenizer.TestPyTokenizer) a newline at the middle and end of a template name ... ok test_templates040_newlines_start_mid_end (tests.test_pytokenizer.TestPyTokenizer) a newline at the start, middle, and end of a template name ... ok test_templates041_newlines_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) newlines within an unnamed template parameter ... ok test_templates042_newlines_enclose_template_name_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) newlines enclosing a template name and within an unnamed template parameter ... ok test_templates043_newlines_within_template_name_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) newlines within a template name and within an unnamed template parameter ... ok test_templates044_newlines_enclose_template_name_named_param_value (tests.test_pytokenizer.TestPyTokenizer) newlines enclosing a template name and within a named parameter value ... ok test_templates045_newlines_within_template_name_named_param_value (tests.test_pytokenizer.TestPyTokenizer) newlines within a template name and within a named parameter value ... ok test_templates046_newlines_named_param_name (tests.test_pytokenizer.TestPyTokenizer) newlines within a parameter name ... ok test_templates047_newlines_named_param_name_param_value (tests.test_pytokenizer.TestPyTokenizer) newlines within a parameter name and within a parameter value ... ok test_templates048_newlines_enclose_template_name_named_param_name (tests.test_pytokenizer.TestPyTokenizer) newlines enclosing a template name and within a parameter name ... ok test_templates049_newlines_enclose_template_name_named_param_name_param_value (tests.test_pytokenizer.TestPyTokenizer) newlines enclosing a template name and within a parameter name and within a parameter value ... ok test_templates050_newlines_within_template_name_named_param_name (tests.test_pytokenizer.TestPyTokenizer) newlines within a template name and within a parameter name ... ok test_templates051_newlines_within_template_name_named_param_name_param_value (tests.test_pytokenizer.TestPyTokenizer) newlines within a template name and within a parameter name and within a parameter value ... ok test_templates052_newlines_wildcard (tests.test_pytokenizer.TestPyTokenizer) a random, complex assortment of templates and newlines ... ok test_templates053_newlines_wildcard_redux (tests.test_pytokenizer.TestPyTokenizer) an even more random and complex assortment of templates and newlines ... ok test_templates054_newlines_wildcard_redux_invalid (tests.test_pytokenizer.TestPyTokenizer) a variation of the newlines_wildcard_redux test that is invalid ... ok test_templates055_newlines_spaces (tests.test_pytokenizer.TestPyTokenizer) newlines in the middle of a template name, followed by spaces ... ok test_templates056_newlines_spaces_param (tests.test_pytokenizer.TestPyTokenizer) newlines in the middle of a template name, followed by spaces, with a parameter ... ok test_templates057_invalid_blank (tests.test_pytokenizer.TestPyTokenizer) invalid template with no content ... ok test_templates058_invalid_blank_whitespace (tests.test_pytokenizer.TestPyTokenizer) invalid template with no content, but whitespace ... ok test_templates059_invalid_blank_pipe (tests.test_pytokenizer.TestPyTokenizer) invalid template with no content, but a parameter ... ok test_templates060_invalid_blank_whitespace_pipe (tests.test_pytokenizer.TestPyTokenizer) invalid template with no content, but whitespace and a parameter ... ok test_templates061_invalid_name_left_brace_middle (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template name: left brace in middle ... ok test_templates062_invalid_name_right_brace_middle (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template name: right brace in middle ... ok test_templates063_invalid_name_left_braces (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template name: two left braces in middle ... ok test_templates064_invalid_name_left_bracket_middle (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template name: left bracket in middle ... ok test_templates065_invalid_name_right_bracket_middle (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template name: right bracket in middle ... ok test_templates066_invalid_name_left_bracket_start (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template name: left bracket at start ... ok test_templates067_invalid_name_right_bracket_start (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template name: right bracket at end ... ok test_templates068_valid_name_left_brace_start (tests.test_pytokenizer.TestPyTokenizer) valid characters in template name: left brace at start ... ok test_templates069_valid_unnamed_param_left_brace (tests.test_pytokenizer.TestPyTokenizer) valid characters in unnamed template parameter: left brace ... ok test_templates070_valid_unnamed_param_braces (tests.test_pytokenizer.TestPyTokenizer) valid characters in unnamed template parameter: left and right braces ... ok test_templates071_valid_param_name_braces (tests.test_pytokenizer.TestPyTokenizer) valid characters in template parameter name: left and right braces ... ok test_templates072_valid_param_name_brackets (tests.test_pytokenizer.TestPyTokenizer) valid characters in unnamed template parameter: left and right brackets ... ok test_templates073_valid_param_name_double_left_brackets (tests.test_pytokenizer.TestPyTokenizer) valid characters in unnamed template parameter: double left brackets ... ok test_templates074_valid_param_name_double_right_brackets (tests.test_pytokenizer.TestPyTokenizer) valid characters in unnamed template parameter: double right brackets ... ok test_templates075_valid_param_name_double_brackets (tests.test_pytokenizer.TestPyTokenizer) valid characters in unnamed template parameter: double left and right brackets ... ok test_templates076_invalid_param_name_double_left_braces (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template parameter name: double left braces ... ok test_templates077_invalid_param_name_double_braces (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template parameter name: double left and right braces ... ok test_templates078_invalid_left_angle_bracket (tests.test_pytokenizer.TestPyTokenizer) invalid template: left angle bracket in name ... ok test_templates079_invalid_right_angle_bracket (tests.test_pytokenizer.TestPyTokenizer) invalid template: right angle bracket in name ... ok test_templates080_incomplete_stub (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: just an opening ... ok test_templates081_incomplete_plain (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: no close whatsoever ... ok test_templates082_incomplete_right_brace (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: only one right brace ... ok test_templates083_incomplete_pipe (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: a pipe ... ok test_templates084_incomplete_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: an unnamed parameter ... ok test_templates085_incomplete_unnamed_param_pipe (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: an unnamed parameter, then a pipe ... ok test_templates086_incomplete_valueless_param (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: an a named parameter with no value ... ok test_templates087_incomplete_valueless_param_pipe (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: a named parameter with no value, then a pipe ... ok test_templates088_incomplete_named_param (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: a named parameter with a value ... ok test_templates089_incomplete_named_param_pipe (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: a named parameter with a value, then a paipe ... ok test_templates090_incomplete_two_unnamed_params (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: two unnamed parameters ... ok test_templates091_incomplete_unnamed_param_valueless_param (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: an unnamed parameter, then a named parameter with no value ... ok test_templates092_incomplete_unnamed_param_named_param (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: an unnamed parameter, then a named parameter with a value ... ok test_templates093_incomplete_named_param_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: a named parameter with a value, then an unnamed parameter ... ok test_templates094_incomplete_named_param_valueless_param (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: a named parameter with a value, then a named parameter with no value ... ok test_templates095_incomplete_two_named_params (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: two named parameters with values ... ok test_templates096_incomplete_nested_template_as_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: a valid nested template as an unnamed parameter ... ok test_templates097_incomplete_nested_template_as_param_value (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: a valid nested template as a parameter value ... ok test_templates098_recursion_five_hundred_opens (tests.test_pytokenizer.TestPyTokenizer) test potentially dangerous recursion: five hundred template openings, without spaces ... ok test_templates099_recursion_one_hundred_opens (tests.test_pytokenizer.TestPyTokenizer) test potentially dangerous recursion: one hundred template openings, with spaces ... ok test_templates100_recursion_opens_and_closes (tests.test_pytokenizer.TestPyTokenizer) test potentially dangerous recursion: template openings and closings ... ok test_text1_basic (tests.test_pytokenizer.TestPyTokenizer) sanity check for basic text parsing, no gimmicks ... ok test_text2_newlines (tests.test_pytokenizer.TestPyTokenizer) slightly more complex text parsing, with newlines ... ok test_text3_unicode (tests.test_pytokenizer.TestPyTokenizer) ensure unicode data is handled properly ... ok test_text4_unicode2 (tests.test_pytokenizer.TestPyTokenizer) additional unicode check for non-BMP codepoints ... ok test_text5_large (tests.test_pytokenizer.TestPyTokenizer) a lot of text, requiring proper storage in the C tokenizer ... ok test_uses_c (tests.test_pytokenizer.TestPyTokenizer) make sure the Python tokenizer identifies as not using C ... ok test_wikilinks01_blank (tests.test_pytokenizer.TestPyTokenizer) wikilink with no content ... ok test_wikilinks02_blank_with_text (tests.test_pytokenizer.TestPyTokenizer) wikilink with no content but a pipe ... ok test_wikilinks03_basic (tests.test_pytokenizer.TestPyTokenizer) simplest type of wikilink ... ok test_wikilinks04_with_text (tests.test_pytokenizer.TestPyTokenizer) wikilink with a text value ... ok test_wikilinks05_blank_with_multiple_texts (tests.test_pytokenizer.TestPyTokenizer) no content, multiple pipes ... ok test_wikilinks06_multiple_texts (tests.test_pytokenizer.TestPyTokenizer) multiple text values separated by pipes ... ok test_wikilinks07_newline_text (tests.test_pytokenizer.TestPyTokenizer) a newline in the middle of the text ... ok test_wikilinks08_bracket_text (tests.test_pytokenizer.TestPyTokenizer) a left bracket in the middle of the text ... ok test_wikilinks09_nested (tests.test_pytokenizer.TestPyTokenizer) a wikilink nested within another ... ok test_wikilinks10_nested_padding (tests.test_pytokenizer.TestPyTokenizer) a wikilink nested within another, separated by other data ... ok test_wikilinks11_invalid_newline (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: newline as only content ... ok test_wikilinks12_invalid_right_brace (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: right brace ... ok test_wikilinks13_invalid_left_brace (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: left brace ... ok test_wikilinks14_invalid_right_bracket (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: right bracket ... ok test_wikilinks15_invalid_left_bracket (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: left bracket ... ok test_wikilinks16_invalid_nested (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: trying to nest in the wrong context ... ok test_wikilinks17_invalid_nested_padding (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: trying to nest in the wrong context, with a text param ... ok test_wikilinks18_invalid_nested_no_close (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: a wikilink nested within the value of another, missing a pair of closing brackets ... ok test_wikilinks19_invalid_left_angle_bracket (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: left angle bracket ... ok test_wikilinks20_invalid_right_angle_bracket (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: right angle bracket ... ok test_wikilinks21_invalid_newline_at_start (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: newline at start of title ... ok test_wikilinks22_invalid_newline_at_end (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: newline at end of title ... ok test_wikilinks23_incomplete_open_only (tests.test_pytokenizer.TestPyTokenizer) incomplete wikilinks: just an open ... ok test_wikilinks24_incomplete_open_text (tests.test_pytokenizer.TestPyTokenizer) incomplete wikilinks: an open with some text ... ok test_wikilinks25_incomplete_open_text_pipe (tests.test_pytokenizer.TestPyTokenizer) incomplete wikilinks: an open, text, then a pipe ... ok test_wikilinks26_incomplete_open_pipe (tests.test_pytokenizer.TestPyTokenizer) incomplete wikilinks: an open, then a pipe ... ok test_wikilinks27_incomplete_open_pipe_text (tests.test_pytokenizer.TestPyTokenizer) incomplete wikilinks: an open, then a pipe, then text ... ok test_wikilinks28_incomplete_open_pipes_text (tests.test_pytokenizer.TestPyTokenizer) incomplete wikilinks: a pipe, then text then two pipes ... ok test_wikilinks29_incomplete_open_partial_close (tests.test_pytokenizer.TestPyTokenizer) incomplete wikilinks: an open, then one right brace ... ok test_wikilinks30_incomplete_preserve_previous (tests.test_pytokenizer.TestPyTokenizer) incomplete wikilinks: a valid wikilink followed by an invalid one ... ok test_name (tests.test_parameter.TestParameter) test getter/setter for the name attribute ... ok test_showkey (tests.test_parameter.TestParameter) test getter/setter for the showkey attribute ... ok test_unicode (tests.test_parameter.TestParameter) test Parameter.__unicode__() ... ok test_value (tests.test_parameter.TestParameter) test getter/setter for the value attribute ... ok test_add (tests.test_tag.TestTag) test Tag.add() ... ok test_attributes (tests.test_tag.TestTag) test getter for the attributes attribute ... ok test_children (tests.test_tag.TestTag) test Tag.__children__() ... ok test_closing_tag (tests.test_tag.TestTag) test getter/setter for the closing_tag attribute ... ok test_closing_wiki_markup (tests.test_tag.TestTag) test getter/setter for closing_wiki_markup attribute ... ok test_contents (tests.test_tag.TestTag) test getter/setter for the contents attribute ... ok test_get (tests.test_tag.TestTag) test Tag.get() ... ok test_has (tests.test_tag.TestTag) test Tag.has() ... ok test_implicit (tests.test_tag.TestTag) test getter/setter for the implicit attribute ... ok test_invalid (tests.test_tag.TestTag) test getter/setter for the invalid attribute ... ok test_padding (tests.test_tag.TestTag) test getter/setter for the padding attribute ... ok test_remove (tests.test_tag.TestTag) test Tag.remove() ... ok test_self_closing (tests.test_tag.TestTag) test getter/setter for the self_closing attribute ... ok test_showtree (tests.test_tag.TestTag) test Tag.__showtree__() ... ok test_strip (tests.test_tag.TestTag) test Tag.__strip__() ... ok test_tag (tests.test_tag.TestTag) test getter/setter for the tag attribute ... ok test_unicode (tests.test_tag.TestTag) test Tag.__unicode__() ... ok test_wiki_markup (tests.test_tag.TestTag) test getter/setter for the wiki_markup attribute ... ok test_wiki_style_separator (tests.test_tag.TestTag) test getter/setter for wiki_style_separator attribute ... ok test_parse_anything_invalid (tests.test_utils.TestUtils) tests for invalid input to utils.parse_anything() ... ok test_parse_anything_valid (tests.test_utils.TestUtils) tests for valid input to utils.parse_anything() ... ok test_children (tests.test_comment.TestComment) test Comment.__children__() ... ok test_contents (tests.test_comment.TestComment) test getter/setter for the contents attribute ... ok test_showtree (tests.test_comment.TestComment) test Comment.__showtree__() ... ok test_strip (tests.test_comment.TestComment) test Comment.__strip__() ... ok test_unicode (tests.test_comment.TestComment) test Comment.__unicode__() ... ok test_children (tests.test_wikilink.TestWikilink) test Wikilink.__children__() ... ok test_showtree (tests.test_wikilink.TestWikilink) test Wikilink.__showtree__() ... ok test_strip (tests.test_wikilink.TestWikilink) test Wikilink.__strip__() ... ok test_text (tests.test_wikilink.TestWikilink) test getter/setter for the text attribute ... ok test_title (tests.test_wikilink.TestWikilink) test getter/setter for the title attribute ... ok test_unicode (tests.test_wikilink.TestWikilink) test Wikilink.__unicode__() ... ok test_brackets (tests.test_external_link.TestExternalLink) test getter/setter for the brackets attribute ... ok test_children (tests.test_external_link.TestExternalLink) test ExternalLink.__children__() ... ok test_showtree (tests.test_external_link.TestExternalLink) test ExternalLink.__showtree__() ... ok test_strip (tests.test_external_link.TestExternalLink) test ExternalLink.__strip__() ... ok test_title (tests.test_external_link.TestExternalLink) test getter/setter for the title attribute ... ok test_unicode (tests.test_external_link.TestExternalLink) test ExternalLink.__unicode__() ... ok test_url (tests.test_external_link.TestExternalLink) test getter/setter for the url attribute ... ok test_child_add (tests.test_smart_list.TestSmartList) make sure _ListProxy's add/radd/iadd work ... ok test_child_get_set_del (tests.test_smart_list.TestSmartList) make sure _ListProxy's getitem/setitem/delitem work ... ok test_child_methods (tests.test_smart_list.TestSmartList) make sure _ListProxy's non-magic methods work, like append() ... ok test_child_other_magics (tests.test_smart_list.TestSmartList) make sure _ListProxy's other magically implemented features work ... ok test_docs (tests.test_smart_list.TestSmartList) make sure the methods of SmartList/_ListProxy have docstrings ... ok test_doctest (tests.test_smart_list.TestSmartList) make sure the test embedded in SmartList's docstring passes ... ok test_influence (tests.test_smart_list.TestSmartList) make sure changes are propagated from parents to children ... ok test_parent_add (tests.test_smart_list.TestSmartList) make sure SmartList's add/radd/iadd work ... ok test_parent_get_set_del (tests.test_smart_list.TestSmartList) make sure SmartList's getitem/setitem/delitem work ... ok test_parent_methods (tests.test_smart_list.TestSmartList) make sure SmartList's non-magic methods work, like append() ... ok test_parent_other_magics (tests.test_smart_list.TestSmartList) make sure SmartList's other magically implemented features work ... ok test_comparisons (tests.test_string_mixin.TestStringMixIn) make sure comparison operators work ... ok test_docs (tests.test_string_mixin.TestStringMixIn) make sure the various methods of StringMixIn have docstrings ... ok test_other_magics (tests.test_string_mixin.TestStringMixIn) test other magically implemented features, like len() and iter() ... ok test_other_methods (tests.test_string_mixin.TestStringMixIn) test the remaining non-magic methods of StringMixIn ... ok test_types (tests.test_string_mixin.TestStringMixIn) make sure StringMixIns convert to different types correctly ... ok test_name (tests.test_attribute.TestAttribute) test getter/setter for the name attribute ... ok test_padding (tests.test_attribute.TestAttribute) test getter/setter for the padding attributes ... ok test_quotes (tests.test_attribute.TestAttribute) test getter/setter for the quotes attribute ... ok test_unicode (tests.test_attribute.TestAttribute) test Attribute.__unicode__() ... ok test_value (tests.test_attribute.TestAttribute) test getter/setter for the value attribute ... ok test_argument (tests.test_builder.TestBuilder) tests for building Argument nodes ... ok test_comment (tests.test_builder.TestBuilder) tests for building Comment nodes ... ok test_external_link (tests.test_builder.TestBuilder) tests for building ExternalLink nodes ... ok test_heading (tests.test_builder.TestBuilder) tests for building Heading nodes ... ok test_html_entity (tests.test_builder.TestBuilder) tests for building HTMLEntity nodes ... ok test_integration (tests.test_builder.TestBuilder) a test for building a combination of templates together ... ok test_integration2 (tests.test_builder.TestBuilder) an even more audacious test for building a horrible wikicode mess ... ok test_parser_errors (tests.test_builder.TestBuilder) test whether ParserError gets thrown for bad input ... ok test_tag (tests.test_builder.TestBuilder) tests for building Tag nodes ... ok test_template (tests.test_builder.TestBuilder) tests for building Template nodes ... ok test_text (tests.test_builder.TestBuilder) tests for building Text nodes ... ok test_wikilink (tests.test_builder.TestBuilder) tests for building Wikilink nodes ... ok test_arguments01_blank (tests.test_ctokenizer.TestCTokenizer) argument with no content ... ok test_arguments02_blank_with_default (tests.test_ctokenizer.TestCTokenizer) argument with no content but a pipe ... ok test_arguments03_basic (tests.test_ctokenizer.TestCTokenizer) simplest type of argument ... ok test_arguments04_default (tests.test_ctokenizer.TestCTokenizer) argument with a default value ... ok test_arguments05_blank_with_multiple_defaults (tests.test_ctokenizer.TestCTokenizer) no content, multiple pipes ... ok test_arguments06_multiple_defaults (tests.test_ctokenizer.TestCTokenizer) multiple values separated by pipes ... ok test_arguments07_newline (tests.test_ctokenizer.TestCTokenizer) newline as only content ... ok test_arguments08_right_braces (tests.test_ctokenizer.TestCTokenizer) multiple } scattered throughout text ... ok test_arguments09_right_braces_default (tests.test_ctokenizer.TestCTokenizer) multiple } scattered throughout text, with a default value ... ok test_arguments10_nested (tests.test_ctokenizer.TestCTokenizer) an argument nested within another argument ... ok test_arguments11_invalid_braces (tests.test_ctokenizer.TestCTokenizer) invalid argument: multiple braces that are not part of a template or argument ... ok test_arguments12_incomplete_open_only (tests.test_ctokenizer.TestCTokenizer) incomplete arguments: just an open ... ok test_arguments13_incomplete_open_text (tests.test_ctokenizer.TestCTokenizer) incomplete arguments: an open with some text ... ok test_arguments14_incomplete_open_text_pipe (tests.test_ctokenizer.TestCTokenizer) incomplete arguments: an open, text, then a pipe ... ok test_arguments15_incomplete_open_pipe (tests.test_ctokenizer.TestCTokenizer) incomplete arguments: an open, then a pipe ... ok test_arguments16_incomplete_open_pipe_text (tests.test_ctokenizer.TestCTokenizer) incomplete arguments: an open, then a pipe, then text ... ok test_arguments17_incomplete_open_pipes_text (tests.test_ctokenizer.TestCTokenizer) incomplete arguments: a pipe, then text then two pipes ... ok test_arguments18_incomplete_open_partial_close (tests.test_ctokenizer.TestCTokenizer) incomplete arguments: an open, then one right brace ... ok test_arguments19_incomplete_preserve_previous (tests.test_ctokenizer.TestCTokenizer) incomplete arguments: a valid argument followed by an invalid one ... ok test_comments1_blank (tests.test_ctokenizer.TestCTokenizer) a blank comment ... ok test_comments2_basic (tests.test_ctokenizer.TestCTokenizer) a basic comment ... ok test_comments3_tons_of_nonsense (tests.test_ctokenizer.TestCTokenizer) a comment with tons of ignorable garbage in it ... ok test_comments4_incomplete_blank (tests.test_ctokenizer.TestCTokenizer) a comment that doesn't close ... ok test_comments5_incomplete_text (tests.test_ctokenizer.TestCTokenizer) a comment that doesn't close, with text ... ok test_comments6_incomplete_partial_close (tests.test_ctokenizer.TestCTokenizer) a comment that doesn't close, with a partial close ... ok test_comments7_incomplete_part_only (tests.test_ctokenizer.TestCTokenizer) a comment that only has a < and ! ... ok test_external_links01_basic (tests.test_ctokenizer.TestCTokenizer) basic external link ... ok test_external_links02_basic_brackets (tests.test_ctokenizer.TestCTokenizer) basic external link in brackets ... ok test_external_links03_brackets_space (tests.test_ctokenizer.TestCTokenizer) basic external link in brackets, with a space after ... ok test_external_links04_brackets_title (tests.test_ctokenizer.TestCTokenizer) basic external link in brackets, with a title ... ok test_external_links05_brackets_multiword_title (tests.test_ctokenizer.TestCTokenizer) basic external link in brackets, with a multi-word title ... ok test_external_links06_brackets_adjacent (tests.test_ctokenizer.TestCTokenizer) three adjacent bracket-enclosed external links ... ok test_external_links07_brackets_newline_before (tests.test_ctokenizer.TestCTokenizer) bracket-enclosed link with a newline before the title ... ok test_external_links08_brackets_newline_inside (tests.test_ctokenizer.TestCTokenizer) bracket-enclosed link with a newline in the title ... ok test_external_links09_brackets_newline_after (tests.test_ctokenizer.TestCTokenizer) bracket-enclosed link with a newline after the title ... ok test_external_links10_brackets_space_before (tests.test_ctokenizer.TestCTokenizer) bracket-enclosed link with a space before the URL ... ok test_external_links11_brackets_title_like_url (tests.test_ctokenizer.TestCTokenizer) bracket-enclosed link with a title that looks like a URL ... ok test_external_links12_brackets_recursive (tests.test_ctokenizer.TestCTokenizer) bracket-enclosed link with a bracket-enclosed link as the title ... ok test_external_links13_brackets_recursive_2 (tests.test_ctokenizer.TestCTokenizer) bracket-enclosed link with a double bracket-enclosed link as the title ... ok test_external_links14_period_after (tests.test_ctokenizer.TestCTokenizer) a period after a free link that is excluded ... ok test_external_links15_colons_after (tests.test_ctokenizer.TestCTokenizer) colons after a free link that are excluded ... ok test_external_links16_close_paren_after_excluded (tests.test_ctokenizer.TestCTokenizer) a closing parenthesis after a free link that is excluded ... ok test_external_links17_close_paren_after_included (tests.test_ctokenizer.TestCTokenizer) a closing parenthesis after a free link that is included because of an opening parenthesis in the URL ... ok test_external_links18_open_bracket_inside (tests.test_ctokenizer.TestCTokenizer) an open bracket inside a free link that causes it to be ended abruptly ... ok test_external_links19_brackets_period_after (tests.test_ctokenizer.TestCTokenizer) a period after a bracket-enclosed link that is included ... ok test_external_links20_brackets_punct_after (tests.test_ctokenizer.TestCTokenizer) punctuation after a bracket-enclosed link that are included ... ok test_external_links21_brackets_close_paren_after_included (tests.test_ctokenizer.TestCTokenizer) a closing parenthesis after a bracket-enclosed link that is included ... ok test_external_links22_brackets_close_paren_after_included_2 (tests.test_ctokenizer.TestCTokenizer) a closing parenthesis after a bracket-enclosed link that is also included ... ok test_external_links23_brackets_open_bracket_inside (tests.test_ctokenizer.TestCTokenizer) an open bracket inside a bracket-enclosed link that is also included ... ok test_external_links24_adjacent_space (tests.test_ctokenizer.TestCTokenizer) two free links separated by a space ... ok test_external_links25_adjacent_newline (tests.test_ctokenizer.TestCTokenizer) two free links separated by a newline ... ok test_external_links26_adjacent_close_bracket (tests.test_ctokenizer.TestCTokenizer) two free links separated by a close bracket ... ok test_external_links27_html_entity_in_url (tests.test_ctokenizer.TestCTokenizer) a HTML entity parsed correctly inside a free link ... ok test_external_links28_template_in_url (tests.test_ctokenizer.TestCTokenizer) a template parsed correctly inside a free link ... ok test_external_links29_argument_in_url (tests.test_ctokenizer.TestCTokenizer) an argument parsed correctly inside a free link ... ok test_external_links30_wikilink_in_url (tests.test_ctokenizer.TestCTokenizer) a wikilink that destroys a free link ... ok test_external_links31_external_link_in_url (tests.test_ctokenizer.TestCTokenizer) a bracketed link that destroys a free link ... ok test_external_links32_spaces_padding (tests.test_ctokenizer.TestCTokenizer) spaces padding a free link ... ok test_external_links33_text_and_spaces_padding (tests.test_ctokenizer.TestCTokenizer) text and spaces padding a free link ... ok test_external_links34_template_before (tests.test_ctokenizer.TestCTokenizer) a template before a free link ... ok test_external_links35_spaces_padding_no_slashes (tests.test_ctokenizer.TestCTokenizer) spaces padding a free link with no slashes after the colon ... ok test_external_links36_text_and_spaces_padding_no_slashes (tests.test_ctokenizer.TestCTokenizer) text and spaces padding a free link with no slashes after the colon ... ok test_external_links37_template_before_no_slashes (tests.test_ctokenizer.TestCTokenizer) a template before a free link with no slashes after the colon ... ok test_external_links38_no_slashes (tests.test_ctokenizer.TestCTokenizer) a free link with no slashes after the colon ... ok test_external_links39_slashes_optional (tests.test_ctokenizer.TestCTokenizer) a free link using a scheme that doesn't need slashes, but has them anyway ... ok test_external_links40_short (tests.test_ctokenizer.TestCTokenizer) a very short free link ... ok test_external_links41_slashes_missing (tests.test_ctokenizer.TestCTokenizer) slashes missing from a free link with a scheme that requires them ... ok test_external_links42_no_scheme_but_slashes (tests.test_ctokenizer.TestCTokenizer) no scheme in a free link, but slashes (protocol-relative free links are not supported) ... ok test_external_links43_no_scheme_but_colon (tests.test_ctokenizer.TestCTokenizer) no scheme in a free link, but a colon ... ok test_external_links44_no_scheme_but_colon_and_slashes (tests.test_ctokenizer.TestCTokenizer) no scheme in a free link, but a colon and slashes ... ok test_external_links45_fake_scheme_no_slashes (tests.test_ctokenizer.TestCTokenizer) a nonexistent scheme in a free link, without slashes ... ok test_external_links46_fake_scheme_slashes (tests.test_ctokenizer.TestCTokenizer) a nonexistent scheme in a free link, with slashes ... ok test_external_links47_fake_scheme_brackets_no_slashes (tests.test_ctokenizer.TestCTokenizer) a nonexistent scheme in a bracketed link, without slashes ... ok test_external_links48_fake_scheme_brackets_slashes (tests.test_ctokenizer.TestCTokenizer) #=a nonexistent scheme in a bracketed link, with slashes ... ok test_external_links49_interrupted_scheme (tests.test_ctokenizer.TestCTokenizer) an otherwise valid scheme with something in the middle of it, in a free link ... ok test_external_links50_interrupted_scheme_brackets (tests.test_ctokenizer.TestCTokenizer) an otherwise valid scheme with something in the middle of it, in a bracketed link ... ok test_external_links51_no_slashes_brackets (tests.test_ctokenizer.TestCTokenizer) no slashes after the colon in a bracketed link ... ok test_external_links52_space_before_no_slashes_brackets (tests.test_ctokenizer.TestCTokenizer) a space before a bracketed link with no slashes after the colon ... ok test_external_links53_slashes_optional_brackets (tests.test_ctokenizer.TestCTokenizer) a bracketed link using a scheme that doesn't need slashes, but has them anyway ... ok test_external_links54_short_brackets (tests.test_ctokenizer.TestCTokenizer) a very short link in brackets ... ok test_external_links55_slashes_missing_brackets (tests.test_ctokenizer.TestCTokenizer) slashes missing from a scheme that requires them in a bracketed link ... ok test_external_links56_protcol_relative (tests.test_ctokenizer.TestCTokenizer) a protocol-relative link (in brackets) ... ok test_external_links57_scheme_missing_but_colon_brackets (tests.test_ctokenizer.TestCTokenizer) scheme missing from a bracketed link, but with a colon ... ok test_external_links58_scheme_missing_but_colon_slashes_brackets (tests.test_ctokenizer.TestCTokenizer) scheme missing from a bracketed link, but with a colon and slashes ... ok test_external_links59_unclosed_protocol_relative (tests.test_ctokenizer.TestCTokenizer) an unclosed protocol-relative bracketed link ... ok test_external_links60_space_before_protcol_relative (tests.test_ctokenizer.TestCTokenizer) a space before a protocol-relative bracketed link ... ok test_external_links61_unclosed_just_scheme (tests.test_ctokenizer.TestCTokenizer) an unclosed bracketed link, ending after the scheme ... ok test_external_links62_unclosed_scheme_colon (tests.test_ctokenizer.TestCTokenizer) an unclosed bracketed link, ending after the colon ... ok test_external_links63_unclosed_scheme_colon_slashes (tests.test_ctokenizer.TestCTokenizer) an unclosed bracketed link, ending after the slashes ... ok test_external_links64_incomplete_bracket (tests.test_ctokenizer.TestCTokenizer) just an open bracket ... ok test_external_links65_incomplete_scheme_colon (tests.test_ctokenizer.TestCTokenizer) a free link with just a scheme and a colon ... ok test_external_links66_incomplete_scheme_colon_slashes (tests.test_ctokenizer.TestCTokenizer) a free link with just a scheme, colon, and slashes ... ok test_external_links67_brackets_scheme_but_no_url (tests.test_ctokenizer.TestCTokenizer) brackets around a scheme and a colon ... ok test_external_links68_brackets_scheme_slashes_but_no_url (tests.test_ctokenizer.TestCTokenizer) brackets around a scheme, colon, and slashes ... ok test_external_links69_brackets_scheme_title_but_no_url (tests.test_ctokenizer.TestCTokenizer) brackets around a scheme, colon, and slashes, with a title ... ok test_headings01_level_1 (tests.test_ctokenizer.TestCTokenizer) a basic level-1 heading ... ok test_headings02_level_2 (tests.test_ctokenizer.TestCTokenizer) a basic level-2 heading ... ok test_headings03_level_3 (tests.test_ctokenizer.TestCTokenizer) a basic level-3 heading ... ok test_headings04_level_4 (tests.test_ctokenizer.TestCTokenizer) a basic level-4 heading ... ok test_headings05_level_5 (tests.test_ctokenizer.TestCTokenizer) a basic level-5 heading ... ok test_headings06_level_6 (tests.test_ctokenizer.TestCTokenizer) a basic level-6 heading ... ok test_headings07_level_7 (tests.test_ctokenizer.TestCTokenizer) a level-6 heading that pretends to be a level-7 heading ... ok test_headings08_level_3_2 (tests.test_ctokenizer.TestCTokenizer) a level-2 heading that pretends to be a level-3 heading ... ok test_headings09_level_4_6 (tests.test_ctokenizer.TestCTokenizer) a level-4 heading that pretends to be a level-6 heading ... ok test_headings10_newline_before (tests.test_ctokenizer.TestCTokenizer) a heading that starts after a newline ... ok test_headings11_text_after (tests.test_ctokenizer.TestCTokenizer) text on the same line after ... ok test_headings12_invalid_text_before (tests.test_ctokenizer.TestCTokenizer) invalid headings: text on the same line before ... ok test_headings13_invalid_newline_middle (tests.test_ctokenizer.TestCTokenizer) invalid headings: newline in the middle ... ok test_headings14_invalid_newline_end (tests.test_ctokenizer.TestCTokenizer) invalid headings: newline in the middle ... ok test_headings15_invalid_nesting (tests.test_ctokenizer.TestCTokenizer) invalid headings: attempts at nesting ... ok test_headings16_incomplete (tests.test_ctokenizer.TestCTokenizer) a heading that starts but doesn't finish ... ok test_html_entities01_named (tests.test_ctokenizer.TestCTokenizer) a basic named HTML entity ... ok test_html_entities02_numeric_decimal (tests.test_ctokenizer.TestCTokenizer) a basic decimal HTML entity ... ok test_html_entities03_numeric_hexadecimal_x (tests.test_ctokenizer.TestCTokenizer) a basic hexadecimal HTML entity, using 'x' as a signal ... ok test_html_entities04_numeric_hexadecimal_X (tests.test_ctokenizer.TestCTokenizer) a basic hexadecimal HTML entity, using 'X' as a signal ... ok test_html_entities05_numeric_decimal_max (tests.test_ctokenizer.TestCTokenizer) the maximum acceptable decimal numeric entity ... ok test_html_entities06_numeric_hex_max (tests.test_ctokenizer.TestCTokenizer) the maximum acceptable hexadecimal numeric entity ... ok test_html_entities07_numeric_zeros (tests.test_ctokenizer.TestCTokenizer) zeros accepted at the beginning of a numeric entity ... ok test_html_entities08_numeric_hex_zeros (tests.test_ctokenizer.TestCTokenizer) zeros accepted at the beginning of a hex numeric entity ... ok test_html_entities09_invalid_named_too_long (tests.test_ctokenizer.TestCTokenizer) a named entity that is too long ... ok test_html_entities10_invalid_named_undefined (tests.test_ctokenizer.TestCTokenizer) a named entity that doesn't exist ... ok test_html_entities11_invalid_named_nonascii (tests.test_ctokenizer.TestCTokenizer) a named entity with non-ASCII characters ... ok test_html_entities12_invalid_numeric_out_of_range_1 (tests.test_ctokenizer.TestCTokenizer) a numeric entity that is out of range: < 1 ... ok test_html_entities13_invalid_numeric_out_of_range_2 (tests.test_ctokenizer.TestCTokenizer) a hex numeric entity that is out of range: < 1 ... ok test_html_entities14_invalid_numeric_out_of_range_3 (tests.test_ctokenizer.TestCTokenizer) a numeric entity that is out of range: > 0x10FFFF ... ok test_html_entities15_invalid_numeric_out_of_range_4 (tests.test_ctokenizer.TestCTokenizer) a hex numeric entity that is out of range: > 0x10FFFF ... ok test_html_entities16_invalid_partial_amp (tests.test_ctokenizer.TestCTokenizer) invalid entities: just an ampersand ... ok test_html_entities17_invalid_partial_amp_semicolon (tests.test_ctokenizer.TestCTokenizer) invalid entities: an ampersand and semicolon ... ok test_html_entities18_invalid_partial_amp_pound (tests.test_ctokenizer.TestCTokenizer) invalid entities: just an ampersand, pound sign ... ok test_html_entities19_invalid_partial_amp_pound_x (tests.test_ctokenizer.TestCTokenizer) invalid entities: just an ampersand, pound sign, x ... ok test_html_entities20_invalid_partial_amp_pound_semicolon (tests.test_ctokenizer.TestCTokenizer) invalid entities: an ampersand, pound sign, and semicolon ... ok test_html_entities21_invalid_partial_amp_pound_x_semicolon (tests.test_ctokenizer.TestCTokenizer) invalid entities: an ampersand, pound sign, x, and semicolon ... ok test_html_entities22_invalid_partial_amp_pound_numbers (tests.test_ctokenizer.TestCTokenizer) invalid entities: an ampersand, pound sign, numbers ... ok test_html_entities23_invalid_partial_amp_pound_x_semicolon (tests.test_ctokenizer.TestCTokenizer) invalid entities: an ampersand, pound sign, and x ... ok test_integration01_empty (tests.test_ctokenizer.TestCTokenizer) sanity check that parsing an empty string yields nothing ... ok test_integration02_template_argument_mix (tests.test_ctokenizer.TestCTokenizer) an ambiguous mix of templates and arguments ... ok test_integration03_link_in_template_name (tests.test_ctokenizer.TestCTokenizer) a wikilink inside a template name, which breaks the template ... ok test_integration04_rich_heading (tests.test_ctokenizer.TestCTokenizer) a heading with templates/wikilinks in it ... ok test_integration05_html_entity_with_template (tests.test_ctokenizer.TestCTokenizer) a HTML entity with a template embedded inside ... ok test_integration06_html_entity_with_comment (tests.test_ctokenizer.TestCTokenizer) a HTML entity with a comment embedded inside ... ok test_integration07_rich_tags (tests.test_ctokenizer.TestCTokenizer) a HTML tag with tons of other things in it ... ok test_integration08_wildcard (tests.test_ctokenizer.TestCTokenizer) a wildcard assortment of various things ... ok test_integration09_wildcard_redux (tests.test_ctokenizer.TestCTokenizer) an even wilder assortment of various things ... ok test_integration10_link_inside_dl (tests.test_ctokenizer.TestCTokenizer) an external link inside a def list, such that the external link is parsed ... ok test_integration11_link_inside_dl_2 (tests.test_ctokenizer.TestCTokenizer) an external link inside a def list, such that the external link is not parsed ... ok test_integration12_link_inside_template (tests.test_ctokenizer.TestCTokenizer) an external link nested inside a template, before the end ... ok test_integration13_link_inside_template_2 (tests.test_ctokenizer.TestCTokenizer) an external link nested inside a template, before a separator ... ok test_integration14_link_inside_template_3 (tests.test_ctokenizer.TestCTokenizer) an external link nested inside a template, before an equal sign ... ok test_integration15_link_inside_argument (tests.test_ctokenizer.TestCTokenizer) an external link nested inside an argument ... ok test_integration16_link_inside_heading (tests.test_ctokenizer.TestCTokenizer) an external link nested inside a heading ... ok test_integration17_link_inside_tag_body (tests.test_ctokenizer.TestCTokenizer) an external link nested inside the body of a tag ... ok test_integration18_link_inside_tag_style (tests.test_ctokenizer.TestCTokenizer) an external link nested inside style tags ... ok test_integration19_style_tag_inside_link (tests.test_ctokenizer.TestCTokenizer) style tags disrupting an external link ... ok test_integration20_comment_inside_link (tests.test_ctokenizer.TestCTokenizer) an HTML comment inside an external link ... ok test_integration21_bracketed_link_inside_template (tests.test_ctokenizer.TestCTokenizer) a bracketed external link nested inside a template, before the end ... ok test_integration22_comment_inside_bracketed_link (tests.test_ctokenizer.TestCTokenizer) an HTML comment inside a bracketed external link ... ok test_integration23_wikilink_inside_external_link (tests.test_ctokenizer.TestCTokenizer) a wikilink inside an external link, which the parser considers valid (see issue #61) ... ok test_integration24_external_link_inside_wikilink (tests.test_ctokenizer.TestCTokenizer) an external link inside a wikilink, valid in the case of images (see issue #62) ... ok test_integration25_external_link_inside_wikilink_brackets (tests.test_ctokenizer.TestCTokenizer) an external link with brackets inside a wikilink ... ok test_integration26_external_link_inside_wikilink_title (tests.test_ctokenizer.TestCTokenizer) an external link inside a wikilink title, which is not parsed ... ok test_integration27_italics_inside_external_link_inside_incomplete_list (tests.test_ctokenizer.TestCTokenizer) italic text inside an external link inside an incomplete list ... ok test_integration28_nodes_inside_external_link_after_punct (tests.test_ctokenizer.TestCTokenizer) various complex nodes inside an external link following punctuation ... ok test_integration29_newline_and_comment_in_template_name (tests.test_ctokenizer.TestCTokenizer) a template name containing a newline followed by a comment ... ok test_integration30_newline_and_comment_in_template_name_2 (tests.test_ctokenizer.TestCTokenizer) a template name containing a newline followed by a comment ... ok test_integration31_newline_and_comment_in_template_name_3 (tests.test_ctokenizer.TestCTokenizer) a template name containing a newline followed by a comment ... ok test_integration32_newline_and_comment_in_template_name_4 (tests.test_ctokenizer.TestCTokenizer) a template name containing a newline followed by a comment ... ok test_integration33_newline_and_comment_in_template_name_5 (tests.test_ctokenizer.TestCTokenizer) a template name containing a newline followed by a comment ... ok test_integration34_newline_and_comment_in_template_name_6 (tests.test_ctokenizer.TestCTokenizer) a template name containing a newline followed by a comment ... ok test_integration35_newline_and_comment_in_template_name_7 (tests.test_ctokenizer.TestCTokenizer) a template name containing a newline followed by a comment ... ok test_integration36_newline_and_comment_in_template_name_8 (tests.test_ctokenizer.TestCTokenizer) a template name containing a newline followed by a comment ... ok test_integration37_tag_in_link_title (tests.test_ctokenizer.TestCTokenizer) HTML tags are invalid in link titles, even when complete ... ok test_integration38_tag_in_template_name (tests.test_ctokenizer.TestCTokenizer) HTML tags are invalid in template names, even when complete ... ok test_integration39_tag_in_link_text (tests.test_ctokenizer.TestCTokenizer) HTML tags are valid in link text ... ok test_integration40_comment_in_link_title (tests.test_ctokenizer.TestCTokenizer) comments are valid in link titles ... ok test_integration41_incomplete_comment_in_link_title (tests.test_ctokenizer.TestCTokenizer) incomplete comments are invalid in link titles ... ok test_integration42_incomplete_comment_in_link_title_2 (tests.test_ctokenizer.TestCTokenizer) incomplete comments are invalid in link titles ... ok test_integration43_incomplete_comment_in_link_title_3 (tests.test_ctokenizer.TestCTokenizer) incomplete comments are invalid in link titles ... ok test_integration44_incomplete_comment_in_link_title_4 (tests.test_ctokenizer.TestCTokenizer) incomplete comments are invalid in link titles ... ok test_integration45_incomplete_comment_in_link_title_5 (tests.test_ctokenizer.TestCTokenizer) incomplete comments are invalid in link titles ... ok test_integration46_incomplete_comment_in_link_title_6 (tests.test_ctokenizer.TestCTokenizer) incomplete comments are invalid in link titles ... ok test_integration47_wikilink_to_external_link_fallback (tests.test_ctokenizer.TestCTokenizer) an external link enclosed in an extra pair of brackets (see issue #120) ... ok test_integration48_wikilink_to_external_link_fallback_2 (tests.test_ctokenizer.TestCTokenizer) an external link enclosed in an extra pair of brackets (see issue #120) ... ok test_integration49_tables_in_templates (tests.test_ctokenizer.TestCTokenizer) catch error handling mistakes when wikitables are inside templates ... ok test_integration50_tables_in_templates_2 (tests.test_ctokenizer.TestCTokenizer) catch error handling mistakes when wikitables are inside templates ... ok test_integration51_many_invalid_nested_tags (tests.test_ctokenizer.TestCTokenizer) many unending nested tags that should be treated as plain text, followed by valid wikitext (see issues #42, #183) ... ok test_tables01_empty_table (tests.test_ctokenizer.TestCTokenizer) parsing an empty table ... ok test_tables02_inline_table (tests.test_ctokenizer.TestCTokenizer) tables with a close on the same line are not valid ... ok test_tables03_no_table_close_simple (tests.test_ctokenizer.TestCTokenizer) no table close on inline table ... ok test_tables04_no_table_close_newline (tests.test_ctokenizer.TestCTokenizer) no table close with a newline ... ok test_tables05_no_table_close_inside_cell (tests.test_ctokenizer.TestCTokenizer) no table close while inside of a cell ... ok test_tables06_no_table_close_inside_cell_after_newline (tests.test_ctokenizer.TestCTokenizer) no table close while inside of a cell after a newline ... ok test_tables07_no_table_close_inside_cell_with_attributes (tests.test_ctokenizer.TestCTokenizer) no table close while inside of a cell with attributes ... ok test_tables08_no_table_close_inside_row (tests.test_ctokenizer.TestCTokenizer) no table close while inside of a row ... ok test_tables09_no_table_close_inside_row_after_newline (tests.test_ctokenizer.TestCTokenizer) no table close while inside of a row after a newline ... ok test_tables10_no_table_close_row_and_cell (tests.test_ctokenizer.TestCTokenizer) no table close while inside a cell inside a row ... ok test_tables11_no_table_close_attributes (tests.test_ctokenizer.TestCTokenizer) don't parse attributes as attributes if the table doesn't exist ... ok test_tables12_no_table_close_unclosed_attributes (tests.test_ctokenizer.TestCTokenizer) don't parse unclosed attributes if the table doesn't exist ... ok test_tables13_no_table_close_row_attributes (tests.test_ctokenizer.TestCTokenizer) don't parse row attributes as attributes if the table doesn't exist ... ok test_tables14_no_table_close_cell (tests.test_ctokenizer.TestCTokenizer) don't parse cells if the table doesn't close ... ok test_tables15_crazy_no_table_close (tests.test_ctokenizer.TestCTokenizer) lots of opened wiki syntax without closes ... ok test_tables16_leading_whitespace_table (tests.test_ctokenizer.TestCTokenizer) handle leading whitespace for a table ... ok test_tables17_whitespace_after_table (tests.test_ctokenizer.TestCTokenizer) handle whitespace after a table close ... ok test_tables18_different_whitespace_after_table (tests.test_ctokenizer.TestCTokenizer) handle spaces after a table close ... ok test_tables19_characters_after_table (tests.test_ctokenizer.TestCTokenizer) handle characters after a table close ... ok test_tables20_characters_after_inline_table (tests.test_ctokenizer.TestCTokenizer) handle characters after an inline table close ... ok test_tables21_leading_characters_table (tests.test_ctokenizer.TestCTokenizer) don't parse as a table when leading characters are not newline or whitespace ... ok test_tables22_table_row_simple (tests.test_ctokenizer.TestCTokenizer) simple table row ... ok test_tables23_table_row_multiple (tests.test_ctokenizer.TestCTokenizer) simple table row ... ok test_tables24_table_cell_simple (tests.test_ctokenizer.TestCTokenizer) simple table cell ... ok test_tables25_table_cell_inline (tests.test_ctokenizer.TestCTokenizer) multiple inline table cells ... ok test_tables26_table_cell_multiple (tests.test_ctokenizer.TestCTokenizer) multiple table cells (non-inline) ... ok test_tables27_table_header_simple (tests.test_ctokenizer.TestCTokenizer) simple header cell ... ok test_tables28_table_header_inline (tests.test_ctokenizer.TestCTokenizer) multiple inline header cells ... ok test_tables29_table_header_multiple (tests.test_ctokenizer.TestCTokenizer) multiple table header cells (non-inline) ... ok test_tables30_nested_cells_and_rows (tests.test_ctokenizer.TestCTokenizer) combination of cells and rows in a table ... ok test_tables31_table_cell_fake_close (tests.test_ctokenizer.TestCTokenizer) looks like a table close but is not ... ok test_tables32_table_cell_more_fake_close (tests.test_ctokenizer.TestCTokenizer) looks like a table close but is not ... ok test_tables33_table_cell_extra_close (tests.test_ctokenizer.TestCTokenizer) process second close as text ... ok test_tables34_nowiki_inside_table (tests.test_ctokenizer.TestCTokenizer) nowiki handles pipe characters in tables ... ok test_tables35_table_text_outside_cell (tests.test_ctokenizer.TestCTokenizer) parse text inside table but outside of a cell ... ok test_tables36_no_table_cell_with_leading_characters (tests.test_ctokenizer.TestCTokenizer) fail to create a table cell when there are leading non-whitespace characters ... ok test_tables37_no_table_row_with_leading_characters (tests.test_ctokenizer.TestCTokenizer) fail to create a table row when there are leading non-whitespace characters ... ok test_tables38_template_inside_table_cell (tests.test_ctokenizer.TestCTokenizer) template within table cell ... ok test_tables39_table_cell_attributes (tests.test_ctokenizer.TestCTokenizer) parse table cell style attributes ... ok test_tables40_table_cell_empty_attributes (tests.test_ctokenizer.TestCTokenizer) parse table cell with style markers but no attributes ... ok test_tables41_table_cell_with_dash (tests.test_ctokenizer.TestCTokenizer) parse a situation in which a cell line looks like a row line ... ok test_tables42_table_cell_attributes_quote_with_pipe (tests.test_ctokenizer.TestCTokenizer) pipe inside an attribute quote should still be used as a style separator ... ok test_tables43_table_cell_attributes_name_with_pipe (tests.test_ctokenizer.TestCTokenizer) pipe inside an attribute name should still be used as a style separator ... ok test_tables44_table_cell_attributes_pipe_after_equals (tests.test_ctokenizer.TestCTokenizer) pipe inside an attribute should still be used as a style separator after an equals ... ok test_tables45_table_cell_attributes_templates (tests.test_ctokenizer.TestCTokenizer) pipe inside attributes shouldn't be style separator ... ok test_tables46_header_cell_attributes (tests.test_ctokenizer.TestCTokenizer) parse header cell style attributes ... ok test_tables47_inline_cell_attributes (tests.test_ctokenizer.TestCTokenizer) parse cell style attributes of inline cells ... ok test_tables48_table_row_attributes (tests.test_ctokenizer.TestCTokenizer) parse table row style attributes ... ok test_tables49_table_row_attributes_crazy_whitespace (tests.test_ctokenizer.TestCTokenizer) parse table row style attributes with different whitespace ... ok test_tables50_table_attributes (tests.test_ctokenizer.TestCTokenizer) parse table style attributes ... ok test_tables51_inline_table_attributes (tests.test_ctokenizer.TestCTokenizer) handle attributes in inline tables ... ok test_tables52_table_incorrect_attributes (tests.test_ctokenizer.TestCTokenizer) parse incorrect table style attributes ... ok test_tables53_templates_in_table_attribute (tests.test_ctokenizer.TestCTokenizer) templates in the attributes of a table, after the start ... ok test_tables54_templates_in_table_attribute_2 (tests.test_ctokenizer.TestCTokenizer) templates in the attributes of a table, after the start ... ok test_tables55_inappropriate_marker_at_line_start (tests.test_ctokenizer.TestCTokenizer) an inappropriate marker (a right bracket) at the start of a line in the table ... ok test_tables56_fake_close_near_start (tests.test_ctokenizer.TestCTokenizer) a fake closing token at the end of the first line in the table ... ok test_tables57_fake_close_near_start_2 (tests.test_ctokenizer.TestCTokenizer) a fake closing token at the end of the first line in the table ... ok test_tables58_junk_after_table_start (tests.test_ctokenizer.TestCTokenizer) ignore more junk on the first line of the table ... ok test_tables59_junk_after_table_row (tests.test_ctokenizer.TestCTokenizer) ignore junk on the first line of a table row ... ok test_tags01_basic (tests.test_ctokenizer.TestCTokenizer) a basic tag with an open and close ... ok test_tags02_basic_selfclosing (tests.test_ctokenizer.TestCTokenizer) a basic self-closing tag ... ok test_tags03_content (tests.test_ctokenizer.TestCTokenizer) a tag with some content in the middle ... ok test_tags04_padded_open (tests.test_ctokenizer.TestCTokenizer) a tag with some padding in the open tag ... ok test_tags05_padded_close (tests.test_ctokenizer.TestCTokenizer) a tag with some padding in the close tag ... ok test_tags06_padded_selfclosing (tests.test_ctokenizer.TestCTokenizer) a self-closing tag with padding ... ok test_tags07_attribute (tests.test_ctokenizer.TestCTokenizer) a tag with a single attribute ... ok test_tags08_attribute_value (tests.test_ctokenizer.TestCTokenizer) a tag with a single attribute with a value ... ok test_tags09_attribute_quoted (tests.test_ctokenizer.TestCTokenizer) a tag with a single quoted attribute ... ok test_tags10_attribute_single_quoted (tests.test_ctokenizer.TestCTokenizer) a tag with a single singly-quoted attribute ... ok test_tags11_attribute_hyphen (tests.test_ctokenizer.TestCTokenizer) a tag with a single attribute, containing a hyphen ... ok test_tags12_attribute_quoted_hyphen (tests.test_ctokenizer.TestCTokenizer) a tag with a single quoted attribute, containing a hyphen ... ok test_tags13_attribute_selfclosing (tests.test_ctokenizer.TestCTokenizer) a self-closing tag with a single attribute ... ok test_tags14_attribute_selfclosing_value (tests.test_ctokenizer.TestCTokenizer) a self-closing tag with a single attribute with a value ... ok test_tags15_attribute_selfclosing_value_quoted (tests.test_ctokenizer.TestCTokenizer) a self-closing tag with a single quoted attribute ... ok test_tags16_nested_tag (tests.test_ctokenizer.TestCTokenizer) a tag nested within the attributes of another ... ok test_tags17_nested_tag_quoted (tests.test_ctokenizer.TestCTokenizer) a tag nested within the attributes of another, quoted ... ok test_tags18_nested_troll_tag (tests.test_ctokenizer.TestCTokenizer) a bogus tag that appears to be nested within the attributes of another ... ok test_tags19_nested_troll_tag_quoted (tests.test_ctokenizer.TestCTokenizer) a bogus tag that appears to be nested within the attributes of another, quoted ... ok test_tags20_nested_tag_selfclosing (tests.test_ctokenizer.TestCTokenizer) a tag nested within the attributes of another; outer tag implicitly self-closing ... ok test_tags21_invalid_space_begin_open (tests.test_ctokenizer.TestCTokenizer) invalid tag: a space at the beginning of the open tag ... ok test_tags22_invalid_space_begin_close (tests.test_ctokenizer.TestCTokenizer) invalid tag: a space at the beginning of the close tag ... ok test_tags23_valid_space_end (tests.test_ctokenizer.TestCTokenizer) valid tag: spaces at the ends of both the open and close tags ... ok test_tags24_invalid_template_ends (tests.test_ctokenizer.TestCTokenizer) invalid tag: a template at the ends of both the open and close tags ... ok test_tags25_invalid_template_ends_nospace (tests.test_ctokenizer.TestCTokenizer) invalid tag: a template at the ends of both the open and close tags, without spacing ... ok test_tags26_valid_template_end_open (tests.test_ctokenizer.TestCTokenizer) valid tag: a template at the end of the open tag ... ok test_tags27_valid_template_end_open_space_end_close (tests.test_ctokenizer.TestCTokenizer) valid tag: a template at the end of the open tag; whitespace at the end of the close tag ... ok test_tags28_invalid_template_end_open_nospace (tests.test_ctokenizer.TestCTokenizer) invalid tag: a template at the end of the open tag, without spacing ... ok test_tags29_invalid_template_start_close (tests.test_ctokenizer.TestCTokenizer) invalid tag: a template at the beginning of the close tag ... ok test_tags30_invalid_template_start_open (tests.test_ctokenizer.TestCTokenizer) invalid tag: a template at the beginning of the open tag ... ok test_tags31_unclosed_quote (tests.test_ctokenizer.TestCTokenizer) a quoted attribute that is never closed ... ok test_tags32_fake_quote (tests.test_ctokenizer.TestCTokenizer) a fake quoted attribute ... ok test_tags33_fake_quote_complex (tests.test_ctokenizer.TestCTokenizer) a fake quoted attribute, with spaces and templates and links ... ok test_tags34_quotes_in_quotes (tests.test_ctokenizer.TestCTokenizer) singly-quoted text inside a doubly-quoted attribute ... ok test_tags35_quotes_in_quotes_2 (tests.test_ctokenizer.TestCTokenizer) doubly-quoted text inside a singly-quoted attribute ... ok test_tags36_quotes_in_quotes_3 (tests.test_ctokenizer.TestCTokenizer) doubly-quoted text inside a singly-quoted attribute, with backslashes ... ok test_tags37_incomplete_lbracket (tests.test_ctokenizer.TestCTokenizer) incomplete tags: just a left bracket ... ok test_tags38_incomplete_lbracket_junk (tests.test_ctokenizer.TestCTokenizer) incomplete tags: just a left bracket, surrounded by stuff ... ok test_tags39_incomplete_unclosed_open (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed open tag ... ok test_tags40_incomplete_unclosed_open_space (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed open tag, space ... ok test_tags41_incomplete_unclosed_open_unnamed_attr (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed open tag, unnamed attribute ... ok test_tags42_incomplete_unclosed_open_attr_equals (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed open tag, attribute, equal sign ... ok test_tags43_incomplete_unclosed_open_attr_equals_quoted (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed open tag, attribute, equal sign, quote ... ok test_tags44_incomplete_unclosed_open_attr (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed open tag, attribute with a key/value ... ok test_tags45_incomplete_unclosed_open_attr_quoted (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed open tag, attribute with a key/value, quoted ... ok test_tags46_incomplete_open (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag ... ok test_tags47_incomplete_open_unnamed_attr (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, unnamed attribute ... ok test_tags48_incomplete_open_attr_equals (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, attribute, equal sign ... ok test_tags49_incomplete_open_attr (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, attribute with a key/value ... ok test_tags50_incomplete_open_attr_quoted (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, attribute with a key/value, quoted ... ok test_tags51_incomplete_open_text (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, text ... ok test_tags52_incomplete_open_attr_text (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, attribute with a key/value, text ... ok test_tags53_incomplete_open_text_lbracket (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, text, left open bracket ... ok test_tags54_incomplete_open_text_lbracket_slash (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, text, left bracket, slash ... ok test_tags55_incomplete_open_text_unclosed_close (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, text, unclosed close ... ok test_tags56_incomplete_open_text_wrong_close (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, text, wrong close ... ok test_tags57_incomplete_unclosed_close (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed close tag ... ok test_tags58_incomplete_unclosed_close_text (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed close tag, with text ... ok test_tags59_incomplete_close (tests.test_ctokenizer.TestCTokenizer) incomplete tags: a close tag ... ok test_tags60_incomplete_no_tag_name_open (tests.test_ctokenizer.TestCTokenizer) incomplete tags: no tag name within brackets; just an open ... ok test_tags61_incomplete_no_tag_name_selfclosing (tests.test_ctokenizer.TestCTokenizer) incomplete tags: no tag name within brackets; self-closing ... ok test_tags62_incomplete_no_tag_name_open_close (tests.test_ctokenizer.TestCTokenizer) incomplete tags: no tag name within brackets; open and close ... ok test_tags63_backslash_premature_before (tests.test_ctokenizer.TestCTokenizer) a backslash before a quote before a space ... ok test_tags64_backslash_premature_after (tests.test_ctokenizer.TestCTokenizer) a backslash before a quote after a space ... ok test_tags65_backslash_premature_middle (tests.test_ctokenizer.TestCTokenizer) a backslash before a quote in the middle of a word ... ok test_tags66_backslash_adjacent (tests.test_ctokenizer.TestCTokenizer) escaped quotes next to unescaped quotes ... ok test_tags67_backslash_endquote (tests.test_ctokenizer.TestCTokenizer) backslashes before the end quote, causing the attribute to become unquoted ... ok test_tags68_backslash_double (tests.test_ctokenizer.TestCTokenizer) two adjacent backslashes, which do *not* affect the quote ... ok test_tags69_backslash_triple (tests.test_ctokenizer.TestCTokenizer) three adjacent backslashes, which do *not* affect the quote ... ok test_tags70_backslash_unaffecting (tests.test_ctokenizer.TestCTokenizer) backslashes near quotes, but not immediately adjacent, thus having no effect ... ok test_tags71_unparsable (tests.test_ctokenizer.TestCTokenizer) a tag that should not be put through the normal parser ... ok test_tags72_unparsable_complex (tests.test_ctokenizer.TestCTokenizer) a tag that should not be put through the normal parser; lots of stuff inside ... ok test_tags73_unparsable_attributed (tests.test_ctokenizer.TestCTokenizer) a tag that should not be put through the normal parser; parsed attributes ... ok test_tags74_unparsable_incomplete (tests.test_ctokenizer.TestCTokenizer) a tag that should not be put through the normal parser; incomplete ... ok test_tags75_unparsable_entity (tests.test_ctokenizer.TestCTokenizer) a HTML entity inside unparsable text is still parsed ... ok test_tags76_unparsable_entity_incomplete (tests.test_ctokenizer.TestCTokenizer) an incomplete HTML entity inside unparsable text ... ok test_tags77_unparsable_entity_incomplete_2 (tests.test_ctokenizer.TestCTokenizer) an incomplete HTML entity inside unparsable text ... ok test_tags78_single_open_close (tests.test_ctokenizer.TestCTokenizer) a tag that supports being single; both an open and a close tag ... ok test_tags79_single_open (tests.test_ctokenizer.TestCTokenizer) a tag that supports being single; just an open tag ... ok test_tags80_single_selfclose (tests.test_ctokenizer.TestCTokenizer) a tag that supports being single; a self-closing tag ... ok test_tags81_single_close (tests.test_ctokenizer.TestCTokenizer) a tag that supports being single; just a close tag ... ok test_tags82_single_only_open_close (tests.test_ctokenizer.TestCTokenizer) a tag that can only be single; both an open and a close tag ... ok test_tags83_single_only_open (tests.test_ctokenizer.TestCTokenizer) a tag that can only be single; just an open tag ... ok test_tags84_single_only_selfclose (tests.test_ctokenizer.TestCTokenizer) a tag that can only be single; a self-closing tag ... ok test_tags85_single_only_close (tests.test_ctokenizer.TestCTokenizer) a tag that can only be single; just a close tag ... ok test_tags86_single_only_double (tests.test_ctokenizer.TestCTokenizer) a tag that can only be single; a tag with backslashes at the beginning and end ... ok test_tags87_single_only_close_attribute (tests.test_ctokenizer.TestCTokenizer) a tag that can only be single; presented as a close tag with an attribute ... ok test_tags88_capitalization (tests.test_ctokenizer.TestCTokenizer) caps should be ignored within tag names ... ok test_tags89_unparsable_incomplete_close (tests.test_ctokenizer.TestCTokenizer) an unparsable tag with an incomplete close afterwards ... ok test_tags90_unparsable_with_intermediates (tests.test_ctokenizer.TestCTokenizer) an unparsable tag with intermediate tags inside of it ... ok test_tags91_unparsable_with_intermediates_normalize (tests.test_ctokenizer.TestCTokenizer) an unparsable tag with intermediate tags inside of it, requiring normalization ... ok test_tags92_non_ascii_open (tests.test_ctokenizer.TestCTokenizer) a open tag containing non-ASCII characters ... ok test_tags93_non_ascii_full (tests.test_ctokenizer.TestCTokenizer) an open/close tag pair containing non-ASCII characters ... ok test_tags94_single_nested_selfclosing (tests.test_ctokenizer.TestCTokenizer) a single (unpaired) tag with a self-closing tag in the middle (see issue #147) ... ok test_tags_wikimarkup01_basic_italics (tests.test_ctokenizer.TestCTokenizer) basic italic text ... ok test_tags_wikimarkup02_basic_bold (tests.test_ctokenizer.TestCTokenizer) basic bold text ... ok test_tags_wikimarkup03_basic_ul (tests.test_ctokenizer.TestCTokenizer) basic unordered list ... ok test_tags_wikimarkup04_basic_ol (tests.test_ctokenizer.TestCTokenizer) basic ordered list ... ok test_tags_wikimarkup05_basic_dt (tests.test_ctokenizer.TestCTokenizer) basic description term ... ok test_tags_wikimarkup06_basic_dd (tests.test_ctokenizer.TestCTokenizer) basic description item ... ok test_tags_wikimarkup07_basic_hr (tests.test_ctokenizer.TestCTokenizer) basic horizontal rule ... ok test_tags_wikimarkup08_complex_italics (tests.test_ctokenizer.TestCTokenizer) italics with a lot in them ... ok test_tags_wikimarkup09_multiline_italics (tests.test_ctokenizer.TestCTokenizer) italics spanning mulitple lines ... ok test_tags_wikimarkup10_unending_italics (tests.test_ctokenizer.TestCTokenizer) italics without an ending tag ... ok test_tags_wikimarkup11_misleading_italics_end (tests.test_ctokenizer.TestCTokenizer) italics with something that looks like an end but isn't ... ok test_tags_wikimarkup12_italics_start_outside_end_inside (tests.test_ctokenizer.TestCTokenizer) italics that start outside a link and end inside it ... ok test_tags_wikimarkup13_italics_start_inside_end_outside (tests.test_ctokenizer.TestCTokenizer) italics that start inside a link and end outside it ... ok test_tags_wikimarkup14_complex_bold (tests.test_ctokenizer.TestCTokenizer) bold with a lot in it ... ok test_tags_wikimarkup15_multiline_bold (tests.test_ctokenizer.TestCTokenizer) bold spanning mulitple lines ... ok test_tags_wikimarkup16_unending_bold (tests.test_ctokenizer.TestCTokenizer) bold without an ending tag ... ok test_tags_wikimarkup17_misleading_bold_end (tests.test_ctokenizer.TestCTokenizer) bold with something that looks like an end but isn't ... ok test_tags_wikimarkup18_bold_start_outside_end_inside (tests.test_ctokenizer.TestCTokenizer) bold that start outside a link and end inside it ... ok test_tags_wikimarkup19_bold_start_inside_end_outside (tests.test_ctokenizer.TestCTokenizer) bold that start inside a link and end outside it ... ok test_tags_wikimarkup20_bold_and_italics (tests.test_ctokenizer.TestCTokenizer) bold and italics together ... ok test_tags_wikimarkup21_both_then_bold (tests.test_ctokenizer.TestCTokenizer) text that starts bold/italic, then is just bold ... ok test_tags_wikimarkup22_both_then_italics (tests.test_ctokenizer.TestCTokenizer) text that starts bold/italic, then is just italic ... ok test_tags_wikimarkup23_bold_then_both (tests.test_ctokenizer.TestCTokenizer) text that starts just bold, then is bold/italic ... ok test_tags_wikimarkup24_italics_then_both (tests.test_ctokenizer.TestCTokenizer) text that starts just italic, then is bold/italic ... ok test_tags_wikimarkup25_italics_then_bold (tests.test_ctokenizer.TestCTokenizer) text that starts italic, then is bold ... ok test_tags_wikimarkup26_bold_then_italics (tests.test_ctokenizer.TestCTokenizer) text that starts bold, then is italic ... ok test_tags_wikimarkup27_five_three (tests.test_ctokenizer.TestCTokenizer) five ticks to open, three to close (bold) ... ok test_tags_wikimarkup28_five_two (tests.test_ctokenizer.TestCTokenizer) five ticks to open, two to close (bold) ... ok test_tags_wikimarkup29_four (tests.test_ctokenizer.TestCTokenizer) four ticks ... ok test_tags_wikimarkup30_four_two (tests.test_ctokenizer.TestCTokenizer) four ticks to open, two to close ... ok test_tags_wikimarkup31_two_three (tests.test_ctokenizer.TestCTokenizer) two ticks to open, three to close ... ok test_tags_wikimarkup32_two_four (tests.test_ctokenizer.TestCTokenizer) two ticks to open, four to close ... ok test_tags_wikimarkup33_two_three_two (tests.test_ctokenizer.TestCTokenizer) two ticks to open, three to close, two afterwards ... ok test_tags_wikimarkup34_two_four_four (tests.test_ctokenizer.TestCTokenizer) two ticks to open, four to close, four afterwards ... ok test_tags_wikimarkup35_seven (tests.test_ctokenizer.TestCTokenizer) seven ticks ... ok test_tags_wikimarkup36_unending_bold_and_italics (tests.test_ctokenizer.TestCTokenizer) five ticks (bold and italics) that don't end ... ok test_tags_wikimarkup37_complex_ul (tests.test_ctokenizer.TestCTokenizer) ul with a lot in it ... ok test_tags_wikimarkup38_ul_multiline_template (tests.test_ctokenizer.TestCTokenizer) ul with a template that spans multiple lines ... ok test_tags_wikimarkup39_ul_adjacent (tests.test_ctokenizer.TestCTokenizer) multiple adjacent uls ... ok test_tags_wikimarkup40_ul_depths (tests.test_ctokenizer.TestCTokenizer) multiple adjacent uls, with differing depths ... ok test_tags_wikimarkup41_ul_space_before (tests.test_ctokenizer.TestCTokenizer) uls with space before them ... ok test_tags_wikimarkup42_ul_interruption (tests.test_ctokenizer.TestCTokenizer) high-depth ul with something blocking it ... ok test_tags_wikimarkup43_complex_ol (tests.test_ctokenizer.TestCTokenizer) ol with a lot in it ... ok test_tags_wikimarkup44_ol_multiline_template (tests.test_ctokenizer.TestCTokenizer) ol with a template that spans moltiple lines ... ok test_tags_wikimarkup45_ol_adjacent (tests.test_ctokenizer.TestCTokenizer) moltiple adjacent ols ... ok test_tags_wikimarkup46_ol_depths (tests.test_ctokenizer.TestCTokenizer) moltiple adjacent ols, with differing depths ... ok test_tags_wikimarkup47_ol_space_before (tests.test_ctokenizer.TestCTokenizer) ols with space before them ... ok test_tags_wikimarkup48_ol_interruption (tests.test_ctokenizer.TestCTokenizer) high-depth ol with something blocking it ... ok test_tags_wikimarkup49_ul_ol_mix (tests.test_ctokenizer.TestCTokenizer) a mix of adjacent uls and ols ... ok test_tags_wikimarkup50_complex_dt (tests.test_ctokenizer.TestCTokenizer) dt with a lot in it ... ok test_tags_wikimarkup51_dt_multiline_template (tests.test_ctokenizer.TestCTokenizer) dt with a template that spans mdttiple lines ... ok test_tags_wikimarkup52_dt_adjacent (tests.test_ctokenizer.TestCTokenizer) mdttiple adjacent dts ... ok test_tags_wikimarkup53_dt_depths (tests.test_ctokenizer.TestCTokenizer) mdttiple adjacent dts, with differing depths ... ok test_tags_wikimarkup54_dt_space_before (tests.test_ctokenizer.TestCTokenizer) dts with space before them ... ok test_tags_wikimarkup55_dt_interruption (tests.test_ctokenizer.TestCTokenizer) high-depth dt with something blocking it ... ok test_tags_wikimarkup56_complex_dd (tests.test_ctokenizer.TestCTokenizer) dd with a lot in it ... ok test_tags_wikimarkup57_dd_multiline_template (tests.test_ctokenizer.TestCTokenizer) dd with a template that spans mddtiple lines ... ok test_tags_wikimarkup58_dd_adjacent (tests.test_ctokenizer.TestCTokenizer) mddtiple adjacent dds ... ok test_tags_wikimarkup59_dd_depths (tests.test_ctokenizer.TestCTokenizer) mddtiple adjacent dds, with differing depths ... ok test_tags_wikimarkup60_dd_space_before (tests.test_ctokenizer.TestCTokenizer) dds with space before them ... ok test_tags_wikimarkup61_dd_interruption (tests.test_ctokenizer.TestCTokenizer) high-depth dd with something blocking it ... ok test_tags_wikimarkup62_dt_dd_mix (tests.test_ctokenizer.TestCTokenizer) a mix of adjacent dts and dds ... ok test_tags_wikimarkup63_dt_dd_mix2 (tests.test_ctokenizer.TestCTokenizer) the correct usage of a dt/dd unit, as in a dl ... ok test_tags_wikimarkup64_dt_dd_mix3 (tests.test_ctokenizer.TestCTokenizer) another example of correct (but strange) dt/dd usage ... ok test_tags_wikimarkup65_dt_dd_mix4 (tests.test_ctokenizer.TestCTokenizer) another example of correct dt/dd usage, with a trigger for a specific parse route ... ok test_tags_wikimarkup66_ul_ol_dt_dd_mix (tests.test_ctokenizer.TestCTokenizer) an assortment of uls, ols, dds, and dts ... ok test_tags_wikimarkup67_hr_text_before (tests.test_ctokenizer.TestCTokenizer) text before an otherwise-valid hr ... ok test_tags_wikimarkup68_hr_text_after (tests.test_ctokenizer.TestCTokenizer) text after a valid hr ... ok test_tags_wikimarkup69_hr_text_before_after (tests.test_ctokenizer.TestCTokenizer) text at both ends of an otherwise-valid hr ... ok test_tags_wikimarkup70_hr_newlines (tests.test_ctokenizer.TestCTokenizer) newlines surrounding a valid hr ... ok test_tags_wikimarkup71_hr_adjacent (tests.test_ctokenizer.TestCTokenizer) two adjacent hrs ... ok test_tags_wikimarkup72_hr_adjacent_space (tests.test_ctokenizer.TestCTokenizer) two adjacent hrs, with a space before the second one, making it invalid ... ok test_tags_wikimarkup73_hr_short (tests.test_ctokenizer.TestCTokenizer) an invalid three-hyphen-long hr ... ok test_tags_wikimarkup74_hr_long (tests.test_ctokenizer.TestCTokenizer) a very long, valid hr ... ok test_tags_wikimarkup75_hr_interruption_short (tests.test_ctokenizer.TestCTokenizer) a hr that is interrupted, making it invalid ... ok test_tags_wikimarkup76_hr_interruption_long (tests.test_ctokenizer.TestCTokenizer) a hr that is interrupted, but the first part remains valid because it is long enough ... ok test_tags_wikimarkup77_nowiki_cancel (tests.test_ctokenizer.TestCTokenizer) a nowiki tag before a list causes it to not be parsed ... ok test_templates001_no_params (tests.test_ctokenizer.TestCTokenizer) simplest type of template ... ok test_templates002_one_param_unnamed (tests.test_ctokenizer.TestCTokenizer) basic template with one unnamed parameter ... ok test_templates003_one_param_named (tests.test_ctokenizer.TestCTokenizer) basic template with one named parameter ... ok test_templates004_multiple_unnamed_params (tests.test_ctokenizer.TestCTokenizer) basic template with multiple unnamed parameters ... ok test_templates005_multiple_named_params (tests.test_ctokenizer.TestCTokenizer) basic template with multiple named parameters ... ok test_templates006_multiple_mixed_params (tests.test_ctokenizer.TestCTokenizer) basic template with multiple unnamed/named parameters ... ok test_templates007_multiple_mixed_params2 (tests.test_ctokenizer.TestCTokenizer) basic template with multiple unnamed/named parameters in another order ... ok test_templates008_blank_params (tests.test_ctokenizer.TestCTokenizer) template with blank parameters (mix of pipes and equal signs) ... ok test_templates009_nested_unnamed_param (tests.test_ctokenizer.TestCTokenizer) nested template as an unnamed parameter ... ok test_templates010_nested_named_param_value (tests.test_ctokenizer.TestCTokenizer) nested template as a parameter value with a named parameter ... ok test_templates011_nested_named_param_name_and_value (tests.test_ctokenizer.TestCTokenizer) nested templates as a parameter name and value ... ok test_templates012_nested_name_start (tests.test_ctokenizer.TestCTokenizer) nested template at the beginning of a template name ... ok test_templates013_nested_name_start_unnamed_param (tests.test_ctokenizer.TestCTokenizer) nested template at the beginning of a template name and as an unnamed parameter ... ok test_templates014_nested_name_start_named_param_value (tests.test_ctokenizer.TestCTokenizer) nested template at the beginning of a template name and as a parameter value with a named parameter ... ok test_templates015_nested_name_start_named_param_name_and_value (tests.test_ctokenizer.TestCTokenizer) nested template at the beginning of a template name and as a parameter name and value ... ok test_templates016_nested_name_end (tests.test_ctokenizer.TestCTokenizer) nested template at the end of a template name ... ok test_templates017_nested_name_end_unnamed_param (tests.test_ctokenizer.TestCTokenizer) nested template at the end of a template name and as an unnamed parameter ... ok test_templates018_nested_name_end_named_param_value (tests.test_ctokenizer.TestCTokenizer) nested template at the end of a template name and as a parameter value with a named parameter ... ok test_templates019_nested_name_end_named_param_name_and_value (tests.test_ctokenizer.TestCTokenizer) nested template at the end of a template name and as a parameter name and value ... ok test_templates020_nested_name_mid (tests.test_ctokenizer.TestCTokenizer) nested template in the middle of a template name ... ok test_templates021_nested_name_mid_unnamed_param (tests.test_ctokenizer.TestCTokenizer) nested template in the middle of a template name and as an unnamed parameter ... ok test_templates022_nested_name_mid_named_param_value (tests.test_ctokenizer.TestCTokenizer) nested template in the middle of a template name and as a parameter value with a named parameter ... ok test_templates023_nested_name_mid_named_param_name_and_value (tests.test_ctokenizer.TestCTokenizer) nested template in the middle of a template name and as a parameter name and value ... ok test_templates024_nested_name_start_end (tests.test_ctokenizer.TestCTokenizer) nested template at the beginning and end of a template name ... ok test_templates025_nested_name_start_end_unnamed_param (tests.test_ctokenizer.TestCTokenizer) nested template at the beginning and end of a template name and as an unnamed parameter ... ok test_templates026_nested_name_start_end_named_param_value (tests.test_ctokenizer.TestCTokenizer) nested template at the beginning and end of a template name and as a parameter value with a named parameter ... ok test_templates027_nested_name_start_end_named_param_name_and_value (tests.test_ctokenizer.TestCTokenizer) nested template at the beginning and end of a template name and as a parameter name and value ... ok test_templates028_nested_names_multiple (tests.test_ctokenizer.TestCTokenizer) multiple nested templates within nested templates ... ok test_templates029_nested_names_multiple_unnamed_param (tests.test_ctokenizer.TestCTokenizer) multiple nested templates within nested templates with a nested unnamed parameter ... ok test_templates030_nested_names_multiple_named_param_value (tests.test_ctokenizer.TestCTokenizer) multiple nested templates within nested templates with a nested parameter value in a named parameter ... ok test_templates031_nested_names_multiple_named_param_name_and_value (tests.test_ctokenizer.TestCTokenizer) multiple nested templates within nested templates with a nested parameter name and value ... ok test_templates032_mixed_nested_templates (tests.test_ctokenizer.TestCTokenizer) mixed assortment of nested templates within template names, parameter names, and values ... ok test_templates033_nested_two_args (tests.test_ctokenizer.TestCTokenizer) template whose first parameter is unnamed with two templates, followed by a named parameter ... ok test_templates034_newlines_start (tests.test_ctokenizer.TestCTokenizer) a newline at the start of a template name ... ok test_templates035_newlines_end (tests.test_ctokenizer.TestCTokenizer) a newline at the end of a template name ... ok test_templates036_newlines_start_end (tests.test_ctokenizer.TestCTokenizer) a newline at the start and end of a template name ... ok test_templates037_newlines_mid (tests.test_ctokenizer.TestCTokenizer) a newline at the middle of a template name ... ok test_templates038_newlines_start_mid (tests.test_ctokenizer.TestCTokenizer) a newline at the start and middle of a template name ... ok test_templates039_newlines_mid_end (tests.test_ctokenizer.TestCTokenizer) a newline at the middle and end of a template name ... ok test_templates040_newlines_start_mid_end (tests.test_ctokenizer.TestCTokenizer) a newline at the start, middle, and end of a template name ... ok test_templates041_newlines_unnamed_param (tests.test_ctokenizer.TestCTokenizer) newlines within an unnamed template parameter ... ok test_templates042_newlines_enclose_template_name_unnamed_param (tests.test_ctokenizer.TestCTokenizer) newlines enclosing a template name and within an unnamed template parameter ... ok test_templates043_newlines_within_template_name_unnamed_param (tests.test_ctokenizer.TestCTokenizer) newlines within a template name and within an unnamed template parameter ... ok test_templates044_newlines_enclose_template_name_named_param_value (tests.test_ctokenizer.TestCTokenizer) newlines enclosing a template name and within a named parameter value ... ok test_templates045_newlines_within_template_name_named_param_value (tests.test_ctokenizer.TestCTokenizer) newlines within a template name and within a named parameter value ... ok test_templates046_newlines_named_param_name (tests.test_ctokenizer.TestCTokenizer) newlines within a parameter name ... ok test_templates047_newlines_named_param_name_param_value (tests.test_ctokenizer.TestCTokenizer) newlines within a parameter name and within a parameter value ... ok test_templates048_newlines_enclose_template_name_named_param_name (tests.test_ctokenizer.TestCTokenizer) newlines enclosing a template name and within a parameter name ... ok test_templates049_newlines_enclose_template_name_named_param_name_param_value (tests.test_ctokenizer.TestCTokenizer) newlines enclosing a template name and within a parameter name and within a parameter value ... ok test_templates050_newlines_within_template_name_named_param_name (tests.test_ctokenizer.TestCTokenizer) newlines within a template name and within a parameter name ... ok test_templates051_newlines_within_template_name_named_param_name_param_value (tests.test_ctokenizer.TestCTokenizer) newlines within a template name and within a parameter name and within a parameter value ... ok test_templates052_newlines_wildcard (tests.test_ctokenizer.TestCTokenizer) a random, complex assortment of templates and newlines ... ok test_templates053_newlines_wildcard_redux (tests.test_ctokenizer.TestCTokenizer) an even more random and complex assortment of templates and newlines ... ok test_templates054_newlines_wildcard_redux_invalid (tests.test_ctokenizer.TestCTokenizer) a variation of the newlines_wildcard_redux test that is invalid ... ok test_templates055_newlines_spaces (tests.test_ctokenizer.TestCTokenizer) newlines in the middle of a template name, followed by spaces ... ok test_templates056_newlines_spaces_param (tests.test_ctokenizer.TestCTokenizer) newlines in the middle of a template name, followed by spaces, with a parameter ... ok test_templates057_invalid_blank (tests.test_ctokenizer.TestCTokenizer) invalid template with no content ... ok test_templates058_invalid_blank_whitespace (tests.test_ctokenizer.TestCTokenizer) invalid template with no content, but whitespace ... ok test_templates059_invalid_blank_pipe (tests.test_ctokenizer.TestCTokenizer) invalid template with no content, but a parameter ... ok test_templates060_invalid_blank_whitespace_pipe (tests.test_ctokenizer.TestCTokenizer) invalid template with no content, but whitespace and a parameter ... ok test_templates061_invalid_name_left_brace_middle (tests.test_ctokenizer.TestCTokenizer) invalid characters in template name: left brace in middle ... ok test_templates062_invalid_name_right_brace_middle (tests.test_ctokenizer.TestCTokenizer) invalid characters in template name: right brace in middle ... ok test_templates063_invalid_name_left_braces (tests.test_ctokenizer.TestCTokenizer) invalid characters in template name: two left braces in middle ... ok test_templates064_invalid_name_left_bracket_middle (tests.test_ctokenizer.TestCTokenizer) invalid characters in template name: left bracket in middle ... ok test_templates065_invalid_name_right_bracket_middle (tests.test_ctokenizer.TestCTokenizer) invalid characters in template name: right bracket in middle ... ok test_templates066_invalid_name_left_bracket_start (tests.test_ctokenizer.TestCTokenizer) invalid characters in template name: left bracket at start ... ok test_templates067_invalid_name_right_bracket_start (tests.test_ctokenizer.TestCTokenizer) invalid characters in template name: right bracket at end ... ok test_templates068_valid_name_left_brace_start (tests.test_ctokenizer.TestCTokenizer) valid characters in template name: left brace at start ... ok test_templates069_valid_unnamed_param_left_brace (tests.test_ctokenizer.TestCTokenizer) valid characters in unnamed template parameter: left brace ... ok test_templates070_valid_unnamed_param_braces (tests.test_ctokenizer.TestCTokenizer) valid characters in unnamed template parameter: left and right braces ... ok test_templates071_valid_param_name_braces (tests.test_ctokenizer.TestCTokenizer) valid characters in template parameter name: left and right braces ... ok test_templates072_valid_param_name_brackets (tests.test_ctokenizer.TestCTokenizer) valid characters in unnamed template parameter: left and right brackets ... ok test_templates073_valid_param_name_double_left_brackets (tests.test_ctokenizer.TestCTokenizer) valid characters in unnamed template parameter: double left brackets ... ok test_templates074_valid_param_name_double_right_brackets (tests.test_ctokenizer.TestCTokenizer) valid characters in unnamed template parameter: double right brackets ... ok test_templates075_valid_param_name_double_brackets (tests.test_ctokenizer.TestCTokenizer) valid characters in unnamed template parameter: double left and right brackets ... ok test_templates076_invalid_param_name_double_left_braces (tests.test_ctokenizer.TestCTokenizer) invalid characters in template parameter name: double left braces ... ok test_templates077_invalid_param_name_double_braces (tests.test_ctokenizer.TestCTokenizer) invalid characters in template parameter name: double left and right braces ... ok test_templates078_invalid_left_angle_bracket (tests.test_ctokenizer.TestCTokenizer) invalid template: left angle bracket in name ... ok test_templates079_invalid_right_angle_bracket (tests.test_ctokenizer.TestCTokenizer) invalid template: right angle bracket in name ... ok test_templates080_incomplete_stub (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: just an opening ... ok test_templates081_incomplete_plain (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: no close whatsoever ... ok test_templates082_incomplete_right_brace (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: only one right brace ... ok test_templates083_incomplete_pipe (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: a pipe ... ok test_templates084_incomplete_unnamed_param (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: an unnamed parameter ... ok test_templates085_incomplete_unnamed_param_pipe (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: an unnamed parameter, then a pipe ... ok test_templates086_incomplete_valueless_param (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: an a named parameter with no value ... ok test_templates087_incomplete_valueless_param_pipe (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: a named parameter with no value, then a pipe ... ok test_templates088_incomplete_named_param (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: a named parameter with a value ... ok test_templates089_incomplete_named_param_pipe (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: a named parameter with a value, then a paipe ... ok test_templates090_incomplete_two_unnamed_params (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: two unnamed parameters ... ok test_templates091_incomplete_unnamed_param_valueless_param (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: an unnamed parameter, then a named parameter with no value ... ok test_templates092_incomplete_unnamed_param_named_param (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: an unnamed parameter, then a named parameter with a value ... ok test_templates093_incomplete_named_param_unnamed_param (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: a named parameter with a value, then an unnamed parameter ... ok test_templates094_incomplete_named_param_valueless_param (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: a named parameter with a value, then a named parameter with no value ... ok test_templates095_incomplete_two_named_params (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: two named parameters with values ... ok test_templates096_incomplete_nested_template_as_unnamed_param (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: a valid nested template as an unnamed parameter ... ok test_templates097_incomplete_nested_template_as_param_value (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: a valid nested template as a parameter value ... ok test_templates098_recursion_five_hundred_opens (tests.test_ctokenizer.TestCTokenizer) test potentially dangerous recursion: five hundred template openings, without spaces ... ok test_templates099_recursion_one_hundred_opens (tests.test_ctokenizer.TestCTokenizer) test potentially dangerous recursion: one hundred template openings, with spaces ... ok test_templates100_recursion_opens_and_closes (tests.test_ctokenizer.TestCTokenizer) test potentially dangerous recursion: template openings and closings ... ok test_text1_basic (tests.test_ctokenizer.TestCTokenizer) sanity check for basic text parsing, no gimmicks ... ok test_text2_newlines (tests.test_ctokenizer.TestCTokenizer) slightly more complex text parsing, with newlines ... ok test_text3_unicode (tests.test_ctokenizer.TestCTokenizer) ensure unicode data is handled properly ... ok test_text4_unicode2 (tests.test_ctokenizer.TestCTokenizer) additional unicode check for non-BMP codepoints ... ok test_text5_large (tests.test_ctokenizer.TestCTokenizer) a lot of text, requiring proper storage in the C tokenizer ... ok test_uses_c (tests.test_ctokenizer.TestCTokenizer) make sure the C tokenizer identifies as using a C extension ... ok test_wikilinks01_blank (tests.test_ctokenizer.TestCTokenizer) wikilink with no content ... ok test_wikilinks02_blank_with_text (tests.test_ctokenizer.TestCTokenizer) wikilink with no content but a pipe ... ok test_wikilinks03_basic (tests.test_ctokenizer.TestCTokenizer) simplest type of wikilink ... ok test_wikilinks04_with_text (tests.test_ctokenizer.TestCTokenizer) wikilink with a text value ... ok test_wikilinks05_blank_with_multiple_texts (tests.test_ctokenizer.TestCTokenizer) no content, multiple pipes ... ok test_wikilinks06_multiple_texts (tests.test_ctokenizer.TestCTokenizer) multiple text values separated by pipes ... ok test_wikilinks07_newline_text (tests.test_ctokenizer.TestCTokenizer) a newline in the middle of the text ... ok test_wikilinks08_bracket_text (tests.test_ctokenizer.TestCTokenizer) a left bracket in the middle of the text ... ok test_wikilinks09_nested (tests.test_ctokenizer.TestCTokenizer) a wikilink nested within another ... ok test_wikilinks10_nested_padding (tests.test_ctokenizer.TestCTokenizer) a wikilink nested within another, separated by other data ... ok test_wikilinks11_invalid_newline (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: newline as only content ... ok test_wikilinks12_invalid_right_brace (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: right brace ... ok test_wikilinks13_invalid_left_brace (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: left brace ... ok test_wikilinks14_invalid_right_bracket (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: right bracket ... ok test_wikilinks15_invalid_left_bracket (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: left bracket ... ok test_wikilinks16_invalid_nested (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: trying to nest in the wrong context ... ok test_wikilinks17_invalid_nested_padding (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: trying to nest in the wrong context, with a text param ... ok test_wikilinks18_invalid_nested_no_close (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: a wikilink nested within the value of another, missing a pair of closing brackets ... ok test_wikilinks19_invalid_left_angle_bracket (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: left angle bracket ... ok test_wikilinks20_invalid_right_angle_bracket (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: right angle bracket ... ok test_wikilinks21_invalid_newline_at_start (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: newline at start of title ... ok test_wikilinks22_invalid_newline_at_end (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: newline at end of title ... ok test_wikilinks23_incomplete_open_only (tests.test_ctokenizer.TestCTokenizer) incomplete wikilinks: just an open ... ok test_wikilinks24_incomplete_open_text (tests.test_ctokenizer.TestCTokenizer) incomplete wikilinks: an open with some text ... ok test_wikilinks25_incomplete_open_text_pipe (tests.test_ctokenizer.TestCTokenizer) incomplete wikilinks: an open, text, then a pipe ... ok test_wikilinks26_incomplete_open_pipe (tests.test_ctokenizer.TestCTokenizer) incomplete wikilinks: an open, then a pipe ... ok test_wikilinks27_incomplete_open_pipe_text (tests.test_ctokenizer.TestCTokenizer) incomplete wikilinks: an open, then a pipe, then text ... ok test_wikilinks28_incomplete_open_pipes_text (tests.test_ctokenizer.TestCTokenizer) incomplete wikilinks: a pipe, then text then two pipes ... ok test_wikilinks29_incomplete_open_partial_close (tests.test_ctokenizer.TestCTokenizer) incomplete wikilinks: an open, then one right brace ... ok test_wikilinks30_incomplete_preserve_previous (tests.test_ctokenizer.TestCTokenizer) incomplete wikilinks: a valid wikilink followed by an invalid one ... ok test_add (tests.test_template.TestTemplate) test Template.add() ... ok test_children (tests.test_template.TestTemplate) test Template.__children__() ... ok test_formatting (tests.test_template.TestTemplate) test realistic param manipulation with complex whitespace formatting ... ok test_get (tests.test_template.TestTemplate) test Template.get() ... ok test_has (tests.test_template.TestTemplate) test Template.has() ... ok test_name (tests.test_template.TestTemplate) test getter/setter for the name attribute ... ok test_params (tests.test_template.TestTemplate) test getter for the params attribute ... ok test_remove (tests.test_template.TestTemplate) test Template.remove() ... ok test_showtree (tests.test_template.TestTemplate) test Template.__showtree__() ... ok test_strip (tests.test_template.TestTemplate) test Template.__strip__() ... ok test_unicode (tests.test_template.TestTemplate) test Template.__unicode__() ... ok test_children (tests.test_text.TestText) test Text.__children__() ... ok test_showtree (tests.test_text.TestText) test Text.__showtree__() ... ok test_strip (tests.test_text.TestText) test Text.__strip__() ... ok test_unicode (tests.test_text.TestText) test Text.__unicode__() ... ok test_value (tests.test_text.TestText) test getter/setter for the value attribute ... ok ---------------------------------------------------------------------- Ran 1796 tests in 0.283s OK (skipped=1) I: pybuild base:217: python3.7 setup.py test running test running egg_info writing mwparserfromhell.egg-info/PKG-INFO writing dependency_links to mwparserfromhell.egg-info/dependency_links.txt writing top-level names to mwparserfromhell.egg-info/top_level.txt reading manifest file 'mwparserfromhell.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' writing manifest file 'mwparserfromhell.egg-info/SOURCES.txt' running build_ext copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/parser/_tokenizer.cpython-37m-i386-linux-gnu.so -> mwparserfromhell/parser test_arguments01_blank (tests.test_roundtripping.TestRoundtripping) argument with no content ... ok test_arguments02_blank_with_default (tests.test_roundtripping.TestRoundtripping) argument with no content but a pipe ... ok test_arguments03_basic (tests.test_roundtripping.TestRoundtripping) simplest type of argument ... ok test_arguments04_default (tests.test_roundtripping.TestRoundtripping) argument with a default value ... ok test_arguments05_blank_with_multiple_defaults (tests.test_roundtripping.TestRoundtripping) no content, multiple pipes ... ok test_arguments06_multiple_defaults (tests.test_roundtripping.TestRoundtripping) multiple values separated by pipes ... ok test_arguments07_newline (tests.test_roundtripping.TestRoundtripping) newline as only content ... ok test_arguments08_right_braces (tests.test_roundtripping.TestRoundtripping) multiple } scattered throughout text ... ok test_arguments09_right_braces_default (tests.test_roundtripping.TestRoundtripping) multiple } scattered throughout text, with a default value ... ok test_arguments10_nested (tests.test_roundtripping.TestRoundtripping) an argument nested within another argument ... ok test_arguments11_invalid_braces (tests.test_roundtripping.TestRoundtripping) invalid argument: multiple braces that are not part of a template or argument ... ok test_arguments12_incomplete_open_only (tests.test_roundtripping.TestRoundtripping) incomplete arguments: just an open ... ok test_arguments13_incomplete_open_text (tests.test_roundtripping.TestRoundtripping) incomplete arguments: an open with some text ... ok test_arguments14_incomplete_open_text_pipe (tests.test_roundtripping.TestRoundtripping) incomplete arguments: an open, text, then a pipe ... ok test_arguments15_incomplete_open_pipe (tests.test_roundtripping.TestRoundtripping) incomplete arguments: an open, then a pipe ... ok test_arguments16_incomplete_open_pipe_text (tests.test_roundtripping.TestRoundtripping) incomplete arguments: an open, then a pipe, then text ... ok test_arguments17_incomplete_open_pipes_text (tests.test_roundtripping.TestRoundtripping) incomplete arguments: a pipe, then text then two pipes ... ok test_arguments18_incomplete_open_partial_close (tests.test_roundtripping.TestRoundtripping) incomplete arguments: an open, then one right brace ... ok test_arguments19_incomplete_preserve_previous (tests.test_roundtripping.TestRoundtripping) incomplete arguments: a valid argument followed by an invalid one ... ok test_comments1_blank (tests.test_roundtripping.TestRoundtripping) a blank comment ... ok test_comments2_basic (tests.test_roundtripping.TestRoundtripping) a basic comment ... ok test_comments3_tons_of_nonsense (tests.test_roundtripping.TestRoundtripping) a comment with tons of ignorable garbage in it ... ok test_comments4_incomplete_blank (tests.test_roundtripping.TestRoundtripping) a comment that doesn't close ... ok test_comments5_incomplete_text (tests.test_roundtripping.TestRoundtripping) a comment that doesn't close, with text ... ok test_comments6_incomplete_partial_close (tests.test_roundtripping.TestRoundtripping) a comment that doesn't close, with a partial close ... ok test_comments7_incomplete_part_only (tests.test_roundtripping.TestRoundtripping) a comment that only has a < and ! ... ok test_external_links01_basic (tests.test_roundtripping.TestRoundtripping) basic external link ... ok test_external_links02_basic_brackets (tests.test_roundtripping.TestRoundtripping) basic external link in brackets ... ok test_external_links03_brackets_space (tests.test_roundtripping.TestRoundtripping) basic external link in brackets, with a space after ... ok test_external_links04_brackets_title (tests.test_roundtripping.TestRoundtripping) basic external link in brackets, with a title ... ok test_external_links05_brackets_multiword_title (tests.test_roundtripping.TestRoundtripping) basic external link in brackets, with a multi-word title ... ok test_external_links06_brackets_adjacent (tests.test_roundtripping.TestRoundtripping) three adjacent bracket-enclosed external links ... ok test_external_links07_brackets_newline_before (tests.test_roundtripping.TestRoundtripping) bracket-enclosed link with a newline before the title ... ok test_external_links08_brackets_newline_inside (tests.test_roundtripping.TestRoundtripping) bracket-enclosed link with a newline in the title ... ok test_external_links09_brackets_newline_after (tests.test_roundtripping.TestRoundtripping) bracket-enclosed link with a newline after the title ... ok test_external_links10_brackets_space_before (tests.test_roundtripping.TestRoundtripping) bracket-enclosed link with a space before the URL ... ok test_external_links11_brackets_title_like_url (tests.test_roundtripping.TestRoundtripping) bracket-enclosed link with a title that looks like a URL ... ok test_external_links12_brackets_recursive (tests.test_roundtripping.TestRoundtripping) bracket-enclosed link with a bracket-enclosed link as the title ... ok test_external_links13_brackets_recursive_2 (tests.test_roundtripping.TestRoundtripping) bracket-enclosed link with a double bracket-enclosed link as the title ... ok test_external_links14_period_after (tests.test_roundtripping.TestRoundtripping) a period after a free link that is excluded ... ok test_external_links15_colons_after (tests.test_roundtripping.TestRoundtripping) colons after a free link that are excluded ... ok test_external_links16_close_paren_after_excluded (tests.test_roundtripping.TestRoundtripping) a closing parenthesis after a free link that is excluded ... ok test_external_links17_close_paren_after_included (tests.test_roundtripping.TestRoundtripping) a closing parenthesis after a free link that is included because of an opening parenthesis in the URL ... ok test_external_links18_open_bracket_inside (tests.test_roundtripping.TestRoundtripping) an open bracket inside a free link that causes it to be ended abruptly ... ok test_external_links19_brackets_period_after (tests.test_roundtripping.TestRoundtripping) a period after a bracket-enclosed link that is included ... ok test_external_links20_brackets_punct_after (tests.test_roundtripping.TestRoundtripping) punctuation after a bracket-enclosed link that are included ... ok test_external_links21_brackets_close_paren_after_included (tests.test_roundtripping.TestRoundtripping) a closing parenthesis after a bracket-enclosed link that is included ... ok test_external_links22_brackets_close_paren_after_included_2 (tests.test_roundtripping.TestRoundtripping) a closing parenthesis after a bracket-enclosed link that is also included ... ok test_external_links23_brackets_open_bracket_inside (tests.test_roundtripping.TestRoundtripping) an open bracket inside a bracket-enclosed link that is also included ... ok test_external_links24_adjacent_space (tests.test_roundtripping.TestRoundtripping) two free links separated by a space ... ok test_external_links25_adjacent_newline (tests.test_roundtripping.TestRoundtripping) two free links separated by a newline ... ok test_external_links26_adjacent_close_bracket (tests.test_roundtripping.TestRoundtripping) two free links separated by a close bracket ... ok test_external_links27_html_entity_in_url (tests.test_roundtripping.TestRoundtripping) a HTML entity parsed correctly inside a free link ... ok test_external_links28_template_in_url (tests.test_roundtripping.TestRoundtripping) a template parsed correctly inside a free link ... ok test_external_links29_argument_in_url (tests.test_roundtripping.TestRoundtripping) an argument parsed correctly inside a free link ... ok test_external_links30_wikilink_in_url (tests.test_roundtripping.TestRoundtripping) a wikilink that destroys a free link ... ok test_external_links31_external_link_in_url (tests.test_roundtripping.TestRoundtripping) a bracketed link that destroys a free link ... ok test_external_links32_spaces_padding (tests.test_roundtripping.TestRoundtripping) spaces padding a free link ... ok test_external_links33_text_and_spaces_padding (tests.test_roundtripping.TestRoundtripping) text and spaces padding a free link ... ok test_external_links34_template_before (tests.test_roundtripping.TestRoundtripping) a template before a free link ... ok test_external_links35_spaces_padding_no_slashes (tests.test_roundtripping.TestRoundtripping) spaces padding a free link with no slashes after the colon ... ok test_external_links36_text_and_spaces_padding_no_slashes (tests.test_roundtripping.TestRoundtripping) text and spaces padding a free link with no slashes after the colon ... ok test_external_links37_template_before_no_slashes (tests.test_roundtripping.TestRoundtripping) a template before a free link with no slashes after the colon ... ok test_external_links38_no_slashes (tests.test_roundtripping.TestRoundtripping) a free link with no slashes after the colon ... ok test_external_links39_slashes_optional (tests.test_roundtripping.TestRoundtripping) a free link using a scheme that doesn't need slashes, but has them anyway ... ok test_external_links40_short (tests.test_roundtripping.TestRoundtripping) a very short free link ... ok test_external_links41_slashes_missing (tests.test_roundtripping.TestRoundtripping) slashes missing from a free link with a scheme that requires them ... ok test_external_links42_no_scheme_but_slashes (tests.test_roundtripping.TestRoundtripping) no scheme in a free link, but slashes (protocol-relative free links are not supported) ... ok test_external_links43_no_scheme_but_colon (tests.test_roundtripping.TestRoundtripping) no scheme in a free link, but a colon ... ok test_external_links44_no_scheme_but_colon_and_slashes (tests.test_roundtripping.TestRoundtripping) no scheme in a free link, but a colon and slashes ... ok test_external_links45_fake_scheme_no_slashes (tests.test_roundtripping.TestRoundtripping) a nonexistent scheme in a free link, without slashes ... ok test_external_links46_fake_scheme_slashes (tests.test_roundtripping.TestRoundtripping) a nonexistent scheme in a free link, with slashes ... ok test_external_links47_fake_scheme_brackets_no_slashes (tests.test_roundtripping.TestRoundtripping) a nonexistent scheme in a bracketed link, without slashes ... ok test_external_links48_fake_scheme_brackets_slashes (tests.test_roundtripping.TestRoundtripping) #=a nonexistent scheme in a bracketed link, with slashes ... ok test_external_links49_interrupted_scheme (tests.test_roundtripping.TestRoundtripping) an otherwise valid scheme with something in the middle of it, in a free link ... ok test_external_links50_interrupted_scheme_brackets (tests.test_roundtripping.TestRoundtripping) an otherwise valid scheme with something in the middle of it, in a bracketed link ... ok test_external_links51_no_slashes_brackets (tests.test_roundtripping.TestRoundtripping) no slashes after the colon in a bracketed link ... ok test_external_links52_space_before_no_slashes_brackets (tests.test_roundtripping.TestRoundtripping) a space before a bracketed link with no slashes after the colon ... ok test_external_links53_slashes_optional_brackets (tests.test_roundtripping.TestRoundtripping) a bracketed link using a scheme that doesn't need slashes, but has them anyway ... ok test_external_links54_short_brackets (tests.test_roundtripping.TestRoundtripping) a very short link in brackets ... ok test_external_links55_slashes_missing_brackets (tests.test_roundtripping.TestRoundtripping) slashes missing from a scheme that requires them in a bracketed link ... ok test_external_links56_protcol_relative (tests.test_roundtripping.TestRoundtripping) a protocol-relative link (in brackets) ... ok test_external_links57_scheme_missing_but_colon_brackets (tests.test_roundtripping.TestRoundtripping) scheme missing from a bracketed link, but with a colon ... ok test_external_links58_scheme_missing_but_colon_slashes_brackets (tests.test_roundtripping.TestRoundtripping) scheme missing from a bracketed link, but with a colon and slashes ... ok test_external_links59_unclosed_protocol_relative (tests.test_roundtripping.TestRoundtripping) an unclosed protocol-relative bracketed link ... ok test_external_links60_space_before_protcol_relative (tests.test_roundtripping.TestRoundtripping) a space before a protocol-relative bracketed link ... ok test_external_links61_unclosed_just_scheme (tests.test_roundtripping.TestRoundtripping) an unclosed bracketed link, ending after the scheme ... ok test_external_links62_unclosed_scheme_colon (tests.test_roundtripping.TestRoundtripping) an unclosed bracketed link, ending after the colon ... ok test_external_links63_unclosed_scheme_colon_slashes (tests.test_roundtripping.TestRoundtripping) an unclosed bracketed link, ending after the slashes ... ok test_external_links64_incomplete_bracket (tests.test_roundtripping.TestRoundtripping) just an open bracket ... ok test_external_links65_incomplete_scheme_colon (tests.test_roundtripping.TestRoundtripping) a free link with just a scheme and a colon ... ok test_external_links66_incomplete_scheme_colon_slashes (tests.test_roundtripping.TestRoundtripping) a free link with just a scheme, colon, and slashes ... ok test_external_links67_brackets_scheme_but_no_url (tests.test_roundtripping.TestRoundtripping) brackets around a scheme and a colon ... ok test_external_links68_brackets_scheme_slashes_but_no_url (tests.test_roundtripping.TestRoundtripping) brackets around a scheme, colon, and slashes ... ok test_external_links69_brackets_scheme_title_but_no_url (tests.test_roundtripping.TestRoundtripping) brackets around a scheme, colon, and slashes, with a title ... ok test_headings01_level_1 (tests.test_roundtripping.TestRoundtripping) a basic level-1 heading ... ok test_headings02_level_2 (tests.test_roundtripping.TestRoundtripping) a basic level-2 heading ... ok test_headings03_level_3 (tests.test_roundtripping.TestRoundtripping) a basic level-3 heading ... ok test_headings04_level_4 (tests.test_roundtripping.TestRoundtripping) a basic level-4 heading ... ok test_headings05_level_5 (tests.test_roundtripping.TestRoundtripping) a basic level-5 heading ... ok test_headings06_level_6 (tests.test_roundtripping.TestRoundtripping) a basic level-6 heading ... ok test_headings07_level_7 (tests.test_roundtripping.TestRoundtripping) a level-6 heading that pretends to be a level-7 heading ... ok test_headings08_level_3_2 (tests.test_roundtripping.TestRoundtripping) a level-2 heading that pretends to be a level-3 heading ... ok test_headings09_level_4_6 (tests.test_roundtripping.TestRoundtripping) a level-4 heading that pretends to be a level-6 heading ... ok test_headings10_newline_before (tests.test_roundtripping.TestRoundtripping) a heading that starts after a newline ... ok test_headings11_text_after (tests.test_roundtripping.TestRoundtripping) text on the same line after ... ok test_headings12_invalid_text_before (tests.test_roundtripping.TestRoundtripping) invalid headings: text on the same line before ... ok test_headings13_invalid_newline_middle (tests.test_roundtripping.TestRoundtripping) invalid headings: newline in the middle ... ok test_headings14_invalid_newline_end (tests.test_roundtripping.TestRoundtripping) invalid headings: newline in the middle ... ok test_headings15_invalid_nesting (tests.test_roundtripping.TestRoundtripping) invalid headings: attempts at nesting ... ok test_headings16_incomplete (tests.test_roundtripping.TestRoundtripping) a heading that starts but doesn't finish ... ok test_html_entities01_named (tests.test_roundtripping.TestRoundtripping) a basic named HTML entity ... ok test_html_entities02_numeric_decimal (tests.test_roundtripping.TestRoundtripping) a basic decimal HTML entity ... ok test_html_entities03_numeric_hexadecimal_x (tests.test_roundtripping.TestRoundtripping) a basic hexadecimal HTML entity, using 'x' as a signal ... ok test_html_entities04_numeric_hexadecimal_X (tests.test_roundtripping.TestRoundtripping) a basic hexadecimal HTML entity, using 'X' as a signal ... ok test_html_entities05_numeric_decimal_max (tests.test_roundtripping.TestRoundtripping) the maximum acceptable decimal numeric entity ... ok test_html_entities06_numeric_hex_max (tests.test_roundtripping.TestRoundtripping) the maximum acceptable hexadecimal numeric entity ... ok test_html_entities07_numeric_zeros (tests.test_roundtripping.TestRoundtripping) zeros accepted at the beginning of a numeric entity ... ok test_html_entities08_numeric_hex_zeros (tests.test_roundtripping.TestRoundtripping) zeros accepted at the beginning of a hex numeric entity ... ok test_html_entities09_invalid_named_too_long (tests.test_roundtripping.TestRoundtripping) a named entity that is too long ... ok test_html_entities10_invalid_named_undefined (tests.test_roundtripping.TestRoundtripping) a named entity that doesn't exist ... ok test_html_entities11_invalid_named_nonascii (tests.test_roundtripping.TestRoundtripping) a named entity with non-ASCII characters ... ok test_html_entities12_invalid_numeric_out_of_range_1 (tests.test_roundtripping.TestRoundtripping) a numeric entity that is out of range: < 1 ... ok test_html_entities13_invalid_numeric_out_of_range_2 (tests.test_roundtripping.TestRoundtripping) a hex numeric entity that is out of range: < 1 ... ok test_html_entities14_invalid_numeric_out_of_range_3 (tests.test_roundtripping.TestRoundtripping) a numeric entity that is out of range: > 0x10FFFF ... ok test_html_entities15_invalid_numeric_out_of_range_4 (tests.test_roundtripping.TestRoundtripping) a hex numeric entity that is out of range: > 0x10FFFF ... ok test_html_entities16_invalid_partial_amp (tests.test_roundtripping.TestRoundtripping) invalid entities: just an ampersand ... ok test_html_entities17_invalid_partial_amp_semicolon (tests.test_roundtripping.TestRoundtripping) invalid entities: an ampersand and semicolon ... ok test_html_entities18_invalid_partial_amp_pound (tests.test_roundtripping.TestRoundtripping) invalid entities: just an ampersand, pound sign ... ok test_html_entities19_invalid_partial_amp_pound_x (tests.test_roundtripping.TestRoundtripping) invalid entities: just an ampersand, pound sign, x ... ok test_html_entities20_invalid_partial_amp_pound_semicolon (tests.test_roundtripping.TestRoundtripping) invalid entities: an ampersand, pound sign, and semicolon ... ok test_html_entities21_invalid_partial_amp_pound_x_semicolon (tests.test_roundtripping.TestRoundtripping) invalid entities: an ampersand, pound sign, x, and semicolon ... ok test_html_entities22_invalid_partial_amp_pound_numbers (tests.test_roundtripping.TestRoundtripping) invalid entities: an ampersand, pound sign, numbers ... ok test_html_entities23_invalid_partial_amp_pound_x_semicolon (tests.test_roundtripping.TestRoundtripping) invalid entities: an ampersand, pound sign, and x ... ok test_integration01_empty (tests.test_roundtripping.TestRoundtripping) sanity check that parsing an empty string yields nothing ... ok test_integration02_template_argument_mix (tests.test_roundtripping.TestRoundtripping) an ambiguous mix of templates and arguments ... ok test_integration03_link_in_template_name (tests.test_roundtripping.TestRoundtripping) a wikilink inside a template name, which breaks the template ... ok test_integration04_rich_heading (tests.test_roundtripping.TestRoundtripping) a heading with templates/wikilinks in it ... ok test_integration05_html_entity_with_template (tests.test_roundtripping.TestRoundtripping) a HTML entity with a template embedded inside ... ok test_integration06_html_entity_with_comment (tests.test_roundtripping.TestRoundtripping) a HTML entity with a comment embedded inside ... ok test_integration07_rich_tags (tests.test_roundtripping.TestRoundtripping) a HTML tag with tons of other things in it ... ok test_integration08_wildcard (tests.test_roundtripping.TestRoundtripping) a wildcard assortment of various things ... ok test_integration09_wildcard_redux (tests.test_roundtripping.TestRoundtripping) an even wilder assortment of various things ... ok test_integration10_link_inside_dl (tests.test_roundtripping.TestRoundtripping) an external link inside a def list, such that the external link is parsed ... ok test_integration11_link_inside_dl_2 (tests.test_roundtripping.TestRoundtripping) an external link inside a def list, such that the external link is not parsed ... ok test_integration12_link_inside_template (tests.test_roundtripping.TestRoundtripping) an external link nested inside a template, before the end ... ok test_integration13_link_inside_template_2 (tests.test_roundtripping.TestRoundtripping) an external link nested inside a template, before a separator ... ok test_integration14_link_inside_template_3 (tests.test_roundtripping.TestRoundtripping) an external link nested inside a template, before an equal sign ... ok test_integration15_link_inside_argument (tests.test_roundtripping.TestRoundtripping) an external link nested inside an argument ... ok test_integration16_link_inside_heading (tests.test_roundtripping.TestRoundtripping) an external link nested inside a heading ... ok test_integration17_link_inside_tag_body (tests.test_roundtripping.TestRoundtripping) an external link nested inside the body of a tag ... ok test_integration18_link_inside_tag_style (tests.test_roundtripping.TestRoundtripping) an external link nested inside style tags ... ok test_integration19_style_tag_inside_link (tests.test_roundtripping.TestRoundtripping) style tags disrupting an external link ... ok test_integration20_comment_inside_link (tests.test_roundtripping.TestRoundtripping) an HTML comment inside an external link ... ok test_integration21_bracketed_link_inside_template (tests.test_roundtripping.TestRoundtripping) a bracketed external link nested inside a template, before the end ... ok test_integration22_comment_inside_bracketed_link (tests.test_roundtripping.TestRoundtripping) an HTML comment inside a bracketed external link ... ok test_integration23_wikilink_inside_external_link (tests.test_roundtripping.TestRoundtripping) a wikilink inside an external link, which the parser considers valid (see issue #61) ... ok test_integration24_external_link_inside_wikilink (tests.test_roundtripping.TestRoundtripping) an external link inside a wikilink, valid in the case of images (see issue #62) ... ok test_integration25_external_link_inside_wikilink_brackets (tests.test_roundtripping.TestRoundtripping) an external link with brackets inside a wikilink ... ok test_integration26_external_link_inside_wikilink_title (tests.test_roundtripping.TestRoundtripping) an external link inside a wikilink title, which is not parsed ... ok test_integration27_italics_inside_external_link_inside_incomplete_list (tests.test_roundtripping.TestRoundtripping) italic text inside an external link inside an incomplete list ... ok test_integration28_nodes_inside_external_link_after_punct (tests.test_roundtripping.TestRoundtripping) various complex nodes inside an external link following punctuation ... ok test_integration29_newline_and_comment_in_template_name (tests.test_roundtripping.TestRoundtripping) a template name containing a newline followed by a comment ... ok test_integration30_newline_and_comment_in_template_name_2 (tests.test_roundtripping.TestRoundtripping) a template name containing a newline followed by a comment ... ok test_integration31_newline_and_comment_in_template_name_3 (tests.test_roundtripping.TestRoundtripping) a template name containing a newline followed by a comment ... ok test_integration32_newline_and_comment_in_template_name_4 (tests.test_roundtripping.TestRoundtripping) a template name containing a newline followed by a comment ... ok test_integration33_newline_and_comment_in_template_name_5 (tests.test_roundtripping.TestRoundtripping) a template name containing a newline followed by a comment ... ok test_integration34_newline_and_comment_in_template_name_6 (tests.test_roundtripping.TestRoundtripping) a template name containing a newline followed by a comment ... ok test_integration35_newline_and_comment_in_template_name_7 (tests.test_roundtripping.TestRoundtripping) a template name containing a newline followed by a comment ... ok test_integration36_newline_and_comment_in_template_name_8 (tests.test_roundtripping.TestRoundtripping) a template name containing a newline followed by a comment ... ok test_integration37_tag_in_link_title (tests.test_roundtripping.TestRoundtripping) HTML tags are invalid in link titles, even when complete ... ok test_integration38_tag_in_template_name (tests.test_roundtripping.TestRoundtripping) HTML tags are invalid in template names, even when complete ... ok test_integration39_tag_in_link_text (tests.test_roundtripping.TestRoundtripping) HTML tags are valid in link text ... ok test_integration40_comment_in_link_title (tests.test_roundtripping.TestRoundtripping) comments are valid in link titles ... ok test_integration41_incomplete_comment_in_link_title (tests.test_roundtripping.TestRoundtripping) incomplete comments are invalid in link titles ... ok test_integration42_incomplete_comment_in_link_title_2 (tests.test_roundtripping.TestRoundtripping) incomplete comments are invalid in link titles ... ok test_integration43_incomplete_comment_in_link_title_3 (tests.test_roundtripping.TestRoundtripping) incomplete comments are invalid in link titles ... ok test_integration44_incomplete_comment_in_link_title_4 (tests.test_roundtripping.TestRoundtripping) incomplete comments are invalid in link titles ... ok test_integration45_incomplete_comment_in_link_title_5 (tests.test_roundtripping.TestRoundtripping) incomplete comments are invalid in link titles ... ok test_integration46_incomplete_comment_in_link_title_6 (tests.test_roundtripping.TestRoundtripping) incomplete comments are invalid in link titles ... ok test_integration47_wikilink_to_external_link_fallback (tests.test_roundtripping.TestRoundtripping) an external link enclosed in an extra pair of brackets (see issue #120) ... ok test_integration48_wikilink_to_external_link_fallback_2 (tests.test_roundtripping.TestRoundtripping) an external link enclosed in an extra pair of brackets (see issue #120) ... ok test_integration49_tables_in_templates (tests.test_roundtripping.TestRoundtripping) catch error handling mistakes when wikitables are inside templates ... ok test_integration50_tables_in_templates_2 (tests.test_roundtripping.TestRoundtripping) catch error handling mistakes when wikitables are inside templates ... ok test_integration51_many_invalid_nested_tags (tests.test_roundtripping.TestRoundtripping) many unending nested tags that should be treated as plain text, followed by valid wikitext (see issues #42, #183) ... ok test_tables01_empty_table (tests.test_roundtripping.TestRoundtripping) parsing an empty table ... ok test_tables02_inline_table (tests.test_roundtripping.TestRoundtripping) tables with a close on the same line are not valid ... ok test_tables03_no_table_close_simple (tests.test_roundtripping.TestRoundtripping) no table close on inline table ... ok test_tables04_no_table_close_newline (tests.test_roundtripping.TestRoundtripping) no table close with a newline ... ok test_tables05_no_table_close_inside_cell (tests.test_roundtripping.TestRoundtripping) no table close while inside of a cell ... ok test_tables06_no_table_close_inside_cell_after_newline (tests.test_roundtripping.TestRoundtripping) no table close while inside of a cell after a newline ... ok test_tables07_no_table_close_inside_cell_with_attributes (tests.test_roundtripping.TestRoundtripping) no table close while inside of a cell with attributes ... ok test_tables08_no_table_close_inside_row (tests.test_roundtripping.TestRoundtripping) no table close while inside of a row ... ok test_tables09_no_table_close_inside_row_after_newline (tests.test_roundtripping.TestRoundtripping) no table close while inside of a row after a newline ... ok test_tables10_no_table_close_row_and_cell (tests.test_roundtripping.TestRoundtripping) no table close while inside a cell inside a row ... ok test_tables11_no_table_close_attributes (tests.test_roundtripping.TestRoundtripping) don't parse attributes as attributes if the table doesn't exist ... ok test_tables12_no_table_close_unclosed_attributes (tests.test_roundtripping.TestRoundtripping) don't parse unclosed attributes if the table doesn't exist ... ok test_tables13_no_table_close_row_attributes (tests.test_roundtripping.TestRoundtripping) don't parse row attributes as attributes if the table doesn't exist ... ok test_tables14_no_table_close_cell (tests.test_roundtripping.TestRoundtripping) don't parse cells if the table doesn't close ... ok test_tables15_crazy_no_table_close (tests.test_roundtripping.TestRoundtripping) lots of opened wiki syntax without closes ... ok test_tables16_leading_whitespace_table (tests.test_roundtripping.TestRoundtripping) handle leading whitespace for a table ... ok test_tables17_whitespace_after_table (tests.test_roundtripping.TestRoundtripping) handle whitespace after a table close ... ok test_tables18_different_whitespace_after_table (tests.test_roundtripping.TestRoundtripping) handle spaces after a table close ... ok test_tables19_characters_after_table (tests.test_roundtripping.TestRoundtripping) handle characters after a table close ... ok test_tables20_characters_after_inline_table (tests.test_roundtripping.TestRoundtripping) handle characters after an inline table close ... ok test_tables21_leading_characters_table (tests.test_roundtripping.TestRoundtripping) don't parse as a table when leading characters are not newline or whitespace ... ok test_tables22_table_row_simple (tests.test_roundtripping.TestRoundtripping) simple table row ... ok test_tables23_table_row_multiple (tests.test_roundtripping.TestRoundtripping) simple table row ... ok test_tables24_table_cell_simple (tests.test_roundtripping.TestRoundtripping) simple table cell ... ok test_tables25_table_cell_inline (tests.test_roundtripping.TestRoundtripping) multiple inline table cells ... ok test_tables26_table_cell_multiple (tests.test_roundtripping.TestRoundtripping) multiple table cells (non-inline) ... ok test_tables27_table_header_simple (tests.test_roundtripping.TestRoundtripping) simple header cell ... ok test_tables28_table_header_inline (tests.test_roundtripping.TestRoundtripping) multiple inline header cells ... ok test_tables29_table_header_multiple (tests.test_roundtripping.TestRoundtripping) multiple table header cells (non-inline) ... ok test_tables30_nested_cells_and_rows (tests.test_roundtripping.TestRoundtripping) combination of cells and rows in a table ... ok test_tables31_table_cell_fake_close (tests.test_roundtripping.TestRoundtripping) looks like a table close but is not ... ok test_tables32_table_cell_more_fake_close (tests.test_roundtripping.TestRoundtripping) looks like a table close but is not ... ok test_tables33_table_cell_extra_close (tests.test_roundtripping.TestRoundtripping) process second close as text ... ok test_tables34_nowiki_inside_table (tests.test_roundtripping.TestRoundtripping) nowiki handles pipe characters in tables ... ok test_tables35_table_text_outside_cell (tests.test_roundtripping.TestRoundtripping) parse text inside table but outside of a cell ... ok test_tables36_no_table_cell_with_leading_characters (tests.test_roundtripping.TestRoundtripping) fail to create a table cell when there are leading non-whitespace characters ... ok test_tables37_no_table_row_with_leading_characters (tests.test_roundtripping.TestRoundtripping) fail to create a table row when there are leading non-whitespace characters ... ok test_tables38_template_inside_table_cell (tests.test_roundtripping.TestRoundtripping) template within table cell ... ok test_tables39_table_cell_attributes (tests.test_roundtripping.TestRoundtripping) parse table cell style attributes ... ok test_tables40_table_cell_empty_attributes (tests.test_roundtripping.TestRoundtripping) parse table cell with style markers but no attributes ... ok test_tables41_table_cell_with_dash (tests.test_roundtripping.TestRoundtripping) parse a situation in which a cell line looks like a row line ... ok test_tables42_table_cell_attributes_quote_with_pipe (tests.test_roundtripping.TestRoundtripping) pipe inside an attribute quote should still be used as a style separator ... ok test_tables43_table_cell_attributes_name_with_pipe (tests.test_roundtripping.TestRoundtripping) pipe inside an attribute name should still be used as a style separator ... ok test_tables44_table_cell_attributes_pipe_after_equals (tests.test_roundtripping.TestRoundtripping) pipe inside an attribute should still be used as a style separator after an equals ... ok test_tables45_table_cell_attributes_templates (tests.test_roundtripping.TestRoundtripping) pipe inside attributes shouldn't be style separator ... ok test_tables46_header_cell_attributes (tests.test_roundtripping.TestRoundtripping) parse header cell style attributes ... ok test_tables47_inline_cell_attributes (tests.test_roundtripping.TestRoundtripping) parse cell style attributes of inline cells ... ok test_tables48_table_row_attributes (tests.test_roundtripping.TestRoundtripping) parse table row style attributes ... ok test_tables49_table_row_attributes_crazy_whitespace (tests.test_roundtripping.TestRoundtripping) parse table row style attributes with different whitespace ... ok test_tables50_table_attributes (tests.test_roundtripping.TestRoundtripping) parse table style attributes ... ok test_tables51_inline_table_attributes (tests.test_roundtripping.TestRoundtripping) handle attributes in inline tables ... ok test_tables52_table_incorrect_attributes (tests.test_roundtripping.TestRoundtripping) parse incorrect table style attributes ... ok test_tables53_templates_in_table_attribute (tests.test_roundtripping.TestRoundtripping) templates in the attributes of a table, after the start ... ok test_tables54_templates_in_table_attribute_2 (tests.test_roundtripping.TestRoundtripping) templates in the attributes of a table, after the start ... ok test_tables55_inappropriate_marker_at_line_start (tests.test_roundtripping.TestRoundtripping) an inappropriate marker (a right bracket) at the start of a line in the table ... ok test_tables56_fake_close_near_start (tests.test_roundtripping.TestRoundtripping) a fake closing token at the end of the first line in the table ... ok test_tables57_fake_close_near_start_2 (tests.test_roundtripping.TestRoundtripping) a fake closing token at the end of the first line in the table ... ok test_tables58_junk_after_table_start (tests.test_roundtripping.TestRoundtripping) ignore more junk on the first line of the table ... ok test_tables59_junk_after_table_row (tests.test_roundtripping.TestRoundtripping) ignore junk on the first line of a table row ... ok test_tags01_basic (tests.test_roundtripping.TestRoundtripping) a basic tag with an open and close ... ok test_tags02_basic_selfclosing (tests.test_roundtripping.TestRoundtripping) a basic self-closing tag ... ok test_tags03_content (tests.test_roundtripping.TestRoundtripping) a tag with some content in the middle ... ok test_tags04_padded_open (tests.test_roundtripping.TestRoundtripping) a tag with some padding in the open tag ... ok test_tags05_padded_close (tests.test_roundtripping.TestRoundtripping) a tag with some padding in the close tag ... ok test_tags06_padded_selfclosing (tests.test_roundtripping.TestRoundtripping) a self-closing tag with padding ... ok test_tags07_attribute (tests.test_roundtripping.TestRoundtripping) a tag with a single attribute ... ok test_tags08_attribute_value (tests.test_roundtripping.TestRoundtripping) a tag with a single attribute with a value ... ok test_tags09_attribute_quoted (tests.test_roundtripping.TestRoundtripping) a tag with a single quoted attribute ... ok test_tags10_attribute_single_quoted (tests.test_roundtripping.TestRoundtripping) a tag with a single singly-quoted attribute ... ok test_tags11_attribute_hyphen (tests.test_roundtripping.TestRoundtripping) a tag with a single attribute, containing a hyphen ... ok test_tags12_attribute_quoted_hyphen (tests.test_roundtripping.TestRoundtripping) a tag with a single quoted attribute, containing a hyphen ... ok test_tags13_attribute_selfclosing (tests.test_roundtripping.TestRoundtripping) a self-closing tag with a single attribute ... ok test_tags14_attribute_selfclosing_value (tests.test_roundtripping.TestRoundtripping) a self-closing tag with a single attribute with a value ... ok test_tags15_attribute_selfclosing_value_quoted (tests.test_roundtripping.TestRoundtripping) a self-closing tag with a single quoted attribute ... ok test_tags16_nested_tag (tests.test_roundtripping.TestRoundtripping) a tag nested within the attributes of another ... ok test_tags17_nested_tag_quoted (tests.test_roundtripping.TestRoundtripping) a tag nested within the attributes of another, quoted ... ok test_tags18_nested_troll_tag (tests.test_roundtripping.TestRoundtripping) a bogus tag that appears to be nested within the attributes of another ... ok test_tags19_nested_troll_tag_quoted (tests.test_roundtripping.TestRoundtripping) a bogus tag that appears to be nested within the attributes of another, quoted ... ok test_tags20_nested_tag_selfclosing (tests.test_roundtripping.TestRoundtripping) a tag nested within the attributes of another; outer tag implicitly self-closing ... ok test_tags21_invalid_space_begin_open (tests.test_roundtripping.TestRoundtripping) invalid tag: a space at the beginning of the open tag ... ok test_tags22_invalid_space_begin_close (tests.test_roundtripping.TestRoundtripping) invalid tag: a space at the beginning of the close tag ... ok test_tags23_valid_space_end (tests.test_roundtripping.TestRoundtripping) valid tag: spaces at the ends of both the open and close tags ... ok test_tags24_invalid_template_ends (tests.test_roundtripping.TestRoundtripping) invalid tag: a template at the ends of both the open and close tags ... ok test_tags25_invalid_template_ends_nospace (tests.test_roundtripping.TestRoundtripping) invalid tag: a template at the ends of both the open and close tags, without spacing ... ok test_tags26_valid_template_end_open (tests.test_roundtripping.TestRoundtripping) valid tag: a template at the end of the open tag ... ok test_tags27_valid_template_end_open_space_end_close (tests.test_roundtripping.TestRoundtripping) valid tag: a template at the end of the open tag; whitespace at the end of the close tag ... ok test_tags28_invalid_template_end_open_nospace (tests.test_roundtripping.TestRoundtripping) invalid tag: a template at the end of the open tag, without spacing ... ok test_tags29_invalid_template_start_close (tests.test_roundtripping.TestRoundtripping) invalid tag: a template at the beginning of the close tag ... ok test_tags30_invalid_template_start_open (tests.test_roundtripping.TestRoundtripping) invalid tag: a template at the beginning of the open tag ... ok test_tags31_unclosed_quote (tests.test_roundtripping.TestRoundtripping) a quoted attribute that is never closed ... ok test_tags32_fake_quote (tests.test_roundtripping.TestRoundtripping) a fake quoted attribute ... ok test_tags33_fake_quote_complex (tests.test_roundtripping.TestRoundtripping) a fake quoted attribute, with spaces and templates and links ... ok test_tags34_quotes_in_quotes (tests.test_roundtripping.TestRoundtripping) singly-quoted text inside a doubly-quoted attribute ... ok test_tags35_quotes_in_quotes_2 (tests.test_roundtripping.TestRoundtripping) doubly-quoted text inside a singly-quoted attribute ... ok test_tags36_quotes_in_quotes_3 (tests.test_roundtripping.TestRoundtripping) doubly-quoted text inside a singly-quoted attribute, with backslashes ... ok test_tags37_incomplete_lbracket (tests.test_roundtripping.TestRoundtripping) incomplete tags: just a left bracket ... ok test_tags38_incomplete_lbracket_junk (tests.test_roundtripping.TestRoundtripping) incomplete tags: just a left bracket, surrounded by stuff ... ok test_tags39_incomplete_unclosed_open (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed open tag ... ok test_tags40_incomplete_unclosed_open_space (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed open tag, space ... ok test_tags41_incomplete_unclosed_open_unnamed_attr (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed open tag, unnamed attribute ... ok test_tags42_incomplete_unclosed_open_attr_equals (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed open tag, attribute, equal sign ... ok test_tags43_incomplete_unclosed_open_attr_equals_quoted (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed open tag, attribute, equal sign, quote ... ok test_tags44_incomplete_unclosed_open_attr (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed open tag, attribute with a key/value ... ok test_tags45_incomplete_unclosed_open_attr_quoted (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed open tag, attribute with a key/value, quoted ... ok test_tags46_incomplete_open (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag ... ok test_tags47_incomplete_open_unnamed_attr (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, unnamed attribute ... ok test_tags48_incomplete_open_attr_equals (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, attribute, equal sign ... ok test_tags49_incomplete_open_attr (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, attribute with a key/value ... ok test_tags50_incomplete_open_attr_quoted (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, attribute with a key/value, quoted ... ok test_tags51_incomplete_open_text (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, text ... ok test_tags52_incomplete_open_attr_text (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, attribute with a key/value, text ... ok test_tags53_incomplete_open_text_lbracket (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, text, left open bracket ... ok test_tags54_incomplete_open_text_lbracket_slash (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, text, left bracket, slash ... ok test_tags55_incomplete_open_text_unclosed_close (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, text, unclosed close ... ok test_tags56_incomplete_open_text_wrong_close (tests.test_roundtripping.TestRoundtripping) incomplete tags: an open tag, text, wrong close ... ok test_tags57_incomplete_unclosed_close (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed close tag ... ok test_tags58_incomplete_unclosed_close_text (tests.test_roundtripping.TestRoundtripping) incomplete tags: an unclosed close tag, with text ... ok test_tags59_incomplete_close (tests.test_roundtripping.TestRoundtripping) incomplete tags: a close tag ... ok test_tags60_incomplete_no_tag_name_open (tests.test_roundtripping.TestRoundtripping) incomplete tags: no tag name within brackets; just an open ... ok test_tags61_incomplete_no_tag_name_selfclosing (tests.test_roundtripping.TestRoundtripping) incomplete tags: no tag name within brackets; self-closing ... ok test_tags62_incomplete_no_tag_name_open_close (tests.test_roundtripping.TestRoundtripping) incomplete tags: no tag name within brackets; open and close ... ok test_tags63_backslash_premature_before (tests.test_roundtripping.TestRoundtripping) a backslash before a quote before a space ... ok test_tags64_backslash_premature_after (tests.test_roundtripping.TestRoundtripping) a backslash before a quote after a space ... ok test_tags65_backslash_premature_middle (tests.test_roundtripping.TestRoundtripping) a backslash before a quote in the middle of a word ... ok test_tags66_backslash_adjacent (tests.test_roundtripping.TestRoundtripping) escaped quotes next to unescaped quotes ... ok test_tags67_backslash_endquote (tests.test_roundtripping.TestRoundtripping) backslashes before the end quote, causing the attribute to become unquoted ... ok test_tags68_backslash_double (tests.test_roundtripping.TestRoundtripping) two adjacent backslashes, which do *not* affect the quote ... ok test_tags69_backslash_triple (tests.test_roundtripping.TestRoundtripping) three adjacent backslashes, which do *not* affect the quote ... ok test_tags70_backslash_unaffecting (tests.test_roundtripping.TestRoundtripping) backslashes near quotes, but not immediately adjacent, thus having no effect ... ok test_tags71_unparsable (tests.test_roundtripping.TestRoundtripping) a tag that should not be put through the normal parser ... ok test_tags72_unparsable_complex (tests.test_roundtripping.TestRoundtripping) a tag that should not be put through the normal parser; lots of stuff inside ... ok test_tags73_unparsable_attributed (tests.test_roundtripping.TestRoundtripping) a tag that should not be put through the normal parser; parsed attributes ... ok test_tags74_unparsable_incomplete (tests.test_roundtripping.TestRoundtripping) a tag that should not be put through the normal parser; incomplete ... ok test_tags75_unparsable_entity (tests.test_roundtripping.TestRoundtripping) a HTML entity inside unparsable text is still parsed ... ok test_tags76_unparsable_entity_incomplete (tests.test_roundtripping.TestRoundtripping) an incomplete HTML entity inside unparsable text ... ok test_tags77_unparsable_entity_incomplete_2 (tests.test_roundtripping.TestRoundtripping) an incomplete HTML entity inside unparsable text ... ok test_tags78_single_open_close (tests.test_roundtripping.TestRoundtripping) a tag that supports being single; both an open and a close tag ... ok test_tags79_single_open (tests.test_roundtripping.TestRoundtripping) a tag that supports being single; just an open tag ... ok test_tags80_single_selfclose (tests.test_roundtripping.TestRoundtripping) a tag that supports being single; a self-closing tag ... ok test_tags81_single_close (tests.test_roundtripping.TestRoundtripping) a tag that supports being single; just a close tag ... ok test_tags82_single_only_open_close (tests.test_roundtripping.TestRoundtripping) a tag that can only be single; both an open and a close tag ... ok test_tags83_single_only_open (tests.test_roundtripping.TestRoundtripping) a tag that can only be single; just an open tag ... ok test_tags84_single_only_selfclose (tests.test_roundtripping.TestRoundtripping) a tag that can only be single; a self-closing tag ... ok test_tags85_single_only_close (tests.test_roundtripping.TestRoundtripping) a tag that can only be single; just a close tag ... ok test_tags86_single_only_double (tests.test_roundtripping.TestRoundtripping) a tag that can only be single; a tag with backslashes at the beginning and end ... ok test_tags87_single_only_close_attribute (tests.test_roundtripping.TestRoundtripping) a tag that can only be single; presented as a close tag with an attribute ... ok test_tags88_capitalization (tests.test_roundtripping.TestRoundtripping) caps should be ignored within tag names ... ok test_tags89_unparsable_incomplete_close (tests.test_roundtripping.TestRoundtripping) an unparsable tag with an incomplete close afterwards ... ok test_tags90_unparsable_with_intermediates (tests.test_roundtripping.TestRoundtripping) an unparsable tag with intermediate tags inside of it ... ok test_tags91_unparsable_with_intermediates_normalize (tests.test_roundtripping.TestRoundtripping) an unparsable tag with intermediate tags inside of it, requiring normalization ... ok test_tags92_non_ascii_open (tests.test_roundtripping.TestRoundtripping) a open tag containing non-ASCII characters ... ok test_tags93_non_ascii_full (tests.test_roundtripping.TestRoundtripping) an open/close tag pair containing non-ASCII characters ... ok test_tags94_single_nested_selfclosing (tests.test_roundtripping.TestRoundtripping) a single (unpaired) tag with a self-closing tag in the middle (see issue #147) ... ok test_tags_wikimarkup01_basic_italics (tests.test_roundtripping.TestRoundtripping) basic italic text ... ok test_tags_wikimarkup02_basic_bold (tests.test_roundtripping.TestRoundtripping) basic bold text ... ok test_tags_wikimarkup03_basic_ul (tests.test_roundtripping.TestRoundtripping) basic unordered list ... ok test_tags_wikimarkup04_basic_ol (tests.test_roundtripping.TestRoundtripping) basic ordered list ... ok test_tags_wikimarkup05_basic_dt (tests.test_roundtripping.TestRoundtripping) basic description term ... ok test_tags_wikimarkup06_basic_dd (tests.test_roundtripping.TestRoundtripping) basic description item ... ok test_tags_wikimarkup07_basic_hr (tests.test_roundtripping.TestRoundtripping) basic horizontal rule ... ok test_tags_wikimarkup08_complex_italics (tests.test_roundtripping.TestRoundtripping) italics with a lot in them ... ok test_tags_wikimarkup09_multiline_italics (tests.test_roundtripping.TestRoundtripping) italics spanning mulitple lines ... ok test_tags_wikimarkup10_unending_italics (tests.test_roundtripping.TestRoundtripping) italics without an ending tag ... ok test_tags_wikimarkup11_misleading_italics_end (tests.test_roundtripping.TestRoundtripping) italics with something that looks like an end but isn't ... ok test_tags_wikimarkup12_italics_start_outside_end_inside (tests.test_roundtripping.TestRoundtripping) italics that start outside a link and end inside it ... ok test_tags_wikimarkup13_italics_start_inside_end_outside (tests.test_roundtripping.TestRoundtripping) italics that start inside a link and end outside it ... ok test_tags_wikimarkup14_complex_bold (tests.test_roundtripping.TestRoundtripping) bold with a lot in it ... ok test_tags_wikimarkup15_multiline_bold (tests.test_roundtripping.TestRoundtripping) bold spanning mulitple lines ... ok test_tags_wikimarkup16_unending_bold (tests.test_roundtripping.TestRoundtripping) bold without an ending tag ... ok test_tags_wikimarkup17_misleading_bold_end (tests.test_roundtripping.TestRoundtripping) bold with something that looks like an end but isn't ... ok test_tags_wikimarkup18_bold_start_outside_end_inside (tests.test_roundtripping.TestRoundtripping) bold that start outside a link and end inside it ... ok test_tags_wikimarkup19_bold_start_inside_end_outside (tests.test_roundtripping.TestRoundtripping) bold that start inside a link and end outside it ... ok test_tags_wikimarkup20_bold_and_italics (tests.test_roundtripping.TestRoundtripping) bold and italics together ... ok test_tags_wikimarkup21_both_then_bold (tests.test_roundtripping.TestRoundtripping) text that starts bold/italic, then is just bold ... ok test_tags_wikimarkup22_both_then_italics (tests.test_roundtripping.TestRoundtripping) text that starts bold/italic, then is just italic ... ok test_tags_wikimarkup23_bold_then_both (tests.test_roundtripping.TestRoundtripping) text that starts just bold, then is bold/italic ... ok test_tags_wikimarkup24_italics_then_both (tests.test_roundtripping.TestRoundtripping) text that starts just italic, then is bold/italic ... ok test_tags_wikimarkup25_italics_then_bold (tests.test_roundtripping.TestRoundtripping) text that starts italic, then is bold ... ok test_tags_wikimarkup26_bold_then_italics (tests.test_roundtripping.TestRoundtripping) text that starts bold, then is italic ... ok test_tags_wikimarkup27_five_three (tests.test_roundtripping.TestRoundtripping) five ticks to open, three to close (bold) ... ok test_tags_wikimarkup28_five_two (tests.test_roundtripping.TestRoundtripping) five ticks to open, two to close (bold) ... ok test_tags_wikimarkup29_four (tests.test_roundtripping.TestRoundtripping) four ticks ... ok test_tags_wikimarkup30_four_two (tests.test_roundtripping.TestRoundtripping) four ticks to open, two to close ... ok test_tags_wikimarkup31_two_three (tests.test_roundtripping.TestRoundtripping) two ticks to open, three to close ... ok test_tags_wikimarkup32_two_four (tests.test_roundtripping.TestRoundtripping) two ticks to open, four to close ... ok test_tags_wikimarkup33_two_three_two (tests.test_roundtripping.TestRoundtripping) two ticks to open, three to close, two afterwards ... ok test_tags_wikimarkup34_two_four_four (tests.test_roundtripping.TestRoundtripping) two ticks to open, four to close, four afterwards ... ok test_tags_wikimarkup35_seven (tests.test_roundtripping.TestRoundtripping) seven ticks ... ok test_tags_wikimarkup36_unending_bold_and_italics (tests.test_roundtripping.TestRoundtripping) five ticks (bold and italics) that don't end ... ok test_tags_wikimarkup37_complex_ul (tests.test_roundtripping.TestRoundtripping) ul with a lot in it ... ok test_tags_wikimarkup38_ul_multiline_template (tests.test_roundtripping.TestRoundtripping) ul with a template that spans multiple lines ... ok test_tags_wikimarkup39_ul_adjacent (tests.test_roundtripping.TestRoundtripping) multiple adjacent uls ... ok test_tags_wikimarkup40_ul_depths (tests.test_roundtripping.TestRoundtripping) multiple adjacent uls, with differing depths ... ok test_tags_wikimarkup41_ul_space_before (tests.test_roundtripping.TestRoundtripping) uls with space before them ... ok test_tags_wikimarkup42_ul_interruption (tests.test_roundtripping.TestRoundtripping) high-depth ul with something blocking it ... ok test_tags_wikimarkup43_complex_ol (tests.test_roundtripping.TestRoundtripping) ol with a lot in it ... ok test_tags_wikimarkup44_ol_multiline_template (tests.test_roundtripping.TestRoundtripping) ol with a template that spans moltiple lines ... ok test_tags_wikimarkup45_ol_adjacent (tests.test_roundtripping.TestRoundtripping) moltiple adjacent ols ... ok test_tags_wikimarkup46_ol_depths (tests.test_roundtripping.TestRoundtripping) moltiple adjacent ols, with differing depths ... ok test_tags_wikimarkup47_ol_space_before (tests.test_roundtripping.TestRoundtripping) ols with space before them ... ok test_tags_wikimarkup48_ol_interruption (tests.test_roundtripping.TestRoundtripping) high-depth ol with something blocking it ... ok test_tags_wikimarkup49_ul_ol_mix (tests.test_roundtripping.TestRoundtripping) a mix of adjacent uls and ols ... ok test_tags_wikimarkup50_complex_dt (tests.test_roundtripping.TestRoundtripping) dt with a lot in it ... ok test_tags_wikimarkup51_dt_multiline_template (tests.test_roundtripping.TestRoundtripping) dt with a template that spans mdttiple lines ... ok test_tags_wikimarkup52_dt_adjacent (tests.test_roundtripping.TestRoundtripping) mdttiple adjacent dts ... ok test_tags_wikimarkup53_dt_depths (tests.test_roundtripping.TestRoundtripping) mdttiple adjacent dts, with differing depths ... ok test_tags_wikimarkup54_dt_space_before (tests.test_roundtripping.TestRoundtripping) dts with space before them ... ok test_tags_wikimarkup55_dt_interruption (tests.test_roundtripping.TestRoundtripping) high-depth dt with something blocking it ... ok test_tags_wikimarkup56_complex_dd (tests.test_roundtripping.TestRoundtripping) dd with a lot in it ... ok test_tags_wikimarkup57_dd_multiline_template (tests.test_roundtripping.TestRoundtripping) dd with a template that spans mddtiple lines ... ok test_tags_wikimarkup58_dd_adjacent (tests.test_roundtripping.TestRoundtripping) mddtiple adjacent dds ... ok test_tags_wikimarkup59_dd_depths (tests.test_roundtripping.TestRoundtripping) mddtiple adjacent dds, with differing depths ... ok test_tags_wikimarkup60_dd_space_before (tests.test_roundtripping.TestRoundtripping) dds with space before them ... ok test_tags_wikimarkup61_dd_interruption (tests.test_roundtripping.TestRoundtripping) high-depth dd with something blocking it ... ok test_tags_wikimarkup62_dt_dd_mix (tests.test_roundtripping.TestRoundtripping) a mix of adjacent dts and dds ... ok test_tags_wikimarkup63_dt_dd_mix2 (tests.test_roundtripping.TestRoundtripping) the correct usage of a dt/dd unit, as in a dl ... ok test_tags_wikimarkup64_dt_dd_mix3 (tests.test_roundtripping.TestRoundtripping) another example of correct (but strange) dt/dd usage ... ok test_tags_wikimarkup65_dt_dd_mix4 (tests.test_roundtripping.TestRoundtripping) another example of correct dt/dd usage, with a trigger for a specific parse route ... ok test_tags_wikimarkup66_ul_ol_dt_dd_mix (tests.test_roundtripping.TestRoundtripping) an assortment of uls, ols, dds, and dts ... ok test_tags_wikimarkup67_hr_text_before (tests.test_roundtripping.TestRoundtripping) text before an otherwise-valid hr ... ok test_tags_wikimarkup68_hr_text_after (tests.test_roundtripping.TestRoundtripping) text after a valid hr ... ok test_tags_wikimarkup69_hr_text_before_after (tests.test_roundtripping.TestRoundtripping) text at both ends of an otherwise-valid hr ... ok test_tags_wikimarkup70_hr_newlines (tests.test_roundtripping.TestRoundtripping) newlines surrounding a valid hr ... ok test_tags_wikimarkup71_hr_adjacent (tests.test_roundtripping.TestRoundtripping) two adjacent hrs ... ok test_tags_wikimarkup72_hr_adjacent_space (tests.test_roundtripping.TestRoundtripping) two adjacent hrs, with a space before the second one, making it invalid ... ok test_tags_wikimarkup73_hr_short (tests.test_roundtripping.TestRoundtripping) an invalid three-hyphen-long hr ... ok test_tags_wikimarkup74_hr_long (tests.test_roundtripping.TestRoundtripping) a very long, valid hr ... ok test_tags_wikimarkup75_hr_interruption_short (tests.test_roundtripping.TestRoundtripping) a hr that is interrupted, making it invalid ... ok test_tags_wikimarkup76_hr_interruption_long (tests.test_roundtripping.TestRoundtripping) a hr that is interrupted, but the first part remains valid because it is long enough ... ok test_tags_wikimarkup77_nowiki_cancel (tests.test_roundtripping.TestRoundtripping) a nowiki tag before a list causes it to not be parsed ... ok test_templates001_no_params (tests.test_roundtripping.TestRoundtripping) simplest type of template ... ok test_templates002_one_param_unnamed (tests.test_roundtripping.TestRoundtripping) basic template with one unnamed parameter ... ok test_templates003_one_param_named (tests.test_roundtripping.TestRoundtripping) basic template with one named parameter ... ok test_templates004_multiple_unnamed_params (tests.test_roundtripping.TestRoundtripping) basic template with multiple unnamed parameters ... ok test_templates005_multiple_named_params (tests.test_roundtripping.TestRoundtripping) basic template with multiple named parameters ... ok test_templates006_multiple_mixed_params (tests.test_roundtripping.TestRoundtripping) basic template with multiple unnamed/named parameters ... ok test_templates007_multiple_mixed_params2 (tests.test_roundtripping.TestRoundtripping) basic template with multiple unnamed/named parameters in another order ... ok test_templates008_blank_params (tests.test_roundtripping.TestRoundtripping) template with blank parameters (mix of pipes and equal signs) ... ok test_templates009_nested_unnamed_param (tests.test_roundtripping.TestRoundtripping) nested template as an unnamed parameter ... ok test_templates010_nested_named_param_value (tests.test_roundtripping.TestRoundtripping) nested template as a parameter value with a named parameter ... ok test_templates011_nested_named_param_name_and_value (tests.test_roundtripping.TestRoundtripping) nested templates as a parameter name and value ... ok test_templates012_nested_name_start (tests.test_roundtripping.TestRoundtripping) nested template at the beginning of a template name ... ok test_templates013_nested_name_start_unnamed_param (tests.test_roundtripping.TestRoundtripping) nested template at the beginning of a template name and as an unnamed parameter ... ok test_templates014_nested_name_start_named_param_value (tests.test_roundtripping.TestRoundtripping) nested template at the beginning of a template name and as a parameter value with a named parameter ... ok test_templates015_nested_name_start_named_param_name_and_value (tests.test_roundtripping.TestRoundtripping) nested template at the beginning of a template name and as a parameter name and value ... ok test_templates016_nested_name_end (tests.test_roundtripping.TestRoundtripping) nested template at the end of a template name ... ok test_templates017_nested_name_end_unnamed_param (tests.test_roundtripping.TestRoundtripping) nested template at the end of a template name and as an unnamed parameter ... ok test_templates018_nested_name_end_named_param_value (tests.test_roundtripping.TestRoundtripping) nested template at the end of a template name and as a parameter value with a named parameter ... ok test_templates019_nested_name_end_named_param_name_and_value (tests.test_roundtripping.TestRoundtripping) nested template at the end of a template name and as a parameter name and value ... ok test_templates020_nested_name_mid (tests.test_roundtripping.TestRoundtripping) nested template in the middle of a template name ... ok test_templates021_nested_name_mid_unnamed_param (tests.test_roundtripping.TestRoundtripping) nested template in the middle of a template name and as an unnamed parameter ... ok test_templates022_nested_name_mid_named_param_value (tests.test_roundtripping.TestRoundtripping) nested template in the middle of a template name and as a parameter value with a named parameter ... ok test_templates023_nested_name_mid_named_param_name_and_value (tests.test_roundtripping.TestRoundtripping) nested template in the middle of a template name and as a parameter name and value ... ok test_templates024_nested_name_start_end (tests.test_roundtripping.TestRoundtripping) nested template at the beginning and end of a template name ... ok test_templates025_nested_name_start_end_unnamed_param (tests.test_roundtripping.TestRoundtripping) nested template at the beginning and end of a template name and as an unnamed parameter ... ok test_templates026_nested_name_start_end_named_param_value (tests.test_roundtripping.TestRoundtripping) nested template at the beginning and end of a template name and as a parameter value with a named parameter ... ok test_templates027_nested_name_start_end_named_param_name_and_value (tests.test_roundtripping.TestRoundtripping) nested template at the beginning and end of a template name and as a parameter name and value ... ok test_templates028_nested_names_multiple (tests.test_roundtripping.TestRoundtripping) multiple nested templates within nested templates ... ok test_templates029_nested_names_multiple_unnamed_param (tests.test_roundtripping.TestRoundtripping) multiple nested templates within nested templates with a nested unnamed parameter ... ok test_templates030_nested_names_multiple_named_param_value (tests.test_roundtripping.TestRoundtripping) multiple nested templates within nested templates with a nested parameter value in a named parameter ... ok test_templates031_nested_names_multiple_named_param_name_and_value (tests.test_roundtripping.TestRoundtripping) multiple nested templates within nested templates with a nested parameter name and value ... ok test_templates032_mixed_nested_templates (tests.test_roundtripping.TestRoundtripping) mixed assortment of nested templates within template names, parameter names, and values ... ok test_templates033_nested_two_args (tests.test_roundtripping.TestRoundtripping) template whose first parameter is unnamed with two templates, followed by a named parameter ... ok test_templates034_newlines_start (tests.test_roundtripping.TestRoundtripping) a newline at the start of a template name ... ok test_templates035_newlines_end (tests.test_roundtripping.TestRoundtripping) a newline at the end of a template name ... ok test_templates036_newlines_start_end (tests.test_roundtripping.TestRoundtripping) a newline at the start and end of a template name ... ok test_templates037_newlines_mid (tests.test_roundtripping.TestRoundtripping) a newline at the middle of a template name ... ok test_templates038_newlines_start_mid (tests.test_roundtripping.TestRoundtripping) a newline at the start and middle of a template name ... ok test_templates039_newlines_mid_end (tests.test_roundtripping.TestRoundtripping) a newline at the middle and end of a template name ... ok test_templates040_newlines_start_mid_end (tests.test_roundtripping.TestRoundtripping) a newline at the start, middle, and end of a template name ... ok test_templates041_newlines_unnamed_param (tests.test_roundtripping.TestRoundtripping) newlines within an unnamed template parameter ... ok test_templates042_newlines_enclose_template_name_unnamed_param (tests.test_roundtripping.TestRoundtripping) newlines enclosing a template name and within an unnamed template parameter ... ok test_templates043_newlines_within_template_name_unnamed_param (tests.test_roundtripping.TestRoundtripping) newlines within a template name and within an unnamed template parameter ... ok test_templates044_newlines_enclose_template_name_named_param_value (tests.test_roundtripping.TestRoundtripping) newlines enclosing a template name and within a named parameter value ... ok test_templates045_newlines_within_template_name_named_param_value (tests.test_roundtripping.TestRoundtripping) newlines within a template name and within a named parameter value ... ok test_templates046_newlines_named_param_name (tests.test_roundtripping.TestRoundtripping) newlines within a parameter name ... ok test_templates047_newlines_named_param_name_param_value (tests.test_roundtripping.TestRoundtripping) newlines within a parameter name and within a parameter value ... ok test_templates048_newlines_enclose_template_name_named_param_name (tests.test_roundtripping.TestRoundtripping) newlines enclosing a template name and within a parameter name ... ok test_templates049_newlines_enclose_template_name_named_param_name_param_value (tests.test_roundtripping.TestRoundtripping) newlines enclosing a template name and within a parameter name and within a parameter value ... ok test_templates050_newlines_within_template_name_named_param_name (tests.test_roundtripping.TestRoundtripping) newlines within a template name and within a parameter name ... ok test_templates051_newlines_within_template_name_named_param_name_param_value (tests.test_roundtripping.TestRoundtripping) newlines within a template name and within a parameter name and within a parameter value ... ok test_templates052_newlines_wildcard (tests.test_roundtripping.TestRoundtripping) a random, complex assortment of templates and newlines ... ok test_templates053_newlines_wildcard_redux (tests.test_roundtripping.TestRoundtripping) an even more random and complex assortment of templates and newlines ... ok test_templates054_newlines_wildcard_redux_invalid (tests.test_roundtripping.TestRoundtripping) a variation of the newlines_wildcard_redux test that is invalid ... ok test_templates055_newlines_spaces (tests.test_roundtripping.TestRoundtripping) newlines in the middle of a template name, followed by spaces ... ok test_templates056_newlines_spaces_param (tests.test_roundtripping.TestRoundtripping) newlines in the middle of a template name, followed by spaces, with a parameter ... ok test_templates057_invalid_blank (tests.test_roundtripping.TestRoundtripping) invalid template with no content ... ok test_templates058_invalid_blank_whitespace (tests.test_roundtripping.TestRoundtripping) invalid template with no content, but whitespace ... ok test_templates059_invalid_blank_pipe (tests.test_roundtripping.TestRoundtripping) invalid template with no content, but a parameter ... ok test_templates060_invalid_blank_whitespace_pipe (tests.test_roundtripping.TestRoundtripping) invalid template with no content, but whitespace and a parameter ... ok test_templates061_invalid_name_left_brace_middle (tests.test_roundtripping.TestRoundtripping) invalid characters in template name: left brace in middle ... ok test_templates062_invalid_name_right_brace_middle (tests.test_roundtripping.TestRoundtripping) invalid characters in template name: right brace in middle ... ok test_templates063_invalid_name_left_braces (tests.test_roundtripping.TestRoundtripping) invalid characters in template name: two left braces in middle ... ok test_templates064_invalid_name_left_bracket_middle (tests.test_roundtripping.TestRoundtripping) invalid characters in template name: left bracket in middle ... ok test_templates065_invalid_name_right_bracket_middle (tests.test_roundtripping.TestRoundtripping) invalid characters in template name: right bracket in middle ... ok test_templates066_invalid_name_left_bracket_start (tests.test_roundtripping.TestRoundtripping) invalid characters in template name: left bracket at start ... ok test_templates067_invalid_name_right_bracket_start (tests.test_roundtripping.TestRoundtripping) invalid characters in template name: right bracket at end ... ok test_templates068_valid_name_left_brace_start (tests.test_roundtripping.TestRoundtripping) valid characters in template name: left brace at start ... ok test_templates069_valid_unnamed_param_left_brace (tests.test_roundtripping.TestRoundtripping) valid characters in unnamed template parameter: left brace ... ok test_templates070_valid_unnamed_param_braces (tests.test_roundtripping.TestRoundtripping) valid characters in unnamed template parameter: left and right braces ... ok test_templates071_valid_param_name_braces (tests.test_roundtripping.TestRoundtripping) valid characters in template parameter name: left and right braces ... ok test_templates072_valid_param_name_brackets (tests.test_roundtripping.TestRoundtripping) valid characters in unnamed template parameter: left and right brackets ... ok test_templates073_valid_param_name_double_left_brackets (tests.test_roundtripping.TestRoundtripping) valid characters in unnamed template parameter: double left brackets ... ok test_templates074_valid_param_name_double_right_brackets (tests.test_roundtripping.TestRoundtripping) valid characters in unnamed template parameter: double right brackets ... ok test_templates075_valid_param_name_double_brackets (tests.test_roundtripping.TestRoundtripping) valid characters in unnamed template parameter: double left and right brackets ... ok test_templates076_invalid_param_name_double_left_braces (tests.test_roundtripping.TestRoundtripping) invalid characters in template parameter name: double left braces ... ok test_templates077_invalid_param_name_double_braces (tests.test_roundtripping.TestRoundtripping) invalid characters in template parameter name: double left and right braces ... ok test_templates078_invalid_left_angle_bracket (tests.test_roundtripping.TestRoundtripping) invalid template: left angle bracket in name ... ok test_templates079_invalid_right_angle_bracket (tests.test_roundtripping.TestRoundtripping) invalid template: right angle bracket in name ... ok test_templates080_incomplete_stub (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: just an opening ... ok test_templates081_incomplete_plain (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: no close whatsoever ... ok test_templates082_incomplete_right_brace (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: only one right brace ... ok test_templates083_incomplete_pipe (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: a pipe ... ok test_templates084_incomplete_unnamed_param (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: an unnamed parameter ... ok test_templates085_incomplete_unnamed_param_pipe (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: an unnamed parameter, then a pipe ... ok test_templates086_incomplete_valueless_param (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: an a named parameter with no value ... ok test_templates087_incomplete_valueless_param_pipe (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: a named parameter with no value, then a pipe ... ok test_templates088_incomplete_named_param (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: a named parameter with a value ... ok test_templates089_incomplete_named_param_pipe (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: a named parameter with a value, then a paipe ... ok test_templates090_incomplete_two_unnamed_params (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: two unnamed parameters ... ok test_templates091_incomplete_unnamed_param_valueless_param (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: an unnamed parameter, then a named parameter with no value ... ok test_templates092_incomplete_unnamed_param_named_param (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: an unnamed parameter, then a named parameter with a value ... ok test_templates093_incomplete_named_param_unnamed_param (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: a named parameter with a value, then an unnamed parameter ... ok test_templates094_incomplete_named_param_valueless_param (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: a named parameter with a value, then a named parameter with no value ... ok test_templates095_incomplete_two_named_params (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: two named parameters with values ... ok test_templates096_incomplete_nested_template_as_unnamed_param (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: a valid nested template as an unnamed parameter ... ok test_templates097_incomplete_nested_template_as_param_value (tests.test_roundtripping.TestRoundtripping) incomplete templates that should fail gracefully: a valid nested template as a parameter value ... ok test_templates098_recursion_five_hundred_opens (tests.test_roundtripping.TestRoundtripping) test potentially dangerous recursion: five hundred template openings, without spaces ... ok test_templates099_recursion_one_hundred_opens (tests.test_roundtripping.TestRoundtripping) test potentially dangerous recursion: one hundred template openings, with spaces ... ok test_templates100_recursion_opens_and_closes (tests.test_roundtripping.TestRoundtripping) test potentially dangerous recursion: template openings and closings ... ok test_text1_basic (tests.test_roundtripping.TestRoundtripping) sanity check for basic text parsing, no gimmicks ... ok test_text2_newlines (tests.test_roundtripping.TestRoundtripping) slightly more complex text parsing, with newlines ... ok test_text3_unicode (tests.test_roundtripping.TestRoundtripping) ensure unicode data is handled properly ... ok test_text4_unicode2 (tests.test_roundtripping.TestRoundtripping) additional unicode check for non-BMP codepoints ... ok test_text5_large (tests.test_roundtripping.TestRoundtripping) a lot of text, requiring proper storage in the C tokenizer ... ok test_wikilinks01_blank (tests.test_roundtripping.TestRoundtripping) wikilink with no content ... ok test_wikilinks02_blank_with_text (tests.test_roundtripping.TestRoundtripping) wikilink with no content but a pipe ... ok test_wikilinks03_basic (tests.test_roundtripping.TestRoundtripping) simplest type of wikilink ... ok test_wikilinks04_with_text (tests.test_roundtripping.TestRoundtripping) wikilink with a text value ... ok test_wikilinks05_blank_with_multiple_texts (tests.test_roundtripping.TestRoundtripping) no content, multiple pipes ... ok test_wikilinks06_multiple_texts (tests.test_roundtripping.TestRoundtripping) multiple text values separated by pipes ... ok test_wikilinks07_newline_text (tests.test_roundtripping.TestRoundtripping) a newline in the middle of the text ... ok test_wikilinks08_bracket_text (tests.test_roundtripping.TestRoundtripping) a left bracket in the middle of the text ... ok test_wikilinks09_nested (tests.test_roundtripping.TestRoundtripping) a wikilink nested within another ... ok test_wikilinks10_nested_padding (tests.test_roundtripping.TestRoundtripping) a wikilink nested within another, separated by other data ... ok test_wikilinks11_invalid_newline (tests.test_roundtripping.TestRoundtripping) invalid wikilink: newline as only content ... ok test_wikilinks12_invalid_right_brace (tests.test_roundtripping.TestRoundtripping) invalid wikilink: right brace ... ok test_wikilinks13_invalid_left_brace (tests.test_roundtripping.TestRoundtripping) invalid wikilink: left brace ... ok test_wikilinks14_invalid_right_bracket (tests.test_roundtripping.TestRoundtripping) invalid wikilink: right bracket ... ok test_wikilinks15_invalid_left_bracket (tests.test_roundtripping.TestRoundtripping) invalid wikilink: left bracket ... ok test_wikilinks16_invalid_nested (tests.test_roundtripping.TestRoundtripping) invalid wikilink: trying to nest in the wrong context ... ok test_wikilinks17_invalid_nested_padding (tests.test_roundtripping.TestRoundtripping) invalid wikilink: trying to nest in the wrong context, with a text param ... ok test_wikilinks18_invalid_nested_no_close (tests.test_roundtripping.TestRoundtripping) invalid wikilink: a wikilink nested within the value of another, missing a pair of closing brackets ... ok test_wikilinks19_invalid_left_angle_bracket (tests.test_roundtripping.TestRoundtripping) invalid wikilink: left angle bracket ... ok test_wikilinks20_invalid_right_angle_bracket (tests.test_roundtripping.TestRoundtripping) invalid wikilink: right angle bracket ... ok test_wikilinks21_invalid_newline_at_start (tests.test_roundtripping.TestRoundtripping) invalid wikilink: newline at start of title ... ok test_wikilinks22_invalid_newline_at_end (tests.test_roundtripping.TestRoundtripping) invalid wikilink: newline at end of title ... ok test_wikilinks23_incomplete_open_only (tests.test_roundtripping.TestRoundtripping) incomplete wikilinks: just an open ... ok test_wikilinks24_incomplete_open_text (tests.test_roundtripping.TestRoundtripping) incomplete wikilinks: an open with some text ... ok test_wikilinks25_incomplete_open_text_pipe (tests.test_roundtripping.TestRoundtripping) incomplete wikilinks: an open, text, then a pipe ... ok test_wikilinks26_incomplete_open_pipe (tests.test_roundtripping.TestRoundtripping) incomplete wikilinks: an open, then a pipe ... ok test_wikilinks27_incomplete_open_pipe_text (tests.test_roundtripping.TestRoundtripping) incomplete wikilinks: an open, then a pipe, then text ... ok test_wikilinks28_incomplete_open_pipes_text (tests.test_roundtripping.TestRoundtripping) incomplete wikilinks: a pipe, then text then two pipes ... ok test_wikilinks29_incomplete_open_partial_close (tests.test_roundtripping.TestRoundtripping) incomplete wikilinks: an open, then one right brace ... ok test_wikilinks30_incomplete_preserve_previous (tests.test_roundtripping.TestRoundtripping) incomplete wikilinks: a valid wikilink followed by an invalid one ... ok test_children (tests.test_argument.TestArgument) test Argument.__children__() ... ok test_default (tests.test_argument.TestArgument) test getter/setter for the default attribute ... ok test_name (tests.test_argument.TestArgument) test getter/setter for the name attribute ... ok test_showtree (tests.test_argument.TestArgument) test Argument.__showtree__() ... ok test_strip (tests.test_argument.TestArgument) test Argument.__strip__() ... ok test_unicode (tests.test_argument.TestArgument) test Argument.__unicode__() ... ok test_attributes (tests.test_tokens.TestTokens) check that Token attributes can be managed properly ... ok test_equality (tests.test_tokens.TestTokens) check that equivalent tokens are considered equal ... ok test_issubclass (tests.test_tokens.TestTokens) check that all classes within the tokens module are really Tokens ... ok test_repr (tests.test_tokens.TestTokens) check that repr() on a Token works as expected ... ok test_repr_equality (tests.test_tokens.TestTokens) check that eval(repr(token)) == token ... ok test_readme_1 (tests.test_docs.TestDocs) test a block of example code in the README ... ok test_readme_2 (tests.test_docs.TestDocs) test a block of example code in the README ... ok test_readme_3 (tests.test_docs.TestDocs) test a block of example code in the README ... ok test_readme_4 (tests.test_docs.TestDocs) test a block of example code in the README ... ok test_readme_5 (tests.test_docs.TestDocs) test a block of example code in the README; includes a web call ... skipped 'cannot continue because of unsuccessful web call' test_children (tests.test_html_entity.TestHTMLEntity) test HTMLEntity.__children__() ... ok test_hex_char (tests.test_html_entity.TestHTMLEntity) test getter/setter for the hex_char attribute ... ok test_hexadecimal (tests.test_html_entity.TestHTMLEntity) test getter/setter for the hexadecimal attribute ... ok test_named (tests.test_html_entity.TestHTMLEntity) test getter/setter for the named attribute ... ok test_normalize (tests.test_html_entity.TestHTMLEntity) test getter/setter for the normalize attribute ... ok test_showtree (tests.test_html_entity.TestHTMLEntity) test HTMLEntity.__showtree__() ... ok test_strip (tests.test_html_entity.TestHTMLEntity) test HTMLEntity.__strip__() ... ok test_unicode (tests.test_html_entity.TestHTMLEntity) test HTMLEntity.__unicode__() ... ok test_value (tests.test_html_entity.TestHTMLEntity) test getter/setter for the value attribute ... ok test_append (tests.test_wikicode.TestWikicode) test Wikicode.append() ... ok test_contains (tests.test_wikicode.TestWikicode) test Wikicode.contains() ... ok test_filter_family (tests.test_wikicode.TestWikicode) test the Wikicode.i?filter() family of functions ... ok test_get (tests.test_wikicode.TestWikicode) test Wikicode.get() ... ok test_get_ancestors_parent (tests.test_wikicode.TestWikicode) test Wikicode.get_ancestors() and Wikicode.get_parent() ... ok test_get_sections (tests.test_wikicode.TestWikicode) test Wikicode.get_sections() ... ok test_get_tree (tests.test_wikicode.TestWikicode) test Wikicode.get_tree() ... ok test_index (tests.test_wikicode.TestWikicode) test Wikicode.index() ... ok test_insert (tests.test_wikicode.TestWikicode) test Wikicode.insert() ... ok test_insert_after (tests.test_wikicode.TestWikicode) test Wikicode.insert_after() ... ok test_insert_before (tests.test_wikicode.TestWikicode) test Wikicode.insert_before() ... ok test_matches (tests.test_wikicode.TestWikicode) test Wikicode.matches() ... ok test_nodes (tests.test_wikicode.TestWikicode) test getter/setter for the nodes attribute ... ok test_remove (tests.test_wikicode.TestWikicode) test Wikicode.remove() ... ok test_replace (tests.test_wikicode.TestWikicode) test Wikicode.replace() ... ok test_set (tests.test_wikicode.TestWikicode) test Wikicode.set() ... ok test_strip_code (tests.test_wikicode.TestWikicode) test Wikicode.strip_code() ... ok test_unicode (tests.test_wikicode.TestWikicode) test Wikicode.__unicode__() ... ok test_children (tests.test_heading.TestHeading) test Heading.__children__() ... ok test_level (tests.test_heading.TestHeading) test getter/setter for the level attribute ... ok test_showtree (tests.test_heading.TestHeading) test Heading.__showtree__() ... ok test_strip (tests.test_heading.TestHeading) test Heading.__strip__() ... ok test_title (tests.test_heading.TestHeading) test getter/setter for the title attribute ... ok test_unicode (tests.test_heading.TestHeading) test Heading.__unicode__() ... ok test_parsing (tests.test_parser.TestParser) integration test for parsing overall ... ok test_skip_style_tags (tests.test_parser.TestParser) test Parser.parse(skip_style_tags=True) ... ok test_use_c (tests.test_parser.TestParser) make sure the correct tokenizer is used ... ok test_arguments01_blank (tests.test_pytokenizer.TestPyTokenizer) argument with no content ... ok test_arguments02_blank_with_default (tests.test_pytokenizer.TestPyTokenizer) argument with no content but a pipe ... ok test_arguments03_basic (tests.test_pytokenizer.TestPyTokenizer) simplest type of argument ... ok test_arguments04_default (tests.test_pytokenizer.TestPyTokenizer) argument with a default value ... ok test_arguments05_blank_with_multiple_defaults (tests.test_pytokenizer.TestPyTokenizer) no content, multiple pipes ... ok test_arguments06_multiple_defaults (tests.test_pytokenizer.TestPyTokenizer) multiple values separated by pipes ... ok test_arguments07_newline (tests.test_pytokenizer.TestPyTokenizer) newline as only content ... ok test_arguments08_right_braces (tests.test_pytokenizer.TestPyTokenizer) multiple } scattered throughout text ... ok test_arguments09_right_braces_default (tests.test_pytokenizer.TestPyTokenizer) multiple } scattered throughout text, with a default value ... ok test_arguments10_nested (tests.test_pytokenizer.TestPyTokenizer) an argument nested within another argument ... ok test_arguments11_invalid_braces (tests.test_pytokenizer.TestPyTokenizer) invalid argument: multiple braces that are not part of a template or argument ... ok test_arguments12_incomplete_open_only (tests.test_pytokenizer.TestPyTokenizer) incomplete arguments: just an open ... ok test_arguments13_incomplete_open_text (tests.test_pytokenizer.TestPyTokenizer) incomplete arguments: an open with some text ... ok test_arguments14_incomplete_open_text_pipe (tests.test_pytokenizer.TestPyTokenizer) incomplete arguments: an open, text, then a pipe ... ok test_arguments15_incomplete_open_pipe (tests.test_pytokenizer.TestPyTokenizer) incomplete arguments: an open, then a pipe ... ok test_arguments16_incomplete_open_pipe_text (tests.test_pytokenizer.TestPyTokenizer) incomplete arguments: an open, then a pipe, then text ... ok test_arguments17_incomplete_open_pipes_text (tests.test_pytokenizer.TestPyTokenizer) incomplete arguments: a pipe, then text then two pipes ... ok test_arguments18_incomplete_open_partial_close (tests.test_pytokenizer.TestPyTokenizer) incomplete arguments: an open, then one right brace ... ok test_arguments19_incomplete_preserve_previous (tests.test_pytokenizer.TestPyTokenizer) incomplete arguments: a valid argument followed by an invalid one ... ok test_comments1_blank (tests.test_pytokenizer.TestPyTokenizer) a blank comment ... ok test_comments2_basic (tests.test_pytokenizer.TestPyTokenizer) a basic comment ... ok test_comments3_tons_of_nonsense (tests.test_pytokenizer.TestPyTokenizer) a comment with tons of ignorable garbage in it ... ok test_comments4_incomplete_blank (tests.test_pytokenizer.TestPyTokenizer) a comment that doesn't close ... ok test_comments5_incomplete_text (tests.test_pytokenizer.TestPyTokenizer) a comment that doesn't close, with text ... ok test_comments6_incomplete_partial_close (tests.test_pytokenizer.TestPyTokenizer) a comment that doesn't close, with a partial close ... ok test_comments7_incomplete_part_only (tests.test_pytokenizer.TestPyTokenizer) a comment that only has a < and ! ... ok test_external_links01_basic (tests.test_pytokenizer.TestPyTokenizer) basic external link ... ok test_external_links02_basic_brackets (tests.test_pytokenizer.TestPyTokenizer) basic external link in brackets ... ok test_external_links03_brackets_space (tests.test_pytokenizer.TestPyTokenizer) basic external link in brackets, with a space after ... ok test_external_links04_brackets_title (tests.test_pytokenizer.TestPyTokenizer) basic external link in brackets, with a title ... ok test_external_links05_brackets_multiword_title (tests.test_pytokenizer.TestPyTokenizer) basic external link in brackets, with a multi-word title ... ok test_external_links06_brackets_adjacent (tests.test_pytokenizer.TestPyTokenizer) three adjacent bracket-enclosed external links ... ok test_external_links07_brackets_newline_before (tests.test_pytokenizer.TestPyTokenizer) bracket-enclosed link with a newline before the title ... ok test_external_links08_brackets_newline_inside (tests.test_pytokenizer.TestPyTokenizer) bracket-enclosed link with a newline in the title ... ok test_external_links09_brackets_newline_after (tests.test_pytokenizer.TestPyTokenizer) bracket-enclosed link with a newline after the title ... ok test_external_links10_brackets_space_before (tests.test_pytokenizer.TestPyTokenizer) bracket-enclosed link with a space before the URL ... ok test_external_links11_brackets_title_like_url (tests.test_pytokenizer.TestPyTokenizer) bracket-enclosed link with a title that looks like a URL ... ok test_external_links12_brackets_recursive (tests.test_pytokenizer.TestPyTokenizer) bracket-enclosed link with a bracket-enclosed link as the title ... ok test_external_links13_brackets_recursive_2 (tests.test_pytokenizer.TestPyTokenizer) bracket-enclosed link with a double bracket-enclosed link as the title ... ok test_external_links14_period_after (tests.test_pytokenizer.TestPyTokenizer) a period after a free link that is excluded ... ok test_external_links15_colons_after (tests.test_pytokenizer.TestPyTokenizer) colons after a free link that are excluded ... ok test_external_links16_close_paren_after_excluded (tests.test_pytokenizer.TestPyTokenizer) a closing parenthesis after a free link that is excluded ... ok test_external_links17_close_paren_after_included (tests.test_pytokenizer.TestPyTokenizer) a closing parenthesis after a free link that is included because of an opening parenthesis in the URL ... ok test_external_links18_open_bracket_inside (tests.test_pytokenizer.TestPyTokenizer) an open bracket inside a free link that causes it to be ended abruptly ... ok test_external_links19_brackets_period_after (tests.test_pytokenizer.TestPyTokenizer) a period after a bracket-enclosed link that is included ... ok test_external_links20_brackets_punct_after (tests.test_pytokenizer.TestPyTokenizer) punctuation after a bracket-enclosed link that are included ... ok test_external_links21_brackets_close_paren_after_included (tests.test_pytokenizer.TestPyTokenizer) a closing parenthesis after a bracket-enclosed link that is included ... ok test_external_links22_brackets_close_paren_after_included_2 (tests.test_pytokenizer.TestPyTokenizer) a closing parenthesis after a bracket-enclosed link that is also included ... ok test_external_links23_brackets_open_bracket_inside (tests.test_pytokenizer.TestPyTokenizer) an open bracket inside a bracket-enclosed link that is also included ... ok test_external_links24_adjacent_space (tests.test_pytokenizer.TestPyTokenizer) two free links separated by a space ... ok test_external_links25_adjacent_newline (tests.test_pytokenizer.TestPyTokenizer) two free links separated by a newline ... ok test_external_links26_adjacent_close_bracket (tests.test_pytokenizer.TestPyTokenizer) two free links separated by a close bracket ... ok test_external_links27_html_entity_in_url (tests.test_pytokenizer.TestPyTokenizer) a HTML entity parsed correctly inside a free link ... ok test_external_links28_template_in_url (tests.test_pytokenizer.TestPyTokenizer) a template parsed correctly inside a free link ... ok test_external_links29_argument_in_url (tests.test_pytokenizer.TestPyTokenizer) an argument parsed correctly inside a free link ... ok test_external_links30_wikilink_in_url (tests.test_pytokenizer.TestPyTokenizer) a wikilink that destroys a free link ... ok test_external_links31_external_link_in_url (tests.test_pytokenizer.TestPyTokenizer) a bracketed link that destroys a free link ... ok test_external_links32_spaces_padding (tests.test_pytokenizer.TestPyTokenizer) spaces padding a free link ... ok test_external_links33_text_and_spaces_padding (tests.test_pytokenizer.TestPyTokenizer) text and spaces padding a free link ... ok test_external_links34_template_before (tests.test_pytokenizer.TestPyTokenizer) a template before a free link ... ok test_external_links35_spaces_padding_no_slashes (tests.test_pytokenizer.TestPyTokenizer) spaces padding a free link with no slashes after the colon ... ok test_external_links36_text_and_spaces_padding_no_slashes (tests.test_pytokenizer.TestPyTokenizer) text and spaces padding a free link with no slashes after the colon ... ok test_external_links37_template_before_no_slashes (tests.test_pytokenizer.TestPyTokenizer) a template before a free link with no slashes after the colon ... ok test_external_links38_no_slashes (tests.test_pytokenizer.TestPyTokenizer) a free link with no slashes after the colon ... ok test_external_links39_slashes_optional (tests.test_pytokenizer.TestPyTokenizer) a free link using a scheme that doesn't need slashes, but has them anyway ... ok test_external_links40_short (tests.test_pytokenizer.TestPyTokenizer) a very short free link ... ok test_external_links41_slashes_missing (tests.test_pytokenizer.TestPyTokenizer) slashes missing from a free link with a scheme that requires them ... ok test_external_links42_no_scheme_but_slashes (tests.test_pytokenizer.TestPyTokenizer) no scheme in a free link, but slashes (protocol-relative free links are not supported) ... ok test_external_links43_no_scheme_but_colon (tests.test_pytokenizer.TestPyTokenizer) no scheme in a free link, but a colon ... ok test_external_links44_no_scheme_but_colon_and_slashes (tests.test_pytokenizer.TestPyTokenizer) no scheme in a free link, but a colon and slashes ... ok test_external_links45_fake_scheme_no_slashes (tests.test_pytokenizer.TestPyTokenizer) a nonexistent scheme in a free link, without slashes ... ok test_external_links46_fake_scheme_slashes (tests.test_pytokenizer.TestPyTokenizer) a nonexistent scheme in a free link, with slashes ... ok test_external_links47_fake_scheme_brackets_no_slashes (tests.test_pytokenizer.TestPyTokenizer) a nonexistent scheme in a bracketed link, without slashes ... ok test_external_links48_fake_scheme_brackets_slashes (tests.test_pytokenizer.TestPyTokenizer) #=a nonexistent scheme in a bracketed link, with slashes ... ok test_external_links49_interrupted_scheme (tests.test_pytokenizer.TestPyTokenizer) an otherwise valid scheme with something in the middle of it, in a free link ... ok test_external_links50_interrupted_scheme_brackets (tests.test_pytokenizer.TestPyTokenizer) an otherwise valid scheme with something in the middle of it, in a bracketed link ... ok test_external_links51_no_slashes_brackets (tests.test_pytokenizer.TestPyTokenizer) no slashes after the colon in a bracketed link ... ok test_external_links52_space_before_no_slashes_brackets (tests.test_pytokenizer.TestPyTokenizer) a space before a bracketed link with no slashes after the colon ... ok test_external_links53_slashes_optional_brackets (tests.test_pytokenizer.TestPyTokenizer) a bracketed link using a scheme that doesn't need slashes, but has them anyway ... ok test_external_links54_short_brackets (tests.test_pytokenizer.TestPyTokenizer) a very short link in brackets ... ok test_external_links55_slashes_missing_brackets (tests.test_pytokenizer.TestPyTokenizer) slashes missing from a scheme that requires them in a bracketed link ... ok test_external_links56_protcol_relative (tests.test_pytokenizer.TestPyTokenizer) a protocol-relative link (in brackets) ... ok test_external_links57_scheme_missing_but_colon_brackets (tests.test_pytokenizer.TestPyTokenizer) scheme missing from a bracketed link, but with a colon ... ok test_external_links58_scheme_missing_but_colon_slashes_brackets (tests.test_pytokenizer.TestPyTokenizer) scheme missing from a bracketed link, but with a colon and slashes ... ok test_external_links59_unclosed_protocol_relative (tests.test_pytokenizer.TestPyTokenizer) an unclosed protocol-relative bracketed link ... ok test_external_links60_space_before_protcol_relative (tests.test_pytokenizer.TestPyTokenizer) a space before a protocol-relative bracketed link ... ok test_external_links61_unclosed_just_scheme (tests.test_pytokenizer.TestPyTokenizer) an unclosed bracketed link, ending after the scheme ... ok test_external_links62_unclosed_scheme_colon (tests.test_pytokenizer.TestPyTokenizer) an unclosed bracketed link, ending after the colon ... ok test_external_links63_unclosed_scheme_colon_slashes (tests.test_pytokenizer.TestPyTokenizer) an unclosed bracketed link, ending after the slashes ... ok test_external_links64_incomplete_bracket (tests.test_pytokenizer.TestPyTokenizer) just an open bracket ... ok test_external_links65_incomplete_scheme_colon (tests.test_pytokenizer.TestPyTokenizer) a free link with just a scheme and a colon ... ok test_external_links66_incomplete_scheme_colon_slashes (tests.test_pytokenizer.TestPyTokenizer) a free link with just a scheme, colon, and slashes ... ok test_external_links67_brackets_scheme_but_no_url (tests.test_pytokenizer.TestPyTokenizer) brackets around a scheme and a colon ... ok test_external_links68_brackets_scheme_slashes_but_no_url (tests.test_pytokenizer.TestPyTokenizer) brackets around a scheme, colon, and slashes ... ok test_external_links69_brackets_scheme_title_but_no_url (tests.test_pytokenizer.TestPyTokenizer) brackets around a scheme, colon, and slashes, with a title ... ok test_headings01_level_1 (tests.test_pytokenizer.TestPyTokenizer) a basic level-1 heading ... ok test_headings02_level_2 (tests.test_pytokenizer.TestPyTokenizer) a basic level-2 heading ... ok test_headings03_level_3 (tests.test_pytokenizer.TestPyTokenizer) a basic level-3 heading ... ok test_headings04_level_4 (tests.test_pytokenizer.TestPyTokenizer) a basic level-4 heading ... ok test_headings05_level_5 (tests.test_pytokenizer.TestPyTokenizer) a basic level-5 heading ... ok test_headings06_level_6 (tests.test_pytokenizer.TestPyTokenizer) a basic level-6 heading ... ok test_headings07_level_7 (tests.test_pytokenizer.TestPyTokenizer) a level-6 heading that pretends to be a level-7 heading ... ok test_headings08_level_3_2 (tests.test_pytokenizer.TestPyTokenizer) a level-2 heading that pretends to be a level-3 heading ... ok test_headings09_level_4_6 (tests.test_pytokenizer.TestPyTokenizer) a level-4 heading that pretends to be a level-6 heading ... ok test_headings10_newline_before (tests.test_pytokenizer.TestPyTokenizer) a heading that starts after a newline ... ok test_headings11_text_after (tests.test_pytokenizer.TestPyTokenizer) text on the same line after ... ok test_headings12_invalid_text_before (tests.test_pytokenizer.TestPyTokenizer) invalid headings: text on the same line before ... ok test_headings13_invalid_newline_middle (tests.test_pytokenizer.TestPyTokenizer) invalid headings: newline in the middle ... ok test_headings14_invalid_newline_end (tests.test_pytokenizer.TestPyTokenizer) invalid headings: newline in the middle ... ok test_headings15_invalid_nesting (tests.test_pytokenizer.TestPyTokenizer) invalid headings: attempts at nesting ... ok test_headings16_incomplete (tests.test_pytokenizer.TestPyTokenizer) a heading that starts but doesn't finish ... ok test_html_entities01_named (tests.test_pytokenizer.TestPyTokenizer) a basic named HTML entity ... ok test_html_entities02_numeric_decimal (tests.test_pytokenizer.TestPyTokenizer) a basic decimal HTML entity ... ok test_html_entities03_numeric_hexadecimal_x (tests.test_pytokenizer.TestPyTokenizer) a basic hexadecimal HTML entity, using 'x' as a signal ... ok test_html_entities04_numeric_hexadecimal_X (tests.test_pytokenizer.TestPyTokenizer) a basic hexadecimal HTML entity, using 'X' as a signal ... ok test_html_entities05_numeric_decimal_max (tests.test_pytokenizer.TestPyTokenizer) the maximum acceptable decimal numeric entity ... ok test_html_entities06_numeric_hex_max (tests.test_pytokenizer.TestPyTokenizer) the maximum acceptable hexadecimal numeric entity ... ok test_html_entities07_numeric_zeros (tests.test_pytokenizer.TestPyTokenizer) zeros accepted at the beginning of a numeric entity ... ok test_html_entities08_numeric_hex_zeros (tests.test_pytokenizer.TestPyTokenizer) zeros accepted at the beginning of a hex numeric entity ... ok test_html_entities09_invalid_named_too_long (tests.test_pytokenizer.TestPyTokenizer) a named entity that is too long ... ok test_html_entities10_invalid_named_undefined (tests.test_pytokenizer.TestPyTokenizer) a named entity that doesn't exist ... ok test_html_entities11_invalid_named_nonascii (tests.test_pytokenizer.TestPyTokenizer) a named entity with non-ASCII characters ... ok test_html_entities12_invalid_numeric_out_of_range_1 (tests.test_pytokenizer.TestPyTokenizer) a numeric entity that is out of range: < 1 ... ok test_html_entities13_invalid_numeric_out_of_range_2 (tests.test_pytokenizer.TestPyTokenizer) a hex numeric entity that is out of range: < 1 ... ok test_html_entities14_invalid_numeric_out_of_range_3 (tests.test_pytokenizer.TestPyTokenizer) a numeric entity that is out of range: > 0x10FFFF ... ok test_html_entities15_invalid_numeric_out_of_range_4 (tests.test_pytokenizer.TestPyTokenizer) a hex numeric entity that is out of range: > 0x10FFFF ... ok test_html_entities16_invalid_partial_amp (tests.test_pytokenizer.TestPyTokenizer) invalid entities: just an ampersand ... ok test_html_entities17_invalid_partial_amp_semicolon (tests.test_pytokenizer.TestPyTokenizer) invalid entities: an ampersand and semicolon ... ok test_html_entities18_invalid_partial_amp_pound (tests.test_pytokenizer.TestPyTokenizer) invalid entities: just an ampersand, pound sign ... ok test_html_entities19_invalid_partial_amp_pound_x (tests.test_pytokenizer.TestPyTokenizer) invalid entities: just an ampersand, pound sign, x ... ok test_html_entities20_invalid_partial_amp_pound_semicolon (tests.test_pytokenizer.TestPyTokenizer) invalid entities: an ampersand, pound sign, and semicolon ... ok test_html_entities21_invalid_partial_amp_pound_x_semicolon (tests.test_pytokenizer.TestPyTokenizer) invalid entities: an ampersand, pound sign, x, and semicolon ... ok test_html_entities22_invalid_partial_amp_pound_numbers (tests.test_pytokenizer.TestPyTokenizer) invalid entities: an ampersand, pound sign, numbers ... ok test_html_entities23_invalid_partial_amp_pound_x_semicolon (tests.test_pytokenizer.TestPyTokenizer) invalid entities: an ampersand, pound sign, and x ... ok test_integration01_empty (tests.test_pytokenizer.TestPyTokenizer) sanity check that parsing an empty string yields nothing ... ok test_integration02_template_argument_mix (tests.test_pytokenizer.TestPyTokenizer) an ambiguous mix of templates and arguments ... ok test_integration03_link_in_template_name (tests.test_pytokenizer.TestPyTokenizer) a wikilink inside a template name, which breaks the template ... ok test_integration04_rich_heading (tests.test_pytokenizer.TestPyTokenizer) a heading with templates/wikilinks in it ... ok test_integration05_html_entity_with_template (tests.test_pytokenizer.TestPyTokenizer) a HTML entity with a template embedded inside ... ok test_integration06_html_entity_with_comment (tests.test_pytokenizer.TestPyTokenizer) a HTML entity with a comment embedded inside ... ok test_integration07_rich_tags (tests.test_pytokenizer.TestPyTokenizer) a HTML tag with tons of other things in it ... ok test_integration08_wildcard (tests.test_pytokenizer.TestPyTokenizer) a wildcard assortment of various things ... ok test_integration09_wildcard_redux (tests.test_pytokenizer.TestPyTokenizer) an even wilder assortment of various things ... ok test_integration10_link_inside_dl (tests.test_pytokenizer.TestPyTokenizer) an external link inside a def list, such that the external link is parsed ... ok test_integration11_link_inside_dl_2 (tests.test_pytokenizer.TestPyTokenizer) an external link inside a def list, such that the external link is not parsed ... ok test_integration12_link_inside_template (tests.test_pytokenizer.TestPyTokenizer) an external link nested inside a template, before the end ... ok test_integration13_link_inside_template_2 (tests.test_pytokenizer.TestPyTokenizer) an external link nested inside a template, before a separator ... ok test_integration14_link_inside_template_3 (tests.test_pytokenizer.TestPyTokenizer) an external link nested inside a template, before an equal sign ... ok test_integration15_link_inside_argument (tests.test_pytokenizer.TestPyTokenizer) an external link nested inside an argument ... ok test_integration16_link_inside_heading (tests.test_pytokenizer.TestPyTokenizer) an external link nested inside a heading ... ok test_integration17_link_inside_tag_body (tests.test_pytokenizer.TestPyTokenizer) an external link nested inside the body of a tag ... ok test_integration18_link_inside_tag_style (tests.test_pytokenizer.TestPyTokenizer) an external link nested inside style tags ... ok test_integration19_style_tag_inside_link (tests.test_pytokenizer.TestPyTokenizer) style tags disrupting an external link ... ok test_integration20_comment_inside_link (tests.test_pytokenizer.TestPyTokenizer) an HTML comment inside an external link ... ok test_integration21_bracketed_link_inside_template (tests.test_pytokenizer.TestPyTokenizer) a bracketed external link nested inside a template, before the end ... ok test_integration22_comment_inside_bracketed_link (tests.test_pytokenizer.TestPyTokenizer) an HTML comment inside a bracketed external link ... ok test_integration23_wikilink_inside_external_link (tests.test_pytokenizer.TestPyTokenizer) a wikilink inside an external link, which the parser considers valid (see issue #61) ... ok test_integration24_external_link_inside_wikilink (tests.test_pytokenizer.TestPyTokenizer) an external link inside a wikilink, valid in the case of images (see issue #62) ... ok test_integration25_external_link_inside_wikilink_brackets (tests.test_pytokenizer.TestPyTokenizer) an external link with brackets inside a wikilink ... ok test_integration26_external_link_inside_wikilink_title (tests.test_pytokenizer.TestPyTokenizer) an external link inside a wikilink title, which is not parsed ... ok test_integration27_italics_inside_external_link_inside_incomplete_list (tests.test_pytokenizer.TestPyTokenizer) italic text inside an external link inside an incomplete list ... ok test_integration28_nodes_inside_external_link_after_punct (tests.test_pytokenizer.TestPyTokenizer) various complex nodes inside an external link following punctuation ... ok test_integration29_newline_and_comment_in_template_name (tests.test_pytokenizer.TestPyTokenizer) a template name containing a newline followed by a comment ... ok test_integration30_newline_and_comment_in_template_name_2 (tests.test_pytokenizer.TestPyTokenizer) a template name containing a newline followed by a comment ... ok test_integration31_newline_and_comment_in_template_name_3 (tests.test_pytokenizer.TestPyTokenizer) a template name containing a newline followed by a comment ... ok test_integration32_newline_and_comment_in_template_name_4 (tests.test_pytokenizer.TestPyTokenizer) a template name containing a newline followed by a comment ... ok test_integration33_newline_and_comment_in_template_name_5 (tests.test_pytokenizer.TestPyTokenizer) a template name containing a newline followed by a comment ... ok test_integration34_newline_and_comment_in_template_name_6 (tests.test_pytokenizer.TestPyTokenizer) a template name containing a newline followed by a comment ... ok test_integration35_newline_and_comment_in_template_name_7 (tests.test_pytokenizer.TestPyTokenizer) a template name containing a newline followed by a comment ... ok test_integration36_newline_and_comment_in_template_name_8 (tests.test_pytokenizer.TestPyTokenizer) a template name containing a newline followed by a comment ... ok test_integration37_tag_in_link_title (tests.test_pytokenizer.TestPyTokenizer) HTML tags are invalid in link titles, even when complete ... ok test_integration38_tag_in_template_name (tests.test_pytokenizer.TestPyTokenizer) HTML tags are invalid in template names, even when complete ... ok test_integration39_tag_in_link_text (tests.test_pytokenizer.TestPyTokenizer) HTML tags are valid in link text ... ok test_integration40_comment_in_link_title (tests.test_pytokenizer.TestPyTokenizer) comments are valid in link titles ... ok test_integration41_incomplete_comment_in_link_title (tests.test_pytokenizer.TestPyTokenizer) incomplete comments are invalid in link titles ... ok test_integration42_incomplete_comment_in_link_title_2 (tests.test_pytokenizer.TestPyTokenizer) incomplete comments are invalid in link titles ... ok test_integration43_incomplete_comment_in_link_title_3 (tests.test_pytokenizer.TestPyTokenizer) incomplete comments are invalid in link titles ... ok test_integration44_incomplete_comment_in_link_title_4 (tests.test_pytokenizer.TestPyTokenizer) incomplete comments are invalid in link titles ... ok test_integration45_incomplete_comment_in_link_title_5 (tests.test_pytokenizer.TestPyTokenizer) incomplete comments are invalid in link titles ... ok test_integration46_incomplete_comment_in_link_title_6 (tests.test_pytokenizer.TestPyTokenizer) incomplete comments are invalid in link titles ... ok test_integration47_wikilink_to_external_link_fallback (tests.test_pytokenizer.TestPyTokenizer) an external link enclosed in an extra pair of brackets (see issue #120) ... ok test_integration48_wikilink_to_external_link_fallback_2 (tests.test_pytokenizer.TestPyTokenizer) an external link enclosed in an extra pair of brackets (see issue #120) ... ok test_integration49_tables_in_templates (tests.test_pytokenizer.TestPyTokenizer) catch error handling mistakes when wikitables are inside templates ... ok test_integration50_tables_in_templates_2 (tests.test_pytokenizer.TestPyTokenizer) catch error handling mistakes when wikitables are inside templates ... ok test_integration51_many_invalid_nested_tags (tests.test_pytokenizer.TestPyTokenizer) many unending nested tags that should be treated as plain text, followed by valid wikitext (see issues #42, #183) ... ok test_tables01_empty_table (tests.test_pytokenizer.TestPyTokenizer) parsing an empty table ... ok test_tables02_inline_table (tests.test_pytokenizer.TestPyTokenizer) tables with a close on the same line are not valid ... ok test_tables03_no_table_close_simple (tests.test_pytokenizer.TestPyTokenizer) no table close on inline table ... ok test_tables04_no_table_close_newline (tests.test_pytokenizer.TestPyTokenizer) no table close with a newline ... ok test_tables05_no_table_close_inside_cell (tests.test_pytokenizer.TestPyTokenizer) no table close while inside of a cell ... ok test_tables06_no_table_close_inside_cell_after_newline (tests.test_pytokenizer.TestPyTokenizer) no table close while inside of a cell after a newline ... ok test_tables07_no_table_close_inside_cell_with_attributes (tests.test_pytokenizer.TestPyTokenizer) no table close while inside of a cell with attributes ... ok test_tables08_no_table_close_inside_row (tests.test_pytokenizer.TestPyTokenizer) no table close while inside of a row ... ok test_tables09_no_table_close_inside_row_after_newline (tests.test_pytokenizer.TestPyTokenizer) no table close while inside of a row after a newline ... ok test_tables10_no_table_close_row_and_cell (tests.test_pytokenizer.TestPyTokenizer) no table close while inside a cell inside a row ... ok test_tables11_no_table_close_attributes (tests.test_pytokenizer.TestPyTokenizer) don't parse attributes as attributes if the table doesn't exist ... ok test_tables12_no_table_close_unclosed_attributes (tests.test_pytokenizer.TestPyTokenizer) don't parse unclosed attributes if the table doesn't exist ... ok test_tables13_no_table_close_row_attributes (tests.test_pytokenizer.TestPyTokenizer) don't parse row attributes as attributes if the table doesn't exist ... ok test_tables14_no_table_close_cell (tests.test_pytokenizer.TestPyTokenizer) don't parse cells if the table doesn't close ... ok test_tables15_crazy_no_table_close (tests.test_pytokenizer.TestPyTokenizer) lots of opened wiki syntax without closes ... ok test_tables16_leading_whitespace_table (tests.test_pytokenizer.TestPyTokenizer) handle leading whitespace for a table ... ok test_tables17_whitespace_after_table (tests.test_pytokenizer.TestPyTokenizer) handle whitespace after a table close ... ok test_tables18_different_whitespace_after_table (tests.test_pytokenizer.TestPyTokenizer) handle spaces after a table close ... ok test_tables19_characters_after_table (tests.test_pytokenizer.TestPyTokenizer) handle characters after a table close ... ok test_tables20_characters_after_inline_table (tests.test_pytokenizer.TestPyTokenizer) handle characters after an inline table close ... ok test_tables21_leading_characters_table (tests.test_pytokenizer.TestPyTokenizer) don't parse as a table when leading characters are not newline or whitespace ... ok test_tables22_table_row_simple (tests.test_pytokenizer.TestPyTokenizer) simple table row ... ok test_tables23_table_row_multiple (tests.test_pytokenizer.TestPyTokenizer) simple table row ... ok test_tables24_table_cell_simple (tests.test_pytokenizer.TestPyTokenizer) simple table cell ... ok test_tables25_table_cell_inline (tests.test_pytokenizer.TestPyTokenizer) multiple inline table cells ... ok test_tables26_table_cell_multiple (tests.test_pytokenizer.TestPyTokenizer) multiple table cells (non-inline) ... ok test_tables27_table_header_simple (tests.test_pytokenizer.TestPyTokenizer) simple header cell ... ok test_tables28_table_header_inline (tests.test_pytokenizer.TestPyTokenizer) multiple inline header cells ... ok test_tables29_table_header_multiple (tests.test_pytokenizer.TestPyTokenizer) multiple table header cells (non-inline) ... ok test_tables30_nested_cells_and_rows (tests.test_pytokenizer.TestPyTokenizer) combination of cells and rows in a table ... ok test_tables31_table_cell_fake_close (tests.test_pytokenizer.TestPyTokenizer) looks like a table close but is not ... ok test_tables32_table_cell_more_fake_close (tests.test_pytokenizer.TestPyTokenizer) looks like a table close but is not ... ok test_tables33_table_cell_extra_close (tests.test_pytokenizer.TestPyTokenizer) process second close as text ... ok test_tables34_nowiki_inside_table (tests.test_pytokenizer.TestPyTokenizer) nowiki handles pipe characters in tables ... ok test_tables35_table_text_outside_cell (tests.test_pytokenizer.TestPyTokenizer) parse text inside table but outside of a cell ... ok test_tables36_no_table_cell_with_leading_characters (tests.test_pytokenizer.TestPyTokenizer) fail to create a table cell when there are leading non-whitespace characters ... ok test_tables37_no_table_row_with_leading_characters (tests.test_pytokenizer.TestPyTokenizer) fail to create a table row when there are leading non-whitespace characters ... ok test_tables38_template_inside_table_cell (tests.test_pytokenizer.TestPyTokenizer) template within table cell ... ok test_tables39_table_cell_attributes (tests.test_pytokenizer.TestPyTokenizer) parse table cell style attributes ... ok test_tables40_table_cell_empty_attributes (tests.test_pytokenizer.TestPyTokenizer) parse table cell with style markers but no attributes ... ok test_tables41_table_cell_with_dash (tests.test_pytokenizer.TestPyTokenizer) parse a situation in which a cell line looks like a row line ... ok test_tables42_table_cell_attributes_quote_with_pipe (tests.test_pytokenizer.TestPyTokenizer) pipe inside an attribute quote should still be used as a style separator ... ok test_tables43_table_cell_attributes_name_with_pipe (tests.test_pytokenizer.TestPyTokenizer) pipe inside an attribute name should still be used as a style separator ... ok test_tables44_table_cell_attributes_pipe_after_equals (tests.test_pytokenizer.TestPyTokenizer) pipe inside an attribute should still be used as a style separator after an equals ... ok test_tables45_table_cell_attributes_templates (tests.test_pytokenizer.TestPyTokenizer) pipe inside attributes shouldn't be style separator ... ok test_tables46_header_cell_attributes (tests.test_pytokenizer.TestPyTokenizer) parse header cell style attributes ... ok test_tables47_inline_cell_attributes (tests.test_pytokenizer.TestPyTokenizer) parse cell style attributes of inline cells ... ok test_tables48_table_row_attributes (tests.test_pytokenizer.TestPyTokenizer) parse table row style attributes ... ok test_tables49_table_row_attributes_crazy_whitespace (tests.test_pytokenizer.TestPyTokenizer) parse table row style attributes with different whitespace ... ok test_tables50_table_attributes (tests.test_pytokenizer.TestPyTokenizer) parse table style attributes ... ok test_tables51_inline_table_attributes (tests.test_pytokenizer.TestPyTokenizer) handle attributes in inline tables ... ok test_tables52_table_incorrect_attributes (tests.test_pytokenizer.TestPyTokenizer) parse incorrect table style attributes ... ok test_tables53_templates_in_table_attribute (tests.test_pytokenizer.TestPyTokenizer) templates in the attributes of a table, after the start ... ok test_tables54_templates_in_table_attribute_2 (tests.test_pytokenizer.TestPyTokenizer) templates in the attributes of a table, after the start ... ok test_tables55_inappropriate_marker_at_line_start (tests.test_pytokenizer.TestPyTokenizer) an inappropriate marker (a right bracket) at the start of a line in the table ... ok test_tables56_fake_close_near_start (tests.test_pytokenizer.TestPyTokenizer) a fake closing token at the end of the first line in the table ... ok test_tables57_fake_close_near_start_2 (tests.test_pytokenizer.TestPyTokenizer) a fake closing token at the end of the first line in the table ... ok test_tables58_junk_after_table_start (tests.test_pytokenizer.TestPyTokenizer) ignore more junk on the first line of the table ... ok test_tables59_junk_after_table_row (tests.test_pytokenizer.TestPyTokenizer) ignore junk on the first line of a table row ... ok test_tags01_basic (tests.test_pytokenizer.TestPyTokenizer) a basic tag with an open and close ... ok test_tags02_basic_selfclosing (tests.test_pytokenizer.TestPyTokenizer) a basic self-closing tag ... ok test_tags03_content (tests.test_pytokenizer.TestPyTokenizer) a tag with some content in the middle ... ok test_tags04_padded_open (tests.test_pytokenizer.TestPyTokenizer) a tag with some padding in the open tag ... ok test_tags05_padded_close (tests.test_pytokenizer.TestPyTokenizer) a tag with some padding in the close tag ... ok test_tags06_padded_selfclosing (tests.test_pytokenizer.TestPyTokenizer) a self-closing tag with padding ... ok test_tags07_attribute (tests.test_pytokenizer.TestPyTokenizer) a tag with a single attribute ... ok test_tags08_attribute_value (tests.test_pytokenizer.TestPyTokenizer) a tag with a single attribute with a value ... ok test_tags09_attribute_quoted (tests.test_pytokenizer.TestPyTokenizer) a tag with a single quoted attribute ... ok test_tags10_attribute_single_quoted (tests.test_pytokenizer.TestPyTokenizer) a tag with a single singly-quoted attribute ... ok test_tags11_attribute_hyphen (tests.test_pytokenizer.TestPyTokenizer) a tag with a single attribute, containing a hyphen ... ok test_tags12_attribute_quoted_hyphen (tests.test_pytokenizer.TestPyTokenizer) a tag with a single quoted attribute, containing a hyphen ... ok test_tags13_attribute_selfclosing (tests.test_pytokenizer.TestPyTokenizer) a self-closing tag with a single attribute ... ok test_tags14_attribute_selfclosing_value (tests.test_pytokenizer.TestPyTokenizer) a self-closing tag with a single attribute with a value ... ok test_tags15_attribute_selfclosing_value_quoted (tests.test_pytokenizer.TestPyTokenizer) a self-closing tag with a single quoted attribute ... ok test_tags16_nested_tag (tests.test_pytokenizer.TestPyTokenizer) a tag nested within the attributes of another ... ok test_tags17_nested_tag_quoted (tests.test_pytokenizer.TestPyTokenizer) a tag nested within the attributes of another, quoted ... ok test_tags18_nested_troll_tag (tests.test_pytokenizer.TestPyTokenizer) a bogus tag that appears to be nested within the attributes of another ... ok test_tags19_nested_troll_tag_quoted (tests.test_pytokenizer.TestPyTokenizer) a bogus tag that appears to be nested within the attributes of another, quoted ... ok test_tags20_nested_tag_selfclosing (tests.test_pytokenizer.TestPyTokenizer) a tag nested within the attributes of another; outer tag implicitly self-closing ... ok test_tags21_invalid_space_begin_open (tests.test_pytokenizer.TestPyTokenizer) invalid tag: a space at the beginning of the open tag ... ok test_tags22_invalid_space_begin_close (tests.test_pytokenizer.TestPyTokenizer) invalid tag: a space at the beginning of the close tag ... ok test_tags23_valid_space_end (tests.test_pytokenizer.TestPyTokenizer) valid tag: spaces at the ends of both the open and close tags ... ok test_tags24_invalid_template_ends (tests.test_pytokenizer.TestPyTokenizer) invalid tag: a template at the ends of both the open and close tags ... ok test_tags25_invalid_template_ends_nospace (tests.test_pytokenizer.TestPyTokenizer) invalid tag: a template at the ends of both the open and close tags, without spacing ... ok test_tags26_valid_template_end_open (tests.test_pytokenizer.TestPyTokenizer) valid tag: a template at the end of the open tag ... ok test_tags27_valid_template_end_open_space_end_close (tests.test_pytokenizer.TestPyTokenizer) valid tag: a template at the end of the open tag; whitespace at the end of the close tag ... ok test_tags28_invalid_template_end_open_nospace (tests.test_pytokenizer.TestPyTokenizer) invalid tag: a template at the end of the open tag, without spacing ... ok test_tags29_invalid_template_start_close (tests.test_pytokenizer.TestPyTokenizer) invalid tag: a template at the beginning of the close tag ... ok test_tags30_invalid_template_start_open (tests.test_pytokenizer.TestPyTokenizer) invalid tag: a template at the beginning of the open tag ... ok test_tags31_unclosed_quote (tests.test_pytokenizer.TestPyTokenizer) a quoted attribute that is never closed ... ok test_tags32_fake_quote (tests.test_pytokenizer.TestPyTokenizer) a fake quoted attribute ... ok test_tags33_fake_quote_complex (tests.test_pytokenizer.TestPyTokenizer) a fake quoted attribute, with spaces and templates and links ... ok test_tags34_quotes_in_quotes (tests.test_pytokenizer.TestPyTokenizer) singly-quoted text inside a doubly-quoted attribute ... ok test_tags35_quotes_in_quotes_2 (tests.test_pytokenizer.TestPyTokenizer) doubly-quoted text inside a singly-quoted attribute ... ok test_tags36_quotes_in_quotes_3 (tests.test_pytokenizer.TestPyTokenizer) doubly-quoted text inside a singly-quoted attribute, with backslashes ... ok test_tags37_incomplete_lbracket (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: just a left bracket ... ok test_tags38_incomplete_lbracket_junk (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: just a left bracket, surrounded by stuff ... ok test_tags39_incomplete_unclosed_open (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed open tag ... ok test_tags40_incomplete_unclosed_open_space (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed open tag, space ... ok test_tags41_incomplete_unclosed_open_unnamed_attr (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed open tag, unnamed attribute ... ok test_tags42_incomplete_unclosed_open_attr_equals (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed open tag, attribute, equal sign ... ok test_tags43_incomplete_unclosed_open_attr_equals_quoted (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed open tag, attribute, equal sign, quote ... ok test_tags44_incomplete_unclosed_open_attr (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed open tag, attribute with a key/value ... ok test_tags45_incomplete_unclosed_open_attr_quoted (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed open tag, attribute with a key/value, quoted ... ok test_tags46_incomplete_open (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag ... ok test_tags47_incomplete_open_unnamed_attr (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, unnamed attribute ... ok test_tags48_incomplete_open_attr_equals (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, attribute, equal sign ... ok test_tags49_incomplete_open_attr (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, attribute with a key/value ... ok test_tags50_incomplete_open_attr_quoted (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, attribute with a key/value, quoted ... ok test_tags51_incomplete_open_text (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, text ... ok test_tags52_incomplete_open_attr_text (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, attribute with a key/value, text ... ok test_tags53_incomplete_open_text_lbracket (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, text, left open bracket ... ok test_tags54_incomplete_open_text_lbracket_slash (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, text, left bracket, slash ... ok test_tags55_incomplete_open_text_unclosed_close (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, text, unclosed close ... ok test_tags56_incomplete_open_text_wrong_close (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an open tag, text, wrong close ... ok test_tags57_incomplete_unclosed_close (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed close tag ... ok test_tags58_incomplete_unclosed_close_text (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: an unclosed close tag, with text ... ok test_tags59_incomplete_close (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: a close tag ... ok test_tags60_incomplete_no_tag_name_open (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: no tag name within brackets; just an open ... ok test_tags61_incomplete_no_tag_name_selfclosing (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: no tag name within brackets; self-closing ... ok test_tags62_incomplete_no_tag_name_open_close (tests.test_pytokenizer.TestPyTokenizer) incomplete tags: no tag name within brackets; open and close ... ok test_tags63_backslash_premature_before (tests.test_pytokenizer.TestPyTokenizer) a backslash before a quote before a space ... ok test_tags64_backslash_premature_after (tests.test_pytokenizer.TestPyTokenizer) a backslash before a quote after a space ... ok test_tags65_backslash_premature_middle (tests.test_pytokenizer.TestPyTokenizer) a backslash before a quote in the middle of a word ... ok test_tags66_backslash_adjacent (tests.test_pytokenizer.TestPyTokenizer) escaped quotes next to unescaped quotes ... ok test_tags67_backslash_endquote (tests.test_pytokenizer.TestPyTokenizer) backslashes before the end quote, causing the attribute to become unquoted ... ok test_tags68_backslash_double (tests.test_pytokenizer.TestPyTokenizer) two adjacent backslashes, which do *not* affect the quote ... ok test_tags69_backslash_triple (tests.test_pytokenizer.TestPyTokenizer) three adjacent backslashes, which do *not* affect the quote ... ok test_tags70_backslash_unaffecting (tests.test_pytokenizer.TestPyTokenizer) backslashes near quotes, but not immediately adjacent, thus having no effect ... ok test_tags71_unparsable (tests.test_pytokenizer.TestPyTokenizer) a tag that should not be put through the normal parser ... ok test_tags72_unparsable_complex (tests.test_pytokenizer.TestPyTokenizer) a tag that should not be put through the normal parser; lots of stuff inside ... ok test_tags73_unparsable_attributed (tests.test_pytokenizer.TestPyTokenizer) a tag that should not be put through the normal parser; parsed attributes ... ok test_tags74_unparsable_incomplete (tests.test_pytokenizer.TestPyTokenizer) a tag that should not be put through the normal parser; incomplete ... ok test_tags75_unparsable_entity (tests.test_pytokenizer.TestPyTokenizer) a HTML entity inside unparsable text is still parsed ... ok test_tags76_unparsable_entity_incomplete (tests.test_pytokenizer.TestPyTokenizer) an incomplete HTML entity inside unparsable text ... ok test_tags77_unparsable_entity_incomplete_2 (tests.test_pytokenizer.TestPyTokenizer) an incomplete HTML entity inside unparsable text ... ok test_tags78_single_open_close (tests.test_pytokenizer.TestPyTokenizer) a tag that supports being single; both an open and a close tag ... ok test_tags79_single_open (tests.test_pytokenizer.TestPyTokenizer) a tag that supports being single; just an open tag ... ok test_tags80_single_selfclose (tests.test_pytokenizer.TestPyTokenizer) a tag that supports being single; a self-closing tag ... ok test_tags81_single_close (tests.test_pytokenizer.TestPyTokenizer) a tag that supports being single; just a close tag ... ok test_tags82_single_only_open_close (tests.test_pytokenizer.TestPyTokenizer) a tag that can only be single; both an open and a close tag ... ok test_tags83_single_only_open (tests.test_pytokenizer.TestPyTokenizer) a tag that can only be single; just an open tag ... ok test_tags84_single_only_selfclose (tests.test_pytokenizer.TestPyTokenizer) a tag that can only be single; a self-closing tag ... ok test_tags85_single_only_close (tests.test_pytokenizer.TestPyTokenizer) a tag that can only be single; just a close tag ... ok test_tags86_single_only_double (tests.test_pytokenizer.TestPyTokenizer) a tag that can only be single; a tag with backslashes at the beginning and end ... ok test_tags87_single_only_close_attribute (tests.test_pytokenizer.TestPyTokenizer) a tag that can only be single; presented as a close tag with an attribute ... ok test_tags88_capitalization (tests.test_pytokenizer.TestPyTokenizer) caps should be ignored within tag names ... ok test_tags89_unparsable_incomplete_close (tests.test_pytokenizer.TestPyTokenizer) an unparsable tag with an incomplete close afterwards ... ok test_tags90_unparsable_with_intermediates (tests.test_pytokenizer.TestPyTokenizer) an unparsable tag with intermediate tags inside of it ... ok test_tags91_unparsable_with_intermediates_normalize (tests.test_pytokenizer.TestPyTokenizer) an unparsable tag with intermediate tags inside of it, requiring normalization ... ok test_tags92_non_ascii_open (tests.test_pytokenizer.TestPyTokenizer) a open tag containing non-ASCII characters ... ok test_tags93_non_ascii_full (tests.test_pytokenizer.TestPyTokenizer) an open/close tag pair containing non-ASCII characters ... ok test_tags94_single_nested_selfclosing (tests.test_pytokenizer.TestPyTokenizer) a single (unpaired) tag with a self-closing tag in the middle (see issue #147) ... ok test_tags_wikimarkup01_basic_italics (tests.test_pytokenizer.TestPyTokenizer) basic italic text ... ok test_tags_wikimarkup02_basic_bold (tests.test_pytokenizer.TestPyTokenizer) basic bold text ... ok test_tags_wikimarkup03_basic_ul (tests.test_pytokenizer.TestPyTokenizer) basic unordered list ... ok test_tags_wikimarkup04_basic_ol (tests.test_pytokenizer.TestPyTokenizer) basic ordered list ... ok test_tags_wikimarkup05_basic_dt (tests.test_pytokenizer.TestPyTokenizer) basic description term ... ok test_tags_wikimarkup06_basic_dd (tests.test_pytokenizer.TestPyTokenizer) basic description item ... ok test_tags_wikimarkup07_basic_hr (tests.test_pytokenizer.TestPyTokenizer) basic horizontal rule ... ok test_tags_wikimarkup08_complex_italics (tests.test_pytokenizer.TestPyTokenizer) italics with a lot in them ... ok test_tags_wikimarkup09_multiline_italics (tests.test_pytokenizer.TestPyTokenizer) italics spanning mulitple lines ... ok test_tags_wikimarkup10_unending_italics (tests.test_pytokenizer.TestPyTokenizer) italics without an ending tag ... ok test_tags_wikimarkup11_misleading_italics_end (tests.test_pytokenizer.TestPyTokenizer) italics with something that looks like an end but isn't ... ok test_tags_wikimarkup12_italics_start_outside_end_inside (tests.test_pytokenizer.TestPyTokenizer) italics that start outside a link and end inside it ... ok test_tags_wikimarkup13_italics_start_inside_end_outside (tests.test_pytokenizer.TestPyTokenizer) italics that start inside a link and end outside it ... ok test_tags_wikimarkup14_complex_bold (tests.test_pytokenizer.TestPyTokenizer) bold with a lot in it ... ok test_tags_wikimarkup15_multiline_bold (tests.test_pytokenizer.TestPyTokenizer) bold spanning mulitple lines ... ok test_tags_wikimarkup16_unending_bold (tests.test_pytokenizer.TestPyTokenizer) bold without an ending tag ... ok test_tags_wikimarkup17_misleading_bold_end (tests.test_pytokenizer.TestPyTokenizer) bold with something that looks like an end but isn't ... ok test_tags_wikimarkup18_bold_start_outside_end_inside (tests.test_pytokenizer.TestPyTokenizer) bold that start outside a link and end inside it ... ok test_tags_wikimarkup19_bold_start_inside_end_outside (tests.test_pytokenizer.TestPyTokenizer) bold that start inside a link and end outside it ... ok test_tags_wikimarkup20_bold_and_italics (tests.test_pytokenizer.TestPyTokenizer) bold and italics together ... ok test_tags_wikimarkup21_both_then_bold (tests.test_pytokenizer.TestPyTokenizer) text that starts bold/italic, then is just bold ... ok test_tags_wikimarkup22_both_then_italics (tests.test_pytokenizer.TestPyTokenizer) text that starts bold/italic, then is just italic ... ok test_tags_wikimarkup23_bold_then_both (tests.test_pytokenizer.TestPyTokenizer) text that starts just bold, then is bold/italic ... ok test_tags_wikimarkup24_italics_then_both (tests.test_pytokenizer.TestPyTokenizer) text that starts just italic, then is bold/italic ... ok test_tags_wikimarkup25_italics_then_bold (tests.test_pytokenizer.TestPyTokenizer) text that starts italic, then is bold ... ok test_tags_wikimarkup26_bold_then_italics (tests.test_pytokenizer.TestPyTokenizer) text that starts bold, then is italic ... ok test_tags_wikimarkup27_five_three (tests.test_pytokenizer.TestPyTokenizer) five ticks to open, three to close (bold) ... ok test_tags_wikimarkup28_five_two (tests.test_pytokenizer.TestPyTokenizer) five ticks to open, two to close (bold) ... ok test_tags_wikimarkup29_four (tests.test_pytokenizer.TestPyTokenizer) four ticks ... ok test_tags_wikimarkup30_four_two (tests.test_pytokenizer.TestPyTokenizer) four ticks to open, two to close ... ok test_tags_wikimarkup31_two_three (tests.test_pytokenizer.TestPyTokenizer) two ticks to open, three to close ... ok test_tags_wikimarkup32_two_four (tests.test_pytokenizer.TestPyTokenizer) two ticks to open, four to close ... ok test_tags_wikimarkup33_two_three_two (tests.test_pytokenizer.TestPyTokenizer) two ticks to open, three to close, two afterwards ... ok test_tags_wikimarkup34_two_four_four (tests.test_pytokenizer.TestPyTokenizer) two ticks to open, four to close, four afterwards ... ok test_tags_wikimarkup35_seven (tests.test_pytokenizer.TestPyTokenizer) seven ticks ... ok test_tags_wikimarkup36_unending_bold_and_italics (tests.test_pytokenizer.TestPyTokenizer) five ticks (bold and italics) that don't end ... ok test_tags_wikimarkup37_complex_ul (tests.test_pytokenizer.TestPyTokenizer) ul with a lot in it ... ok test_tags_wikimarkup38_ul_multiline_template (tests.test_pytokenizer.TestPyTokenizer) ul with a template that spans multiple lines ... ok test_tags_wikimarkup39_ul_adjacent (tests.test_pytokenizer.TestPyTokenizer) multiple adjacent uls ... ok test_tags_wikimarkup40_ul_depths (tests.test_pytokenizer.TestPyTokenizer) multiple adjacent uls, with differing depths ... ok test_tags_wikimarkup41_ul_space_before (tests.test_pytokenizer.TestPyTokenizer) uls with space before them ... ok test_tags_wikimarkup42_ul_interruption (tests.test_pytokenizer.TestPyTokenizer) high-depth ul with something blocking it ... ok test_tags_wikimarkup43_complex_ol (tests.test_pytokenizer.TestPyTokenizer) ol with a lot in it ... ok test_tags_wikimarkup44_ol_multiline_template (tests.test_pytokenizer.TestPyTokenizer) ol with a template that spans moltiple lines ... ok test_tags_wikimarkup45_ol_adjacent (tests.test_pytokenizer.TestPyTokenizer) moltiple adjacent ols ... ok test_tags_wikimarkup46_ol_depths (tests.test_pytokenizer.TestPyTokenizer) moltiple adjacent ols, with differing depths ... ok test_tags_wikimarkup47_ol_space_before (tests.test_pytokenizer.TestPyTokenizer) ols with space before them ... ok test_tags_wikimarkup48_ol_interruption (tests.test_pytokenizer.TestPyTokenizer) high-depth ol with something blocking it ... ok test_tags_wikimarkup49_ul_ol_mix (tests.test_pytokenizer.TestPyTokenizer) a mix of adjacent uls and ols ... ok test_tags_wikimarkup50_complex_dt (tests.test_pytokenizer.TestPyTokenizer) dt with a lot in it ... ok test_tags_wikimarkup51_dt_multiline_template (tests.test_pytokenizer.TestPyTokenizer) dt with a template that spans mdttiple lines ... ok test_tags_wikimarkup52_dt_adjacent (tests.test_pytokenizer.TestPyTokenizer) mdttiple adjacent dts ... ok test_tags_wikimarkup53_dt_depths (tests.test_pytokenizer.TestPyTokenizer) mdttiple adjacent dts, with differing depths ... ok test_tags_wikimarkup54_dt_space_before (tests.test_pytokenizer.TestPyTokenizer) dts with space before them ... ok test_tags_wikimarkup55_dt_interruption (tests.test_pytokenizer.TestPyTokenizer) high-depth dt with something blocking it ... ok test_tags_wikimarkup56_complex_dd (tests.test_pytokenizer.TestPyTokenizer) dd with a lot in it ... ok test_tags_wikimarkup57_dd_multiline_template (tests.test_pytokenizer.TestPyTokenizer) dd with a template that spans mddtiple lines ... ok test_tags_wikimarkup58_dd_adjacent (tests.test_pytokenizer.TestPyTokenizer) mddtiple adjacent dds ... ok test_tags_wikimarkup59_dd_depths (tests.test_pytokenizer.TestPyTokenizer) mddtiple adjacent dds, with differing depths ... ok test_tags_wikimarkup60_dd_space_before (tests.test_pytokenizer.TestPyTokenizer) dds with space before them ... ok test_tags_wikimarkup61_dd_interruption (tests.test_pytokenizer.TestPyTokenizer) high-depth dd with something blocking it ... ok test_tags_wikimarkup62_dt_dd_mix (tests.test_pytokenizer.TestPyTokenizer) a mix of adjacent dts and dds ... ok test_tags_wikimarkup63_dt_dd_mix2 (tests.test_pytokenizer.TestPyTokenizer) the correct usage of a dt/dd unit, as in a dl ... ok test_tags_wikimarkup64_dt_dd_mix3 (tests.test_pytokenizer.TestPyTokenizer) another example of correct (but strange) dt/dd usage ... ok test_tags_wikimarkup65_dt_dd_mix4 (tests.test_pytokenizer.TestPyTokenizer) another example of correct dt/dd usage, with a trigger for a specific parse route ... ok test_tags_wikimarkup66_ul_ol_dt_dd_mix (tests.test_pytokenizer.TestPyTokenizer) an assortment of uls, ols, dds, and dts ... ok test_tags_wikimarkup67_hr_text_before (tests.test_pytokenizer.TestPyTokenizer) text before an otherwise-valid hr ... ok test_tags_wikimarkup68_hr_text_after (tests.test_pytokenizer.TestPyTokenizer) text after a valid hr ... ok test_tags_wikimarkup69_hr_text_before_after (tests.test_pytokenizer.TestPyTokenizer) text at both ends of an otherwise-valid hr ... ok test_tags_wikimarkup70_hr_newlines (tests.test_pytokenizer.TestPyTokenizer) newlines surrounding a valid hr ... ok test_tags_wikimarkup71_hr_adjacent (tests.test_pytokenizer.TestPyTokenizer) two adjacent hrs ... ok test_tags_wikimarkup72_hr_adjacent_space (tests.test_pytokenizer.TestPyTokenizer) two adjacent hrs, with a space before the second one, making it invalid ... ok test_tags_wikimarkup73_hr_short (tests.test_pytokenizer.TestPyTokenizer) an invalid three-hyphen-long hr ... ok test_tags_wikimarkup74_hr_long (tests.test_pytokenizer.TestPyTokenizer) a very long, valid hr ... ok test_tags_wikimarkup75_hr_interruption_short (tests.test_pytokenizer.TestPyTokenizer) a hr that is interrupted, making it invalid ... ok test_tags_wikimarkup76_hr_interruption_long (tests.test_pytokenizer.TestPyTokenizer) a hr that is interrupted, but the first part remains valid because it is long enough ... ok test_tags_wikimarkup77_nowiki_cancel (tests.test_pytokenizer.TestPyTokenizer) a nowiki tag before a list causes it to not be parsed ... ok test_templates001_no_params (tests.test_pytokenizer.TestPyTokenizer) simplest type of template ... ok test_templates002_one_param_unnamed (tests.test_pytokenizer.TestPyTokenizer) basic template with one unnamed parameter ... ok test_templates003_one_param_named (tests.test_pytokenizer.TestPyTokenizer) basic template with one named parameter ... ok test_templates004_multiple_unnamed_params (tests.test_pytokenizer.TestPyTokenizer) basic template with multiple unnamed parameters ... ok test_templates005_multiple_named_params (tests.test_pytokenizer.TestPyTokenizer) basic template with multiple named parameters ... ok test_templates006_multiple_mixed_params (tests.test_pytokenizer.TestPyTokenizer) basic template with multiple unnamed/named parameters ... ok test_templates007_multiple_mixed_params2 (tests.test_pytokenizer.TestPyTokenizer) basic template with multiple unnamed/named parameters in another order ... ok test_templates008_blank_params (tests.test_pytokenizer.TestPyTokenizer) template with blank parameters (mix of pipes and equal signs) ... ok test_templates009_nested_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) nested template as an unnamed parameter ... ok test_templates010_nested_named_param_value (tests.test_pytokenizer.TestPyTokenizer) nested template as a parameter value with a named parameter ... ok test_templates011_nested_named_param_name_and_value (tests.test_pytokenizer.TestPyTokenizer) nested templates as a parameter name and value ... ok test_templates012_nested_name_start (tests.test_pytokenizer.TestPyTokenizer) nested template at the beginning of a template name ... ok test_templates013_nested_name_start_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) nested template at the beginning of a template name and as an unnamed parameter ... ok test_templates014_nested_name_start_named_param_value (tests.test_pytokenizer.TestPyTokenizer) nested template at the beginning of a template name and as a parameter value with a named parameter ... ok test_templates015_nested_name_start_named_param_name_and_value (tests.test_pytokenizer.TestPyTokenizer) nested template at the beginning of a template name and as a parameter name and value ... ok test_templates016_nested_name_end (tests.test_pytokenizer.TestPyTokenizer) nested template at the end of a template name ... ok test_templates017_nested_name_end_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) nested template at the end of a template name and as an unnamed parameter ... ok test_templates018_nested_name_end_named_param_value (tests.test_pytokenizer.TestPyTokenizer) nested template at the end of a template name and as a parameter value with a named parameter ... ok test_templates019_nested_name_end_named_param_name_and_value (tests.test_pytokenizer.TestPyTokenizer) nested template at the end of a template name and as a parameter name and value ... ok test_templates020_nested_name_mid (tests.test_pytokenizer.TestPyTokenizer) nested template in the middle of a template name ... ok test_templates021_nested_name_mid_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) nested template in the middle of a template name and as an unnamed parameter ... ok test_templates022_nested_name_mid_named_param_value (tests.test_pytokenizer.TestPyTokenizer) nested template in the middle of a template name and as a parameter value with a named parameter ... ok test_templates023_nested_name_mid_named_param_name_and_value (tests.test_pytokenizer.TestPyTokenizer) nested template in the middle of a template name and as a parameter name and value ... ok test_templates024_nested_name_start_end (tests.test_pytokenizer.TestPyTokenizer) nested template at the beginning and end of a template name ... ok test_templates025_nested_name_start_end_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) nested template at the beginning and end of a template name and as an unnamed parameter ... ok test_templates026_nested_name_start_end_named_param_value (tests.test_pytokenizer.TestPyTokenizer) nested template at the beginning and end of a template name and as a parameter value with a named parameter ... ok test_templates027_nested_name_start_end_named_param_name_and_value (tests.test_pytokenizer.TestPyTokenizer) nested template at the beginning and end of a template name and as a parameter name and value ... ok test_templates028_nested_names_multiple (tests.test_pytokenizer.TestPyTokenizer) multiple nested templates within nested templates ... ok test_templates029_nested_names_multiple_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) multiple nested templates within nested templates with a nested unnamed parameter ... ok test_templates030_nested_names_multiple_named_param_value (tests.test_pytokenizer.TestPyTokenizer) multiple nested templates within nested templates with a nested parameter value in a named parameter ... ok test_templates031_nested_names_multiple_named_param_name_and_value (tests.test_pytokenizer.TestPyTokenizer) multiple nested templates within nested templates with a nested parameter name and value ... ok test_templates032_mixed_nested_templates (tests.test_pytokenizer.TestPyTokenizer) mixed assortment of nested templates within template names, parameter names, and values ... ok test_templates033_nested_two_args (tests.test_pytokenizer.TestPyTokenizer) template whose first parameter is unnamed with two templates, followed by a named parameter ... ok test_templates034_newlines_start (tests.test_pytokenizer.TestPyTokenizer) a newline at the start of a template name ... ok test_templates035_newlines_end (tests.test_pytokenizer.TestPyTokenizer) a newline at the end of a template name ... ok test_templates036_newlines_start_end (tests.test_pytokenizer.TestPyTokenizer) a newline at the start and end of a template name ... ok test_templates037_newlines_mid (tests.test_pytokenizer.TestPyTokenizer) a newline at the middle of a template name ... ok test_templates038_newlines_start_mid (tests.test_pytokenizer.TestPyTokenizer) a newline at the start and middle of a template name ... ok test_templates039_newlines_mid_end (tests.test_pytokenizer.TestPyTokenizer) a newline at the middle and end of a template name ... ok test_templates040_newlines_start_mid_end (tests.test_pytokenizer.TestPyTokenizer) a newline at the start, middle, and end of a template name ... ok test_templates041_newlines_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) newlines within an unnamed template parameter ... ok test_templates042_newlines_enclose_template_name_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) newlines enclosing a template name and within an unnamed template parameter ... ok test_templates043_newlines_within_template_name_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) newlines within a template name and within an unnamed template parameter ... ok test_templates044_newlines_enclose_template_name_named_param_value (tests.test_pytokenizer.TestPyTokenizer) newlines enclosing a template name and within a named parameter value ... ok test_templates045_newlines_within_template_name_named_param_value (tests.test_pytokenizer.TestPyTokenizer) newlines within a template name and within a named parameter value ... ok test_templates046_newlines_named_param_name (tests.test_pytokenizer.TestPyTokenizer) newlines within a parameter name ... ok test_templates047_newlines_named_param_name_param_value (tests.test_pytokenizer.TestPyTokenizer) newlines within a parameter name and within a parameter value ... ok test_templates048_newlines_enclose_template_name_named_param_name (tests.test_pytokenizer.TestPyTokenizer) newlines enclosing a template name and within a parameter name ... ok test_templates049_newlines_enclose_template_name_named_param_name_param_value (tests.test_pytokenizer.TestPyTokenizer) newlines enclosing a template name and within a parameter name and within a parameter value ... ok test_templates050_newlines_within_template_name_named_param_name (tests.test_pytokenizer.TestPyTokenizer) newlines within a template name and within a parameter name ... ok test_templates051_newlines_within_template_name_named_param_name_param_value (tests.test_pytokenizer.TestPyTokenizer) newlines within a template name and within a parameter name and within a parameter value ... ok test_templates052_newlines_wildcard (tests.test_pytokenizer.TestPyTokenizer) a random, complex assortment of templates and newlines ... ok test_templates053_newlines_wildcard_redux (tests.test_pytokenizer.TestPyTokenizer) an even more random and complex assortment of templates and newlines ... ok test_templates054_newlines_wildcard_redux_invalid (tests.test_pytokenizer.TestPyTokenizer) a variation of the newlines_wildcard_redux test that is invalid ... ok test_templates055_newlines_spaces (tests.test_pytokenizer.TestPyTokenizer) newlines in the middle of a template name, followed by spaces ... ok test_templates056_newlines_spaces_param (tests.test_pytokenizer.TestPyTokenizer) newlines in the middle of a template name, followed by spaces, with a parameter ... ok test_templates057_invalid_blank (tests.test_pytokenizer.TestPyTokenizer) invalid template with no content ... ok test_templates058_invalid_blank_whitespace (tests.test_pytokenizer.TestPyTokenizer) invalid template with no content, but whitespace ... ok test_templates059_invalid_blank_pipe (tests.test_pytokenizer.TestPyTokenizer) invalid template with no content, but a parameter ... ok test_templates060_invalid_blank_whitespace_pipe (tests.test_pytokenizer.TestPyTokenizer) invalid template with no content, but whitespace and a parameter ... ok test_templates061_invalid_name_left_brace_middle (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template name: left brace in middle ... ok test_templates062_invalid_name_right_brace_middle (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template name: right brace in middle ... ok test_templates063_invalid_name_left_braces (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template name: two left braces in middle ... ok test_templates064_invalid_name_left_bracket_middle (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template name: left bracket in middle ... ok test_templates065_invalid_name_right_bracket_middle (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template name: right bracket in middle ... ok test_templates066_invalid_name_left_bracket_start (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template name: left bracket at start ... ok test_templates067_invalid_name_right_bracket_start (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template name: right bracket at end ... ok test_templates068_valid_name_left_brace_start (tests.test_pytokenizer.TestPyTokenizer) valid characters in template name: left brace at start ... ok test_templates069_valid_unnamed_param_left_brace (tests.test_pytokenizer.TestPyTokenizer) valid characters in unnamed template parameter: left brace ... ok test_templates070_valid_unnamed_param_braces (tests.test_pytokenizer.TestPyTokenizer) valid characters in unnamed template parameter: left and right braces ... ok test_templates071_valid_param_name_braces (tests.test_pytokenizer.TestPyTokenizer) valid characters in template parameter name: left and right braces ... ok test_templates072_valid_param_name_brackets (tests.test_pytokenizer.TestPyTokenizer) valid characters in unnamed template parameter: left and right brackets ... ok test_templates073_valid_param_name_double_left_brackets (tests.test_pytokenizer.TestPyTokenizer) valid characters in unnamed template parameter: double left brackets ... ok test_templates074_valid_param_name_double_right_brackets (tests.test_pytokenizer.TestPyTokenizer) valid characters in unnamed template parameter: double right brackets ... ok test_templates075_valid_param_name_double_brackets (tests.test_pytokenizer.TestPyTokenizer) valid characters in unnamed template parameter: double left and right brackets ... ok test_templates076_invalid_param_name_double_left_braces (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template parameter name: double left braces ... ok test_templates077_invalid_param_name_double_braces (tests.test_pytokenizer.TestPyTokenizer) invalid characters in template parameter name: double left and right braces ... ok test_templates078_invalid_left_angle_bracket (tests.test_pytokenizer.TestPyTokenizer) invalid template: left angle bracket in name ... ok test_templates079_invalid_right_angle_bracket (tests.test_pytokenizer.TestPyTokenizer) invalid template: right angle bracket in name ... ok test_templates080_incomplete_stub (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: just an opening ... ok test_templates081_incomplete_plain (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: no close whatsoever ... ok test_templates082_incomplete_right_brace (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: only one right brace ... ok test_templates083_incomplete_pipe (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: a pipe ... ok test_templates084_incomplete_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: an unnamed parameter ... ok test_templates085_incomplete_unnamed_param_pipe (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: an unnamed parameter, then a pipe ... ok test_templates086_incomplete_valueless_param (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: an a named parameter with no value ... ok test_templates087_incomplete_valueless_param_pipe (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: a named parameter with no value, then a pipe ... ok test_templates088_incomplete_named_param (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: a named parameter with a value ... ok test_templates089_incomplete_named_param_pipe (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: a named parameter with a value, then a paipe ... ok test_templates090_incomplete_two_unnamed_params (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: two unnamed parameters ... ok test_templates091_incomplete_unnamed_param_valueless_param (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: an unnamed parameter, then a named parameter with no value ... ok test_templates092_incomplete_unnamed_param_named_param (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: an unnamed parameter, then a named parameter with a value ... ok test_templates093_incomplete_named_param_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: a named parameter with a value, then an unnamed parameter ... ok test_templates094_incomplete_named_param_valueless_param (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: a named parameter with a value, then a named parameter with no value ... ok test_templates095_incomplete_two_named_params (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: two named parameters with values ... ok test_templates096_incomplete_nested_template_as_unnamed_param (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: a valid nested template as an unnamed parameter ... ok test_templates097_incomplete_nested_template_as_param_value (tests.test_pytokenizer.TestPyTokenizer) incomplete templates that should fail gracefully: a valid nested template as a parameter value ... ok test_templates098_recursion_five_hundred_opens (tests.test_pytokenizer.TestPyTokenizer) test potentially dangerous recursion: five hundred template openings, without spaces ... ok test_templates099_recursion_one_hundred_opens (tests.test_pytokenizer.TestPyTokenizer) test potentially dangerous recursion: one hundred template openings, with spaces ... ok test_templates100_recursion_opens_and_closes (tests.test_pytokenizer.TestPyTokenizer) test potentially dangerous recursion: template openings and closings ... ok test_text1_basic (tests.test_pytokenizer.TestPyTokenizer) sanity check for basic text parsing, no gimmicks ... ok test_text2_newlines (tests.test_pytokenizer.TestPyTokenizer) slightly more complex text parsing, with newlines ... ok test_text3_unicode (tests.test_pytokenizer.TestPyTokenizer) ensure unicode data is handled properly ... ok test_text4_unicode2 (tests.test_pytokenizer.TestPyTokenizer) additional unicode check for non-BMP codepoints ... ok test_text5_large (tests.test_pytokenizer.TestPyTokenizer) a lot of text, requiring proper storage in the C tokenizer ... ok test_uses_c (tests.test_pytokenizer.TestPyTokenizer) make sure the Python tokenizer identifies as not using C ... ok test_wikilinks01_blank (tests.test_pytokenizer.TestPyTokenizer) wikilink with no content ... ok test_wikilinks02_blank_with_text (tests.test_pytokenizer.TestPyTokenizer) wikilink with no content but a pipe ... ok test_wikilinks03_basic (tests.test_pytokenizer.TestPyTokenizer) simplest type of wikilink ... ok test_wikilinks04_with_text (tests.test_pytokenizer.TestPyTokenizer) wikilink with a text value ... ok test_wikilinks05_blank_with_multiple_texts (tests.test_pytokenizer.TestPyTokenizer) no content, multiple pipes ... ok test_wikilinks06_multiple_texts (tests.test_pytokenizer.TestPyTokenizer) multiple text values separated by pipes ... ok test_wikilinks07_newline_text (tests.test_pytokenizer.TestPyTokenizer) a newline in the middle of the text ... ok test_wikilinks08_bracket_text (tests.test_pytokenizer.TestPyTokenizer) a left bracket in the middle of the text ... ok test_wikilinks09_nested (tests.test_pytokenizer.TestPyTokenizer) a wikilink nested within another ... ok test_wikilinks10_nested_padding (tests.test_pytokenizer.TestPyTokenizer) a wikilink nested within another, separated by other data ... ok test_wikilinks11_invalid_newline (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: newline as only content ... ok test_wikilinks12_invalid_right_brace (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: right brace ... ok test_wikilinks13_invalid_left_brace (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: left brace ... ok test_wikilinks14_invalid_right_bracket (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: right bracket ... ok test_wikilinks15_invalid_left_bracket (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: left bracket ... ok test_wikilinks16_invalid_nested (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: trying to nest in the wrong context ... ok test_wikilinks17_invalid_nested_padding (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: trying to nest in the wrong context, with a text param ... ok test_wikilinks18_invalid_nested_no_close (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: a wikilink nested within the value of another, missing a pair of closing brackets ... ok test_wikilinks19_invalid_left_angle_bracket (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: left angle bracket ... ok test_wikilinks20_invalid_right_angle_bracket (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: right angle bracket ... ok test_wikilinks21_invalid_newline_at_start (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: newline at start of title ... ok test_wikilinks22_invalid_newline_at_end (tests.test_pytokenizer.TestPyTokenizer) invalid wikilink: newline at end of title ... ok test_wikilinks23_incomplete_open_only (tests.test_pytokenizer.TestPyTokenizer) incomplete wikilinks: just an open ... ok test_wikilinks24_incomplete_open_text (tests.test_pytokenizer.TestPyTokenizer) incomplete wikilinks: an open with some text ... ok test_wikilinks25_incomplete_open_text_pipe (tests.test_pytokenizer.TestPyTokenizer) incomplete wikilinks: an open, text, then a pipe ... ok test_wikilinks26_incomplete_open_pipe (tests.test_pytokenizer.TestPyTokenizer) incomplete wikilinks: an open, then a pipe ... ok test_wikilinks27_incomplete_open_pipe_text (tests.test_pytokenizer.TestPyTokenizer) incomplete wikilinks: an open, then a pipe, then text ... ok test_wikilinks28_incomplete_open_pipes_text (tests.test_pytokenizer.TestPyTokenizer) incomplete wikilinks: a pipe, then text then two pipes ... ok test_wikilinks29_incomplete_open_partial_close (tests.test_pytokenizer.TestPyTokenizer) incomplete wikilinks: an open, then one right brace ... ok test_wikilinks30_incomplete_preserve_previous (tests.test_pytokenizer.TestPyTokenizer) incomplete wikilinks: a valid wikilink followed by an invalid one ... ok test_name (tests.test_parameter.TestParameter) test getter/setter for the name attribute ... ok test_showkey (tests.test_parameter.TestParameter) test getter/setter for the showkey attribute ... ok test_unicode (tests.test_parameter.TestParameter) test Parameter.__unicode__() ... ok test_value (tests.test_parameter.TestParameter) test getter/setter for the value attribute ... ok test_add (tests.test_tag.TestTag) test Tag.add() ... ok test_attributes (tests.test_tag.TestTag) test getter for the attributes attribute ... ok test_children (tests.test_tag.TestTag) test Tag.__children__() ... ok test_closing_tag (tests.test_tag.TestTag) test getter/setter for the closing_tag attribute ... ok test_closing_wiki_markup (tests.test_tag.TestTag) test getter/setter for closing_wiki_markup attribute ... ok test_contents (tests.test_tag.TestTag) test getter/setter for the contents attribute ... ok test_get (tests.test_tag.TestTag) test Tag.get() ... ok test_has (tests.test_tag.TestTag) test Tag.has() ... ok test_implicit (tests.test_tag.TestTag) test getter/setter for the implicit attribute ... ok test_invalid (tests.test_tag.TestTag) test getter/setter for the invalid attribute ... ok test_padding (tests.test_tag.TestTag) test getter/setter for the padding attribute ... ok test_remove (tests.test_tag.TestTag) test Tag.remove() ... ok test_self_closing (tests.test_tag.TestTag) test getter/setter for the self_closing attribute ... ok test_showtree (tests.test_tag.TestTag) test Tag.__showtree__() ... ok test_strip (tests.test_tag.TestTag) test Tag.__strip__() ... ok test_tag (tests.test_tag.TestTag) test getter/setter for the tag attribute ... ok test_unicode (tests.test_tag.TestTag) test Tag.__unicode__() ... ok test_wiki_markup (tests.test_tag.TestTag) test getter/setter for the wiki_markup attribute ... ok test_wiki_style_separator (tests.test_tag.TestTag) test getter/setter for wiki_style_separator attribute ... ok test_parse_anything_invalid (tests.test_utils.TestUtils) tests for invalid input to utils.parse_anything() ... ok test_parse_anything_valid (tests.test_utils.TestUtils) tests for valid input to utils.parse_anything() ... ok test_children (tests.test_comment.TestComment) test Comment.__children__() ... ok test_contents (tests.test_comment.TestComment) test getter/setter for the contents attribute ... ok test_showtree (tests.test_comment.TestComment) test Comment.__showtree__() ... ok test_strip (tests.test_comment.TestComment) test Comment.__strip__() ... ok test_unicode (tests.test_comment.TestComment) test Comment.__unicode__() ... ok test_children (tests.test_wikilink.TestWikilink) test Wikilink.__children__() ... ok test_showtree (tests.test_wikilink.TestWikilink) test Wikilink.__showtree__() ... ok test_strip (tests.test_wikilink.TestWikilink) test Wikilink.__strip__() ... ok test_text (tests.test_wikilink.TestWikilink) test getter/setter for the text attribute ... ok test_title (tests.test_wikilink.TestWikilink) test getter/setter for the title attribute ... ok test_unicode (tests.test_wikilink.TestWikilink) test Wikilink.__unicode__() ... ok test_brackets (tests.test_external_link.TestExternalLink) test getter/setter for the brackets attribute ... ok test_children (tests.test_external_link.TestExternalLink) test ExternalLink.__children__() ... ok test_showtree (tests.test_external_link.TestExternalLink) test ExternalLink.__showtree__() ... ok test_strip (tests.test_external_link.TestExternalLink) test ExternalLink.__strip__() ... ok test_title (tests.test_external_link.TestExternalLink) test getter/setter for the title attribute ... ok test_unicode (tests.test_external_link.TestExternalLink) test ExternalLink.__unicode__() ... ok test_url (tests.test_external_link.TestExternalLink) test getter/setter for the url attribute ... ok test_child_add (tests.test_smart_list.TestSmartList) make sure _ListProxy's add/radd/iadd work ... ok test_child_get_set_del (tests.test_smart_list.TestSmartList) make sure _ListProxy's getitem/setitem/delitem work ... ok test_child_methods (tests.test_smart_list.TestSmartList) make sure _ListProxy's non-magic methods work, like append() ... ok test_child_other_magics (tests.test_smart_list.TestSmartList) make sure _ListProxy's other magically implemented features work ... ok test_docs (tests.test_smart_list.TestSmartList) make sure the methods of SmartList/_ListProxy have docstrings ... ok test_doctest (tests.test_smart_list.TestSmartList) make sure the test embedded in SmartList's docstring passes ... ok test_influence (tests.test_smart_list.TestSmartList) make sure changes are propagated from parents to children ... ok test_parent_add (tests.test_smart_list.TestSmartList) make sure SmartList's add/radd/iadd work ... ok test_parent_get_set_del (tests.test_smart_list.TestSmartList) make sure SmartList's getitem/setitem/delitem work ... ok test_parent_methods (tests.test_smart_list.TestSmartList) make sure SmartList's non-magic methods work, like append() ... ok test_parent_other_magics (tests.test_smart_list.TestSmartList) make sure SmartList's other magically implemented features work ... ok test_comparisons (tests.test_string_mixin.TestStringMixIn) make sure comparison operators work ... ok test_docs (tests.test_string_mixin.TestStringMixIn) make sure the various methods of StringMixIn have docstrings ... ok test_other_magics (tests.test_string_mixin.TestStringMixIn) test other magically implemented features, like len() and iter() ... ok test_other_methods (tests.test_string_mixin.TestStringMixIn) test the remaining non-magic methods of StringMixIn ... ok test_types (tests.test_string_mixin.TestStringMixIn) make sure StringMixIns convert to different types correctly ... ok test_name (tests.test_attribute.TestAttribute) test getter/setter for the name attribute ... ok test_padding (tests.test_attribute.TestAttribute) test getter/setter for the padding attributes ... ok test_quotes (tests.test_attribute.TestAttribute) test getter/setter for the quotes attribute ... ok test_unicode (tests.test_attribute.TestAttribute) test Attribute.__unicode__() ... ok test_value (tests.test_attribute.TestAttribute) test getter/setter for the value attribute ... ok test_argument (tests.test_builder.TestBuilder) tests for building Argument nodes ... ok test_comment (tests.test_builder.TestBuilder) tests for building Comment nodes ... ok test_external_link (tests.test_builder.TestBuilder) tests for building ExternalLink nodes ... ok test_heading (tests.test_builder.TestBuilder) tests for building Heading nodes ... ok test_html_entity (tests.test_builder.TestBuilder) tests for building HTMLEntity nodes ... ok test_integration (tests.test_builder.TestBuilder) a test for building a combination of templates together ... ok test_integration2 (tests.test_builder.TestBuilder) an even more audacious test for building a horrible wikicode mess ... ok test_parser_errors (tests.test_builder.TestBuilder) test whether ParserError gets thrown for bad input ... ok test_tag (tests.test_builder.TestBuilder) tests for building Tag nodes ... ok test_template (tests.test_builder.TestBuilder) tests for building Template nodes ... ok test_text (tests.test_builder.TestBuilder) tests for building Text nodes ... ok test_wikilink (tests.test_builder.TestBuilder) tests for building Wikilink nodes ... ok test_arguments01_blank (tests.test_ctokenizer.TestCTokenizer) argument with no content ... ok test_arguments02_blank_with_default (tests.test_ctokenizer.TestCTokenizer) argument with no content but a pipe ... ok test_arguments03_basic (tests.test_ctokenizer.TestCTokenizer) simplest type of argument ... ok test_arguments04_default (tests.test_ctokenizer.TestCTokenizer) argument with a default value ... ok test_arguments05_blank_with_multiple_defaults (tests.test_ctokenizer.TestCTokenizer) no content, multiple pipes ... ok test_arguments06_multiple_defaults (tests.test_ctokenizer.TestCTokenizer) multiple values separated by pipes ... ok test_arguments07_newline (tests.test_ctokenizer.TestCTokenizer) newline as only content ... ok test_arguments08_right_braces (tests.test_ctokenizer.TestCTokenizer) multiple } scattered throughout text ... ok test_arguments09_right_braces_default (tests.test_ctokenizer.TestCTokenizer) multiple } scattered throughout text, with a default value ... ok test_arguments10_nested (tests.test_ctokenizer.TestCTokenizer) an argument nested within another argument ... ok test_arguments11_invalid_braces (tests.test_ctokenizer.TestCTokenizer) invalid argument: multiple braces that are not part of a template or argument ... ok test_arguments12_incomplete_open_only (tests.test_ctokenizer.TestCTokenizer) incomplete arguments: just an open ... ok test_arguments13_incomplete_open_text (tests.test_ctokenizer.TestCTokenizer) incomplete arguments: an open with some text ... ok test_arguments14_incomplete_open_text_pipe (tests.test_ctokenizer.TestCTokenizer) incomplete arguments: an open, text, then a pipe ... ok test_arguments15_incomplete_open_pipe (tests.test_ctokenizer.TestCTokenizer) incomplete arguments: an open, then a pipe ... ok test_arguments16_incomplete_open_pipe_text (tests.test_ctokenizer.TestCTokenizer) incomplete arguments: an open, then a pipe, then text ... ok test_arguments17_incomplete_open_pipes_text (tests.test_ctokenizer.TestCTokenizer) incomplete arguments: a pipe, then text then two pipes ... ok test_arguments18_incomplete_open_partial_close (tests.test_ctokenizer.TestCTokenizer) incomplete arguments: an open, then one right brace ... ok test_arguments19_incomplete_preserve_previous (tests.test_ctokenizer.TestCTokenizer) incomplete arguments: a valid argument followed by an invalid one ... ok test_comments1_blank (tests.test_ctokenizer.TestCTokenizer) a blank comment ... ok test_comments2_basic (tests.test_ctokenizer.TestCTokenizer) a basic comment ... ok test_comments3_tons_of_nonsense (tests.test_ctokenizer.TestCTokenizer) a comment with tons of ignorable garbage in it ... ok test_comments4_incomplete_blank (tests.test_ctokenizer.TestCTokenizer) a comment that doesn't close ... ok test_comments5_incomplete_text (tests.test_ctokenizer.TestCTokenizer) a comment that doesn't close, with text ... ok test_comments6_incomplete_partial_close (tests.test_ctokenizer.TestCTokenizer) a comment that doesn't close, with a partial close ... ok test_comments7_incomplete_part_only (tests.test_ctokenizer.TestCTokenizer) a comment that only has a < and ! ... ok test_external_links01_basic (tests.test_ctokenizer.TestCTokenizer) basic external link ... ok test_external_links02_basic_brackets (tests.test_ctokenizer.TestCTokenizer) basic external link in brackets ... ok test_external_links03_brackets_space (tests.test_ctokenizer.TestCTokenizer) basic external link in brackets, with a space after ... ok test_external_links04_brackets_title (tests.test_ctokenizer.TestCTokenizer) basic external link in brackets, with a title ... ok test_external_links05_brackets_multiword_title (tests.test_ctokenizer.TestCTokenizer) basic external link in brackets, with a multi-word title ... ok test_external_links06_brackets_adjacent (tests.test_ctokenizer.TestCTokenizer) three adjacent bracket-enclosed external links ... ok test_external_links07_brackets_newline_before (tests.test_ctokenizer.TestCTokenizer) bracket-enclosed link with a newline before the title ... ok test_external_links08_brackets_newline_inside (tests.test_ctokenizer.TestCTokenizer) bracket-enclosed link with a newline in the title ... ok test_external_links09_brackets_newline_after (tests.test_ctokenizer.TestCTokenizer) bracket-enclosed link with a newline after the title ... ok test_external_links10_brackets_space_before (tests.test_ctokenizer.TestCTokenizer) bracket-enclosed link with a space before the URL ... ok test_external_links11_brackets_title_like_url (tests.test_ctokenizer.TestCTokenizer) bracket-enclosed link with a title that looks like a URL ... ok test_external_links12_brackets_recursive (tests.test_ctokenizer.TestCTokenizer) bracket-enclosed link with a bracket-enclosed link as the title ... ok test_external_links13_brackets_recursive_2 (tests.test_ctokenizer.TestCTokenizer) bracket-enclosed link with a double bracket-enclosed link as the title ... ok test_external_links14_period_after (tests.test_ctokenizer.TestCTokenizer) a period after a free link that is excluded ... ok test_external_links15_colons_after (tests.test_ctokenizer.TestCTokenizer) colons after a free link that are excluded ... ok test_external_links16_close_paren_after_excluded (tests.test_ctokenizer.TestCTokenizer) a closing parenthesis after a free link that is excluded ... ok test_external_links17_close_paren_after_included (tests.test_ctokenizer.TestCTokenizer) a closing parenthesis after a free link that is included because of an opening parenthesis in the URL ... ok test_external_links18_open_bracket_inside (tests.test_ctokenizer.TestCTokenizer) an open bracket inside a free link that causes it to be ended abruptly ... ok test_external_links19_brackets_period_after (tests.test_ctokenizer.TestCTokenizer) a period after a bracket-enclosed link that is included ... ok test_external_links20_brackets_punct_after (tests.test_ctokenizer.TestCTokenizer) punctuation after a bracket-enclosed link that are included ... ok test_external_links21_brackets_close_paren_after_included (tests.test_ctokenizer.TestCTokenizer) a closing parenthesis after a bracket-enclosed link that is included ... ok test_external_links22_brackets_close_paren_after_included_2 (tests.test_ctokenizer.TestCTokenizer) a closing parenthesis after a bracket-enclosed link that is also included ... ok test_external_links23_brackets_open_bracket_inside (tests.test_ctokenizer.TestCTokenizer) an open bracket inside a bracket-enclosed link that is also included ... ok test_external_links24_adjacent_space (tests.test_ctokenizer.TestCTokenizer) two free links separated by a space ... ok test_external_links25_adjacent_newline (tests.test_ctokenizer.TestCTokenizer) two free links separated by a newline ... ok test_external_links26_adjacent_close_bracket (tests.test_ctokenizer.TestCTokenizer) two free links separated by a close bracket ... ok test_external_links27_html_entity_in_url (tests.test_ctokenizer.TestCTokenizer) a HTML entity parsed correctly inside a free link ... ok test_external_links28_template_in_url (tests.test_ctokenizer.TestCTokenizer) a template parsed correctly inside a free link ... ok test_external_links29_argument_in_url (tests.test_ctokenizer.TestCTokenizer) an argument parsed correctly inside a free link ... ok test_external_links30_wikilink_in_url (tests.test_ctokenizer.TestCTokenizer) a wikilink that destroys a free link ... ok test_external_links31_external_link_in_url (tests.test_ctokenizer.TestCTokenizer) a bracketed link that destroys a free link ... ok test_external_links32_spaces_padding (tests.test_ctokenizer.TestCTokenizer) spaces padding a free link ... ok test_external_links33_text_and_spaces_padding (tests.test_ctokenizer.TestCTokenizer) text and spaces padding a free link ... ok test_external_links34_template_before (tests.test_ctokenizer.TestCTokenizer) a template before a free link ... ok test_external_links35_spaces_padding_no_slashes (tests.test_ctokenizer.TestCTokenizer) spaces padding a free link with no slashes after the colon ... ok test_external_links36_text_and_spaces_padding_no_slashes (tests.test_ctokenizer.TestCTokenizer) text and spaces padding a free link with no slashes after the colon ... ok test_external_links37_template_before_no_slashes (tests.test_ctokenizer.TestCTokenizer) a template before a free link with no slashes after the colon ... ok test_external_links38_no_slashes (tests.test_ctokenizer.TestCTokenizer) a free link with no slashes after the colon ... ok test_external_links39_slashes_optional (tests.test_ctokenizer.TestCTokenizer) a free link using a scheme that doesn't need slashes, but has them anyway ... ok test_external_links40_short (tests.test_ctokenizer.TestCTokenizer) a very short free link ... ok test_external_links41_slashes_missing (tests.test_ctokenizer.TestCTokenizer) slashes missing from a free link with a scheme that requires them ... ok test_external_links42_no_scheme_but_slashes (tests.test_ctokenizer.TestCTokenizer) no scheme in a free link, but slashes (protocol-relative free links are not supported) ... ok test_external_links43_no_scheme_but_colon (tests.test_ctokenizer.TestCTokenizer) no scheme in a free link, but a colon ... ok test_external_links44_no_scheme_but_colon_and_slashes (tests.test_ctokenizer.TestCTokenizer) no scheme in a free link, but a colon and slashes ... ok test_external_links45_fake_scheme_no_slashes (tests.test_ctokenizer.TestCTokenizer) a nonexistent scheme in a free link, without slashes ... ok test_external_links46_fake_scheme_slashes (tests.test_ctokenizer.TestCTokenizer) a nonexistent scheme in a free link, with slashes ... ok test_external_links47_fake_scheme_brackets_no_slashes (tests.test_ctokenizer.TestCTokenizer) a nonexistent scheme in a bracketed link, without slashes ... ok test_external_links48_fake_scheme_brackets_slashes (tests.test_ctokenizer.TestCTokenizer) #=a nonexistent scheme in a bracketed link, with slashes ... ok test_external_links49_interrupted_scheme (tests.test_ctokenizer.TestCTokenizer) an otherwise valid scheme with something in the middle of it, in a free link ... ok test_external_links50_interrupted_scheme_brackets (tests.test_ctokenizer.TestCTokenizer) an otherwise valid scheme with something in the middle of it, in a bracketed link ... ok test_external_links51_no_slashes_brackets (tests.test_ctokenizer.TestCTokenizer) no slashes after the colon in a bracketed link ... ok test_external_links52_space_before_no_slashes_brackets (tests.test_ctokenizer.TestCTokenizer) a space before a bracketed link with no slashes after the colon ... ok test_external_links53_slashes_optional_brackets (tests.test_ctokenizer.TestCTokenizer) a bracketed link using a scheme that doesn't need slashes, but has them anyway ... ok test_external_links54_short_brackets (tests.test_ctokenizer.TestCTokenizer) a very short link in brackets ... ok test_external_links55_slashes_missing_brackets (tests.test_ctokenizer.TestCTokenizer) slashes missing from a scheme that requires them in a bracketed link ... ok test_external_links56_protcol_relative (tests.test_ctokenizer.TestCTokenizer) a protocol-relative link (in brackets) ... ok test_external_links57_scheme_missing_but_colon_brackets (tests.test_ctokenizer.TestCTokenizer) scheme missing from a bracketed link, but with a colon ... ok test_external_links58_scheme_missing_but_colon_slashes_brackets (tests.test_ctokenizer.TestCTokenizer) scheme missing from a bracketed link, but with a colon and slashes ... ok test_external_links59_unclosed_protocol_relative (tests.test_ctokenizer.TestCTokenizer) an unclosed protocol-relative bracketed link ... ok test_external_links60_space_before_protcol_relative (tests.test_ctokenizer.TestCTokenizer) a space before a protocol-relative bracketed link ... ok test_external_links61_unclosed_just_scheme (tests.test_ctokenizer.TestCTokenizer) an unclosed bracketed link, ending after the scheme ... ok test_external_links62_unclosed_scheme_colon (tests.test_ctokenizer.TestCTokenizer) an unclosed bracketed link, ending after the colon ... ok test_external_links63_unclosed_scheme_colon_slashes (tests.test_ctokenizer.TestCTokenizer) an unclosed bracketed link, ending after the slashes ... ok test_external_links64_incomplete_bracket (tests.test_ctokenizer.TestCTokenizer) just an open bracket ... ok test_external_links65_incomplete_scheme_colon (tests.test_ctokenizer.TestCTokenizer) a free link with just a scheme and a colon ... ok test_external_links66_incomplete_scheme_colon_slashes (tests.test_ctokenizer.TestCTokenizer) a free link with just a scheme, colon, and slashes ... ok test_external_links67_brackets_scheme_but_no_url (tests.test_ctokenizer.TestCTokenizer) brackets around a scheme and a colon ... ok test_external_links68_brackets_scheme_slashes_but_no_url (tests.test_ctokenizer.TestCTokenizer) brackets around a scheme, colon, and slashes ... ok test_external_links69_brackets_scheme_title_but_no_url (tests.test_ctokenizer.TestCTokenizer) brackets around a scheme, colon, and slashes, with a title ... ok test_headings01_level_1 (tests.test_ctokenizer.TestCTokenizer) a basic level-1 heading ... ok test_headings02_level_2 (tests.test_ctokenizer.TestCTokenizer) a basic level-2 heading ... ok test_headings03_level_3 (tests.test_ctokenizer.TestCTokenizer) a basic level-3 heading ... ok test_headings04_level_4 (tests.test_ctokenizer.TestCTokenizer) a basic level-4 heading ... ok test_headings05_level_5 (tests.test_ctokenizer.TestCTokenizer) a basic level-5 heading ... ok test_headings06_level_6 (tests.test_ctokenizer.TestCTokenizer) a basic level-6 heading ... ok test_headings07_level_7 (tests.test_ctokenizer.TestCTokenizer) a level-6 heading that pretends to be a level-7 heading ... ok test_headings08_level_3_2 (tests.test_ctokenizer.TestCTokenizer) a level-2 heading that pretends to be a level-3 heading ... ok test_headings09_level_4_6 (tests.test_ctokenizer.TestCTokenizer) a level-4 heading that pretends to be a level-6 heading ... ok test_headings10_newline_before (tests.test_ctokenizer.TestCTokenizer) a heading that starts after a newline ... ok test_headings11_text_after (tests.test_ctokenizer.TestCTokenizer) text on the same line after ... ok test_headings12_invalid_text_before (tests.test_ctokenizer.TestCTokenizer) invalid headings: text on the same line before ... ok test_headings13_invalid_newline_middle (tests.test_ctokenizer.TestCTokenizer) invalid headings: newline in the middle ... ok test_headings14_invalid_newline_end (tests.test_ctokenizer.TestCTokenizer) invalid headings: newline in the middle ... ok test_headings15_invalid_nesting (tests.test_ctokenizer.TestCTokenizer) invalid headings: attempts at nesting ... ok test_headings16_incomplete (tests.test_ctokenizer.TestCTokenizer) a heading that starts but doesn't finish ... ok test_html_entities01_named (tests.test_ctokenizer.TestCTokenizer) a basic named HTML entity ... ok test_html_entities02_numeric_decimal (tests.test_ctokenizer.TestCTokenizer) a basic decimal HTML entity ... ok test_html_entities03_numeric_hexadecimal_x (tests.test_ctokenizer.TestCTokenizer) a basic hexadecimal HTML entity, using 'x' as a signal ... ok test_html_entities04_numeric_hexadecimal_X (tests.test_ctokenizer.TestCTokenizer) a basic hexadecimal HTML entity, using 'X' as a signal ... ok test_html_entities05_numeric_decimal_max (tests.test_ctokenizer.TestCTokenizer) the maximum acceptable decimal numeric entity ... ok test_html_entities06_numeric_hex_max (tests.test_ctokenizer.TestCTokenizer) the maximum acceptable hexadecimal numeric entity ... ok test_html_entities07_numeric_zeros (tests.test_ctokenizer.TestCTokenizer) zeros accepted at the beginning of a numeric entity ... ok test_html_entities08_numeric_hex_zeros (tests.test_ctokenizer.TestCTokenizer) zeros accepted at the beginning of a hex numeric entity ... ok test_html_entities09_invalid_named_too_long (tests.test_ctokenizer.TestCTokenizer) a named entity that is too long ... ok test_html_entities10_invalid_named_undefined (tests.test_ctokenizer.TestCTokenizer) a named entity that doesn't exist ... ok test_html_entities11_invalid_named_nonascii (tests.test_ctokenizer.TestCTokenizer) a named entity with non-ASCII characters ... ok test_html_entities12_invalid_numeric_out_of_range_1 (tests.test_ctokenizer.TestCTokenizer) a numeric entity that is out of range: < 1 ... ok test_html_entities13_invalid_numeric_out_of_range_2 (tests.test_ctokenizer.TestCTokenizer) a hex numeric entity that is out of range: < 1 ... ok test_html_entities14_invalid_numeric_out_of_range_3 (tests.test_ctokenizer.TestCTokenizer) a numeric entity that is out of range: > 0x10FFFF ... ok test_html_entities15_invalid_numeric_out_of_range_4 (tests.test_ctokenizer.TestCTokenizer) a hex numeric entity that is out of range: > 0x10FFFF ... ok test_html_entities16_invalid_partial_amp (tests.test_ctokenizer.TestCTokenizer) invalid entities: just an ampersand ... ok test_html_entities17_invalid_partial_amp_semicolon (tests.test_ctokenizer.TestCTokenizer) invalid entities: an ampersand and semicolon ... ok test_html_entities18_invalid_partial_amp_pound (tests.test_ctokenizer.TestCTokenizer) invalid entities: just an ampersand, pound sign ... ok test_html_entities19_invalid_partial_amp_pound_x (tests.test_ctokenizer.TestCTokenizer) invalid entities: just an ampersand, pound sign, x ... ok test_html_entities20_invalid_partial_amp_pound_semicolon (tests.test_ctokenizer.TestCTokenizer) invalid entities: an ampersand, pound sign, and semicolon ... ok test_html_entities21_invalid_partial_amp_pound_x_semicolon (tests.test_ctokenizer.TestCTokenizer) invalid entities: an ampersand, pound sign, x, and semicolon ... ok test_html_entities22_invalid_partial_amp_pound_numbers (tests.test_ctokenizer.TestCTokenizer) invalid entities: an ampersand, pound sign, numbers ... ok test_html_entities23_invalid_partial_amp_pound_x_semicolon (tests.test_ctokenizer.TestCTokenizer) invalid entities: an ampersand, pound sign, and x ... ok test_integration01_empty (tests.test_ctokenizer.TestCTokenizer) sanity check that parsing an empty string yields nothing ... ok test_integration02_template_argument_mix (tests.test_ctokenizer.TestCTokenizer) an ambiguous mix of templates and arguments ... ok test_integration03_link_in_template_name (tests.test_ctokenizer.TestCTokenizer) a wikilink inside a template name, which breaks the template ... ok test_integration04_rich_heading (tests.test_ctokenizer.TestCTokenizer) a heading with templates/wikilinks in it ... ok test_integration05_html_entity_with_template (tests.test_ctokenizer.TestCTokenizer) a HTML entity with a template embedded inside ... ok test_integration06_html_entity_with_comment (tests.test_ctokenizer.TestCTokenizer) a HTML entity with a comment embedded inside ... ok test_integration07_rich_tags (tests.test_ctokenizer.TestCTokenizer) a HTML tag with tons of other things in it ... ok test_integration08_wildcard (tests.test_ctokenizer.TestCTokenizer) a wildcard assortment of various things ... ok test_integration09_wildcard_redux (tests.test_ctokenizer.TestCTokenizer) an even wilder assortment of various things ... ok test_integration10_link_inside_dl (tests.test_ctokenizer.TestCTokenizer) an external link inside a def list, such that the external link is parsed ... ok test_integration11_link_inside_dl_2 (tests.test_ctokenizer.TestCTokenizer) an external link inside a def list, such that the external link is not parsed ... ok test_integration12_link_inside_template (tests.test_ctokenizer.TestCTokenizer) an external link nested inside a template, before the end ... ok test_integration13_link_inside_template_2 (tests.test_ctokenizer.TestCTokenizer) an external link nested inside a template, before a separator ... ok test_integration14_link_inside_template_3 (tests.test_ctokenizer.TestCTokenizer) an external link nested inside a template, before an equal sign ... ok test_integration15_link_inside_argument (tests.test_ctokenizer.TestCTokenizer) an external link nested inside an argument ... ok test_integration16_link_inside_heading (tests.test_ctokenizer.TestCTokenizer) an external link nested inside a heading ... ok test_integration17_link_inside_tag_body (tests.test_ctokenizer.TestCTokenizer) an external link nested inside the body of a tag ... ok test_integration18_link_inside_tag_style (tests.test_ctokenizer.TestCTokenizer) an external link nested inside style tags ... ok test_integration19_style_tag_inside_link (tests.test_ctokenizer.TestCTokenizer) style tags disrupting an external link ... ok test_integration20_comment_inside_link (tests.test_ctokenizer.TestCTokenizer) an HTML comment inside an external link ... ok test_integration21_bracketed_link_inside_template (tests.test_ctokenizer.TestCTokenizer) a bracketed external link nested inside a template, before the end ... ok test_integration22_comment_inside_bracketed_link (tests.test_ctokenizer.TestCTokenizer) an HTML comment inside a bracketed external link ... ok test_integration23_wikilink_inside_external_link (tests.test_ctokenizer.TestCTokenizer) a wikilink inside an external link, which the parser considers valid (see issue #61) ... ok test_integration24_external_link_inside_wikilink (tests.test_ctokenizer.TestCTokenizer) an external link inside a wikilink, valid in the case of images (see issue #62) ... ok test_integration25_external_link_inside_wikilink_brackets (tests.test_ctokenizer.TestCTokenizer) an external link with brackets inside a wikilink ... ok test_integration26_external_link_inside_wikilink_title (tests.test_ctokenizer.TestCTokenizer) an external link inside a wikilink title, which is not parsed ... ok test_integration27_italics_inside_external_link_inside_incomplete_list (tests.test_ctokenizer.TestCTokenizer) italic text inside an external link inside an incomplete list ... ok test_integration28_nodes_inside_external_link_after_punct (tests.test_ctokenizer.TestCTokenizer) various complex nodes inside an external link following punctuation ... ok test_integration29_newline_and_comment_in_template_name (tests.test_ctokenizer.TestCTokenizer) a template name containing a newline followed by a comment ... ok test_integration30_newline_and_comment_in_template_name_2 (tests.test_ctokenizer.TestCTokenizer) a template name containing a newline followed by a comment ... ok test_integration31_newline_and_comment_in_template_name_3 (tests.test_ctokenizer.TestCTokenizer) a template name containing a newline followed by a comment ... ok test_integration32_newline_and_comment_in_template_name_4 (tests.test_ctokenizer.TestCTokenizer) a template name containing a newline followed by a comment ... ok test_integration33_newline_and_comment_in_template_name_5 (tests.test_ctokenizer.TestCTokenizer) a template name containing a newline followed by a comment ... ok test_integration34_newline_and_comment_in_template_name_6 (tests.test_ctokenizer.TestCTokenizer) a template name containing a newline followed by a comment ... ok test_integration35_newline_and_comment_in_template_name_7 (tests.test_ctokenizer.TestCTokenizer) a template name containing a newline followed by a comment ... ok test_integration36_newline_and_comment_in_template_name_8 (tests.test_ctokenizer.TestCTokenizer) a template name containing a newline followed by a comment ... ok test_integration37_tag_in_link_title (tests.test_ctokenizer.TestCTokenizer) HTML tags are invalid in link titles, even when complete ... ok test_integration38_tag_in_template_name (tests.test_ctokenizer.TestCTokenizer) HTML tags are invalid in template names, even when complete ... ok test_integration39_tag_in_link_text (tests.test_ctokenizer.TestCTokenizer) HTML tags are valid in link text ... ok test_integration40_comment_in_link_title (tests.test_ctokenizer.TestCTokenizer) comments are valid in link titles ... ok test_integration41_incomplete_comment_in_link_title (tests.test_ctokenizer.TestCTokenizer) incomplete comments are invalid in link titles ... ok test_integration42_incomplete_comment_in_link_title_2 (tests.test_ctokenizer.TestCTokenizer) incomplete comments are invalid in link titles ... ok test_integration43_incomplete_comment_in_link_title_3 (tests.test_ctokenizer.TestCTokenizer) incomplete comments are invalid in link titles ... ok test_integration44_incomplete_comment_in_link_title_4 (tests.test_ctokenizer.TestCTokenizer) incomplete comments are invalid in link titles ... ok test_integration45_incomplete_comment_in_link_title_5 (tests.test_ctokenizer.TestCTokenizer) incomplete comments are invalid in link titles ... ok test_integration46_incomplete_comment_in_link_title_6 (tests.test_ctokenizer.TestCTokenizer) incomplete comments are invalid in link titles ... ok test_integration47_wikilink_to_external_link_fallback (tests.test_ctokenizer.TestCTokenizer) an external link enclosed in an extra pair of brackets (see issue #120) ... ok test_integration48_wikilink_to_external_link_fallback_2 (tests.test_ctokenizer.TestCTokenizer) an external link enclosed in an extra pair of brackets (see issue #120) ... ok test_integration49_tables_in_templates (tests.test_ctokenizer.TestCTokenizer) catch error handling mistakes when wikitables are inside templates ... ok test_integration50_tables_in_templates_2 (tests.test_ctokenizer.TestCTokenizer) catch error handling mistakes when wikitables are inside templates ... ok test_integration51_many_invalid_nested_tags (tests.test_ctokenizer.TestCTokenizer) many unending nested tags that should be treated as plain text, followed by valid wikitext (see issues #42, #183) ... ok test_tables01_empty_table (tests.test_ctokenizer.TestCTokenizer) parsing an empty table ... ok test_tables02_inline_table (tests.test_ctokenizer.TestCTokenizer) tables with a close on the same line are not valid ... ok test_tables03_no_table_close_simple (tests.test_ctokenizer.TestCTokenizer) no table close on inline table ... ok test_tables04_no_table_close_newline (tests.test_ctokenizer.TestCTokenizer) no table close with a newline ... ok test_tables05_no_table_close_inside_cell (tests.test_ctokenizer.TestCTokenizer) no table close while inside of a cell ... ok test_tables06_no_table_close_inside_cell_after_newline (tests.test_ctokenizer.TestCTokenizer) no table close while inside of a cell after a newline ... ok test_tables07_no_table_close_inside_cell_with_attributes (tests.test_ctokenizer.TestCTokenizer) no table close while inside of a cell with attributes ... ok test_tables08_no_table_close_inside_row (tests.test_ctokenizer.TestCTokenizer) no table close while inside of a row ... ok test_tables09_no_table_close_inside_row_after_newline (tests.test_ctokenizer.TestCTokenizer) no table close while inside of a row after a newline ... ok test_tables10_no_table_close_row_and_cell (tests.test_ctokenizer.TestCTokenizer) no table close while inside a cell inside a row ... ok test_tables11_no_table_close_attributes (tests.test_ctokenizer.TestCTokenizer) don't parse attributes as attributes if the table doesn't exist ... ok test_tables12_no_table_close_unclosed_attributes (tests.test_ctokenizer.TestCTokenizer) don't parse unclosed attributes if the table doesn't exist ... ok test_tables13_no_table_close_row_attributes (tests.test_ctokenizer.TestCTokenizer) don't parse row attributes as attributes if the table doesn't exist ... ok test_tables14_no_table_close_cell (tests.test_ctokenizer.TestCTokenizer) don't parse cells if the table doesn't close ... ok test_tables15_crazy_no_table_close (tests.test_ctokenizer.TestCTokenizer) lots of opened wiki syntax without closes ... ok test_tables16_leading_whitespace_table (tests.test_ctokenizer.TestCTokenizer) handle leading whitespace for a table ... ok test_tables17_whitespace_after_table (tests.test_ctokenizer.TestCTokenizer) handle whitespace after a table close ... ok test_tables18_different_whitespace_after_table (tests.test_ctokenizer.TestCTokenizer) handle spaces after a table close ... ok test_tables19_characters_after_table (tests.test_ctokenizer.TestCTokenizer) handle characters after a table close ... ok test_tables20_characters_after_inline_table (tests.test_ctokenizer.TestCTokenizer) handle characters after an inline table close ... ok test_tables21_leading_characters_table (tests.test_ctokenizer.TestCTokenizer) don't parse as a table when leading characters are not newline or whitespace ... ok test_tables22_table_row_simple (tests.test_ctokenizer.TestCTokenizer) simple table row ... ok test_tables23_table_row_multiple (tests.test_ctokenizer.TestCTokenizer) simple table row ... ok test_tables24_table_cell_simple (tests.test_ctokenizer.TestCTokenizer) simple table cell ... ok test_tables25_table_cell_inline (tests.test_ctokenizer.TestCTokenizer) multiple inline table cells ... ok test_tables26_table_cell_multiple (tests.test_ctokenizer.TestCTokenizer) multiple table cells (non-inline) ... ok test_tables27_table_header_simple (tests.test_ctokenizer.TestCTokenizer) simple header cell ... ok test_tables28_table_header_inline (tests.test_ctokenizer.TestCTokenizer) multiple inline header cells ... ok test_tables29_table_header_multiple (tests.test_ctokenizer.TestCTokenizer) multiple table header cells (non-inline) ... ok test_tables30_nested_cells_and_rows (tests.test_ctokenizer.TestCTokenizer) combination of cells and rows in a table ... ok test_tables31_table_cell_fake_close (tests.test_ctokenizer.TestCTokenizer) looks like a table close but is not ... ok test_tables32_table_cell_more_fake_close (tests.test_ctokenizer.TestCTokenizer) looks like a table close but is not ... ok test_tables33_table_cell_extra_close (tests.test_ctokenizer.TestCTokenizer) process second close as text ... ok test_tables34_nowiki_inside_table (tests.test_ctokenizer.TestCTokenizer) nowiki handles pipe characters in tables ... ok test_tables35_table_text_outside_cell (tests.test_ctokenizer.TestCTokenizer) parse text inside table but outside of a cell ... ok test_tables36_no_table_cell_with_leading_characters (tests.test_ctokenizer.TestCTokenizer) fail to create a table cell when there are leading non-whitespace characters ... ok test_tables37_no_table_row_with_leading_characters (tests.test_ctokenizer.TestCTokenizer) fail to create a table row when there are leading non-whitespace characters ... ok test_tables38_template_inside_table_cell (tests.test_ctokenizer.TestCTokenizer) template within table cell ... ok test_tables39_table_cell_attributes (tests.test_ctokenizer.TestCTokenizer) parse table cell style attributes ... ok test_tables40_table_cell_empty_attributes (tests.test_ctokenizer.TestCTokenizer) parse table cell with style markers but no attributes ... ok test_tables41_table_cell_with_dash (tests.test_ctokenizer.TestCTokenizer) parse a situation in which a cell line looks like a row line ... ok test_tables42_table_cell_attributes_quote_with_pipe (tests.test_ctokenizer.TestCTokenizer) pipe inside an attribute quote should still be used as a style separator ... ok test_tables43_table_cell_attributes_name_with_pipe (tests.test_ctokenizer.TestCTokenizer) pipe inside an attribute name should still be used as a style separator ... ok test_tables44_table_cell_attributes_pipe_after_equals (tests.test_ctokenizer.TestCTokenizer) pipe inside an attribute should still be used as a style separator after an equals ... ok test_tables45_table_cell_attributes_templates (tests.test_ctokenizer.TestCTokenizer) pipe inside attributes shouldn't be style separator ... ok test_tables46_header_cell_attributes (tests.test_ctokenizer.TestCTokenizer) parse header cell style attributes ... ok test_tables47_inline_cell_attributes (tests.test_ctokenizer.TestCTokenizer) parse cell style attributes of inline cells ... ok test_tables48_table_row_attributes (tests.test_ctokenizer.TestCTokenizer) parse table row style attributes ... ok test_tables49_table_row_attributes_crazy_whitespace (tests.test_ctokenizer.TestCTokenizer) parse table row style attributes with different whitespace ... ok test_tables50_table_attributes (tests.test_ctokenizer.TestCTokenizer) parse table style attributes ... ok test_tables51_inline_table_attributes (tests.test_ctokenizer.TestCTokenizer) handle attributes in inline tables ... ok test_tables52_table_incorrect_attributes (tests.test_ctokenizer.TestCTokenizer) parse incorrect table style attributes ... ok test_tables53_templates_in_table_attribute (tests.test_ctokenizer.TestCTokenizer) templates in the attributes of a table, after the start ... ok test_tables54_templates_in_table_attribute_2 (tests.test_ctokenizer.TestCTokenizer) templates in the attributes of a table, after the start ... ok test_tables55_inappropriate_marker_at_line_start (tests.test_ctokenizer.TestCTokenizer) an inappropriate marker (a right bracket) at the start of a line in the table ... ok test_tables56_fake_close_near_start (tests.test_ctokenizer.TestCTokenizer) a fake closing token at the end of the first line in the table ... ok test_tables57_fake_close_near_start_2 (tests.test_ctokenizer.TestCTokenizer) a fake closing token at the end of the first line in the table ... ok test_tables58_junk_after_table_start (tests.test_ctokenizer.TestCTokenizer) ignore more junk on the first line of the table ... ok test_tables59_junk_after_table_row (tests.test_ctokenizer.TestCTokenizer) ignore junk on the first line of a table row ... ok test_tags01_basic (tests.test_ctokenizer.TestCTokenizer) a basic tag with an open and close ... ok test_tags02_basic_selfclosing (tests.test_ctokenizer.TestCTokenizer) a basic self-closing tag ... ok test_tags03_content (tests.test_ctokenizer.TestCTokenizer) a tag with some content in the middle ... ok test_tags04_padded_open (tests.test_ctokenizer.TestCTokenizer) a tag with some padding in the open tag ... ok test_tags05_padded_close (tests.test_ctokenizer.TestCTokenizer) a tag with some padding in the close tag ... ok test_tags06_padded_selfclosing (tests.test_ctokenizer.TestCTokenizer) a self-closing tag with padding ... ok test_tags07_attribute (tests.test_ctokenizer.TestCTokenizer) a tag with a single attribute ... ok test_tags08_attribute_value (tests.test_ctokenizer.TestCTokenizer) a tag with a single attribute with a value ... ok test_tags09_attribute_quoted (tests.test_ctokenizer.TestCTokenizer) a tag with a single quoted attribute ... ok test_tags10_attribute_single_quoted (tests.test_ctokenizer.TestCTokenizer) a tag with a single singly-quoted attribute ... ok test_tags11_attribute_hyphen (tests.test_ctokenizer.TestCTokenizer) a tag with a single attribute, containing a hyphen ... ok test_tags12_attribute_quoted_hyphen (tests.test_ctokenizer.TestCTokenizer) a tag with a single quoted attribute, containing a hyphen ... ok test_tags13_attribute_selfclosing (tests.test_ctokenizer.TestCTokenizer) a self-closing tag with a single attribute ... ok test_tags14_attribute_selfclosing_value (tests.test_ctokenizer.TestCTokenizer) a self-closing tag with a single attribute with a value ... ok test_tags15_attribute_selfclosing_value_quoted (tests.test_ctokenizer.TestCTokenizer) a self-closing tag with a single quoted attribute ... ok test_tags16_nested_tag (tests.test_ctokenizer.TestCTokenizer) a tag nested within the attributes of another ... ok test_tags17_nested_tag_quoted (tests.test_ctokenizer.TestCTokenizer) a tag nested within the attributes of another, quoted ... ok test_tags18_nested_troll_tag (tests.test_ctokenizer.TestCTokenizer) a bogus tag that appears to be nested within the attributes of another ... ok test_tags19_nested_troll_tag_quoted (tests.test_ctokenizer.TestCTokenizer) a bogus tag that appears to be nested within the attributes of another, quoted ... ok test_tags20_nested_tag_selfclosing (tests.test_ctokenizer.TestCTokenizer) a tag nested within the attributes of another; outer tag implicitly self-closing ... ok test_tags21_invalid_space_begin_open (tests.test_ctokenizer.TestCTokenizer) invalid tag: a space at the beginning of the open tag ... ok test_tags22_invalid_space_begin_close (tests.test_ctokenizer.TestCTokenizer) invalid tag: a space at the beginning of the close tag ... ok test_tags23_valid_space_end (tests.test_ctokenizer.TestCTokenizer) valid tag: spaces at the ends of both the open and close tags ... ok test_tags24_invalid_template_ends (tests.test_ctokenizer.TestCTokenizer) invalid tag: a template at the ends of both the open and close tags ... ok test_tags25_invalid_template_ends_nospace (tests.test_ctokenizer.TestCTokenizer) invalid tag: a template at the ends of both the open and close tags, without spacing ... ok test_tags26_valid_template_end_open (tests.test_ctokenizer.TestCTokenizer) valid tag: a template at the end of the open tag ... ok test_tags27_valid_template_end_open_space_end_close (tests.test_ctokenizer.TestCTokenizer) valid tag: a template at the end of the open tag; whitespace at the end of the close tag ... ok test_tags28_invalid_template_end_open_nospace (tests.test_ctokenizer.TestCTokenizer) invalid tag: a template at the end of the open tag, without spacing ... ok test_tags29_invalid_template_start_close (tests.test_ctokenizer.TestCTokenizer) invalid tag: a template at the beginning of the close tag ... ok test_tags30_invalid_template_start_open (tests.test_ctokenizer.TestCTokenizer) invalid tag: a template at the beginning of the open tag ... ok test_tags31_unclosed_quote (tests.test_ctokenizer.TestCTokenizer) a quoted attribute that is never closed ... ok test_tags32_fake_quote (tests.test_ctokenizer.TestCTokenizer) a fake quoted attribute ... ok test_tags33_fake_quote_complex (tests.test_ctokenizer.TestCTokenizer) a fake quoted attribute, with spaces and templates and links ... ok test_tags34_quotes_in_quotes (tests.test_ctokenizer.TestCTokenizer) singly-quoted text inside a doubly-quoted attribute ... ok test_tags35_quotes_in_quotes_2 (tests.test_ctokenizer.TestCTokenizer) doubly-quoted text inside a singly-quoted attribute ... ok test_tags36_quotes_in_quotes_3 (tests.test_ctokenizer.TestCTokenizer) doubly-quoted text inside a singly-quoted attribute, with backslashes ... ok test_tags37_incomplete_lbracket (tests.test_ctokenizer.TestCTokenizer) incomplete tags: just a left bracket ... ok test_tags38_incomplete_lbracket_junk (tests.test_ctokenizer.TestCTokenizer) incomplete tags: just a left bracket, surrounded by stuff ... ok test_tags39_incomplete_unclosed_open (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed open tag ... ok test_tags40_incomplete_unclosed_open_space (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed open tag, space ... ok test_tags41_incomplete_unclosed_open_unnamed_attr (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed open tag, unnamed attribute ... ok test_tags42_incomplete_unclosed_open_attr_equals (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed open tag, attribute, equal sign ... ok test_tags43_incomplete_unclosed_open_attr_equals_quoted (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed open tag, attribute, equal sign, quote ... ok test_tags44_incomplete_unclosed_open_attr (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed open tag, attribute with a key/value ... ok test_tags45_incomplete_unclosed_open_attr_quoted (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed open tag, attribute with a key/value, quoted ... ok test_tags46_incomplete_open (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag ... ok test_tags47_incomplete_open_unnamed_attr (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, unnamed attribute ... ok test_tags48_incomplete_open_attr_equals (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, attribute, equal sign ... ok test_tags49_incomplete_open_attr (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, attribute with a key/value ... ok test_tags50_incomplete_open_attr_quoted (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, attribute with a key/value, quoted ... ok test_tags51_incomplete_open_text (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, text ... ok test_tags52_incomplete_open_attr_text (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, attribute with a key/value, text ... ok test_tags53_incomplete_open_text_lbracket (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, text, left open bracket ... ok test_tags54_incomplete_open_text_lbracket_slash (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, text, left bracket, slash ... ok test_tags55_incomplete_open_text_unclosed_close (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, text, unclosed close ... ok test_tags56_incomplete_open_text_wrong_close (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an open tag, text, wrong close ... ok test_tags57_incomplete_unclosed_close (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed close tag ... ok test_tags58_incomplete_unclosed_close_text (tests.test_ctokenizer.TestCTokenizer) incomplete tags: an unclosed close tag, with text ... ok test_tags59_incomplete_close (tests.test_ctokenizer.TestCTokenizer) incomplete tags: a close tag ... ok test_tags60_incomplete_no_tag_name_open (tests.test_ctokenizer.TestCTokenizer) incomplete tags: no tag name within brackets; just an open ... ok test_tags61_incomplete_no_tag_name_selfclosing (tests.test_ctokenizer.TestCTokenizer) incomplete tags: no tag name within brackets; self-closing ... ok test_tags62_incomplete_no_tag_name_open_close (tests.test_ctokenizer.TestCTokenizer) incomplete tags: no tag name within brackets; open and close ... ok test_tags63_backslash_premature_before (tests.test_ctokenizer.TestCTokenizer) a backslash before a quote before a space ... ok test_tags64_backslash_premature_after (tests.test_ctokenizer.TestCTokenizer) a backslash before a quote after a space ... ok test_tags65_backslash_premature_middle (tests.test_ctokenizer.TestCTokenizer) a backslash before a quote in the middle of a word ... ok test_tags66_backslash_adjacent (tests.test_ctokenizer.TestCTokenizer) escaped quotes next to unescaped quotes ... ok test_tags67_backslash_endquote (tests.test_ctokenizer.TestCTokenizer) backslashes before the end quote, causing the attribute to become unquoted ... ok test_tags68_backslash_double (tests.test_ctokenizer.TestCTokenizer) two adjacent backslashes, which do *not* affect the quote ... ok test_tags69_backslash_triple (tests.test_ctokenizer.TestCTokenizer) three adjacent backslashes, which do *not* affect the quote ... ok test_tags70_backslash_unaffecting (tests.test_ctokenizer.TestCTokenizer) backslashes near quotes, but not immediately adjacent, thus having no effect ... ok test_tags71_unparsable (tests.test_ctokenizer.TestCTokenizer) a tag that should not be put through the normal parser ... ok test_tags72_unparsable_complex (tests.test_ctokenizer.TestCTokenizer) a tag that should not be put through the normal parser; lots of stuff inside ... ok test_tags73_unparsable_attributed (tests.test_ctokenizer.TestCTokenizer) a tag that should not be put through the normal parser; parsed attributes ... ok test_tags74_unparsable_incomplete (tests.test_ctokenizer.TestCTokenizer) a tag that should not be put through the normal parser; incomplete ... ok test_tags75_unparsable_entity (tests.test_ctokenizer.TestCTokenizer) a HTML entity inside unparsable text is still parsed ... ok test_tags76_unparsable_entity_incomplete (tests.test_ctokenizer.TestCTokenizer) an incomplete HTML entity inside unparsable text ... ok test_tags77_unparsable_entity_incomplete_2 (tests.test_ctokenizer.TestCTokenizer) an incomplete HTML entity inside unparsable text ... ok test_tags78_single_open_close (tests.test_ctokenizer.TestCTokenizer) a tag that supports being single; both an open and a close tag ... ok test_tags79_single_open (tests.test_ctokenizer.TestCTokenizer) a tag that supports being single; just an open tag ... ok test_tags80_single_selfclose (tests.test_ctokenizer.TestCTokenizer) a tag that supports being single; a self-closing tag ... ok test_tags81_single_close (tests.test_ctokenizer.TestCTokenizer) a tag that supports being single; just a close tag ... ok test_tags82_single_only_open_close (tests.test_ctokenizer.TestCTokenizer) a tag that can only be single; both an open and a close tag ... ok test_tags83_single_only_open (tests.test_ctokenizer.TestCTokenizer) a tag that can only be single; just an open tag ... ok test_tags84_single_only_selfclose (tests.test_ctokenizer.TestCTokenizer) a tag that can only be single; a self-closing tag ... ok test_tags85_single_only_close (tests.test_ctokenizer.TestCTokenizer) a tag that can only be single; just a close tag ... ok test_tags86_single_only_double (tests.test_ctokenizer.TestCTokenizer) a tag that can only be single; a tag with backslashes at the beginning and end ... ok test_tags87_single_only_close_attribute (tests.test_ctokenizer.TestCTokenizer) a tag that can only be single; presented as a close tag with an attribute ... ok test_tags88_capitalization (tests.test_ctokenizer.TestCTokenizer) caps should be ignored within tag names ... ok test_tags89_unparsable_incomplete_close (tests.test_ctokenizer.TestCTokenizer) an unparsable tag with an incomplete close afterwards ... ok test_tags90_unparsable_with_intermediates (tests.test_ctokenizer.TestCTokenizer) an unparsable tag with intermediate tags inside of it ... ok test_tags91_unparsable_with_intermediates_normalize (tests.test_ctokenizer.TestCTokenizer) an unparsable tag with intermediate tags inside of it, requiring normalization ... ok test_tags92_non_ascii_open (tests.test_ctokenizer.TestCTokenizer) a open tag containing non-ASCII characters ... ok test_tags93_non_ascii_full (tests.test_ctokenizer.TestCTokenizer) an open/close tag pair containing non-ASCII characters ... ok test_tags94_single_nested_selfclosing (tests.test_ctokenizer.TestCTokenizer) a single (unpaired) tag with a self-closing tag in the middle (see issue #147) ... ok test_tags_wikimarkup01_basic_italics (tests.test_ctokenizer.TestCTokenizer) basic italic text ... ok test_tags_wikimarkup02_basic_bold (tests.test_ctokenizer.TestCTokenizer) basic bold text ... ok test_tags_wikimarkup03_basic_ul (tests.test_ctokenizer.TestCTokenizer) basic unordered list ... ok test_tags_wikimarkup04_basic_ol (tests.test_ctokenizer.TestCTokenizer) basic ordered list ... ok test_tags_wikimarkup05_basic_dt (tests.test_ctokenizer.TestCTokenizer) basic description term ... ok test_tags_wikimarkup06_basic_dd (tests.test_ctokenizer.TestCTokenizer) basic description item ... ok test_tags_wikimarkup07_basic_hr (tests.test_ctokenizer.TestCTokenizer) basic horizontal rule ... ok test_tags_wikimarkup08_complex_italics (tests.test_ctokenizer.TestCTokenizer) italics with a lot in them ... ok test_tags_wikimarkup09_multiline_italics (tests.test_ctokenizer.TestCTokenizer) italics spanning mulitple lines ... ok test_tags_wikimarkup10_unending_italics (tests.test_ctokenizer.TestCTokenizer) italics without an ending tag ... ok test_tags_wikimarkup11_misleading_italics_end (tests.test_ctokenizer.TestCTokenizer) italics with something that looks like an end but isn't ... ok test_tags_wikimarkup12_italics_start_outside_end_inside (tests.test_ctokenizer.TestCTokenizer) italics that start outside a link and end inside it ... ok test_tags_wikimarkup13_italics_start_inside_end_outside (tests.test_ctokenizer.TestCTokenizer) italics that start inside a link and end outside it ... ok test_tags_wikimarkup14_complex_bold (tests.test_ctokenizer.TestCTokenizer) bold with a lot in it ... ok test_tags_wikimarkup15_multiline_bold (tests.test_ctokenizer.TestCTokenizer) bold spanning mulitple lines ... ok test_tags_wikimarkup16_unending_bold (tests.test_ctokenizer.TestCTokenizer) bold without an ending tag ... ok test_tags_wikimarkup17_misleading_bold_end (tests.test_ctokenizer.TestCTokenizer) bold with something that looks like an end but isn't ... ok test_tags_wikimarkup18_bold_start_outside_end_inside (tests.test_ctokenizer.TestCTokenizer) bold that start outside a link and end inside it ... ok test_tags_wikimarkup19_bold_start_inside_end_outside (tests.test_ctokenizer.TestCTokenizer) bold that start inside a link and end outside it ... ok test_tags_wikimarkup20_bold_and_italics (tests.test_ctokenizer.TestCTokenizer) bold and italics together ... ok test_tags_wikimarkup21_both_then_bold (tests.test_ctokenizer.TestCTokenizer) text that starts bold/italic, then is just bold ... ok test_tags_wikimarkup22_both_then_italics (tests.test_ctokenizer.TestCTokenizer) text that starts bold/italic, then is just italic ... ok test_tags_wikimarkup23_bold_then_both (tests.test_ctokenizer.TestCTokenizer) text that starts just bold, then is bold/italic ... ok test_tags_wikimarkup24_italics_then_both (tests.test_ctokenizer.TestCTokenizer) text that starts just italic, then is bold/italic ... ok test_tags_wikimarkup25_italics_then_bold (tests.test_ctokenizer.TestCTokenizer) text that starts italic, then is bold ... ok test_tags_wikimarkup26_bold_then_italics (tests.test_ctokenizer.TestCTokenizer) text that starts bold, then is italic ... ok test_tags_wikimarkup27_five_three (tests.test_ctokenizer.TestCTokenizer) five ticks to open, three to close (bold) ... ok test_tags_wikimarkup28_five_two (tests.test_ctokenizer.TestCTokenizer) five ticks to open, two to close (bold) ... ok test_tags_wikimarkup29_four (tests.test_ctokenizer.TestCTokenizer) four ticks ... ok test_tags_wikimarkup30_four_two (tests.test_ctokenizer.TestCTokenizer) four ticks to open, two to close ... ok test_tags_wikimarkup31_two_three (tests.test_ctokenizer.TestCTokenizer) two ticks to open, three to close ... ok test_tags_wikimarkup32_two_four (tests.test_ctokenizer.TestCTokenizer) two ticks to open, four to close ... ok test_tags_wikimarkup33_two_three_two (tests.test_ctokenizer.TestCTokenizer) two ticks to open, three to close, two afterwards ... ok test_tags_wikimarkup34_two_four_four (tests.test_ctokenizer.TestCTokenizer) two ticks to open, four to close, four afterwards ... ok test_tags_wikimarkup35_seven (tests.test_ctokenizer.TestCTokenizer) seven ticks ... ok test_tags_wikimarkup36_unending_bold_and_italics (tests.test_ctokenizer.TestCTokenizer) five ticks (bold and italics) that don't end ... ok test_tags_wikimarkup37_complex_ul (tests.test_ctokenizer.TestCTokenizer) ul with a lot in it ... ok test_tags_wikimarkup38_ul_multiline_template (tests.test_ctokenizer.TestCTokenizer) ul with a template that spans multiple lines ... ok test_tags_wikimarkup39_ul_adjacent (tests.test_ctokenizer.TestCTokenizer) multiple adjacent uls ... ok test_tags_wikimarkup40_ul_depths (tests.test_ctokenizer.TestCTokenizer) multiple adjacent uls, with differing depths ... ok test_tags_wikimarkup41_ul_space_before (tests.test_ctokenizer.TestCTokenizer) uls with space before them ... ok test_tags_wikimarkup42_ul_interruption (tests.test_ctokenizer.TestCTokenizer) high-depth ul with something blocking it ... ok test_tags_wikimarkup43_complex_ol (tests.test_ctokenizer.TestCTokenizer) ol with a lot in it ... ok test_tags_wikimarkup44_ol_multiline_template (tests.test_ctokenizer.TestCTokenizer) ol with a template that spans moltiple lines ... ok test_tags_wikimarkup45_ol_adjacent (tests.test_ctokenizer.TestCTokenizer) moltiple adjacent ols ... ok test_tags_wikimarkup46_ol_depths (tests.test_ctokenizer.TestCTokenizer) moltiple adjacent ols, with differing depths ... ok test_tags_wikimarkup47_ol_space_before (tests.test_ctokenizer.TestCTokenizer) ols with space before them ... ok test_tags_wikimarkup48_ol_interruption (tests.test_ctokenizer.TestCTokenizer) high-depth ol with something blocking it ... ok test_tags_wikimarkup49_ul_ol_mix (tests.test_ctokenizer.TestCTokenizer) a mix of adjacent uls and ols ... ok test_tags_wikimarkup50_complex_dt (tests.test_ctokenizer.TestCTokenizer) dt with a lot in it ... ok test_tags_wikimarkup51_dt_multiline_template (tests.test_ctokenizer.TestCTokenizer) dt with a template that spans mdttiple lines ... ok test_tags_wikimarkup52_dt_adjacent (tests.test_ctokenizer.TestCTokenizer) mdttiple adjacent dts ... ok test_tags_wikimarkup53_dt_depths (tests.test_ctokenizer.TestCTokenizer) mdttiple adjacent dts, with differing depths ... ok test_tags_wikimarkup54_dt_space_before (tests.test_ctokenizer.TestCTokenizer) dts with space before them ... ok test_tags_wikimarkup55_dt_interruption (tests.test_ctokenizer.TestCTokenizer) high-depth dt with something blocking it ... ok test_tags_wikimarkup56_complex_dd (tests.test_ctokenizer.TestCTokenizer) dd with a lot in it ... ok test_tags_wikimarkup57_dd_multiline_template (tests.test_ctokenizer.TestCTokenizer) dd with a template that spans mddtiple lines ... ok test_tags_wikimarkup58_dd_adjacent (tests.test_ctokenizer.TestCTokenizer) mddtiple adjacent dds ... ok test_tags_wikimarkup59_dd_depths (tests.test_ctokenizer.TestCTokenizer) mddtiple adjacent dds, with differing depths ... ok test_tags_wikimarkup60_dd_space_before (tests.test_ctokenizer.TestCTokenizer) dds with space before them ... ok test_tags_wikimarkup61_dd_interruption (tests.test_ctokenizer.TestCTokenizer) high-depth dd with something blocking it ... ok test_tags_wikimarkup62_dt_dd_mix (tests.test_ctokenizer.TestCTokenizer) a mix of adjacent dts and dds ... ok test_tags_wikimarkup63_dt_dd_mix2 (tests.test_ctokenizer.TestCTokenizer) the correct usage of a dt/dd unit, as in a dl ... ok test_tags_wikimarkup64_dt_dd_mix3 (tests.test_ctokenizer.TestCTokenizer) another example of correct (but strange) dt/dd usage ... ok test_tags_wikimarkup65_dt_dd_mix4 (tests.test_ctokenizer.TestCTokenizer) another example of correct dt/dd usage, with a trigger for a specific parse route ... ok test_tags_wikimarkup66_ul_ol_dt_dd_mix (tests.test_ctokenizer.TestCTokenizer) an assortment of uls, ols, dds, and dts ... ok test_tags_wikimarkup67_hr_text_before (tests.test_ctokenizer.TestCTokenizer) text before an otherwise-valid hr ... ok test_tags_wikimarkup68_hr_text_after (tests.test_ctokenizer.TestCTokenizer) text after a valid hr ... ok test_tags_wikimarkup69_hr_text_before_after (tests.test_ctokenizer.TestCTokenizer) text at both ends of an otherwise-valid hr ... ok test_tags_wikimarkup70_hr_newlines (tests.test_ctokenizer.TestCTokenizer) newlines surrounding a valid hr ... ok test_tags_wikimarkup71_hr_adjacent (tests.test_ctokenizer.TestCTokenizer) two adjacent hrs ... ok test_tags_wikimarkup72_hr_adjacent_space (tests.test_ctokenizer.TestCTokenizer) two adjacent hrs, with a space before the second one, making it invalid ... ok test_tags_wikimarkup73_hr_short (tests.test_ctokenizer.TestCTokenizer) an invalid three-hyphen-long hr ... ok test_tags_wikimarkup74_hr_long (tests.test_ctokenizer.TestCTokenizer) a very long, valid hr ... ok test_tags_wikimarkup75_hr_interruption_short (tests.test_ctokenizer.TestCTokenizer) a hr that is interrupted, making it invalid ... ok test_tags_wikimarkup76_hr_interruption_long (tests.test_ctokenizer.TestCTokenizer) a hr that is interrupted, but the first part remains valid because it is long enough ... ok test_tags_wikimarkup77_nowiki_cancel (tests.test_ctokenizer.TestCTokenizer) a nowiki tag before a list causes it to not be parsed ... ok test_templates001_no_params (tests.test_ctokenizer.TestCTokenizer) simplest type of template ... ok test_templates002_one_param_unnamed (tests.test_ctokenizer.TestCTokenizer) basic template with one unnamed parameter ... ok test_templates003_one_param_named (tests.test_ctokenizer.TestCTokenizer) basic template with one named parameter ... ok test_templates004_multiple_unnamed_params (tests.test_ctokenizer.TestCTokenizer) basic template with multiple unnamed parameters ... ok test_templates005_multiple_named_params (tests.test_ctokenizer.TestCTokenizer) basic template with multiple named parameters ... ok test_templates006_multiple_mixed_params (tests.test_ctokenizer.TestCTokenizer) basic template with multiple unnamed/named parameters ... ok test_templates007_multiple_mixed_params2 (tests.test_ctokenizer.TestCTokenizer) basic template with multiple unnamed/named parameters in another order ... ok test_templates008_blank_params (tests.test_ctokenizer.TestCTokenizer) template with blank parameters (mix of pipes and equal signs) ... ok test_templates009_nested_unnamed_param (tests.test_ctokenizer.TestCTokenizer) nested template as an unnamed parameter ... ok test_templates010_nested_named_param_value (tests.test_ctokenizer.TestCTokenizer) nested template as a parameter value with a named parameter ... ok test_templates011_nested_named_param_name_and_value (tests.test_ctokenizer.TestCTokenizer) nested templates as a parameter name and value ... ok test_templates012_nested_name_start (tests.test_ctokenizer.TestCTokenizer) nested template at the beginning of a template name ... ok test_templates013_nested_name_start_unnamed_param (tests.test_ctokenizer.TestCTokenizer) nested template at the beginning of a template name and as an unnamed parameter ... ok test_templates014_nested_name_start_named_param_value (tests.test_ctokenizer.TestCTokenizer) nested template at the beginning of a template name and as a parameter value with a named parameter ... ok test_templates015_nested_name_start_named_param_name_and_value (tests.test_ctokenizer.TestCTokenizer) nested template at the beginning of a template name and as a parameter name and value ... ok test_templates016_nested_name_end (tests.test_ctokenizer.TestCTokenizer) nested template at the end of a template name ... ok test_templates017_nested_name_end_unnamed_param (tests.test_ctokenizer.TestCTokenizer) nested template at the end of a template name and as an unnamed parameter ... ok test_templates018_nested_name_end_named_param_value (tests.test_ctokenizer.TestCTokenizer) nested template at the end of a template name and as a parameter value with a named parameter ... ok test_templates019_nested_name_end_named_param_name_and_value (tests.test_ctokenizer.TestCTokenizer) nested template at the end of a template name and as a parameter name and value ... ok test_templates020_nested_name_mid (tests.test_ctokenizer.TestCTokenizer) nested template in the middle of a template name ... ok test_templates021_nested_name_mid_unnamed_param (tests.test_ctokenizer.TestCTokenizer) nested template in the middle of a template name and as an unnamed parameter ... ok test_templates022_nested_name_mid_named_param_value (tests.test_ctokenizer.TestCTokenizer) nested template in the middle of a template name and as a parameter value with a named parameter ... ok test_templates023_nested_name_mid_named_param_name_and_value (tests.test_ctokenizer.TestCTokenizer) nested template in the middle of a template name and as a parameter name and value ... ok test_templates024_nested_name_start_end (tests.test_ctokenizer.TestCTokenizer) nested template at the beginning and end of a template name ... ok test_templates025_nested_name_start_end_unnamed_param (tests.test_ctokenizer.TestCTokenizer) nested template at the beginning and end of a template name and as an unnamed parameter ... ok test_templates026_nested_name_start_end_named_param_value (tests.test_ctokenizer.TestCTokenizer) nested template at the beginning and end of a template name and as a parameter value with a named parameter ... ok test_templates027_nested_name_start_end_named_param_name_and_value (tests.test_ctokenizer.TestCTokenizer) nested template at the beginning and end of a template name and as a parameter name and value ... ok test_templates028_nested_names_multiple (tests.test_ctokenizer.TestCTokenizer) multiple nested templates within nested templates ... ok test_templates029_nested_names_multiple_unnamed_param (tests.test_ctokenizer.TestCTokenizer) multiple nested templates within nested templates with a nested unnamed parameter ... ok test_templates030_nested_names_multiple_named_param_value (tests.test_ctokenizer.TestCTokenizer) multiple nested templates within nested templates with a nested parameter value in a named parameter ... ok test_templates031_nested_names_multiple_named_param_name_and_value (tests.test_ctokenizer.TestCTokenizer) multiple nested templates within nested templates with a nested parameter name and value ... ok test_templates032_mixed_nested_templates (tests.test_ctokenizer.TestCTokenizer) mixed assortment of nested templates within template names, parameter names, and values ... ok test_templates033_nested_two_args (tests.test_ctokenizer.TestCTokenizer) template whose first parameter is unnamed with two templates, followed by a named parameter ... ok test_templates034_newlines_start (tests.test_ctokenizer.TestCTokenizer) a newline at the start of a template name ... ok test_templates035_newlines_end (tests.test_ctokenizer.TestCTokenizer) a newline at the end of a template name ... ok test_templates036_newlines_start_end (tests.test_ctokenizer.TestCTokenizer) a newline at the start and end of a template name ... ok test_templates037_newlines_mid (tests.test_ctokenizer.TestCTokenizer) a newline at the middle of a template name ... ok test_templates038_newlines_start_mid (tests.test_ctokenizer.TestCTokenizer) a newline at the start and middle of a template name ... ok test_templates039_newlines_mid_end (tests.test_ctokenizer.TestCTokenizer) a newline at the middle and end of a template name ... ok test_templates040_newlines_start_mid_end (tests.test_ctokenizer.TestCTokenizer) a newline at the start, middle, and end of a template name ... ok test_templates041_newlines_unnamed_param (tests.test_ctokenizer.TestCTokenizer) newlines within an unnamed template parameter ... ok test_templates042_newlines_enclose_template_name_unnamed_param (tests.test_ctokenizer.TestCTokenizer) newlines enclosing a template name and within an unnamed template parameter ... ok test_templates043_newlines_within_template_name_unnamed_param (tests.test_ctokenizer.TestCTokenizer) newlines within a template name and within an unnamed template parameter ... ok test_templates044_newlines_enclose_template_name_named_param_value (tests.test_ctokenizer.TestCTokenizer) newlines enclosing a template name and within a named parameter value ... ok test_templates045_newlines_within_template_name_named_param_value (tests.test_ctokenizer.TestCTokenizer) newlines within a template name and within a named parameter value ... ok test_templates046_newlines_named_param_name (tests.test_ctokenizer.TestCTokenizer) newlines within a parameter name ... ok test_templates047_newlines_named_param_name_param_value (tests.test_ctokenizer.TestCTokenizer) newlines within a parameter name and within a parameter value ... ok test_templates048_newlines_enclose_template_name_named_param_name (tests.test_ctokenizer.TestCTokenizer) newlines enclosing a template name and within a parameter name ... ok test_templates049_newlines_enclose_template_name_named_param_name_param_value (tests.test_ctokenizer.TestCTokenizer) newlines enclosing a template name and within a parameter name and within a parameter value ... ok test_templates050_newlines_within_template_name_named_param_name (tests.test_ctokenizer.TestCTokenizer) newlines within a template name and within a parameter name ... ok test_templates051_newlines_within_template_name_named_param_name_param_value (tests.test_ctokenizer.TestCTokenizer) newlines within a template name and within a parameter name and within a parameter value ... ok test_templates052_newlines_wildcard (tests.test_ctokenizer.TestCTokenizer) a random, complex assortment of templates and newlines ... ok test_templates053_newlines_wildcard_redux (tests.test_ctokenizer.TestCTokenizer) an even more random and complex assortment of templates and newlines ... ok test_templates054_newlines_wildcard_redux_invalid (tests.test_ctokenizer.TestCTokenizer) a variation of the newlines_wildcard_redux test that is invalid ... ok test_templates055_newlines_spaces (tests.test_ctokenizer.TestCTokenizer) newlines in the middle of a template name, followed by spaces ... ok test_templates056_newlines_spaces_param (tests.test_ctokenizer.TestCTokenizer) newlines in the middle of a template name, followed by spaces, with a parameter ... ok test_templates057_invalid_blank (tests.test_ctokenizer.TestCTokenizer) invalid template with no content ... ok test_templates058_invalid_blank_whitespace (tests.test_ctokenizer.TestCTokenizer) invalid template with no content, but whitespace ... ok test_templates059_invalid_blank_pipe (tests.test_ctokenizer.TestCTokenizer) invalid template with no content, but a parameter ... ok test_templates060_invalid_blank_whitespace_pipe (tests.test_ctokenizer.TestCTokenizer) invalid template with no content, but whitespace and a parameter ... ok test_templates061_invalid_name_left_brace_middle (tests.test_ctokenizer.TestCTokenizer) invalid characters in template name: left brace in middle ... ok test_templates062_invalid_name_right_brace_middle (tests.test_ctokenizer.TestCTokenizer) invalid characters in template name: right brace in middle ... ok test_templates063_invalid_name_left_braces (tests.test_ctokenizer.TestCTokenizer) invalid characters in template name: two left braces in middle ... ok test_templates064_invalid_name_left_bracket_middle (tests.test_ctokenizer.TestCTokenizer) invalid characters in template name: left bracket in middle ... ok test_templates065_invalid_name_right_bracket_middle (tests.test_ctokenizer.TestCTokenizer) invalid characters in template name: right bracket in middle ... ok test_templates066_invalid_name_left_bracket_start (tests.test_ctokenizer.TestCTokenizer) invalid characters in template name: left bracket at start ... ok test_templates067_invalid_name_right_bracket_start (tests.test_ctokenizer.TestCTokenizer) invalid characters in template name: right bracket at end ... ok test_templates068_valid_name_left_brace_start (tests.test_ctokenizer.TestCTokenizer) valid characters in template name: left brace at start ... ok test_templates069_valid_unnamed_param_left_brace (tests.test_ctokenizer.TestCTokenizer) valid characters in unnamed template parameter: left brace ... ok test_templates070_valid_unnamed_param_braces (tests.test_ctokenizer.TestCTokenizer) valid characters in unnamed template parameter: left and right braces ... ok test_templates071_valid_param_name_braces (tests.test_ctokenizer.TestCTokenizer) valid characters in template parameter name: left and right braces ... ok test_templates072_valid_param_name_brackets (tests.test_ctokenizer.TestCTokenizer) valid characters in unnamed template parameter: left and right brackets ... ok test_templates073_valid_param_name_double_left_brackets (tests.test_ctokenizer.TestCTokenizer) valid characters in unnamed template parameter: double left brackets ... ok test_templates074_valid_param_name_double_right_brackets (tests.test_ctokenizer.TestCTokenizer) valid characters in unnamed template parameter: double right brackets ... ok test_templates075_valid_param_name_double_brackets (tests.test_ctokenizer.TestCTokenizer) valid characters in unnamed template parameter: double left and right brackets ... ok test_templates076_invalid_param_name_double_left_braces (tests.test_ctokenizer.TestCTokenizer) invalid characters in template parameter name: double left braces ... ok test_templates077_invalid_param_name_double_braces (tests.test_ctokenizer.TestCTokenizer) invalid characters in template parameter name: double left and right braces ... ok test_templates078_invalid_left_angle_bracket (tests.test_ctokenizer.TestCTokenizer) invalid template: left angle bracket in name ... ok test_templates079_invalid_right_angle_bracket (tests.test_ctokenizer.TestCTokenizer) invalid template: right angle bracket in name ... ok test_templates080_incomplete_stub (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: just an opening ... ok test_templates081_incomplete_plain (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: no close whatsoever ... ok test_templates082_incomplete_right_brace (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: only one right brace ... ok test_templates083_incomplete_pipe (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: a pipe ... ok test_templates084_incomplete_unnamed_param (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: an unnamed parameter ... ok test_templates085_incomplete_unnamed_param_pipe (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: an unnamed parameter, then a pipe ... ok test_templates086_incomplete_valueless_param (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: an a named parameter with no value ... ok test_templates087_incomplete_valueless_param_pipe (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: a named parameter with no value, then a pipe ... ok test_templates088_incomplete_named_param (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: a named parameter with a value ... ok test_templates089_incomplete_named_param_pipe (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: a named parameter with a value, then a paipe ... ok test_templates090_incomplete_two_unnamed_params (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: two unnamed parameters ... ok test_templates091_incomplete_unnamed_param_valueless_param (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: an unnamed parameter, then a named parameter with no value ... ok test_templates092_incomplete_unnamed_param_named_param (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: an unnamed parameter, then a named parameter with a value ... ok test_templates093_incomplete_named_param_unnamed_param (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: a named parameter with a value, then an unnamed parameter ... ok test_templates094_incomplete_named_param_valueless_param (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: a named parameter with a value, then a named parameter with no value ... ok test_templates095_incomplete_two_named_params (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: two named parameters with values ... ok test_templates096_incomplete_nested_template_as_unnamed_param (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: a valid nested template as an unnamed parameter ... ok test_templates097_incomplete_nested_template_as_param_value (tests.test_ctokenizer.TestCTokenizer) incomplete templates that should fail gracefully: a valid nested template as a parameter value ... ok test_templates098_recursion_five_hundred_opens (tests.test_ctokenizer.TestCTokenizer) test potentially dangerous recursion: five hundred template openings, without spaces ... ok test_templates099_recursion_one_hundred_opens (tests.test_ctokenizer.TestCTokenizer) test potentially dangerous recursion: one hundred template openings, with spaces ... ok test_templates100_recursion_opens_and_closes (tests.test_ctokenizer.TestCTokenizer) test potentially dangerous recursion: template openings and closings ... ok test_text1_basic (tests.test_ctokenizer.TestCTokenizer) sanity check for basic text parsing, no gimmicks ... ok test_text2_newlines (tests.test_ctokenizer.TestCTokenizer) slightly more complex text parsing, with newlines ... ok test_text3_unicode (tests.test_ctokenizer.TestCTokenizer) ensure unicode data is handled properly ... ok test_text4_unicode2 (tests.test_ctokenizer.TestCTokenizer) additional unicode check for non-BMP codepoints ... ok test_text5_large (tests.test_ctokenizer.TestCTokenizer) a lot of text, requiring proper storage in the C tokenizer ... ok test_uses_c (tests.test_ctokenizer.TestCTokenizer) make sure the C tokenizer identifies as using a C extension ... ok test_wikilinks01_blank (tests.test_ctokenizer.TestCTokenizer) wikilink with no content ... ok test_wikilinks02_blank_with_text (tests.test_ctokenizer.TestCTokenizer) wikilink with no content but a pipe ... ok test_wikilinks03_basic (tests.test_ctokenizer.TestCTokenizer) simplest type of wikilink ... ok test_wikilinks04_with_text (tests.test_ctokenizer.TestCTokenizer) wikilink with a text value ... ok test_wikilinks05_blank_with_multiple_texts (tests.test_ctokenizer.TestCTokenizer) no content, multiple pipes ... ok test_wikilinks06_multiple_texts (tests.test_ctokenizer.TestCTokenizer) multiple text values separated by pipes ... ok test_wikilinks07_newline_text (tests.test_ctokenizer.TestCTokenizer) a newline in the middle of the text ... ok test_wikilinks08_bracket_text (tests.test_ctokenizer.TestCTokenizer) a left bracket in the middle of the text ... ok test_wikilinks09_nested (tests.test_ctokenizer.TestCTokenizer) a wikilink nested within another ... ok test_wikilinks10_nested_padding (tests.test_ctokenizer.TestCTokenizer) a wikilink nested within another, separated by other data ... ok test_wikilinks11_invalid_newline (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: newline as only content ... ok test_wikilinks12_invalid_right_brace (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: right brace ... ok test_wikilinks13_invalid_left_brace (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: left brace ... ok test_wikilinks14_invalid_right_bracket (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: right bracket ... ok test_wikilinks15_invalid_left_bracket (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: left bracket ... ok test_wikilinks16_invalid_nested (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: trying to nest in the wrong context ... ok test_wikilinks17_invalid_nested_padding (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: trying to nest in the wrong context, with a text param ... ok test_wikilinks18_invalid_nested_no_close (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: a wikilink nested within the value of another, missing a pair of closing brackets ... ok test_wikilinks19_invalid_left_angle_bracket (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: left angle bracket ... ok test_wikilinks20_invalid_right_angle_bracket (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: right angle bracket ... ok test_wikilinks21_invalid_newline_at_start (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: newline at start of title ... ok test_wikilinks22_invalid_newline_at_end (tests.test_ctokenizer.TestCTokenizer) invalid wikilink: newline at end of title ... ok test_wikilinks23_incomplete_open_only (tests.test_ctokenizer.TestCTokenizer) incomplete wikilinks: just an open ... ok test_wikilinks24_incomplete_open_text (tests.test_ctokenizer.TestCTokenizer) incomplete wikilinks: an open with some text ... ok test_wikilinks25_incomplete_open_text_pipe (tests.test_ctokenizer.TestCTokenizer) incomplete wikilinks: an open, text, then a pipe ... ok test_wikilinks26_incomplete_open_pipe (tests.test_ctokenizer.TestCTokenizer) incomplete wikilinks: an open, then a pipe ... ok test_wikilinks27_incomplete_open_pipe_text (tests.test_ctokenizer.TestCTokenizer) incomplete wikilinks: an open, then a pipe, then text ... ok test_wikilinks28_incomplete_open_pipes_text (tests.test_ctokenizer.TestCTokenizer) incomplete wikilinks: a pipe, then text then two pipes ... ok test_wikilinks29_incomplete_open_partial_close (tests.test_ctokenizer.TestCTokenizer) incomplete wikilinks: an open, then one right brace ... ok test_wikilinks30_incomplete_preserve_previous (tests.test_ctokenizer.TestCTokenizer) incomplete wikilinks: a valid wikilink followed by an invalid one ... ok test_add (tests.test_template.TestTemplate) test Template.add() ... ok test_children (tests.test_template.TestTemplate) test Template.__children__() ... ok test_formatting (tests.test_template.TestTemplate) test realistic param manipulation with complex whitespace formatting ... ok test_get (tests.test_template.TestTemplate) test Template.get() ... ok test_has (tests.test_template.TestTemplate) test Template.has() ... ok test_name (tests.test_template.TestTemplate) test getter/setter for the name attribute ... ok test_params (tests.test_template.TestTemplate) test getter for the params attribute ... ok test_remove (tests.test_template.TestTemplate) test Template.remove() ... ok test_showtree (tests.test_template.TestTemplate) test Template.__showtree__() ... ok test_strip (tests.test_template.TestTemplate) test Template.__strip__() ... ok test_unicode (tests.test_template.TestTemplate) test Template.__unicode__() ... ok test_children (tests.test_text.TestText) test Text.__children__() ... ok test_showtree (tests.test_text.TestText) test Text.__showtree__() ... ok test_strip (tests.test_text.TestText) test Text.__strip__() ... ok test_unicode (tests.test_text.TestText) test Text.__unicode__() ... ok test_value (tests.test_text.TestText) test getter/setter for the value attribute ... ok ---------------------------------------------------------------------- Ran 1796 tests in 0.230s OK (skipped=1) create-stamp debian/debhelper-build-stamp dh_testroot -O--buildsystem=pybuild dh_prep -O--buildsystem=pybuild dh_auto_install -O--buildsystem=pybuild I: pybuild base:217: /usr/bin/python setup.py install --root /build/mwparserfromhell-0.5.2/debian/tmp running install running build running build_py running build_ext running install_lib creating /build/mwparserfromhell-0.5.2/debian/tmp/usr creating /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib creating /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7 creating /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages creating /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/wikicode.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/definitions.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell creating /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes/template.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes/external_link.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes creating /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes/extras copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes/extras/attribute.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes/extras copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes/extras/__init__.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes/extras copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes/extras/parameter.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes/extras copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes/heading.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes/html_entity.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes/argument.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes/text.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes/__init__.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes/comment.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes/tag.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/nodes/wikilink.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/__init__.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/string_mixin.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/utils.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/smart_list.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell creating /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/parser copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/parser/tokens.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/parser copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/parser/tokenizer.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/parser copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/parser/builder.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/parser copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/parser/__init__.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/parser copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/parser/contexts.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/parser copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/parser/_tokenizer.so -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/parser copying /build/mwparserfromhell-0.5.2/.pybuild/cpython2_2.7/build/mwparserfromhell/compat.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/wikicode.py to wikicode.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/definitions.py to definitions.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes/template.py to template.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes/external_link.py to external_link.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes/extras/attribute.py to attribute.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes/extras/__init__.py to __init__.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes/extras/parameter.py to parameter.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes/heading.py to heading.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes/html_entity.py to html_entity.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes/argument.py to argument.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes/text.py to text.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes/__init__.py to __init__.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes/comment.py to comment.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes/tag.py to tag.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/nodes/wikilink.py to wikilink.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/__init__.py to __init__.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/string_mixin.py to string_mixin.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/utils.py to utils.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/smart_list.py to smart_list.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/parser/tokens.py to tokens.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/parser/tokenizer.py to tokenizer.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/parser/builder.py to builder.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/parser/__init__.py to __init__.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/parser/contexts.py to contexts.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell/compat.py to compat.pyc running install_egg_info running egg_info writing mwparserfromhell.egg-info/PKG-INFO writing top-level names to mwparserfromhell.egg-info/top_level.txt writing dependency_links to mwparserfromhell.egg-info/dependency_links.txt reading manifest file 'mwparserfromhell.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' writing manifest file 'mwparserfromhell.egg-info/SOURCES.txt' Copying mwparserfromhell.egg-info to /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python2.7/dist-packages/mwparserfromhell-0.5.2.egg-info Skipping SOURCES.txt running install_scripts I: pybuild base:217: /usr/bin/python3 setup.py install --root /build/mwparserfromhell-0.5.2/debian/tmp running install running build running build_py running build_ext running install_lib creating /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7 creating /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages creating /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/wikicode.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/definitions.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell creating /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes/template.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes/external_link.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes creating /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes/extras copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes/extras/attribute.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes/extras copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes/extras/__init__.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes/extras copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes/extras/parameter.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes/extras copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes/heading.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes/html_entity.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes/argument.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes/text.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes/__init__.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes/comment.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes/tag.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/nodes/wikilink.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/__init__.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/string_mixin.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/utils.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/smart_list.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell creating /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/parser copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/parser/_tokenizer.cpython-37m-i386-linux-gnu.so -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/parser copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/parser/tokens.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/parser copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/parser/tokenizer.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/parser copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/parser/builder.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/parser copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/parser/__init__.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/parser copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/parser/contexts.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/parser copying /build/mwparserfromhell-0.5.2/.pybuild/cpython3_3.7/build/mwparserfromhell/compat.py -> /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/wikicode.py to wikicode.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/definitions.py to definitions.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes/template.py to template.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes/external_link.py to external_link.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes/extras/attribute.py to attribute.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes/extras/__init__.py to __init__.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes/extras/parameter.py to parameter.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes/heading.py to heading.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes/html_entity.py to html_entity.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes/argument.py to argument.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes/text.py to text.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes/__init__.py to __init__.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes/comment.py to comment.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes/tag.py to tag.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/nodes/wikilink.py to wikilink.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/__init__.py to __init__.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/string_mixin.py to string_mixin.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/utils.py to utils.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/smart_list.py to smart_list.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/parser/tokens.py to tokens.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/parser/tokenizer.py to tokenizer.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/parser/builder.py to builder.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/parser/__init__.py to __init__.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/parser/contexts.py to contexts.cpython-37.pyc byte-compiling /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell/compat.py to compat.cpython-37.pyc running install_egg_info running egg_info writing mwparserfromhell.egg-info/PKG-INFO writing dependency_links to mwparserfromhell.egg-info/dependency_links.txt writing top-level names to mwparserfromhell.egg-info/top_level.txt reading manifest file 'mwparserfromhell.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' writing manifest file 'mwparserfromhell.egg-info/SOURCES.txt' Copying mwparserfromhell.egg-info to /build/mwparserfromhell-0.5.2/debian/tmp/usr/lib/python3.7/dist-packages/mwparserfromhell-0.5.2.egg-info Skipping SOURCES.txt running install_scripts dh_install -O--buildsystem=pybuild dh_installdocs -O--buildsystem=pybuild dh_installchangelogs -O--buildsystem=pybuild dh_python2 -O--buildsystem=pybuild I: dh_python2 fs:343: renaming _tokenizer.so to _tokenizer.i386-linux-gnu.so dh_python3 -O--buildsystem=pybuild dh_installinit -O--buildsystem=pybuild dh_perl -O--buildsystem=pybuild dh_link -O--buildsystem=pybuild dh_strip_nondeterminism -O--buildsystem=pybuild dh_compress -O--buildsystem=pybuild dh_fixperms -O--buildsystem=pybuild dh_missing -O--buildsystem=pybuild dh_strip -O--buildsystem=pybuild dh_makeshlibs -O--buildsystem=pybuild dh_shlibdeps -O--buildsystem=pybuild dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/python3-mwparserfromhell/usr/lib/python3/dist-packages/mwparserfromhell/parser/_tokenizer.cpython-37m-i386-linux-gnu.so was not linked against libpthread.so.0 (it uses none of the library's symbols) dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/python-mwparserfromhell/usr/lib/python2.7/dist-packages/mwparserfromhell/parser/_tokenizer.i386-linux-gnu.so was not linked against libpthread.so.0 (it uses none of the library's symbols) dh_installdeb -O--buildsystem=pybuild dh_gencontrol -O--buildsystem=pybuild dpkg-gencontrol: warning: package python-mwparserfromhell: substitution variable ${python:Provides} unused, but is defined dpkg-gencontrol: warning: package python-mwparserfromhell: substitution variable ${python:Versions} unused, but is defined dpkg-gencontrol: warning: package python3-mwparserfromhell: substitution variable ${python3:Provides} unused, but is defined dpkg-gencontrol: warning: package python3-mwparserfromhell: substitution variable ${python3:Versions} unused, but is defined dpkg-gencontrol: warning: package python-mwparserfromhell: substitution variable ${python:Provides} unused, but is defined dpkg-gencontrol: warning: package python-mwparserfromhell: substitution variable ${python:Versions} unused, but is defined dpkg-gencontrol: warning: package python3-mwparserfromhell: substitution variable ${python3:Provides} unused, but is defined dpkg-gencontrol: warning: package python3-mwparserfromhell: substitution variable ${python3:Versions} unused, but is defined dh_md5sums -O--buildsystem=pybuild dh_builddeb -O--buildsystem=pybuild dpkg-deb: building package 'python3-mwparserfromhell' in '../python3-mwparserfromhell_0.5.2-2_i386.deb'. dpkg-deb: building package 'python3-mwparserfromhell-dbgsym' in '../python3-mwparserfromhell-dbgsym_0.5.2-2_i386.deb'. dpkg-deb: building package 'python-mwparserfromhell' in '../python-mwparserfromhell_0.5.2-2_i386.deb'. dpkg-deb: building package 'python-mwparserfromhell-dbgsym' in '../python-mwparserfromhell-dbgsym_0.5.2-2_i386.deb'. dpkg-genbuildinfo --build=binary dpkg-genchanges --build=binary >../mwparserfromhell_0.5.2-2_i386.changes dpkg-genchanges: info: binary-only upload (no source code included) dpkg-source --after-build . dpkg-buildpackage: info: binary-only upload (no source included) I: copying local configuration I: user script /srv/workspace/pbuilder/51016/tmp/hooks/B01_cleanup starting I: user script /srv/workspace/pbuilder/51016/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env I: removing directory /srv/workspace/pbuilder/51016 and its subdirectories I: Current time: Fri Apr 9 20:42:38 +14 2021 I: pbuilder-time-stamp: 1617950558