<86>Jul 6 15:57:13 userdel[3419758]: delete user 'rooter' <86>Jul 6 15:57:13 groupadd[3419774]: group added to /etc/group: name=rooter, GID=1862 <86>Jul 6 15:57:13 groupadd[3419774]: group added to /etc/gshadow: name=rooter <86>Jul 6 15:57:13 groupadd[3419774]: new group: name=rooter, GID=1862 <86>Jul 6 15:57:13 useradd[3419799]: new user: name=rooter, UID=1862, GID=1862, home=/root, shell=/bin/bash, from=none <86>Jul 6 15:57:13 userdel[3419821]: delete user 'builder' <86>Jul 6 15:57:13 groupadd[3419843]: group added to /etc/group: name=builder, GID=1863 <86>Jul 6 15:57:13 groupadd[3419843]: group added to /etc/gshadow: name=builder <86>Jul 6 15:57:13 groupadd[3419843]: new group: name=builder, GID=1863 <86>Jul 6 15:57:13 useradd[3419853]: new user: name=builder, UID=1863, GID=1863, home=/usr/src, shell=/bin/bash, from=none <13>Jul 6 15:57:20 rpmi: libmpdec3-2.5.1-alt3 sisyphus+314490.500.5.1 1675432004 installed <13>Jul 6 15:57:20 rpmi: libgdbm-1.8.3-alt10 sisyphus+278100.1600.1.1 1626058413 installed <13>Jul 6 15:57:20 rpmi: libexpat-2.5.0-alt1 sisyphus+309227.100.1.1 1667075764 installed <13>Jul 6 15:57:20 rpmi: libb2-0.98.1-alt1_1 sisyphus+291614.100.1.1 1638962877 installed <13>Jul 6 15:57:20 rpmi: libp11-kit-0.25.0-alt1 sisyphus+324318.100.1.1 1688574728 installed <13>Jul 6 15:57:20 rpmi: libtasn1-4.19.0-alt2 sisyphus+323514.100.1.1 1687445894 installed <13>Jul 6 15:57:20 rpmi: rpm-macros-alternatives-0.5.2-alt2 sisyphus+315270.200.2.1 1676457367 installed <13>Jul 6 15:57:20 rpmi: alternatives-0.5.2-alt2 sisyphus+315270.200.2.1 1676457367 installed <13>Jul 6 15:57:20 rpmi: ca-certificates-2022.12.14-alt1 sisyphus+311754.200.1.1 1671046143 installed <13>Jul 6 15:57:20 rpmi: ca-trust-0.1.4-alt1 sisyphus+308690.100.1.1 1666182992 installed <13>Jul 6 15:57:20 rpmi: p11-kit-trust-0.25.0-alt1 sisyphus+324318.100.1.1 1688574728 installed <13>Jul 6 15:57:20 rpmi: libcrypto1.1-1.1.1u-alt2 icarus+324365.200.1.1 1688647136 installed <13>Jul 6 15:57:20 rpmi: libssl1.1-1.1.1u-alt2 icarus+324365.200.1.1 1688647136 installed <13>Jul 6 15:57:21 rpmi: python3-3.11.4-alt2 sisyphus+323357.100.1.1 1687257026 installed <13>Jul 6 15:57:21 rpmi: python3-base-3.11.4-alt2 sisyphus+323357.100.1.1 1687257026 installed <13>Jul 6 15:57:21 rpmi: tests-for-installed-python3-pkgs-0.1.22-alt1 sisyphus+319076.100.3.1 1682536051 installed <13>Jul 6 15:57:21 rpmi: rpm-build-python3-0.1.22-alt1 sisyphus+319076.100.3.1 1682536051 installed <13>Jul 6 15:57:27 rpmi: python3-module-markupsafe-1:2.1.3-alt1 sisyphus+323659.100.1.1 1687595160 installed <13>Jul 6 15:57:27 rpmi: python3-module-jinja2-3.1.2-alt1 sisyphus+303664.100.1.1 1657809843 installed <13>Jul 6 15:57:27 rpmi: python3-module-railroad-diagrams-1.1.1-alt1 sisyphus+294587.100.1.1 1643813088 installed <13>Jul 6 15:57:27 rpmi: python3-module-flit-core-3.9.0-alt1 sisyphus+319852.20.11.1 1684172694 installed Building target platforms: x86_64 Building for target x86_64 Wrote: /usr/src/in/nosrpm/python3-module-pyparsing-3.0.9-alt2.nosrc.rpm (w1.gzdio) <13>Jul 6 15:57:32 rpmi: python3-module-pluggy-1.0.0-alt1 sisyphus+284853.100.1.1 1631109373 installed <13>Jul 6 15:57:32 rpmi: python3-module-system-seed-wheels-0.0.1-alt1 sisyphus+270533.400.6.1 1619683425 installed <13>Jul 6 15:57:32 rpmi: python3-module-packaging-23.1-alt1 sisyphus+318906.100.2.1 1683015285 installed <13>Jul 6 15:57:32 rpmi: python3-module-iniconfig-2.0.0-alt1 sisyphus+314076.200.3.1 1674737275 installed <13>Jul 6 15:57:32 rpmi: python3-module-filelock-3.12.2-alt1 sisyphus+322904.200.2.1 1686751677 installed <13>Jul 6 15:57:33 rpmi: python3-module-pytest-7.3.2-alt1 sisyphus+322897.100.1.1 1686653468 installed <13>Jul 6 15:57:33 rpmi: python3-module-pip-wheel-23.1.2-alt1 sisyphus+319471.100.2.1 1683105535 installed <13>Jul 6 15:57:33 rpmi: python3-module-setuptools-wheel-1:68.0.0-alt1 sisyphus+323352.700.5.2 1687447030 installed <13>Jul 6 15:57:33 rpmi: python3-module-wheel-wheel-0.40.0-alt1 sisyphus+318890.200.2.1 1682002147 installed <13>Jul 6 15:57:33 rpmi: python3-module-system-seed-wheels-wheels-0.0.1-alt1 sisyphus+270533.400.6.1 1619683425 installed <13>Jul 6 15:57:33 rpmi: python3-module-tomli-2.0.1-alt2 sisyphus+305000.3300.2.1 1660575675 installed <13>Jul 6 15:57:33 rpmi: python3-module-six-1.16.0-alt2 sisyphus+324249.100.1.1 1688484676 installed <13>Jul 6 15:57:33 rpmi: python3-module-platformdirs-3.7.0-alt1 sisyphus+323352.340.5.2 1687446862 installed <13>Jul 6 15:57:33 rpmi: python3-module-distlib-0.3.6-alt1 sisyphus+306796.100.1.1 1663166230 installed <13>Jul 6 15:57:33 rpmi: python3-module-virtualenv-20.23.1-alt1 sisyphus+323352.600.5.2 1687446966 installed <13>Jul 6 15:57:33 rpmi: python3-module-apipkg-3.0.1-alt2 sisyphus+323078.100.1.1 1686823905 installed <13>Jul 6 15:57:33 rpmi: python3-module-py-1.11.0-alt1 sisyphus+295927.100.2.1 1646050822 installed <13>Jul 6 15:57:33 rpmi: python3-module-tox-3.27.1-alt1 sisyphus+309865.500.3.1 1668591286 installed <13>Jul 6 15:57:33 rpmi: python3-module-tox-console-scripts-0.3.2-alt1 sisyphus+301745.100.2.1 1655211258 installed <13>Jul 6 15:57:33 rpmi: python3-module-tox-no-deps-0.2.0-alt1 sisyphus+301745.200.2.1 1655211304 installed <13>Jul 6 15:57:33 rpmi: python3-module-pyproject-installer-0.5.1-alt1 sisyphus+322305.100.2.1 1686212184 installed Installing python3-module-pyparsing-3.0.9-alt2.src.rpm Building target platforms: x86_64 Building for target x86_64 Executing(%prep): /bin/sh -e /usr/src/tmp/rpm-tmp.411 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + rm -rf pyparsing-3.0.9 + echo 'Source #0 (pyparsing-3.0.9.tar):' Source #0 (pyparsing-3.0.9.tar): + /bin/tar -xf /usr/src/RPM/SOURCES/pyparsing-3.0.9.tar + cd pyparsing-3.0.9 + /bin/chmod -c -Rf u+rwX,go-w . + echo 'Patch #0 (0001-ALT-tests-Skip-coverage.patch):' Patch #0 (0001-ALT-tests-Skip-coverage.patch): + /usr/bin/patch -p2 patching file tox.ini + exit 0 Executing(%build): /bin/sh -e /usr/src/tmp/rpm-tmp.411 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd pyparsing-3.0.9 + export 'CFLAGS=-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto' + CFLAGS='-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto' + export 'CXXFLAGS=-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto' + CXXFLAGS='-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto' + export 'FFLAGS=-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto' + FFLAGS='-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto' + /usr/bin/python3 -m pyproject_installer -v build INFO : pyproject_installer.build_cmd._build : Building wheel INFO : pyproject_installer.build_cmd._build : Source tree: /usr/src/RPM/BUILD/pyparsing-3.0.9 INFO : pyproject_installer.build_cmd._build : Output dir: /usr/src/RPM/BUILD/pyparsing-3.0.9/dist DEBUG : pyproject_installer.lib.build_backend : Validating source path DEBUG : pyproject_installer.lib.build_backend : Checking for PEP517 spec DEBUG : pyproject_installer.lib.build_backend : Parsing configuration file: /usr/src/RPM/BUILD/pyparsing-3.0.9/pyproject.toml INFO : backend_caller.py : Calling hook build_wheel in subprocess INFO : backend_caller.py : Build backend: flit_core.buildapi INFO : backend_caller.py : Hook args: ['/usr/src/RPM/BUILD/pyparsing-3.0.9/dist'] INFO : backend_caller.py : Hook kwargs: {'config_settings': None} DEBUG : flit_core.common : Loading module pyparsing/__init__.py DEBUG : flit_core.common : Loading module pyparsing/__init__.py INFO : flit_core.wheel : Zip timestamps will be from SOURCE_DATE_EPOCH: 2022-11-10 09:22:40 INFO : flit_core.wheel : Copying package file(s) from pyparsing DEBUG : flit_core.wheel : Adding pyparsing/__init__.py to zip file DEBUG : flit_core.wheel : Adding pyparsing/actions.py to zip file DEBUG : flit_core.wheel : Adding pyparsing/common.py to zip file DEBUG : flit_core.wheel : Adding pyparsing/core.py to zip file DEBUG : flit_core.wheel : Adding pyparsing/exceptions.py to zip file DEBUG : flit_core.wheel : Adding pyparsing/helpers.py to zip file DEBUG : flit_core.wheel : Adding pyparsing/py.typed to zip file DEBUG : flit_core.wheel : Adding pyparsing/results.py to zip file DEBUG : flit_core.wheel : Adding pyparsing/testing.py to zip file DEBUG : flit_core.wheel : Adding pyparsing/unicode.py to zip file DEBUG : flit_core.wheel : Adding pyparsing/util.py to zip file DEBUG : flit_core.wheel : Adding pyparsing/diagram/__init__.py to zip file INFO : flit_core.wheel : Writing metadata files DEBUG : flit_core.wheel : Adding LICENSE to zip file DEBUG : flit_core.wheel : Writing data to pyparsing-3.0.9.dist-info/WHEEL in zip file DEBUG : flit_core.wheel : Writing data to pyparsing-3.0.9.dist-info/METADATA in zip file INFO : flit_core.wheel : Writing the record of files DEBUG : flit_core.wheel : Writing data to pyparsing-3.0.9.dist-info/RECORD in zip file INFO : flit_core.wheel : Built wheel: /usr/src/RPM/BUILD/pyparsing-3.0.9/dist/pyparsing-3.0.9-py3-none-any.whl INFO : pyproject_installer.build_cmd._build : Built wheel: pyparsing-3.0.9-py3-none-any.whl + exit 0 Executing(%install): /bin/sh -e /usr/src/tmp/rpm-tmp.45934 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + /bin/chmod -Rf u+rwX -- /usr/src/tmp/python3-module-pyparsing-buildroot + : + /bin/rm -rf -- /usr/src/tmp/python3-module-pyparsing-buildroot + PATH=/usr/libexec/rpm-build:/usr/src/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/games + cd pyparsing-3.0.9 + /usr/bin/python3 -m pyproject_installer -v install --destdir=/usr/src/tmp/python3-module-pyparsing-buildroot INFO : pyproject_installer.install_cmd._install : Installing wheel INFO : pyproject_installer.install_cmd._install : Wheel directory: /usr/src/RPM/BUILD/pyparsing-3.0.9/dist INFO : pyproject_installer.install_cmd._install : Wheel filename: pyparsing-3.0.9-py3-none-any.whl INFO : pyproject_installer.install_cmd._install : Destination: /usr/src/tmp/python3-module-pyparsing-buildroot DEBUG : pyproject_installer.lib.wheel : Parsing wheel filename DEBUG : pyproject_installer.lib.wheel : Validating wheel file DEBUG : pyproject_installer.lib.wheel : Validating wheel spec version DEBUG : pyproject_installer.lib.wheel : Parsing wheel spec metadata DEBUG : pyproject_installer.lib.wheel : Validating RECORD INFO : pyproject_installer.install_cmd._install : Wheel installation root: /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages INFO : pyproject_installer.install_cmd._install : Extracting wheel DEBUG : pyproject_installer.install_cmd._install : Filtering out not allowed file: pyparsing-3.0.9.dist-info/LICENSE DEBUG : pyproject_installer.install_cmd._install : Filtering out not allowed file: pyparsing-3.0.9.dist-info/WHEEL DEBUG : pyproject_installer.install_cmd._install : Filtering out not allowed file: pyparsing-3.0.9.dist-info/RECORD INFO : pyproject_installer.install_cmd._install : Wheel was installed + /usr/lib/rpm/brp-alt Cleaning files in /usr/src/tmp/python3-module-pyparsing-buildroot (auto) Verifying and fixing files in /usr/src/tmp/python3-module-pyparsing-buildroot (binconfig,pkgconfig,libtool,desktop,gnuconfig) Checking contents of files in /usr/src/tmp/python3-module-pyparsing-buildroot/ (default) Compressing files in /usr/src/tmp/python3-module-pyparsing-buildroot (auto) Adjusting library links in /usr/src/tmp/python3-module-pyparsing-buildroot ./usr/lib: (from :0) Verifying ELF objects in /usr/src/tmp/python3-module-pyparsing-buildroot (arch=normal,fhs=normal,lfs=relaxed,lint=relaxed,rpath=normal,stack=normal,textrel=normal,unresolved=normal) Bytecompiling python3 modules in /usr/src/tmp/python3-module-pyparsing-buildroot using /usr/bin/python3 compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/diagram/__init__.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/__init__.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/actions.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/common.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/core.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/exceptions.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/helpers.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/results.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/testing.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/unicode.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/util.py Bytecompiling python3 modules with optimization in /usr/src/tmp/python3-module-pyparsing-buildroot using /usr/bin/python3 -O compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/diagram/__init__.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/__init__.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/actions.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/common.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/core.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/exceptions.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/helpers.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/results.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/testing.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/unicode.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/util.py Bytecompiling python3 modules with optimization-2 in /usr/src/tmp/python3-module-pyparsing-buildroot using /usr/bin/python3 -OO compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/diagram/__init__.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/__init__.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/actions.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/common.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/core.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/exceptions.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/helpers.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/results.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/testing.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/unicode.py compile /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/util.py Hardlinking identical .pyc and .opt-?.pyc files './usr/lib/python3/site-packages/pyparsing/__pycache__/__init__.cpython-311.opt-1.pyc' => './usr/lib/python3/site-packages/pyparsing/__pycache__/__init__.cpython-311.pyc' './usr/lib/python3/site-packages/pyparsing/__pycache__/__init__.cpython-311.opt-2.pyc' => './usr/lib/python3/site-packages/pyparsing/__pycache__/__init__.cpython-311.opt-1.pyc' './usr/lib/python3/site-packages/pyparsing/__pycache__/actions.cpython-311.opt-1.pyc' => './usr/lib/python3/site-packages/pyparsing/__pycache__/actions.cpython-311.pyc' './usr/lib/python3/site-packages/pyparsing/__pycache__/common.cpython-311.opt-1.pyc' => './usr/lib/python3/site-packages/pyparsing/__pycache__/common.cpython-311.pyc' './usr/lib/python3/site-packages/pyparsing/__pycache__/core.cpython-311.opt-1.pyc' => './usr/lib/python3/site-packages/pyparsing/__pycache__/core.cpython-311.pyc' './usr/lib/python3/site-packages/pyparsing/__pycache__/exceptions.cpython-311.opt-1.pyc' => './usr/lib/python3/site-packages/pyparsing/__pycache__/exceptions.cpython-311.pyc' './usr/lib/python3/site-packages/pyparsing/__pycache__/helpers.cpython-311.opt-1.pyc' => './usr/lib/python3/site-packages/pyparsing/__pycache__/helpers.cpython-311.pyc' './usr/lib/python3/site-packages/pyparsing/__pycache__/results.cpython-311.opt-1.pyc' => './usr/lib/python3/site-packages/pyparsing/__pycache__/results.cpython-311.pyc' './usr/lib/python3/site-packages/pyparsing/__pycache__/testing.cpython-311.opt-1.pyc' => './usr/lib/python3/site-packages/pyparsing/__pycache__/testing.cpython-311.pyc' './usr/lib/python3/site-packages/pyparsing/__pycache__/unicode.cpython-311.opt-1.pyc' => './usr/lib/python3/site-packages/pyparsing/__pycache__/unicode.cpython-311.pyc' './usr/lib/python3/site-packages/pyparsing/__pycache__/util.cpython-311.opt-1.pyc' => './usr/lib/python3/site-packages/pyparsing/__pycache__/util.cpython-311.pyc' './usr/lib/python3/site-packages/pyparsing/diagram/__pycache__/__init__.cpython-311.opt-1.pyc' => './usr/lib/python3/site-packages/pyparsing/diagram/__pycache__/__init__.cpython-311.pyc' Executing(%check): /bin/sh -e /usr/src/tmp/rpm-tmp.70342 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd pyparsing-3.0.9 ++ cat ./dist/.wheeltracker + _tox_wheel=pyparsing-3.0.9-py3-none-any.whl + export NO_INTERNET=YES + NO_INTERNET=YES + export PIP_NO_BUILD_ISOLATION=NO + PIP_NO_BUILD_ISOLATION=NO + export PIP_NO_INDEX=YES + PIP_NO_INDEX=YES + export TOXENV=py3 + TOXENV=py3 + export TOX_TESTENV_PASSENV=NO_INTERNET + TOX_TESTENV_PASSENV=NO_INTERNET + /usr/bin/tox.py3 --sitepackages -vvr -s false --no-deps --console-scripts --installpkg=./dist/pyparsing-3.0.9-py3-none-any.whl using tox.ini: /usr/src/RPM/BUILD/pyparsing-3.0.9/tox.ini (pid 3467206) no-deps plugin: extras: '['diagrams']' will be skipped for '.package' no-deps plugin: deps: '[coverage]' will be skipped for 'py36' no-deps plugin: extras: '['diagrams']' will be skipped for 'py36' no-deps plugin: deps: '[coverage]' will be skipped for 'py37' no-deps plugin: extras: '['diagrams']' will be skipped for 'py37' no-deps plugin: deps: '[coverage]' will be skipped for 'py38' no-deps plugin: extras: '['diagrams']' will be skipped for 'py38' no-deps plugin: deps: '[coverage]' will be skipped for 'py39' no-deps plugin: extras: '['diagrams']' will be skipped for 'py39' no-deps plugin: deps: '[coverage]' will be skipped for 'py310' no-deps plugin: extras: '['diagrams']' will be skipped for 'py310' no-deps plugin: deps: '[coverage]' will be skipped for 'pypy3' no-deps plugin: extras: '['diagrams']' will be skipped for 'pypy3' no-deps plugin: deps: '[pretend, pytest]' will be skipped for 'pyparsing_packaging' no-deps plugin: extras: '['diagrams']' will be skipped for 'pyparsing_packaging' no-deps plugin: deps: '[coverage]' will be skipped for 'py3' no-deps plugin: extras: '['diagrams']' will be skipped for 'py3' using tox-3.27.1 from /usr/lib/python3/site-packages/tox/__init__.py (pid 3467206) using package '/usr/src/RPM/BUILD/pyparsing-3.0.9/dist/pyparsing-3.0.9-py3-none-any.whl', skipping 'sdist' activity package .tox/.tmp/package/1/pyparsing-3.0.9-py3-none-any.whl links to dist/pyparsing-3.0.9-py3-none-any.whl (/usr/src/RPM/BUILD/pyparsing-3.0.9) py3 uses /usr/bin/python3 py3 start: getenv /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3 py3 cannot reuse: -r flag py3 create: /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3 setting PATH=/usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3/bin:/usr/src/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/games [3467671] /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox$ /usr/bin/python3 -m virtualenv --system-site-packages --no-download --python /usr/bin/python3 py3 created virtual environment CPython3.11.4.final.0-64 in 416ms creator CPython3Posix(dest=/usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3, clear=False, no_vcs_ignore=False, global=True) seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/usr/src/.local/share/virtualenv) added seed packages: pip==23.1.2, setuptools==68.0.0, wheel==0.40.0 activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator setting PATH=/usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3/bin:/usr/src/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/games [3469251] /usr/src/RPM/BUILD/pyparsing-3.0.9$ /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3/bin/python /usr/lib/python3/site-packages/tox_console_scripts/helper/console_scripts.py Generating script tox into /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3/bin Generating script tox-quickstart into /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3/bin Generating script virtualenv into /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3/bin Generating script py.test into /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3/bin Generating script pytest into /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3/bin py3 finish: getenv /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3 after 0.73 seconds py3 start: installpkg /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/.tmp/package/1/pyparsing-3.0.9-py3-none-any.whl py3 inst: /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/.tmp/package/1/pyparsing-3.0.9-py3-none-any.whl write config to /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3/.tox-config1 as 'dae761cb0bedff3a349209838a0b7759abfc208fa31ad32697c409eea35ad3b0 /usr/bin/python3\n3.27.1 1 0 0' setting PATH=/usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3/bin:/usr/src/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/games [3469606] /usr/src/RPM/BUILD/pyparsing-3.0.9$ /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3/bin/python -m pip install --exists-action w .tox/.tmp/package/1/pyparsing-3.0.9-py3-none-any.whl Processing ./.tox/.tmp/package/1/pyparsing-3.0.9-py3-none-any.whl Installing collected packages: pyparsing Successfully installed pyparsing-3.0.9 py3 finish: installpkg /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/.tmp/package/1/pyparsing-3.0.9-py3-none-any.whl after 1.72 seconds py3 start: envreport setting PATH=/usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3/bin:/usr/src/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/games [3472966] /usr/src/RPM/BUILD/pyparsing-3.0.9$ /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3/bin/python -m pip freeze >.tox/py3/log/py3-0.log py3 finish: envreport after 0.48 seconds py3 installed: apipkg==3.0.1,distlib==0.3.6,filelock==3.12.2,flit_core==3.9.0,iniconfig==2.0.0,Jinja2==3.1.2,MarkupSafe==2.1.3,packaging==23.1,platformdirs==3.7.0,pluggy==1.0.0,py==1.11.0,pyparsing @ file:///usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/.tmp/package/1/pyparsing-3.0.9-py3-none-any.whl#sha256=2eafbbd4586ebe7c0cd9495db5e5134efeb593e99c98ece9bdfb16b60ae61615,pyproject-installer==0.5.1,pytest==7.3.2,railroad-diagrams==1.1.1,six==1.16.0,tomli==2.0.1,tox==3.27.1,tox-console-scripts==0.3.2,tox-no-deps==0.2.0,virtualenv==20.23.1 py3 start: run-test-pre py3 run-test-pre: PYTHONHASHSEED='625776993' py3 finish: run-test-pre after 0.00 seconds py3 start: run-test py3 run-test: commands[0] | python -m unittest setting PATH=/usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3/bin:/usr/src/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/games [3474010] /usr/src/RPM/BUILD/pyparsing-3.0.9$ /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/py3/bin/python -m unittest ....................(relative to 2023-07-06 15:57:41.713852) today ['today'] - calculatedTime: datetime.datetime(2023, 7, 6, 0, 0) - computed_dt: datetime.datetime(2023, 7, 6, 0, 0) - original: 'today' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-1, seconds=28939) - verify_offset: 'PASS' tomorrow ['tomorrow'] - calculatedTime: datetime.datetime(2023, 7, 7, 0, 0) - computed_dt: datetime.datetime(2023, 7, 7, 0, 0) - original: 'tomorrow' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(seconds=28939) - verify_offset: 'PASS' yesterday ['yesterday'] - calculatedTime: datetime.datetime(2023, 7, 5, 0, 0) - computed_dt: datetime.datetime(2023, 7, 5, 0, 0) - original: 'yesterday' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-2, seconds=28939) - verify_offset: 'PASS' the day before yesterday [1, 'day', -1, 'yesterday'] - calculatedTime: datetime.datetime(2023, 7, 4, 0, 0) - computed_dt: datetime.datetime(2023, 7, 4, 0, 0) - original: 'the day before yesterday' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-3, seconds=28939) - verify_offset: 'PASS' the day after tomorrow [1, 'day', 1, 'tomorrow'] - calculatedTime: datetime.datetime(2023, 7, 8, 0, 0) - computed_dt: datetime.datetime(2023, 7, 8, 0, 0) - original: 'the day after tomorrow' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=1, seconds=28939) - verify_offset: 'PASS' 2 weeks after today [2, 'week', 1, 'today'] - calculatedTime: datetime.datetime(2023, 7, 20, 0, 0) - computed_dt: datetime.datetime(2023, 7, 20, 0, 0) - original: '2 weeks after today' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=13, seconds=28939) - verify_offset: 'PASS' in a couple of days [1, 2, 'day'] - calculatedTime: datetime.datetime(2023, 7, 8, 0, 0) - computed_dt: datetime.datetime(2023, 7, 8, 0, 0) - original: 'in a couple of days' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=1, seconds=28939) - verify_offset: 'PASS' a couple of days from now [2, 'day', 1, 'now', True] - calculatedTime: datetime.datetime(2023, 7, 8, 15, 57, 41) - computed_dt: datetime.datetime(2023, 7, 8, 15, 57, 41) - original: 'a couple of days from now' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=2) - verify_offset: 'PASS' a couple of days from today [2, 'day', 1, 'today'] - calculatedTime: datetime.datetime(2023, 7, 8, 0, 0) - computed_dt: datetime.datetime(2023, 7, 8, 0, 0) - original: 'a couple of days from today' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=1, seconds=28939) - verify_offset: 'PASS' in a day [1, 1, 'day'] - calculatedTime: datetime.datetime(2023, 7, 7, 0, 0) - computed_dt: datetime.datetime(2023, 7, 7, 0, 0) - original: 'in a day' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(seconds=28939) - verify_offset: 'PASS' 3 days ago [3, 'day', -1] - calculatedTime: datetime.datetime(2023, 7, 3, 0, 0) - computed_dt: datetime.datetime(2023, 7, 3, 0, 0) - original: '3 days ago' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-4, seconds=28939) - verify_offset: 'PASS' 3 days from now [3, 'day', 1, 'now', True] - calculatedTime: datetime.datetime(2023, 7, 9, 15, 57, 41) - computed_dt: datetime.datetime(2023, 7, 9, 15, 57, 41) - original: '3 days from now' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=3) - verify_offset: 'PASS' a day ago [1, 'day', -1] - calculatedTime: datetime.datetime(2023, 7, 5, 0, 0) - computed_dt: datetime.datetime(2023, 7, 5, 0, 0) - original: 'a day ago' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-2, seconds=28939) - verify_offset: 'PASS' an hour ago [1, 'hour', -1, True] - calculatedTime: datetime.datetime(2023, 7, 6, 14, 57, 41) - computed_dt: datetime.datetime(2023, 7, 6, 14, 57, 41) - original: 'an hour ago' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-1, seconds=82800) - verify_offset: 'PASS' in 2 weeks [1, 2, 'week'] - calculatedTime: datetime.datetime(2023, 7, 20, 0, 0) - computed_dt: datetime.datetime(2023, 7, 20, 0, 0) - original: 'in 2 weeks' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=13, seconds=28939) - verify_offset: 'PASS' in 3 days at 5pm [1, 3, 'day', 'at', 5, 'pm', True] - calculatedTime: datetime.datetime(2023, 7, 9, 17, 0) - computed_dt: datetime.datetime(2023, 7, 9, 17, 0) - original: 'in 3 days at 5pm' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=3, seconds=3739) - verify_offset: 'PASS' now ['now', True] - calculatedTime: datetime.datetime(2023, 7, 6, 15, 57, 41) - computed_dt: datetime.datetime(2023, 7, 6, 15, 57, 41) - original: 'now' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(0) - verify_offset: 'PASS' 10 minutes ago [10, 'minute', -1, True] - calculatedTime: datetime.datetime(2023, 7, 6, 15, 47, 41) - computed_dt: datetime.datetime(2023, 7, 6, 15, 47, 41) - original: '10 minutes ago' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-1, seconds=85800) - verify_offset: 'PASS' 10 minutes from now [10, 'minute', 1, ['now'], True] - calculatedTime: datetime.datetime(2023, 7, 6, 16, 7, 41) - computed_dt: datetime.datetime(2023, 7, 6, 16, 7, 41) - original: '10 minutes from now' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(seconds=600) - verify_offset: 'PASS' [0]: 10 [1]: minute [2]: 1 [3]: ['now'] - computed_time: datetime.time(15, 57, 41) [4]: True in 10 minutes [1, 10, 'minute', True] - calculatedTime: datetime.datetime(2023, 7, 6, 16, 7, 41) - computed_dt: datetime.datetime(2023, 7, 6, 16, 7, 41) - original: 'in 10 minutes' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(seconds=600) - verify_offset: 'PASS' in a minute [1, 1, 'minute', True] - calculatedTime: datetime.datetime(2023, 7, 6, 15, 58, 41) - computed_dt: datetime.datetime(2023, 7, 6, 15, 58, 41) - original: 'in a minute' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(seconds=60) - verify_offset: 'PASS' in a couple of minutes [1, 2, 'minute', True] - calculatedTime: datetime.datetime(2023, 7, 6, 15, 59, 41) - computed_dt: datetime.datetime(2023, 7, 6, 15, 59, 41) - original: 'in a couple of minutes' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(seconds=120) - verify_offset: 'PASS' 20 seconds ago [20, 'second', -1, True] - calculatedTime: datetime.datetime(2023, 7, 6, 15, 57, 21) - computed_dt: datetime.datetime(2023, 7, 6, 15, 57, 21) - original: '20 seconds ago' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-1, seconds=86380) - verify_offset: 'PASS' in 30 seconds [1, 30, 'second', True] - calculatedTime: datetime.datetime(2023, 7, 6, 15, 58, 11) - computed_dt: datetime.datetime(2023, 7, 6, 15, 58, 11) - original: 'in 30 seconds' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(seconds=30) - verify_offset: 'PASS' in an hour [1, 1, 'hour', True] - calculatedTime: datetime.datetime(2023, 7, 6, 16, 57, 41) - computed_dt: datetime.datetime(2023, 7, 6, 16, 57, 41) - original: 'in an hour' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(seconds=3600) - verify_offset: 'PASS' . in a couple hours [1, 2, 'hour', True] - calculatedTime: datetime.datetime(2023, 7, 6, 17, 57, 41) - computed_dt: datetime.datetime(2023, 7, 6, 17, 57, 41) - original: 'in a couple hours' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(seconds=7200) - verify_offset: 'PASS' in a couple days [1, 2, 'day'] - calculatedTime: datetime.datetime(2023, 7, 8, 0, 0) - computed_dt: datetime.datetime(2023, 7, 8, 0, 0) - original: 'in a couple days' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=1, seconds=28939) - verify_offset: 'PASS' 20 seconds before noon [20, 'second', -1, ['noon'], True] - calculatedTime: datetime.datetime(2023, 7, 6, 11, 59, 40) - computed_dt: datetime.datetime(2023, 7, 6, 11, 59, 40) - original: '20 seconds before noon' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-1, seconds=72119) - verify_offset: 'PASS' [0]: 20 [1]: second [2]: -1 [3]: ['noon'] - computed_time: datetime.time(12, 0) [4]: True ten seconds before noon tomorrow [10, 'second', -1, ['noon'], True, 'tomorrow'] - calculatedTime: datetime.datetime(2023, 7, 7, 11, 59, 50) - computed_dt: datetime.datetime(2023, 7, 7, 11, 59, 50) - original: 'ten seconds before noon tomorrow' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(seconds=72129) - verify_offset: 'PASS' [0]: 10 [1]: second [2]: -1 [3]: ['noon'] - computed_time: datetime.time(12, 0) [4]: True [5]: tomorrow noon ['noon', True] - calculatedTime: datetime.datetime(2023, 7, 6, 12, 0) - computed_dt: datetime.datetime(2023, 7, 6, 12, 0) - original: 'noon' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-1, seconds=72139) midnight ['midnight', True] - calculatedTime: datetime.datetime(2023, 7, 6, 0, 0) - computed_dt: datetime.datetime(2023, 7, 6, 0, 0) - original: 'midnight' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-1, seconds=28939) - verify_offset: 'PASS' noon tomorrow ['noon', True, 'tomorrow'] - calculatedTime: datetime.datetime(2023, 7, 7, 12, 0) - computed_dt: datetime.datetime(2023, 7, 7, 12, 0) - original: 'noon tomorrow' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(seconds=72139) - verify_offset: 'PASS' 6am tomorrow [6, 'am', True, 'tomorrow'] - calculatedTime: datetime.datetime(2023, 7, 7, 6, 0) - computed_dt: datetime.datetime(2023, 7, 7, 6, 0) - original: '6am tomorrow' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(seconds=50539) - verify_offset: 'PASS' 0800 yesterday [8, 0, True, 'yesterday'] - calculatedTime: datetime.datetime(2023, 7, 5, 8, 0) - computed_dt: datetime.datetime(2023, 7, 5, 8, 0) - original: '0800 yesterday' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-2, seconds=57739) - verify_offset: 'PASS' 1700 tomorrow [17, 0, True, 'tomorrow'] - calculatedTime: datetime.datetime(2023, 7, 7, 17, 0) - computed_dt: datetime.datetime(2023, 7, 7, 17, 0) - original: '1700 tomorrow' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=1, seconds=3739) - verify_offset: 'PASS' 12:15 AM today [12, 15, 'am', True, 'today'] - calculatedTime: datetime.datetime(2023, 7, 6, 0, 15) - computed_dt: datetime.datetime(2023, 7, 6, 0, 15) - original: '12:15 AM today' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-1, seconds=29839) - verify_offset: 'PASS' 3pm 2 days from today [3, 'pm', True, 2, 'day', 1, 'today'] - calculatedTime: datetime.datetime(2023, 7, 8, 15, 0) - computed_dt: datetime.datetime(2023, 7, 8, 15, 0) - original: '3pm 2 days from today' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=1, seconds=82939) - verify_offset: 'PASS' a week from today [1, 'week', 1, 'today'] - calculatedTime: datetime.datetime(2023, 7, 13, 0, 0) - computed_dt: datetime.datetime(2023, 7, 13, 0, 0) - original: 'a week from today' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=6, seconds=28939) - verify_offset: 'PASS' a week from now [1, 'week', 1, 'now', True] - calculatedTime: datetime.datetime(2023, 7, 13, 15, 57, 41) - computed_dt: datetime.datetime(2023, 7, 13, 15, 57, 41) - original: 'a week from now' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=7) - verify_offset: 'PASS' three weeks ago [3, 'week', -1] - calculatedTime: datetime.datetime(2023, 6, 15, 0, 0) - computed_dt: datetime.datetime(2023, 6, 15, 0, 0) - original: 'three weeks ago' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-22, seconds=28939) - verify_offset: 'PASS' noon next Sunday ['noon', True, 1, 'Sunday'] - calculatedTime: datetime.datetime(2023, 7, 9, 12, 0) - computed_dt: datetime.datetime(2023, 7, 9, 12, 0) - original: 'noon next Sunday' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=2, seconds=72139) noon Sunday ['noon', True, 1, 'Sunday'] - calculatedTime: datetime.datetime(2023, 7, 9, 12, 0) - computed_dt: datetime.datetime(2023, 7, 9, 12, 0) - original: 'noon Sunday' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=2, seconds=72139) noon last Sunday ['noon', True, -1, 'Sunday'] - calculatedTime: datetime.datetime(2023, 7, 2, 12, 0) - computed_dt: datetime.datetime(2023, 7, 2, 12, 0) - original: 'noon last Sunday' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-5, seconds=72139) 2pm next Sunday [2, 'pm', True, 1, 'Sunday'] - calculatedTime: datetime.datetime(2023, 7, 9, 14, 0) - computed_dt: datetime.datetime(2023, 7, 9, 14, 0) - original: '2pm next Sunday' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=2, seconds=79339) next Sunday at 2pm [1, 'Sunday', 'at', 2, 'pm', True] - calculatedTime: datetime.datetime(2023, 7, 9, 14, 0) - computed_dt: datetime.datetime(2023, 7, 9, 14, 0) - original: 'next Sunday at 2pm' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=2, seconds=79339) last Sunday at 2pm [-1, 'Sunday', 'at', 2, 'pm', True] - calculatedTime: datetime.datetime(2023, 7, 2, 14, 0) - computed_dt: datetime.datetime(2023, 7, 2, 14, 0) - original: 'last Sunday at 2pm' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-5, seconds=79339) 10 seconds ago [10, 'second', -1, True] - calculatedTime: datetime.datetime(2023, 7, 6, 15, 57, 31) - computed_dt: datetime.datetime(2023, 7, 6, 15, 57, 31) - original: '10 seconds ago' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-1, seconds=86390) - verify_offset: 'PASS' 100 seconds ago [100, 'second', -1, True] - calculatedTime: datetime.datetime(2023, 7, 6, 15, 56, 1) - computed_dt: datetime.datetime(2023, 7, 6, 15, 56, 1) - original: '100 seconds ago' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-1, seconds=86300) - verify_offset: 'PASS' 1000 seconds ago [1000, 'second', -1, True] - calculatedTime: datetime.datetime(2023, 7, 6, 15, 41, 1) - computed_dt: datetime.datetime(2023, 7, 6, 15, 41, 1) - original: '1000 seconds ago' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-1, seconds=85400) - verify_offset: 'PASS' 10000 seconds ago [10000, 'second', -1, True] - calculatedTime: datetime.datetime(2023, 7, 6, 13, 11, 1) - computed_dt: datetime.datetime(2023, 7, 6, 13, 11, 1) - original: '10000 seconds ago' - relative_to: datetime.datetime(2023, 7, 6, 15, 57, 41) - time_offset: datetime.timedelta(days=-1, seconds=76400) - verify_offset: 'PASS' ( A - B ) = 0 False False ( B - C + B ) = 0 True True (A + B + C + D + E + F + G + H + I) = J.... False False (A + B + C + D + E + F + G + H) = I False False (A + B + C + D + E + F) = G False False (A + B + C + D + E) = (F + G + H + I + J) False False (A + B + C + D + E) = (F + G + H + I) False False (A + B + C + D + E) = F False False (A + B + C + D) = (E + F + G + H) False False (A + B + C) = D False False (A + B + C) = (D + E + F) False False (A + B) = (C + D + E + F) False False (A + B) = (C + D) False False (A + B) = (C - D + E - F - G + H + I + J) False False (A + B) = C False False (A + B) = 0 False False (A+B+C+D+E) = (F+G+H+I+J) False False (A+B+C+D) = (E+F+G+H) False False (A+B+C+D)=(E+F+G+H) False False (A+B+C)=(D+E+F) False False (A+B)=(C+D) False False (A+B)=C False False (A-B)=C False False (A/(B+C)) 0.0 0.0 (B/(C+D)) 0.2 0.2 (G + H) = I False False -0.99 LE ((A+B+C)-(D+E+F+G)) LE 0.99 False False -0.99 LE (A-(B+C)) LE 0.99 False False -1000.00 LE A LE 0.00 True True -5000.00 LE A LE 0.00 True True A < B True True A < 7000 True True A = -(B) False False A = C False False A = 0 True True A GT 0 False False A GT 0.00 False False A GT 7.00 False False A LE B True True A LT -1000.00 False False A LT -5000 False False A LT 0 False False G=(B+C+D) True True A=B False False I = (G + H) False False 0.00 LE A LE 4.00 True True 4.00 LT A LE 7.00 False False 0.00 LE A LE 4.00 LE E > D True True 2**2**(A+3) 256 256.0 # Canadian (English and French) 4 294 967 295,000 [4294967295.0] # Danish 4 294 967 295,000 [4294967295.0] # Finnish 4 294 967 295,000 [4294967295.0] # French 4 294 967 295,000 [4294967295.0] # German 4 294 967 295,000 [4294967295.0] # Italian 4.294.967.295,000 [4294967295.0] # Norwegian 4.294.967.295,000 [4294967295.0] # Spanish 4.294.967.295,000 [4294967295.0] # Swedish 4 294 967 295,000 [4294967295.0] # GB-English 4,294,967,295.000 [4294967295.0] # US-English 4,294,967,295.000 [4294967295.0] # Thai 4,294,967,295.000 [4294967295.0] # Canadian (English and French) 4 294 967 295,000 [4294967295] # Danish 4 294 967 295,000 [4294967295] # Finnish 4 294 967 295,000 [4294967295] # French 4 294 967 295,000 [4294967295] # German 4 294 967 295,000 [4294967295] # Italian 4.294.967.295,000 [4294967295] # Norwegian 4.294.967.295,000 [4294967295] # Spanish 4.294.967.295,000 [4294967295] # Swedish 4 294 967 295,000 [4294967295] # GB-English 4,294,967,295.000 [4294967295] # US-English 4,294,967,295.000 [4294967295] # Thai 4,294,967,295.000 [4294967295] [[['int'], 'putstr', [[['char', '*'], 's']], [['while', ['*', 's'], [['putchar', [[['*', 's'], '++']]]]]]], [['int'], 'fac', [[['int'], 'n']], [['if', ['n', '==', '0'], ['return', '1'], 'else', ['return', ['n', '*', ['fac', [['n', '-', '1']]]]]]]], [['int'], 'putn', [[['int'], 'n']], [['if', ['9', '<', 'n'], [['putn', [['n', '/', '10']]]]], [['putchar', [[['n', '%', '10'], '+', "'0'"]]]]]], [['int'], 'facpr', [[['int'], 'n']], [[['putstr', ['"factorial "']]], [['putn', ['n']]], [['putstr', ['" = "']]], [['putn', [['fac', ['n']]]]], [['putstr', ['"\\n"']]]]], [['int'], 'main', [[['int'], 'i'], [['i', '=', '0']], ['if', [['a', []], '==', '1'], []], ['while', ['i', '<', '10'], [['facpr', [['i', '++']]]]], ['return', '0']]]] XVI [16] XXXIX [39] XIV [14] XIX [19] MCMLXXX [1980] MMVI [2006] MMMMM [5000] select * from xyzzy where z > 100 ['SELECT', [['*']], 'FROM', ['xyzzy'], 'WHERE', [['z'], '>', 100]] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['xyzzy']] [0]: ['xyzzy'] - table: [['xyzzy']] [0]: ['xyzzy'] - where_expr: [['z'], '>', 100] [0]: ['z'] - col: 'z' [1]: > [2]: 100 [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['xyzzy'] - table: [['xyzzy']] [0]: ['xyzzy'] [4]: WHERE [5]: [['z'], '>', 100] [0]: ['z'] - col: 'z' [1]: > [2]: 100 select * from xyzzy where z > 100 order by zz ['SELECT', [['*']], 'FROM', ['xyzzy'], 'WHERE', [['z'], '>', 100], 'ORDER', 'BY', [[['zz']]]] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['xyzzy']] [0]: ['xyzzy'] - table: [['xyzzy']] [0]: ['xyzzy'] - order_by_terms: [[['zz']]] [0]: [['zz']] - order_key: ['zz'] - col: 'zz' [0]: ['zz'] - col: 'zz' - where_expr: [['z'], '>', 100] [0]: ['z'] - col: 'z' [1]: > [2]: 100 [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['xyzzy'] - table: [['xyzzy']] [0]: ['xyzzy'] [4]: WHERE [5]: [['z'], '>', 100] [0]: ['z'] - col: 'z' [1]: > [2]: 100 [6]: ORDER [7]: BY [8]: [[['zz']]] [0]: [['zz']] - order_key: ['zz'] - col: 'zz' [0]: ['zz'] - col: 'zz' select * from xyzzy ['SELECT', [['*']], 'FROM', ['xyzzy']] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['xyzzy']] [0]: ['xyzzy'] - table: [['xyzzy']] [0]: ['xyzzy'] [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['xyzzy'] - table: [['xyzzy']] [0]: ['xyzzy'] select z.* from xyzzy ['SELECT', [['z', '.', '*']], 'FROM', ['xyzzy']] - columns: [['z', '.', '*']] [0]: ['z', '.', '*'] - col: '*' - col_table: ['z'] - from: [['xyzzy']] [0]: ['xyzzy'] - table: [['xyzzy']] [0]: ['xyzzy'] [0]: SELECT [1]: [['z', '.', '*']] [0]: ['z', '.', '*'] - col: '*' - col_table: ['z'] [2]: FROM [3]: ['xyzzy'] - table: [['xyzzy']] [0]: ['xyzzy'] select a, b from test_table where 1=1 and b='yes' ['SELECT', [[['a']], [['b']]], 'FROM', ['test_table'], 'WHERE', [[1, '=', 1], 'AND', [['b'], '=', 'yes']]] - columns: [[['a']], [['b']]] [0]: [['a']] - col: ['a'] - col: 'a' [0]: ['a'] - col: 'a' [1]: [['b']] - col: ['b'] - col: 'b' [0]: ['b'] - col: 'b' - from: [['test_table']] [0]: ['test_table'] - table: [['test_table']] [0]: ['test_table'] - where_expr: [[1, '=', 1], 'AND', [['b'], '=', 'yes']] [0]: [1, '=', 1] [1]: AND [2]: [['b'], '=', 'yes'] [0]: ['b'] - col: 'b' [1]: = [2]: yes [0]: SELECT [1]: [[['a']], [['b']]] [0]: [['a']] - col: ['a'] - col: 'a' [0]: ['a'] - col: 'a' [1]: [['b']] - col: ['b'] - col: 'b' [0]: ['b'] - col: 'b' [2]: FROM [3]: ['test_table'] - table: [['test_table']] [0]: ['test_table'] [4]: WHERE [5]: [[1, '=', 1], 'AND', [['b'], '=', 'yes']] [0]: [1, '=', 1] [1]: AND [2]: [['b'], '=', 'yes'] [0]: ['b'] - col: 'b' [1]: = [2]: yes select a, b from test_table where 1=1 and b in (select bb from foo) ['SELECT', [[['a']], [['b']]], 'FROM', ['test_table'], 'WHERE', [[1, '=', 1], 'AND', [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]]]] - columns: [[['a']], [['b']]] [0]: [['a']] - col: ['a'] - col: 'a' [0]: ['a'] - col: 'a' [1]: [['b']] - col: ['b'] - col: 'b' [0]: ['b'] - col: 'b' - from: [['test_table']] [0]: ['test_table'] - table: [['test_table']] [0]: ['test_table'] - where_expr: [[1, '=', 1], 'AND', [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]]] [0]: [1, '=', 1] [1]: AND [2]: [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]] [0]: ['b'] - col: 'b' [1]: IN [2]: ['SELECT', [[['bb']]], 'FROM', ['foo']] - columns: [[['bb']]] [0]: [['bb']] - col: ['bb'] - col: 'bb' [0]: ['bb'] - col: 'bb' - from: [['foo']] [0]: ['foo'] - table: [['foo']] [0]: ['foo'] [0]: SELECT [1]: [[['bb']]] [0]: [['bb']] - col: ['bb'] - col: 'bb' [0]: ['bb'] - col: 'bb' [2]: FROM [3]: ['foo'] - table: [['foo']] [0]: ['foo'] [0]: SELECT [1]: [[['a']], [['b']]] [0]: [['a']] - col: ['a'] - col: 'a' [0]: ['a'] - col: 'a' [1]: [['b']] - col: ['b'] - col: 'b' [0]: ['b'] - col: 'b' [2]: FROM [3]: ['test_table'] - table: [['test_table']] [0]: ['test_table'] [4]: WHERE [5]: [[1, '=', 1], 'AND', [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]]] [0]: [1, '=', 1] [1]: AND [2]: [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]] [0]: ['b'] - col: 'b' [1]: IN [2]: ['SELECT', [[['bb']]], 'FROM', ['foo']] - columns: [[['bb']]] [0]: [['bb']] - col: ['bb'] - col: 'bb' [0]: ['bb'] - col: 'bb' - from: [['foo']] [0]: ['foo'] - table: [['foo']] [0]: ['foo'] [0]: SELECT [1]: [[['bb']]] [0]: [['bb']] - col: ['bb'] - col: 'bb' [0]: ['bb'] - col: 'bb' [2]: FROM [3]: ['foo'] - table: [['foo']] [0]: ['foo'] select z.a, b from test_table where 1=1 and b in (select bb from foo) ['SELECT', [[['z', '.', 'a']], [['b']]], 'FROM', ['test_table'], 'WHERE', [[1, '=', 1], 'AND', [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]]]] - columns: [[['z', '.', 'a']], [['b']]] [0]: [['z', '.', 'a']] - col: ['z', '.', 'a'] - col: 'a' - col_tab: 'z' [0]: ['z', '.', 'a'] - col: 'a' - col_tab: 'z' [1]: [['b']] - col: ['b'] - col: 'b' [0]: ['b'] - col: 'b' - from: [['test_table']] [0]: ['test_table'] - table: [['test_table']] [0]: ['test_table'] - where_expr: [[1, '=', 1], 'AND', [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]]] [0]: [1, '=', 1] [1]: AND [2]: [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]] [0]: ['b'] - col: 'b' [1]: IN [2]: ['SELECT', [[['bb']]], 'FROM', ['foo']] - columns: [[['bb']]] [0]: [['bb']] - col: ['bb'] - col: 'bb' [0]: ['bb'] - col: 'bb' - from: [['foo']] [0]: ['foo'] - table: [['foo']] [0]: ['foo'] [0]: SELECT [1]: [[['bb']]] [0]: [['bb']] - col: ['bb'] - col: 'bb' [0]: ['bb'] - col: 'bb' [2]: FROM [3]: ['foo'] - table: [['foo']] [0]: ['foo'] [0]: SELECT [1]: [[['z', '.', 'a']], [['b']]] [0]: [['z', '.', 'a']] - col: ['z', '.', 'a'] - col: 'a' - col_tab: 'z' [0]: ['z', '.', 'a'] - col: 'a' - col_tab: 'z' [1]: [['b']] - col: ['b'] - col: 'b' [0]: ['b'] - col: 'b' [2]: FROM [3]: ['test_table'] - table: [['test_table']] [0]: ['test_table'] [4]: WHERE [5]: [[1, '=', 1], 'AND', [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]]] [0]: [1, '=', 1] [1]: AND [2]: [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]] [0]: ['b'] - col: 'b' [1]: IN [2]: ['SELECT', [[['bb']]], 'FROM', ['foo']] - columns: [[['bb']]] [0]: [['bb']] - col: ['bb'] - col: 'bb' [0]: ['bb'] - col: 'bb' - from: [['foo']] [0]: ['foo'] - table: [['foo']] [0]: ['foo'] [0]: SELECT [1]: [[['bb']]] [0]: [['bb']] - col: ['bb'] - col: 'bb' [0]: ['bb'] - col: 'bb' [2]: FROM [3]: ['foo'] - table: [['foo']] [0]: ['foo'] select z.a, b from test_table where 1=1 and b in (select bb from foo) order by b,c desc,d ['SELECT', [[['z', '.', 'a']], [['b']]], 'FROM', ['test_table'], 'WHERE', [[1, '=', 1], 'AND', [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]]], 'ORDER', 'BY', [[['b']], [['c'], 'DESC'], [['d']]]] - columns: [[['z', '.', 'a']], [['b']]] [0]: [['z', '.', 'a']] - col: ['z', '.', 'a'] - col: 'a' - col_tab: 'z' [0]: ['z', '.', 'a'] - col: 'a' - col_tab: 'z' [1]: [['b']] - col: ['b'] - col: 'b' [0]: ['b'] - col: 'b' - from: [['test_table']] [0]: ['test_table'] - table: [['test_table']] [0]: ['test_table'] - order_by_terms: [[['b']], [['c'], 'DESC'], [['d']]] [0]: [['b']] - order_key: ['b'] - col: 'b' [0]: ['b'] - col: 'b' [1]: [['c'], 'DESC'] - direction: 'DESC' - order_key: ['c'] - col: 'c' [0]: ['c'] - col: 'c' [1]: DESC [2]: [['d']] - order_key: ['d'] - col: 'd' [0]: ['d'] - col: 'd' - where_expr: [[1, '=', 1], 'AND', [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]]] [0]: [1, '=', 1] [1]: AND [2]: [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]] [0]: ['b'] - col: 'b' [1]: IN [2]: ['SELECT', [[['bb']]], 'FROM', ['foo']] - columns: [[['bb']]] [0]: [['bb']] - col: ['bb'] - col: 'bb' [0]: ['bb'] - col: 'bb' - from: [['foo']] [0]: ['foo'] - table: [['foo']] [0]: ['foo'] [0]: SELECT [1]: [[['bb']]] [0]: [['bb']] - col: ['bb'] - col: 'bb' [0]: ['bb'] - col: 'bb' [2]: FROM [3]: ['foo'] - table: [['foo']] [0]: ['foo'] [0]: SELECT [1]: [[['z', '.', 'a']], [['b']]] [0]: [['z', '.', 'a']] - col: ['z', '.', 'a'] - col: 'a' - col_tab: 'z' [0]: ['z', '.', 'a'] - col: 'a' - col_tab: 'z' [1]: [['b']] - col: ['b'] - col: 'b' [0]: ['b'] - col: 'b' [2]: FROM [3]: ['test_table'] - table: [['test_table']] [0]: ['test_table'] [4]: WHERE [5]: [[1, '=', 1], 'AND', [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]]] [0]: [1, '=', 1] [1]: AND [2]: [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]] [0]: ['b'] - col: 'b' [1]: IN [2]: ['SELECT', [[['bb']]], 'FROM', ['foo']] - columns: [[['bb']]] [0]: [['bb']] - col: ['bb'] - col: 'bb' [0]: ['bb'] - col: 'bb' - from: [['foo']] [0]: ['foo'] - table: [['foo']] [0]: ['foo'] [0]: SELECT [1]: [[['bb']]] [0]: [['bb']] - col: ['bb'] - col: 'bb' [0]: ['bb'] - col: 'bb' [2]: FROM [3]: ['foo'] - table: [['foo']] [0]: ['foo'] [6]: ORDER [7]: BY [8]: [[['b']], [['c'], 'DESC'], [['d']]] [0]: [['b']] - order_key: ['b'] - col: 'b' [0]: ['b'] - col: 'b' [1]: [['c'], 'DESC'] - direction: 'DESC' - order_key: ['c'] - col: 'c' [0]: ['c'] - col: 'c' [1]: DESC [2]: [['d']] - order_key: ['d'] - col: 'd' [0]: ['d'] - col: 'd' select z.a, b from test_table left join test2_table where 1=1 and b in (select bb from foo) ['SELECT', [[['z', '.', 'a']], [['b']]], 'FROM', [['test_table'], ['LEFT', 'JOIN'], ['test2_table'], []], 'WHERE', [[1, '=', 1], 'AND', [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]]]] - columns: [[['z', '.', 'a']], [['b']]] [0]: [['z', '.', 'a']] - col: ['z', '.', 'a'] - col: 'a' - col_tab: 'z' [0]: ['z', '.', 'a'] - col: 'a' - col_tab: 'z' [1]: [['b']] - col: ['b'] - col: 'b' [0]: ['b'] - col: 'b' - from: [[['test_table'], ['LEFT', 'JOIN'], ['test2_table'], []]] [0]: [['test_table'], ['LEFT', 'JOIN'], ['test2_table'], []] [0]: ['test_table'] - table: [['test_table']] [0]: ['test_table'] [1]: ['LEFT', 'JOIN'] [2]: ['test2_table'] - table: [['test2_table']] [0]: ['test2_table'] [3]: [] - where_expr: [[1, '=', 1], 'AND', [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]]] [0]: [1, '=', 1] [1]: AND [2]: [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]] [0]: ['b'] - col: 'b' [1]: IN [2]: ['SELECT', [[['bb']]], 'FROM', ['foo']] - columns: [[['bb']]] [0]: [['bb']] - col: ['bb'] - col: 'bb' [0]: ['bb'] - col: 'bb' - from: [['foo']] [0]: ['foo'] - table: [['foo']] [0]: ['foo'] [0]: SELECT [1]: [[['bb']]] [0]: [['bb']] - col: ['bb'] - col: 'bb' [0]: ['bb'] - col: 'bb' [2]: FROM [3]: ['foo'] - table: [['foo']] [0]: ['foo'] [0]: SELECT [1]: [[['z', '.', 'a']], [['b']]] [0]: [['z', '.', 'a']] - col: ['z', '.', 'a'] - col: 'a' - col_tab: 'z' [0]: ['z', '.', 'a'] - col: 'a' - col_tab: 'z' [1]: [['b']] - col: ['b'] - col: 'b' [0]: ['b'] - col: 'b' [2]: FROM [3]: [['test_table'], ['LEFT', 'JOIN'], ['test2_table'], []] [0]: ['test_table'] - table: [['test_table']] [0]: ['test_table'] [1]: ['LEFT', 'JOIN'] [2]: ['test2_table'] - table: [['test2_table']] [0]: ['test2_table'] [3]: [] [4]: WHERE [5]: [[1, '=', 1], 'AND', [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]]] [0]: [1, '=', 1] [1]: AND [2]: [['b'], 'IN', ['SELECT', [[['bb']]], 'FROM', ['foo']]] [0]: ['b'] - col: 'b' [1]: IN [2]: ['SELECT', [[['bb']]], 'FROM', ['foo']] - columns: [[['bb']]] [0]: [['bb']] - col: ['bb'] - col: 'bb' [0]: ['bb'] - col: 'bb' - from: [['foo']] [0]: ['foo'] - table: [['foo']] [0]: ['foo'] [0]: SELECT [1]: [[['bb']]] [0]: [['bb']] - col: ['bb'] - col: 'bb' [0]: ['bb'] - col: 'bb' [2]: FROM [3]: ['foo'] - table: [['foo']] [0]: ['foo'] select a, db.table.b as BBB from db.table where 1=1 and BBB='yes' ['SELECT', [[['a']], [['db', '.', 'table', '.', 'b'], 'AS', 'bbb']], 'FROM', ['db', '.', 'table'], 'WHERE', [[1, '=', 1], 'AND', [['bbb'], '=', 'yes']]] - columns: [[['a']], [['db', '.', 'table', '.', 'b'], 'AS', 'bbb']] [0]: [['a']] - col: ['a'] - col: 'a' [0]: ['a'] - col: 'a' [1]: [['db', '.', 'table', '.', 'b'], 'AS', 'bbb'] - alias: ['bbb'] - col: ['db', '.', 'table', '.', 'b'] - col: 'b' - col_db: 'db' - col_tab: 'table' [0]: ['db', '.', 'table', '.', 'b'] - col: 'b' - col_db: 'db' - col_tab: 'table' [1]: AS [2]: bbb - from: [['db', '.', 'table']] [0]: ['db', '.', 'table'] - database: ['db'] - table: [['table']] [0]: ['table'] - where_expr: [[1, '=', 1], 'AND', [['bbb'], '=', 'yes']] [0]: [1, '=', 1] [1]: AND [2]: [['bbb'], '=', 'yes'] [0]: ['bbb'] - col: 'bbb' [1]: = [2]: yes [0]: SELECT [1]: [[['a']], [['db', '.', 'table', '.', 'b'], 'AS', 'bbb']] [0]: [['a']] - col: ['a'] - col: 'a' [0]: ['a'] - col: 'a' [1]: [['db', '.', 'table', '.', 'b'], 'AS', 'bbb'] - alias: ['bbb'] - col: ['db', '.', 'table', '.', 'b'] - col: 'b' - col_db: 'db' - col_tab: 'table' [0]: ['db', '.', 'table', '.', 'b'] - col: 'b' - col_db: 'db' - col_tab: 'table' [1]: AS [2]: bbb [2]: FROM [3]: ['db', '.', 'table'] - database: ['db'] - table: [['table']] [0]: ['table'] [4]: WHERE [5]: [[1, '=', 1], 'AND', [['bbb'], '=', 'yes']] [0]: [1, '=', 1] [1]: AND [2]: [['bbb'], '=', 'yes'] [0]: ['bbb'] - col: 'bbb' [1]: = [2]: yes select a, db.table.b as BBB from test_table,db.table where 1=1 and BBB='yes' ['SELECT', [[['a']], [['db', '.', 'table', '.', 'b'], 'AS', 'bbb']], 'FROM', [['test_table'], ['db', '.', 'table'], []], 'WHERE', [[1, '=', 1], 'AND', [['bbb'], '=', 'yes']]] - columns: [[['a']], [['db', '.', 'table', '.', 'b'], 'AS', 'bbb']] [0]: [['a']] - col: ['a'] - col: 'a' [0]: ['a'] - col: 'a' [1]: [['db', '.', 'table', '.', 'b'], 'AS', 'bbb'] - alias: ['bbb'] - col: ['db', '.', 'table', '.', 'b'] - col: 'b' - col_db: 'db' - col_tab: 'table' [0]: ['db', '.', 'table', '.', 'b'] - col: 'b' - col_db: 'db' - col_tab: 'table' [1]: AS [2]: bbb - from: [[['test_table'], ['db', '.', 'table'], []]] [0]: [['test_table'], ['db', '.', 'table'], []] [0]: ['test_table'] - table: [['test_table']] [0]: ['test_table'] [1]: ['db', '.', 'table'] - database: ['db'] - table: [['table']] [0]: ['table'] [2]: [] - where_expr: [[1, '=', 1], 'AND', [['bbb'], '=', 'yes']] [0]: [1, '=', 1] [1]: AND [2]: [['bbb'], '=', 'yes'] [0]: ['bbb'] - col: 'bbb' [1]: = [2]: yes [0]: SELECT [1]: [[['a']], [['db', '.', 'table', '.', 'b'], 'AS', 'bbb']] [0]: [['a']] - col: ['a'] - col: 'a' [0]: ['a'] - col: 'a' [1]: [['db', '.', 'table', '.', 'b'], 'AS', 'bbb'] - alias: ['bbb'] - col: ['db', '.', 'table', '.', 'b'] - col: 'b' - col_db: 'db' - col_tab: 'table' [0]: ['db', '.', 'table', '.', 'b'] - col: 'b' - col_db: 'db' - col_tab: 'table' [1]: AS [2]: bbb [2]: FROM [3]: [['test_table'], ['db', '.', 'table'], []] [0]: ['test_table'] - table: [['test_table']] [0]: ['test_table'] [1]: ['db', '.', 'table'] - database: ['db'] - table: [['table']] [0]: ['table'] [2]: [] [4]: WHERE [5]: [[1, '=', 1], 'AND', [['bbb'], '=', 'yes']] [0]: [1, '=', 1] [1]: AND [2]: [['bbb'], '=', 'yes'] [0]: ['bbb'] - col: 'bbb' [1]: = [2]: yes select a, db.table.b as BBB from test_table,db.table where 1=1 and BBB='yes' limit 50 ['SELECT', [[['a']], [['db', '.', 'table', '.', 'b'], 'AS', 'bbb']], 'FROM', [['test_table'], ['db', '.', 'table'], []], 'WHERE', [[1, '=', 1], 'AND', [['bbb'], '=', 'yes']], 'LIMIT', 50] - columns: [[['a']], [['db', '.', 'table', '.', 'b'], 'AS', 'bbb']] [0]: [['a']] - col: ['a'] - col: 'a' [0]: ['a'] - col: 'a' [1]: [['db', '.', 'table', '.', 'b'], 'AS', 'bbb'] - alias: ['bbb'] - col: ['db', '.', 'table', '.', 'b'] - col: 'b' - col_db: 'db' - col_tab: 'table' [0]: ['db', '.', 'table', '.', 'b'] - col: 'b' - col_db: 'db' - col_tab: 'table' [1]: AS [2]: bbb - from: [[['test_table'], ['db', '.', 'table'], []]] [0]: [['test_table'], ['db', '.', 'table'], []] [0]: ['test_table'] - table: [['test_table']] [0]: ['test_table'] [1]: ['db', '.', 'table'] - database: ['db'] - table: [['table']] [0]: ['table'] [2]: [] - limit: [50] - where_expr: [[1, '=', 1], 'AND', [['bbb'], '=', 'yes']] [0]: [1, '=', 1] [1]: AND [2]: [['bbb'], '=', 'yes'] [0]: ['bbb'] - col: 'bbb' [1]: = [2]: yes [0]: SELECT [1]: [[['a']], [['db', '.', 'table', '.', 'b'], 'AS', 'bbb']] [0]: [['a']] - col: ['a'] - col: 'a' [0]: ['a'] - col: 'a' [1]: [['db', '.', 'table', '.', 'b'], 'AS', 'bbb'] - alias: ['bbb'] - col: ['db', '.', 'table', '.', 'b'] - col: 'b' - col_db: 'db' - col_tab: 'table' [0]: ['db', '.', 'table', '.', 'b'] - col: 'b' - col_db: 'db' - col_tab: 'table' [1]: AS [2]: bbb [2]: FROM [3]: [['test_table'], ['db', '.', 'table'], []] [0]: ['test_table'] - table: [['test_table']] [0]: ['test_table'] [1]: ['db', '.', 'table'] - database: ['db'] - table: [['table']] [0]: ['table'] [2]: [] [4]: WHERE [5]: [[1, '=', 1], 'AND', [['bbb'], '=', 'yes']] [0]: [1, '=', 1] [1]: AND [2]: [['bbb'], '=', 'yes'] [0]: ['bbb'] - col: 'bbb' [1]: = [2]: yes [6]: LIMIT [7]: 50 select a, b from test_table where (1=1 or 2=3) and b='yes' group by zx having b=2 order by 1 ['SELECT', [[['a']], [['b']]], 'FROM', ['test_table'], 'WHERE', [[[1, '=', 1], 'OR', [2, '=', 3]], 'AND', [['b'], '=', 'yes']], 'GROUP', 'BY', [[['zx']]], 'HAVING', [['b'], '=', 2], 'ORDER', 'BY', [[1]]] - columns: [[['a']], [['b']]] [0]: [['a']] - col: ['a'] - col: 'a' [0]: ['a'] - col: 'a' [1]: [['b']] - col: ['b'] - col: 'b' [0]: ['b'] - col: 'b' - from: [['test_table']] [0]: ['test_table'] - table: [['test_table']] [0]: ['test_table'] - group_by_terms: [[['zx']]] [0]: [['zx']] - order_key: ['zx'] - col: 'zx' [0]: ['zx'] - col: 'zx' - having_expr: [['b'], '=', 2] [0]: ['b'] - col: 'b' [1]: = [2]: 2 - order_by_terms: [[1]] [0]: [1] - order_key: 1 - where_expr: [[[1, '=', 1], 'OR', [2, '=', 3]], 'AND', [['b'], '=', 'yes']] [0]: [[1, '=', 1], 'OR', [2, '=', 3]] [0]: [1, '=', 1] [1]: OR [2]: [2, '=', 3] [1]: AND [2]: [['b'], '=', 'yes'] [0]: ['b'] - col: 'b' [1]: = [2]: yes [0]: SELECT [1]: [[['a']], [['b']]] [0]: [['a']] - col: ['a'] - col: 'a' [0]: ['a'] - col: 'a' [1]: [['b']] - col: ['b'] - col: 'b' [0]: ['b'] - col: 'b' [2]: FROM [3]: ['test_table'] - table: [['test_table']] [0]: ['test_table'] [4]: WHERE [5]: [[[1, '=', 1], 'OR', [2, '=', 3]], 'AND', [['b'], '=', 'yes']] [0]: [[1, '=', 1], 'OR', [2, '=', 3]] [0]: [1, '=', 1] [1]: OR [2]: [2, '=', 3] [1]: AND [2]: [['b'], '=', 'yes'] [0]: ['b'] - col: 'b' [1]: = [2]: yes [6]: GROUP [7]: BY [8]: [[['zx']]] [0]: [['zx']] - order_key: ['zx'] - col: 'zx' [0]: ['zx'] - col: 'zx' [9]: HAVING [10]: [['b'], '=', 2] [0]: ['b'] - col: 'b' [1]: = [2]: 2 [11]: ORDER [12]: BY [13]: [[1]] [0]: [1] - order_key: 1 SELECT emp.ename as e FROM scott.employee as emp ['SELECT', [[['emp', '.', 'ename'], 'AS', 'e']], 'FROM', ['scott', '.', 'employee'], 'AS', 'emp'] - columns: [[['emp', '.', 'ename'], 'AS', 'e']] [0]: [['emp', '.', 'ename'], 'AS', 'e'] - alias: ['e'] - col: ['emp', '.', 'ename'] - col: 'ename' - col_tab: 'emp' [0]: ['emp', '.', 'ename'] - col: 'ename' - col_tab: 'emp' [1]: AS [2]: e - from: [['scott', '.', 'employee']] [0]: ['scott', '.', 'employee'] - database: ['scott'] - table: [['employee']] [0]: ['employee'] - table_alias: ['emp'] [0]: SELECT [1]: [[['emp', '.', 'ename'], 'AS', 'e']] [0]: [['emp', '.', 'ename'], 'AS', 'e'] - alias: ['e'] - col: ['emp', '.', 'ename'] - col: 'ename' - col_tab: 'emp' [0]: ['emp', '.', 'ename'] - col: 'ename' - col_tab: 'emp' [1]: AS [2]: e [2]: FROM [3]: ['scott', '.', 'employee'] - database: ['scott'] - table: [['employee']] [0]: ['employee'] [4]: AS [5]: emp SELECT ename as e, fname as f FROM scott.employee as emp ['SELECT', [[['ename'], 'AS', 'e'], [['fname'], 'AS', 'f']], 'FROM', ['scott', '.', 'employee'], 'AS', 'emp'] - columns: [[['ename'], 'AS', 'e'], [['fname'], 'AS', 'f']] [0]: [['ename'], 'AS', 'e'] - alias: ['e'] - col: ['ename'] - col: 'ename' [0]: ['ename'] - col: 'ename' [1]: AS [2]: e [1]: [['fname'], 'AS', 'f'] - alias: ['f'] - col: ['fname'] - col: 'fname' [0]: ['fname'] - col: 'fname' [1]: AS [2]: f - from: [['scott', '.', 'employee']] [0]: ['scott', '.', 'employee'] - database: ['scott'] - table: [['employee']] [0]: ['employee'] - table_alias: ['emp'] [0]: SELECT [1]: [[['ename'], 'AS', 'e'], [['fname'], 'AS', 'f']] [0]: [['ename'], 'AS', 'e'] - alias: ['e'] - col: ['ename'] - col: 'ename' [0]: ['ename'] - col: 'ename' [1]: AS [2]: e [1]: [['fname'], 'AS', 'f'] - alias: ['f'] - col: ['fname'] - col: 'fname' [0]: ['fname'] - col: 'fname' [1]: AS [2]: f [2]: FROM [3]: ['scott', '.', 'employee'] - database: ['scott'] - table: [['employee']] [0]: ['employee'] [4]: AS [5]: emp SELECT emp.eid, fname,lname FROM scott.employee as emp ['SELECT', [[['emp', '.', 'eid']], [['fname']], [['lname']]], 'FROM', ['scott', '.', 'employee'], 'AS', 'emp'] - columns: [[['emp', '.', 'eid']], [['fname']], [['lname']]] [0]: [['emp', '.', 'eid']] - col: ['emp', '.', 'eid'] - col: 'eid' - col_tab: 'emp' [0]: ['emp', '.', 'eid'] - col: 'eid' - col_tab: 'emp' [1]: [['fname']] - col: ['fname'] - col: 'fname' [0]: ['fname'] - col: 'fname' [2]: [['lname']] - col: ['lname'] - col: 'lname' [0]: ['lname'] - col: 'lname' - from: [['scott', '.', 'employee']] [0]: ['scott', '.', 'employee'] - database: ['scott'] - table: [['employee']] [0]: ['employee'] - table_alias: ['emp'] [0]: SELECT [1]: [[['emp', '.', 'eid']], [['fname']], [['lname']]] [0]: [['emp', '.', 'eid']] - col: ['emp', '.', 'eid'] - col: 'eid' - col_tab: 'emp' [0]: ['emp', '.', 'eid'] - col: 'eid' - col_tab: 'emp' [1]: [['fname']] - col: ['fname'] - col: 'fname' [0]: ['fname'] - col: 'fname' [2]: [['lname']] - col: ['lname'] - col: 'lname' [0]: ['lname'] - col: 'lname' [2]: FROM [3]: ['scott', '.', 'employee'] - database: ['scott'] - table: [['employee']] [0]: ['employee'] [4]: AS [5]: emp SELECT ename, lname, emp.eid FROM scott.employee as emp ['SELECT', [[['ename']], [['lname']], [['emp', '.', 'eid']]], 'FROM', ['scott', '.', 'employee'], 'AS', 'emp'] - columns: [[['ename']], [['lname']], [['emp', '.', 'eid']]] [0]: [['ename']] - col: ['ename'] - col: 'ename' [0]: ['ename'] - col: 'ename' [1]: [['lname']] - col: ['lname'] - col: 'lname' [0]: ['lname'] - col: 'lname' [2]: [['emp', '.', 'eid']] - col: ['emp', '.', 'eid'] - col: 'eid' - col_tab: 'emp' [0]: ['emp', '.', 'eid'] - col: 'eid' - col_tab: 'emp' - from: [['scott', '.', 'employee']] [0]: ['scott', '.', 'employee'] - database: ['scott'] - table: [['employee']] [0]: ['employee'] - table_alias: ['emp'] [0]: SELECT [1]: [[['ename']], [['lname']], [['emp', '.', 'eid']]] [0]: [['ename']] - col: ['ename'] - col: 'ename' [0]: ['ename'] - col: 'ename' [1]: [['lname']] - col: ['lname'] - col: 'lname' [0]: ['lname'] - col: 'lname' [2]: [['emp', '.', 'eid']] - col: ['emp', '.', 'eid'] - col: 'eid' - col_tab: 'emp' [0]: ['emp', '.', 'eid'] - col: 'eid' - col_tab: 'emp' [2]: FROM [3]: ['scott', '.', 'employee'] - database: ['scott'] - table: [['employee']] [0]: ['employee'] [4]: AS [5]: emp select emp.salary * (1.0 + emp.bonus) as salary_plus_bonus from scott.employee as emp ['SELECT', [[[['emp', '.', 'salary'], '*', [1.0, '+', ['emp', '.', 'bonus']]], 'AS', 'salary_plus_bonus']], 'FROM', ['scott', '.', 'employee'], 'AS', 'emp'] - columns: [[[['emp', '.', 'salary'], '*', [1.0, '+', ['emp', '.', 'bonus']]], 'AS', 'salary_plus_bonus']] [0]: [[['emp', '.', 'salary'], '*', [1.0, '+', ['emp', '.', 'bonus']]], 'AS', 'salary_plus_bonus'] - alias: ['salary_plus_bonus'] - col: [['emp', '.', 'salary'], '*', [1.0, '+', ['emp', '.', 'bonus']]] [0]: ['emp', '.', 'salary'] - col: 'salary' - col_tab: 'emp' [1]: * [2]: [1.0, '+', ['emp', '.', 'bonus']] [0]: 1.0 [1]: + [2]: ['emp', '.', 'bonus'] - col: 'bonus' - col_tab: 'emp' [0]: [['emp', '.', 'salary'], '*', [1.0, '+', ['emp', '.', 'bonus']]] [0]: ['emp', '.', 'salary'] - col: 'salary' - col_tab: 'emp' [1]: * [2]: [1.0, '+', ['emp', '.', 'bonus']] [0]: 1.0 [1]: + [2]: ['emp', '.', 'bonus'] - col: 'bonus' - col_tab: 'emp' [1]: AS [2]: salary_plus_bonus - from: [['scott', '.', 'employee']] [0]: ['scott', '.', 'employee'] - database: ['scott'] - table: [['employee']] [0]: ['employee'] - table_alias: ['emp'] [0]: SELECT [1]: [[[['emp', '.', 'salary'], '*', [1.0, '+', ['emp', '.', 'bonus']]], 'AS', 'salary_plus_bonus']] [0]: [[['emp', '.', 'salary'], '*', [1.0, '+', ['emp', '.', 'bonus']]], 'AS', 'salary_plus_bonus'] - alias: ['salary_plus_bonus'] - col: [['emp', '.', 'salary'], '*', [1.0, '+', ['emp', '.', 'bonus']]] [0]: ['emp', '.', 'salary'] - col: 'salary' - col_tab: 'emp' [1]: * [2]: [1.0, '+', ['emp', '.', 'bonus']] [0]: 1.0 [1]: + [2]: ['emp', '.', 'bonus'] - col: 'bonus' - col_tab: 'emp' [0]: [['emp', '.', 'salary'], '*', [1.0, '+', ['emp', '.', 'bonus']]] [0]: ['emp', '.', 'salary'] - col: 'salary' - col_tab: 'emp' [1]: * [2]: [1.0, '+', ['emp', '.', 'bonus']] [0]: 1.0 [1]: + [2]: ['emp', '.', 'bonus'] - col: 'bonus' - col_tab: 'emp' [1]: AS [2]: salary_plus_bonus [2]: FROM [3]: ['scott', '.', 'employee'] - database: ['scott'] - table: [['employee']] [0]: ['employee'] [4]: AS [5]: emp SELECT * FROM abcd WHERE (ST_Overlaps("GEOM", 'POINT(0 0)')) ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', 'st_overlaps', ['GEOM'], 'POINT(0 0)'] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: 'st_overlaps' [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: st_overlaps [6]: ['GEOM'] - col: 'GEOM' [7]: POINT(0 0) SELECT * FROM abcd WHERE CAST(foo AS REAL) > -999.123 ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', ['CAST', ['foo'], 'AS', 'REAL', '>', ['-', 999.123]]] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: ['CAST', ['foo'], 'AS', 'REAL', '>', ['-', 999.123]] [0]: CAST [1]: ['foo'] - col: 'foo' [2]: AS [3]: REAL [4]: > [5]: ['-', 999.123] [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: ['CAST', ['foo'], 'AS', 'REAL', '>', ['-', 999.123]] [0]: CAST [1]: ['foo'] - col: 'foo' [2]: AS [3]: REAL [4]: > [5]: ['-', 999.123] SELECT * FROM abcd WHERE bar BETWEEN +180 AND +10E9 ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', [['bar'], 'BETWEEN', ['+', 180], 'AND', ['+', 10000000000.0]]] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: [['bar'], 'BETWEEN', ['+', 180], 'AND', ['+', 10000000000.0]] [0]: ['bar'] - col: 'bar' [1]: BETWEEN [2]: ['+', 180] [3]: AND [4]: ['+', 10000000000.0] [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: [['bar'], 'BETWEEN', ['+', 180], 'AND', ['+', 10000000000.0]] [0]: ['bar'] - col: 'bar' [1]: BETWEEN [2]: ['+', 180] [3]: AND [4]: ['+', 10000000000.0] SELECT * FROM abcd WHERE CAST(foo AS REAL) < (4 + -9.876E-4) ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', ['CAST', ['foo'], 'AS', 'REAL', '<', [4, '+', ['-', 0.0009876]]]] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: ['CAST', ['foo'], 'AS', 'REAL', '<', [4, '+', ['-', 0.0009876]]] [0]: CAST [1]: ['foo'] - col: 'foo' [2]: AS [3]: REAL [4]: < [5]: [4, '+', ['-', 0.0009876]] [0]: 4 [1]: + [2]: ['-', 0.0009876] [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: ['CAST', ['foo'], 'AS', 'REAL', '<', [4, '+', ['-', 0.0009876]]] [0]: CAST [1]: ['foo'] - col: 'foo' [2]: AS [3]: REAL [4]: < [5]: [4, '+', ['-', 0.0009876]] [0]: 4 [1]: + [2]: ['-', 0.0009876] SELECT SomeFunc(99) ['SELECT', [['somefunc', 99]]] - columns: [['somefunc', 99]] [0]: ['somefunc', 99] - col: 'somefunc' [0]: SELECT [1]: [['somefunc', 99]] [0]: ['somefunc', 99] - col: 'somefunc' SELECT * FROM abcd WHERE ST_X(ST_Centroid(geom)) BETWEEN (-180*2) AND (180*2) ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', ['st_x', 'st_centroid', ['geom'], 'BETWEEN', [['-', 180], '*', 2], 'AND', [180, '*', 2]]] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: ['st_x', 'st_centroid', ['geom'], 'BETWEEN', [['-', 180], '*', 2], 'AND', [180, '*', 2]] [0]: st_x [1]: st_centroid [2]: ['geom'] - col: 'geom' [3]: BETWEEN [4]: [['-', 180], '*', 2] [0]: ['-', 180] [1]: * [2]: 2 [5]: AND [6]: [180, '*', 2] [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: ['st_x', 'st_centroid', ['geom'], 'BETWEEN', [['-', 180], '*', 2], 'AND', [180, '*', 2]] [0]: st_x [1]: st_centroid [2]: ['geom'] - col: 'geom' [3]: BETWEEN [4]: [['-', 180], '*', 2] [0]: ['-', 180] [1]: * [2]: 2 [5]: AND [6]: [180, '*', 2] SELECT * FROM abcd WHERE a ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', ['a']] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: ['a'] - col: 'a' [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: ['a'] - col: 'a' SELECT * FROM abcd WHERE snowy_things REGEXP '[⛄️☃️☃🎿🏂🌨❄️⛷🏔🗻❄︎❆❅]' ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', [['snowy_things'], 'REGEXP', '[⛄️☃️☃🎿🏂🌨❄️⛷🏔🗻❄︎❆❅]']] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: [['snowy_things'], 'REGEXP', '[⛄️☃️☃🎿🏂🌨❄️⛷🏔🗻❄︎❆❅]'] [0]: ['snowy_things'] - col: 'snowy_things' [1]: REGEXP [2]: [⛄️☃️☃🎿🏂🌨❄️⛷🏔🗻❄︎❆❅] [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: [['snowy_things'], 'REGEXP', '[⛄️☃️☃🎿🏂🌨❄️⛷🏔🗻❄︎❆❅]'] [0]: ['snowy_things'] - col: 'snowy_things' [1]: REGEXP [2]: [⛄️☃️☃🎿🏂🌨❄️⛷🏔🗻❄︎❆❅] SELECT * FROM abcd WHERE a."b" IN 4 ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', [['a', '.', 'b'], 'IN', 4]] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: [['a', '.', 'b'], 'IN', 4] [0]: ['a', '.', 'b'] - col: 'b' - col_tab: 'a' [1]: IN [2]: 4 [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: [['a', '.', 'b'], 'IN', 4] [0]: ['a', '.', 'b'] - col: 'b' - col_tab: 'a' [1]: IN [2]: 4 SELECT * FROM abcd WHERE a."b" In ('4') ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', [['a', '.', 'b'], 'IN', '4']] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: [['a', '.', 'b'], 'IN', '4'] [0]: ['a', '.', 'b'] - col: 'b' - col_tab: 'a' [1]: IN [2]: 4 [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: [['a', '.', 'b'], 'IN', '4'] [0]: ['a', '.', 'b'] - col: 'b' - col_tab: 'a' [1]: IN [2]: 4 SELECT * FROM "a".b AS "E" WHERE "E"."C" >= CURRENT_Time ['SELECT', [['*']], 'FROM', ['a', '.', 'b'], 'AS', 'E', 'WHERE', [['E', '.', 'C'], '>=', 'CURRENT_TIME']] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['a', '.', 'b']] [0]: ['a', '.', 'b'] - database: ['a'] - table: [['b']] [0]: ['b'] - table_alias: ['E'] - where_expr: [['E', '.', 'C'], '>=', 'CURRENT_TIME'] [0]: ['E', '.', 'C'] - col: 'C' - col_tab: 'E' [1]: >= [2]: CURRENT_TIME [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['a', '.', 'b'] - database: ['a'] - table: [['b']] [0]: ['b'] [4]: AS [5]: E [6]: WHERE [7]: [['E', '.', 'C'], '>=', 'CURRENT_TIME'] [0]: ['E', '.', 'C'] - col: 'C' - col_tab: 'E' [1]: >= [2]: CURRENT_TIME SELECT * FROM abcd WHERE "dave" != "Dave" -- names & things ☃️ ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', [['dave'], '!=', ['Dave']]] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: [['dave'], '!=', ['Dave']] [0]: ['dave'] - col: 'dave' [1]: != [2]: ['Dave'] - col: 'Dave' [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: [['dave'], '!=', ['Dave']] [0]: ['dave'] - col: 'dave' [1]: != [2]: ['Dave'] - col: 'Dave' SELECT * FROM a WHERE a.dave is not null ['SELECT', [['*']], 'FROM', ['a'], 'WHERE', [['a', '.', 'dave'], 'IS', ['NOT', 'NULL']]] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['a']] [0]: ['a'] - table: [['a']] [0]: ['a'] - where_expr: [['a', '.', 'dave'], 'IS', ['NOT', 'NULL']] [0]: ['a', '.', 'dave'] - col: 'dave' - col_tab: 'a' [1]: IS [2]: ['NOT', 'NULL'] [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['a'] - table: [['a']] [0]: ['a'] [4]: WHERE [5]: [['a', '.', 'dave'], 'IS', ['NOT', 'NULL']] [0]: ['a', '.', 'dave'] - col: 'dave' - col_tab: 'a' [1]: IS [2]: ['NOT', 'NULL'] SELECT * FROM abcd WHERE pete == FALSE or peter is true ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', [[['pete'], '==', 'FALSE'], 'OR', [['peter'], 'IS', 'TRUE']]] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: [[['pete'], '==', 'FALSE'], 'OR', [['peter'], 'IS', 'TRUE']] [0]: [['pete'], '==', 'FALSE'] [0]: ['pete'] - col: 'pete' [1]: == [2]: FALSE [1]: OR [2]: [['peter'], 'IS', 'TRUE'] [0]: ['peter'] - col: 'peter' [1]: IS [2]: TRUE [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: [[['pete'], '==', 'FALSE'], 'OR', [['peter'], 'IS', 'TRUE']] [0]: [['pete'], '==', 'FALSE'] [0]: ['pete'] - col: 'pete' [1]: == [2]: FALSE [1]: OR [2]: [['peter'], 'IS', 'TRUE'] [0]: ['peter'] - col: 'peter' [1]: IS [2]: TRUE SELECT * FROM abcd WHERE a >= 10 * (2 + 3) ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', [['a'], '>=', [10, '*', [2, '+', 3]]]] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: [['a'], '>=', [10, '*', [2, '+', 3]]] [0]: ['a'] - col: 'a' [1]: >= [2]: [10, '*', [2, '+', 3]] [0]: 10 [1]: * [2]: [2, '+', 3] [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: [['a'], '>=', [10, '*', [2, '+', 3]]] [0]: ['a'] - col: 'a' [1]: >= [2]: [10, '*', [2, '+', 3]] [0]: 10 [1]: * [2]: [2, '+', 3] SELECT * FROM abcd WHERE frank = 'is ''scary''' ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', [['frank'], '=', "is 'scary'"]] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: [['frank'], '=', "is 'scary'"] [0]: ['frank'] - col: 'frank' [1]: = [2]: is 'scary' [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: [['frank'], '=', "is 'scary'"] [0]: ['frank'] - col: 'frank' [1]: = [2]: is 'scary' SELECT * FROM abcd WHERE "identifier with ""quotes"" and a trailing space " IS NOT FALSE ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', [['identifier with "quotes" and a trailing space '], 'IS', ['NOT', 'FALSE']]] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: [['identifier with "quotes" and a trailing space '], 'IS', ['NOT', 'FALSE']] [0]: ['identifier with "quotes" and a trailing space '] - col: 'identifier with "quotes" and a trailing space ' [1]: IS [2]: ['NOT', 'FALSE'] [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: [['identifier with "quotes" and a trailing space '], 'IS', ['NOT', 'FALSE']] [0]: ['identifier with "quotes" and a trailing space '] - col: 'identifier with "quotes" and a trailing space ' [1]: IS [2]: ['NOT', 'FALSE'] . SELECT * FROM abcd WHERE blobby == x'C0FFEE' -- hex ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', [['blobby'], '==', "x'C0FFEE'"]] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: [['blobby'], '==', "x'C0FFEE'"] [0]: ['blobby'] - col: 'blobby' [1]: == [2]: x'C0FFEE' [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: [['blobby'], '==', "x'C0FFEE'"] [0]: ['blobby'] - col: 'blobby' [1]: == [2]: x'C0FFEE' SELECT * FROM abcd WHERE ff NOT IN (1,2,4,5) ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', [['ff'], ['NOT', 'IN'], [1, 2, 4, 5]]] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: [['ff'], ['NOT', 'IN'], [1, 2, 4, 5]] [0]: ['ff'] - col: 'ff' [1]: ['NOT', 'IN'] [2]: [1, 2, 4, 5] [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: [['ff'], ['NOT', 'IN'], [1, 2, 4, 5]] [0]: ['ff'] - col: 'ff' [1]: ['NOT', 'IN'] [2]: [1, 2, 4, 5] SELECT * FROM abcd WHERE ff not between 3 and 9 ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', [['ff'], ['NOT', 'BETWEEN'], 3, 'AND', 9]] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: [['ff'], ['NOT', 'BETWEEN'], 3, 'AND', 9] [0]: ['ff'] - col: 'ff' [1]: ['NOT', 'BETWEEN'] [2]: 3 [3]: AND [4]: 9 [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: [['ff'], ['NOT', 'BETWEEN'], 3, 'AND', 9] [0]: ['ff'] - col: 'ff' [1]: ['NOT', 'BETWEEN'] [2]: 3 [3]: AND [4]: 9 SELECT * FROM abcd WHERE ff not like 'bob%' ['SELECT', [['*']], 'FROM', ['abcd'], 'WHERE', [['ff'], ['NOT', 'LIKE'], 'bob%']] - columns: [['*']] [0]: ['*'] - col: '*' - from: [['abcd']] [0]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] - where_expr: [['ff'], ['NOT', 'LIKE'], 'bob%'] [0]: ['ff'] - col: 'ff' [1]: ['NOT', 'LIKE'] [2]: bob% [0]: SELECT [1]: [['*']] [0]: ['*'] - col: '*' [2]: FROM [3]: ['abcd'] - table: [['abcd']] [0]: ['abcd'] [4]: WHERE [5]: [['ff'], ['NOT', 'LIKE'], 'bob%'] [0]: ['ff'] - col: 'ff' [1]: ['NOT', 'LIKE'] [2]: bob% OK (snicker "abc" (#03# |YWJj|)) [['snicker', 'abc', [b'abc']]] (certificate (issuer (name (public-key rsa-with-md5 (e 15 |NFGq/E3wh9f4rJIQVXhS|) (n |d738/4ghP9rFZ0gAIYZ5q9y6iskDJwASi5rEQpEQq8ZyMZeIZzIAR2I5iGE=|)) aid-committee)) (subject (ref (public-key rsa-with-md5 (e |NFGq/E3wh9f4rJIQVXhS|) (n |d738/4ghP9rFZ0gAIYZ5q9y6iskDJwASi5rEQpEQq8ZyMZeIZzIAR2I5iGE=|)) tom mother)) (not-before "1997-01-01_09:00:00") (not-after "1998-01-01_09:00:00") (tag (spend (account "12345678") (* numeric range "1" "1000")))) [['certificate', ['issuer', ['name', ['public-key', 'rsa-with-md5', ['e', b'4Q\xaa\xfcM\xf0\x87\xd7\xf8\xac\x92\x10UxR'], ['n', b"w\xbd\xfc\xff\x88!?\xda\xc5gH\x00!\x86y\xab\xdc\xba\x8a\xc9\x03'\x00\x12\x8b\x9a\xc4B\x91\x10\xab\xc6r1\x97\x88g2\x00Gb9\x88a"]], 'aid-committee']], ['subject', ['ref', ['public-key', 'rsa-with-md5', ['e', b'4Q\xaa\xfcM\xf0\x87\xd7\xf8\xac\x92\x10UxR'], ['n', b"w\xbd\xfc\xff\x88!?\xda\xc5gH\x00!\x86y\xab\xdc\xba\x8a\xc9\x03'\x00\x12\x8b\x9a\xc4B\x91\x10\xab\xc6r1\x97\x88g2\x00Gb9\x88a"]], 'tom', 'mother']], ['not-before', '1997-01-01_09:00:00'], ['not-after', '1998-01-01_09:00:00'], ['tag', ['spend', ['account', '12345678'], ['*', 'numeric', 'range', '1', '1000']]]]] (lambda (x) (* x x)) [['lambda', ['x'], ['*', 'x', 'x']]] (def length (lambda (x) (cond ((not x) 0) ( t (+ 1 (length (cdr x)))) ) ) ) [['def', 'length', ['lambda', ['x'], ['cond', [['not', 'x'], 0], ['t', ['+', 1, ['length', ['cdr', 'x']]]]]]]] (2:XX "abc" (#03# |YWJj|)) [['XX', 'abc', [b'abc']]] (if (is (window_name) "XMMS") (set_workspace 2)) [['if', ['is', ['window_name'], 'XMMS'], ['set_workspace', 2]]] (if (and (is (application_name) "Firefox") (or (contains (window_name) "Enter name of file to save to") (contains (window_name) "Save As") (contains (window_name) "Save Image") () ) ) (geometry "+140+122") ) [['if', ['and', ['is', ['application_name'], 'Firefox'], ['or', ['contains', ['window_name'], 'Enter name of file to save to'], ['contains', ['window_name'], 'Save As'], ['contains', ['window_name'], 'Save Image'], []]], ['geometry', '+140+122']]] (defun factorial (x) (if (zerop x) 1 (* x (factorial (- x 1))))) [['defun', 'factorial', ['x'], ['if', ['zerop', 'x'], 1, ['*', 'x', ['factorial', ['-', 'x', 1]]]]]] (2:XX "abc" (#03# |YWJj|)) [['XX', 'abc', [b'abc']]] ...... (3:XX "abc" (#03# |YWJj|)) (3:XX "abc" (#03# |YWJj|)) ^ ParseFatalException: invalid data of length 2, expected 3, found '3' (at char 1), (line:1, col:2) pyparsing.core.Forward - Forward: {{[[ {Re:('[+-]?\d+\.\d*([eE][+-]?\d+)?') | Group:({[Re:('-?0|[1-9]\d*') | {'#' {W:(0-9A-Fa-f)}... '#'}] | {W:(+/-9=A-Za-z)}... |}) | Group:({Re:('-?0|[1-9]\d*') : W:(!-~)}) | Re:('-?0|[1-9]\d*') | W:(!*+--:<->A-Z_a-z) | {'#' {W:(0-9A-Fa-f)}... '#'} | Group:({[Re:('-?0|[1-9]\d*')] string enclosed in double quotes})} ]] {Re:('[+-]?\d+\.\d*([eE][+-]?\d+)?') | Group:({[Re:('-?0|[1-9]\d*') | {'#' {W:(0-9A-Fa-f)}... '#'}] | {W:(+/-9=A-Za-z)}... |}) | Group:({Re:('-?0|[1-9]\d*') : W:(!-~)}) | Re:('-?0|[1-9]\d*') | W:(!*+--:<->A-Z_a-z) | {'#' {W:(0-9A-Fa-f)}... '#'} | Group:({[Re:('-?0|[1-9]\d*')] string enclosed in double quotes})}} | Group:({{( [: ...]...} )})} pyparsing.core.MatchFirst - {{[[ {Re:('[+-]?\d+\.\d*([eE][+-]?\d+)?') | Group:({[Re:('-?0|[1-9]\d*') | {'#' {W:(0-9A-Fa-f)}... '#'}] | {W:(+/-9=A-Za-z)}... |}) | Group:({Re:('-?0|[1-9]\d*') : W:(!-~)}) | Re:('-?0|[1-9]\d*') | W:(!*+--:<->A-Z_a-z) | {'#' {W:(0-9A-Fa-f)}... '#'} | Group:({[Re:('-?0|[1-9]\d*')] string enclosed in double quotes})} ]] {Re:('[+-]?\d+\.\d*([eE][+-]?\d+)?') | Group:({[Re:('-?0|[1-9]\d*') | {'#' {W:(0-9A-Fa-f)}... '#'}] | {W:(+/-9=A-Za-z)}... |}) | Group:({Re:('-?0|[1-9]\d*') : W:(!-~)}) | Re:('-?0|[1-9]\d*') | W:(!*+--:<->A-Z_a-z) | {'#' {W:(0-9A-Fa-f)}... '#'} | Group:({[Re:('-?0|[1-9]\d*')] string enclosed in double quotes})}} | Group:({{( [: ...]...} )})} FAIL: invalid data of length 2, expected 3, found '3' (at char 1), (line:1, col:2) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 5226, in parseImpl return super().parseImpl(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4375, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ (and (or (> uid 1000) (!= gid 20) ) (> quota 5.0e+03) ) [['and', ['or', ['>', 'uid', 1000], ['!=', 'gid', 20]], ['>', 'quota', 5000.0]]] 1..4 ok 1 - Input file opened not ok 2 - First line of the input valid ok 3 - Read the rest of the file not ok 4 - Summarized correctly # TODO Not written yet PASSED: [1,3] FAILED: [2,4] SKIPPED: [] TODO: [4] BONUS: [] FAILED ok 1 not ok 2 some description # TODO with a directive ok 3 a description only, no directive ok 4 # TODO directive only ok a description only, no directive ok # Skipped only a directive, no description ok PASSED: [1,3,4,5,6,7] FAILED: [2] SKIPPED: [6] TODO: [2,4] BONUS: [4] PASSED ok - created Board ok ok not ok ok ok ok ok # +------+------+------+------+ # | |16G | |05C | # | |G N C | |C C G | # | | G | | C +| # +------+------+------+------+ # |10C |01G | |03C | # |R N G |G A G | |C C C | # | R | G | | C +| # +------+------+------+------+ # | |01G |17C |00C | # | |G A G |G N R |R N R | # | | G | R | G | # +------+------+------+------+ ok - board has 7 tiles + starter tile 1..9 PASSED: [1,2,3,5,6,7,8,9] FAILED: [4] SKIPPED: [] TODO: [] BONUS: [] FAILED 1..4 ok 1 - Creating test program ok 2 - Test program runs, no error not ok 3 - infinite loop # TODO halting problem unsolved not ok 4 - infinite loop 2 # TODO halting problem unsolved PASSED: [1,2] FAILED: [3,4] SKIPPED: [] TODO: [3,4] BONUS: [] PASSED 1..20 ok - database handle not ok - failed database login Bail out! Couldn't connect to database. PASSED: [1] FAILED: [2] SKIPPED: [3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20] TODO: [] BONUS: [] FAILED ok 1 - retrieving servers from the database # need to ping 6 servers ok 2 - pinged diamond ok 3 - pinged ruby not ok 4 - pinged sapphire ok 5 - pinged onyx not ok 6 - pinged quartz ok 7 - pinged gold 1..7 PASSED: [1,2,3,5,7] FAILED: [4,6] SKIPPED: [] TODO: [] BONUS: [] FAILED Match colors, converting to consistent case - ZeroOrMore([{'RED' | 'GREEN' | 'BLUE'}]...) ['RED', 'GREEN', 'BLUE', 'BLUE', 'GREEN', 'GREEN', 'RED'] Parsing real numbers - fail, parsed numbers are in pieces - ZeroOrMore([{W:(0-9) '.' W:(0-9)}]...) ['1', '.', '2', '2', '.', '3', '3', '.', '1416', '98', '.', '6'] Parsing real numbers - better, use Combine to combine multiple tokens into one - ZeroOrMore([Combine:({W:(0-9) '.' W:(0-9)})]...) ['1.2', '2.3', '3.1416', '98.6'] A comma-delimited list of words - And(W:(A-Za-z) [, W:(A-Za-z)]...) ['this', 'that', 'blah', 'foo', 'bar'] A counted array of words - ZeroOrMore([Group:((len) W:(ab)...)]...) [['aaa', 'bbb'], [], ['abab', 'bbaa', 'abbab']] [0]: ['aaa', 'bbb'] [1]: [] [2]: ['abab', 'bbaa', 'abbab'] skipping comments with ignore - And({identifier '=' fnumber}) ['abc_100', '=', 3.1416] - lhs: 'abc_100' - rhs: 3.1416 some pre-defined expressions in pyparsing_common, and building a dotted identifier with delimted_list - And({number identifier [. identifier]... IPv4 address}) [1001, 'www.google.com', '192.168.10.199'] - id_num: 1001 - ip_address: '192.168.10.199' - name: 'www.google.com' using one_of (shortcut for Literal('a') | Literal('b') | Literal('c')) - ZeroOrMore([a | b | c]...) ['a', 'b', 'a', 'b', 'b', 'a', 'c', 'c', 'a', 'b', 'b'] parsing nested parentheses - Forward(nested () expression) [['a', 'b', ['c'], 'd', ['e', 'f', 'g', []]]] [0]: ['a', 'b', ['c'], 'd', ['e', 'f', 'g', []]] [0]: a [1]: b [2]: ['c'] [3]: d [4]: ['e', 'f', 'g', []] [0]: e [1]: f [2]: g [3]: [] parsing nested braces - And({'if' nested () expression nested {} expression}) ['if', [['x', '==', 'y'], '||', '!z'], ['printf(', '"{}"', ');']] - body: [['printf(', '"{}"', ');']] [0]: ['printf(', '"{}"', ');'] - condition: [[['x', '==', 'y'], '||', '!z']] [0]: [['x', '==', 'y'], '||', '!z'] [0]: ['x', '==', 'y'] [1]: || [2]: !z [0]: if [1]: [['x', '==', 'y'], '||', '!z'] [0]: ['x', '==', 'y'] [1]: || [2]: !z [2]: ['printf(', '"{}"', ');'] Define multiple results names in groups - ZeroOrMore([Group:({W:(A-Za-z) Suppress:('=') number})]...) .............[['range', 5280], ['long', -138.52], ['lat', 46.91]] [0]: ['range', 5280] - key: 'range' - value: 5280 [1]: ['long', -138.52] - key: 'long' - value: -138.52 [2]: ['lat', 46.91] - key: 'lat' - value: 46.91 Define multiple results names in groups - use Dict to define results names using parsed keys - Dict(Dict:([Group:({W:(A-Za-z) Suppress:('=') number})]...)) [['range', 5280], ['long', -138.52], ['lat', 46.91]] - lat: 46.91 - long: -138.52 - range: 5280 [0]: ['range', 5280] [1]: ['long', -138.52] [2]: ['lat', 46.91] Define multiple value types - Dict(Dict:([Group:({W:(A-Za-z) Suppress:('=') {real number with scientific notation | real number | signed integer | True | False | string enclosed in "'"}})]...)) [['long', -122.47], ['lat', 37.82], ['public', 'True'], ['name', 'Golden Gate Bridge']] - lat: 37.82 - long: -122.47 - name: 'Golden Gate Bridge' - public: 'True' [0]: ['long', -122.47] [1]: ['lat', 37.82] [2]: ['public', 'True'] [3]: ['name', 'Golden Gate Bridge'] Simple match - Literal('xyz') ['xyz'] Simple match after skipping whitespace - Literal('xyz') ['xyz'] Simple fail - parse an empty string - Literal('xyz') ^ ParseException: Expected 'xyz' (at char 0), (line:1, col:1) tests.test_simple_unit.TestLiteral pyparsing.core.Literal - 'xyz' Simple fail - parse a mismatching string - Literal('xyz') xyu ^ ParseException: Expected 'xyz', found 'xyu' (at char 0), (line:1, col:1) tests.test_simple_unit.TestLiteral pyparsing.core.Literal - 'xyz' Simple fail - parse a partially matching string - Literal('xyz') xy ^ ParseException: Expected 'xyz', found 'xy' (at char 0), (line:1, col:1) tests.test_simple_unit.TestLiteral pyparsing.core.Literal - 'xyz' Fail - parse a partially matching string by matching individual letters - And({'x' 'y' 'z'}) xy ^ ParseException: Expected 'z', found end of text (at char 2), (line:1, col:3) tests.test_simple_unit.TestLiteral pyparsing.core.And - {'x' 'y' 'z'} pyparsing.core._SingleCharLiteral - 'z' Parsing real numbers - use parse action to convert to float at parse time - ZeroOrMore([Combine:({W:(0-9) '.' W:(0-9)})]...) [1.2, 2.3, 3.1416, 98.6] Match with numeric string converted to int - _WordRegex(W:(0-9)) [12345] Use two parse actions to convert numeric string, then convert to datetime - _WordRegex(W:(0-9)) [datetime.datetime(2018, 9, 20, 3, 53, 48)] Use tokenMap for parse actions that operate on a single-length token - _WordRegex(W:(0-9)) [datetime.datetime(2018, 9, 20, 3, 53, 48)] Using a built-in function that takes a sequence of strs as a parse action - ZeroOrMore([W:(0-9A-Fa-f){2}]...) ['0A:4B:73:21:FE:76'] Using a built-in function that takes a sequence of strs as a parse action - ZeroOrMore([W:(0-9A-Fa-f){2}]...) ['0A', '21', '4B', '73', '76', 'FE'] Define a condition to only match numeric values that are multiples of 7 - ZeroOrMore([W:(0-9)]...) ['14', '35', '77'] Separate conversion to int and condition into separate parse action/conditions - ZeroOrMore([W:(0-9)]...) [14, 35, 77] Parsing real numbers - using Regex instead of Combine - ZeroOrMore([Re:('\d+\.\d+')]...) [1.2, 2.3, 3.1416, 98.6] Match several words - ZeroOrMore([{W:(x) | W:(y)}]...) ['xx', 'y', 'xx', 'yy', 'xx', 'y', 'x', 'y', 'xxx', 'y'] Match several words, skipping whitespace - ZeroOrMore([{W:(x) | W:(y)}]...) ['x', 'x', 'y', 'xx', 'y', 'y', 'xx', 'y', 'x', 'y', 'x', 'xx', 'y'] Match several words, skipping whitespace (old style) - OneOrMore({{W:(x) | W:(y)}}...) ['x', 'x', 'y', 'xx', 'y', 'y', 'xx', 'y', 'x', 'y', 'x', 'xx', 'y'] Match words and numbers - show use of results names to collect types of tokens - ZeroOrMore([{W:(A-Za-z) | integer}]...) ['sdlfj', 23084, 'ksdfs', 8234, 'kjsdlfkjd', 934] - alpha: ['sdlfj', 'ksdfs', 'kjsdlfkjd'] - int: [23084, 8234, 934] Using delimited_list (comma is the default delimiter) - And(W:(A-Za-z) [, W:(A-Za-z)]...) ['xxyx', 'xy', 'y', 'xxyx', 'yxx', 'xy'] Using delimited_list (comma is the default delimiter) with trailing delimiter - And(W:(A-Za-z) [, W:(A-Za-z)]... [,]) ['xxyx', 'xy', 'y', 'xxyx', 'yxx', 'xy'] Using delimited_list (comma is the default delimiter) with minimum size - And(W:(A-Za-z) [, W:(A-Za-z)]...) xxyx,xy ^ ParseException: Expected ',', found end of text (at char 7), (line:1, col:8) tests.test_simple_unit.TestRepetition pyparsing.core.And - W:(A-Za-z) [, W:(A-Za-z)]... pyparsing.core.Suppress - Suppress:(',') pyparsing.core._SingleCharLiteral - ',' Using delimited_list (comma is the default delimiter) with maximum size - And(W:(A-Za-z) [, W:(A-Za-z)]...) ['xxyx', 'xy', 'y'] Using delimited_list, with ':' delimiter - Combine(W:(0-9A-Fa-f){2} [: W:(0-9A-Fa-f){2}]...) ['0A:4B:73:21:FE:76'] Using delimited_list, with ':' delimiter - Combine(W:(0-9A-Fa-f){2} [: W:(0-9A-Fa-f){2}]... [:]) ['0A:4B:73:21:FE:76:'] A parse action that adds new key-values - ZeroOrMore([integer]...) [27, 1, 14, 22, 89] - ave: 30.6 - max: 89 - min: 1 - sum: 153 Match with results name - Literal('xyz') ['xyz'] - value: 'xyz' Match with results name - using naming short-cut - Literal('xyz') ['xyz'] - value: 'xyz' Define multiple results names - And({W:(A-Za-z, 0-9A-Za-z) '=' integer}) ['range', '=', 5280] - key: 'range' - value: 5280 Use transformString to convert simple markup to HTML - And({* | _ | / '(' !W:()) ')'}) Show in bold, underscore, or italic type The word foo - Literal('foo') ['foo'] The word foo - Literal('foo') foo ^ ParseException: Expected 'foo', found ' ' (at char 0), (line:1, col:1) tests.test_simple_unit.TestWhitespaceMethods pyparsing.core.Literal - 'foo' The word foo - Literal('foo') ['foo'] The word foo - Literal('foo') ['foo'] If we recursively leave whitespace on the parent, this whitespace-dependent grammar will succeed, even if the children themselves skip whitespace - And({' foo' ' bar'}) [' foo', ' bar'] If we recursively ignore whitespace in our parsing, this whitespace-dependent grammar will fail, even if the children themselves keep whitespace - And({' foo' ' bar'}) foo bar ^ ParseException: Expected ' foo', found 'foo' (at char 1), (line:1, col:2) tests.test_simple_unit.TestWhitespaceMethods pyparsing.core.And - {' foo' ' bar'} pyparsing.core.Literal - ' foo' If we leave whitespace on the parent, but it isn't recursive, this whitespace-dependent grammar will fail - And({' foo' ' bar'}) foo bar ^ ParseException: Expected ' bar', found 'bar' (at char 5), (line:1, col:6) tests.test_simple_unit.TestWhitespaceMethods pyparsing.core.And - {' foo' ' bar'} pyparsing.core.Literal - ' bar' If we recursively leave whitespace on the parent, this whitespace-dependent grammar will succeed, even if the children themselves skip whitespace - Opt([' foo']) [' foo'] If we ignore whitespace on the parent, but it isn't recursive, parsing will fail because we skip to the first character 'f' before the internal expr can see it - Opt([' foo']) [] Simple Word match - _WordRegex(W:(xy)) ['xxyxxyy'] Simple Word match of two separate Words - And({W:(x) W:(y)}) ['xxxxx', 'yy'] Simple Word match of two separate Words - implicitly skips whitespace - And({W:(x) W:(y)}) ['xxxxx', 'yy'] Beginning test of pyparsing, version 3.0.9 05 May 2022 07:02 UTC Python version 3.11.4 (main, Jun 20 2023, 05:00:00) [GCC 12.2.1 20230424 (ALT Sisyphus 12.2.1-alt3)] __version_info__ : pyparsing 3.0.9 / 05 May 2022 07:02 UTC __version_info__ repr: pyparsing.version_info(major=3, minor=0, micro=9, releaselevel='final', serial=0) ([], '') should be False -> PASS (['d'], '') should be True -> PASS (['d', 'i:::pyparsing'], '') should be False -> PASS (['d:::pyparsing'], '') should be True -> PASS (['d:::pyparsing', 'i'], '') should be False -> PASS (['d:::blah'], '') should be False -> PASS (['i'], '') should be False -> PASS ([], '1') should be True -> PASS (['d'], '1') should be True -> PASS (['d', 'i:::pyparsing'], '1') should be False -> PASS (['d:::pyparsing'], '1') should be True -> PASS (['d:::pyparsing', 'i'], '1') should be False -> PASS (['d:::blah'], '1') should be True -> PASS (['i'], '1') should be False -> PASS .................Raised expected exception: AssertionError: warned when parsing with an empty Forward expression warning was suppressed: Forward expression was never assigned a value, will not parse any input Packrat enabled: False [[7], [9]] [[1, 4], [2, 4], [4, 3]] [[1, 4], [2, 4]] detected fatal condition ['balloon', '25'] - item: 'balloon' - qty: '25' ['rucksack', 49] - item: 'rucksack' - qty: 49 ['AAA', ' this line'] ['AAA', ' and this line'] [] [] d | aA | a | b | c d | Aa | a | b | c ['aA', 'aA', 'aA', 'aA'] ['Aa', 'Aa', 'Aa', 'Aa'] [[1, '?', 1, ':', 0, '?', 1, ':', 0]] [0]: [1, '?', 1, ':', 0, '?', 1, ':', 0] [[1, '?', 1, ':', [0, '?', 1, ':', 0]]] [0]: [1, '?', 1, ':', [0, '?', 1, ':', 0]] [0]: 1 [1]: ? [2]: 1 [3]: : [4]: [0, '?', 1, ':', 0] ['B', 'B', 'C', 'A', 'D'] ['B'] ['bcdfghjklmnpqrstvwxyz'] Raised expected exception: ValueError: cannot specify a minimum length < 1; use Opt(CharsNotIn()) if zero-length char group is permitted ['bcdfg'] ['bcdfghjklm'] Raised expected exception: ParseException: Expected !W:(AEIOU), found end of text (at char 21), (line:1, col:22) ATCATCGAATGGA ['ATCATCGAATGGA'] - mismatches: [] - original: 'ATCATCGAATGGA' XTCATCGAATGGX ['XTCATCGAATGGX'] - mismatches: [0, 12] - original: 'ATCATCGAATGGA' ATCATCGAAXGGA ['ATCATCGAAXGGA'] - mismatches: [9] - original: 'ATCATCGAATGGA' ATCAXXGAATGGA ['ATCAXXGAATGGA'] - mismatches: [4, 5] - original: 'ATCATCGAATGGA' ATCAXXGAATGXA ATCAXXGAATGXA ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ATCAXXGAATGG ATCAXXGAATGG ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ATCATCGAATGGA match XTCATCGAATGGX match ATCATCGAAXGGA match ATCAXXGAATGGA match ATCAXXGAATGXA exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) ATCAXXGAATGG exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) atcatcgaatgga ['atcatcgaatgga'] - mismatches: [] - original: 'ATCATCGAATGGA' xtcatcgaatggx ['xtcatcgaatggx'] - mismatches: [0, 12] - original: 'ATCATCGAATGGA' atcatcgaaxgga ['atcatcgaaxgga'] - mismatches: [9] - original: 'ATCATCGAATGGA' atcaxxgaatgga ['atcaxxgaatgga'] - mismatches: [4, 5] - original: 'ATCATCGAATGGA' atcaxxgaatgxa atcaxxgaatgxa ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) atcaxxgaatgg atcaxxgaatgg ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) atcatcgaatgga match xtcatcgaatggx match atcatcgaaxgga match atcaxxgaatgga match atcaxxgaatgxa exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) atcaxxgaatgg exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) ['*', '*', '*', '*'] [' ', 'test'] - indent: ' ' - word: 'test' [' ', 'test'] - word: 'test' verify processing of C and HTML comments AA:BB:CC:DD:EE:FF ['AA:BB:CC:DD:EE:FF'] AA.BB.CC.DD.EE.FF ['AA.BB.CC.DD.EE.FF'] AA-BB-CC-DD-EE-FF ['AA-BB-CC-DD-EE-FF'] # mixed delimiters AA.BB:CC:DD:EE:FF AA.BB:CC:DD:EE:FF ^ ParseException: Expected MAC address, found 'AA' (at char 0), (line:1, col:1) pyparsing.core.Regex - MAC address FAIL: Expected MAC address, found 'AA' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 0.0.0.0 ['0.0.0.0'] 1.1.1.1 ['1.1.1.1'] 127.0.0.1 ['127.0.0.1'] 1.10.100.199 ['1.10.100.199'] 255.255.255.255 ['255.255.255.255'] . # out of range value 256.255.255.255 256.255.255.255 ^ ParseException: Expected IPv4 address, found '256' (at char 0), (line:1, col:1) pyparsing.core.Regex - IPv4 address FAIL: Expected IPv4 address, found '256' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 2001:0db8:85a3:0000:0000:8a2e:0370:7334 ['2001:0db8:85a3:0000:0000:8a2e:0370:7334'] 2134::1234:4567:2468:1236:2444:2106 ['2134::1234:4567:2468:1236:2444:2106'] 0:0:0:0:0:0:A00:1 ['0:0:0:0:0:0:A00:1'] 1080::8:800:200C:417A ['1080::8:800:200C:417A'] ::A00:1 ['::A00:1'] # loopback address ::1 ['::1'] # the null address :: ['::'] # ipv4 compatibility form ::ffff:192.168.0.1 ['::ffff:192.168.0.1'] # too few values 1080:0:0:0:8:800:200C 1080:0:0:0:8:800:200C ^ ParseException: Expected IPv6 address, found end of text (at char 21), (line:1, col:22) pyparsing.core.Combine - IPv6 address pyparsing.core.MatchFirst - IPv6 address pyparsing.core.And - full IPv6 address pyparsing.core.And - {':' hex_integer} pyparsing.core._SingleCharLiteral - ':' FAIL: Expected IPv6 address, found end of text (at char 21), (line:1, col:22) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4375, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4136, in parseImpl raise maxException File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4114, in parseImpl return e._parse( ^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 819, in _parseNoCache raise ParseException(instring, len_instring, self.errmsg, self) # too many ::'s, only 1 allowed 2134::1234:4567::2444:2106 2134::1234:4567::2444:2106 ^ ParseException: Expected end of text, found ':' (at char 15), (line:1, col:16) pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd FAIL: Expected end of text, found ':' (at char 15), (line:1, col:16) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1135, in parse_string se._parse(instring, loc) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3534, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 100 [100] -100 [-100] +100 [100] 3.14159 [3.14159] 6.02e23 [6.02e+23] 1e-12 [1e-12] 1e12 [1000000000000.0] -1e12 [-1000000000000.0] 3.14159 [3.14159] 6.02e23 [6.02e+23] 100 [100.0] -100 [-100.0] +100 [100.0] 3.14159 [3.14159] 6.02e23 [6.02e+23] 1e-12 [1e-12] 1997 ['1997'] - day: None - month: None - year: '1997' 1997-07 ['1997-07'] - day: None - month: '07' - year: '1997' 1997-07-16 ['1997-07-16'] - day: '16' - month: '07' - year: '1997' 1997-07-16 [datetime.date(1997, 7, 16)] 1997-07-16T19:20+01:00 ['1997-07-16T19:20+01:00'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: None - tz: '+01:00' - year: '1997' 1997-07-16T19:20:30+01:00 ['1997-07-16T19:20:30+01:00'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30' - tz: '+01:00' - year: '1997' 1997-07-16T19:20:30.45Z ['1997-07-16T19:20:30.45Z'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30.45' - tz: 'Z' - year: '1997' 1997-07-16 19:20:30.45 ['1997-07-16 19:20:30.45'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30.45' - tz: None - year: '1997' 1997-07-16T19:20:30.45 [datetime.datetime(1997, 7, 16, 19, 20, 30, 450000)] 123e4567-e89b-12d3-a456-426655440000 ['123e4567-e89b-12d3-a456-426655440000'] 1/2 [0.5] -15/16 [-0.9375] -3/-4 [0.75] 1/2 [0.5] -15/16 [-0.9375] -3/-4 [0.75] 1 1/2 [1.5] 2 -15/16 [2.9375] 0 -3/-4 [-0.75] 12 [12] 100 [100] -3 [-3] 1.732 [1.732] -3.14159 [-3.14159] 6.02e23 [6.02e+23] http://foo.com/blah_blah ['http://foo.com/blah_blah'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah/ ['http://foo.com/blah_blah/'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah/' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah_(wikipedia) ['http://foo.com/blah_blah_(wikipedia)'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah_(wikipedia)' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah_(wikipedia)_(again) ['http://foo.com/blah_blah_(wikipedia)_(again)'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah_(wikipedia)_(again)' - port: None - query: None - scheme: 'http' http://www.example.com/wpstyle/?p=364 ['http://www.example.com/wpstyle/?p=364'] - auth: None - fragment: None - host: 'www.example.com' - path: '/wpstyle/' - port: None - query: 'p=364' - scheme: 'http' https://www.example.com/foo/?bar=baz&inga=42&quux ['https://www.example.com/foo/?bar=baz&inga=42&quux'] - auth: None - fragment: None - host: 'www.example.com' - path: '/foo/' - port: None - query: 'bar=baz&inga=42&quux' - scheme: 'https' http://✪df.ws/123 ['http://✪df.ws/123'] - auth: None - fragment: None - host: '✪df.ws' - path: '/123' - port: None - query: None - scheme: 'http' http://userid:password@example.com:8080 ['http://userid:password@example.com:8080'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: None - port: '8080' - query: None - scheme: 'http' http://userid:password@example.com:8080/ ['http://userid:password@example.com:8080/'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: '/' - port: '8080' - query: None - scheme: 'http' http://userid@example.com ['http://userid@example.com'] - auth: 'userid' - fragment: None - host: 'example.com' - path: None - port: None - query: None - scheme: 'http' http://userid@example.com/ ['http://userid@example.com/'] - auth: 'userid' - fragment: None - host: 'example.com' - path: '/' - port: None - query: None - scheme: 'http' http://userid@example.com:8080 ['http://userid@example.com:8080'] - auth: 'userid' - fragment: None - host: 'example.com' - path: None - port: '8080' - query: None - scheme: 'http' http://userid@example.com:8080/ ['http://userid@example.com:8080/'] - auth: 'userid' - fragment: None - host: 'example.com' - path: '/' - port: '8080' - query: None - scheme: 'http' http://userid:password@example.com ['http://userid:password@example.com'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: None - port: None - query: None - scheme: 'http' http://userid:password@example.com/ ['http://userid:password@example.com/'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: '/' - port: None - query: None - scheme: 'http' http://142.42.1.1/ ['http://142.42.1.1/'] - auth: None - fragment: None - host: '142.42.1.1' - path: '/' - port: None - query: None - scheme: 'http' http://142.42.1.1:8080/ ['http://142.42.1.1:8080/'] - auth: None - fragment: None - host: '142.42.1.1' - path: '/' - port: '8080' - query: None - scheme: 'http' http://➡.ws/䨹 ['http://➡.ws/䨹'] - auth: None - fragment: None - host: '➡.ws' - path: '/䨹' - port: None - query: None - scheme: 'http' http://⌘.ws ['http://⌘.ws'] - auth: None - fragment: None - host: '⌘.ws' - path: None - port: None - query: None - scheme: 'http' http://⌘.ws/ ['http://⌘.ws/'] - auth: None - fragment: None - host: '⌘.ws' - path: '/' - port: None - query: None - scheme: 'http' http://foo.com/blah_(wikipedia)#cite-1 ['http://foo.com/blah_(wikipedia)#cite-1'] - auth: None - fragment: 'cite-1' - host: 'foo.com' - path: '/blah_(wikipedia)' - port: None - query: None - scheme: 'http' http://foo.com/blah_(wikipedia)_blah#cite-1 ['http://foo.com/blah_(wikipedia)_blah#cite-1'] - auth: None - fragment: 'cite-1' - host: 'foo.com' - path: '/blah_(wikipedia)_blah' - port: None - query: None - scheme: 'http' http://foo.com/unicode_(✪)_in_parens ['http://foo.com/unicode_(✪)_in_parens'] - auth: None - fragment: None - host: 'foo.com' - path: '/unicode_(✪)_in_parens' - port: None - query: None - scheme: 'http' http://foo.com/(something)?after=parens ['http://foo.com/(something)?after=parens'] - auth: None - fragment: None - host: 'foo.com' - path: '/(something)' - port: None - query: 'after=parens' - scheme: 'http' http://☺.damowmow.com/ ['http://☺.damowmow.com/'] - auth: None - fragment: None - host: '☺.damowmow.com' - path: '/' - port: None - query: None - scheme: 'http' http://code.google.com/events/#&product=browser ['http://code.google.com/events/#&product=browser'] - auth: None - fragment: '&product=browser' - host: 'code.google.com' - path: '/events/' - port: None - query: None - scheme: 'http' http://j.mp ['http://j.mp'] - auth: None - fragment: None - host: 'j.mp' - path: None - port: None - query: None - scheme: 'http' ftp://foo.bar/baz ['ftp://foo.bar/baz'] - auth: None - fragment: None - host: 'foo.bar' - path: '/baz' - port: None - query: None - scheme: 'ftp' http://foo.bar/?q=Test%20URL-encoded%20stuff ['http://foo.bar/?q=Test%20URL-encoded%20stuff'] - auth: None - fragment: None - host: 'foo.bar' - path: '/' - port: None - query: 'q=Test%20URL-encoded%20stuff' - scheme: 'http' http://مثال.إختبار ['http://مثال.إختبار'] - auth: None - fragment: None - host: 'مثال.إختبار' - path: None - port: None - query: None - scheme: 'http' http:// http:// ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://. http://. ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://.. http://.. ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://../ http://../ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://? http://? ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://?? http://?? ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://??/ http://??/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://# http://# ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://## http://## ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://##/ http://##/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) # skip: http://foo.bar?q=Spaces should be encoded // // ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) //a //a ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ///a ///a ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) /// /// ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http:///a http:///a ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) foo.com foo.com ^ ParseException: Expected url, found 'foo' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'foo' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) rdar://1234 rdar://1234 ^ ParseException: Expected url, found 'rdar' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'rdar' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) h://test h://test ^ ParseException: Expected url, found 'h' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'h' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http:// shouldfail.com http:// shouldfail.com ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) :// should fail :// should fail ^ ParseException: Expected url, found ':' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found ':' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://foo.bar/foo(bar)baz quux http://foo.bar/foo(bar)baz quux ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ftps://foo.bar/ ftps://foo.bar/ ^ ParseException: Expected url, found 'ftps' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'ftps' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://-error-.invalid/ http://-error-.invalid/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) # skip: http://a.b--c.de/ http://-a.b.co http://-a.b.co ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://a.b-.co http://a.b-.co ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://0.0.0.0 http://0.0.0.0 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://10.1.1.0 http://10.1.1.0 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ..... http://10.1.1.255 http://10.1.1.255 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://224.1.1.1 http://224.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://1.1.1.1.1 http://1.1.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://123.123.123 http://123.123.123 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://3628126748 http://3628126748 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://.www.foo.bar/ http://.www.foo.bar/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) # skip: http://www.foo.bar./ http://.www.foo.bar./ http://.www.foo.bar./ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://10.1.1.1 http://10.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ['https://bob:secret@www.example.com:8080/path/to/resource?filter=int#book-mark'] - auth: 'bob:secret' - fragment: 'book-mark' - host: 'www.example.com' - path: '/path/to/resource' - port: '8080' - query: 'filter=int' - scheme: 'https' Raised expected exception: ParseException: time data '1997-07-error' does not match format '%Y-%m-%d', found '1997' (at char 0), (line:1, col:1) Raised expected exception: ParseException: time data '1997-07-error' does not match format '%Y-%m-%dT%H:%M:%S.%f', found '1997' (at char 0), (line:1, col:1) 2 5 7 6 0 1 2 3 4 5 0 3 5 4 3 [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] 2 5 7 6 0 1 2 3 4 5 0 3 5 4 3.............. [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] B 5 7 F 0 1 2 3 4 5 _ C 5 4 3 [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] 5 string input item1 item2 item3 item4 item5 0 int user 2 int file 3 8 [['item1', 'item2', 'item3', 'item4', 'item5'], [], ['3', '8']] [0]: ['item1', 'item2', 'item3', 'item4', 'item5'] - count: 5 - items: ['item1', 'item2', 'item3', 'item4', 'item5'] - source: 'input' - type: 'string' [1]: [] - count: 0 - items: [] - source: 'user' - type: 'int' [2]: ['3', '8'] - count: 2 - items: ['3', '8'] - source: 'file' - type: 'int' type = '' source = '' ['True', 'True', 'False'] - items: ['True', 'True', 'False'] - type: 'bool' verify non-fatal usage of Literal("") Raised expected exception: ValueError: null string passed to Literal; use Empty() instead sdlfjs :sdf\:jls::djf: sl:kfsjf sdlfjs -sdf\:jls::--djf: sl-kfsjf sdlfjs -sdf\:::jls::--djf: sl:::-kfsjf sdlfjs ^sdf\:jls^^--djf^ sl-kfsjf sdlfjs ^^^==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf^^^ colonQuotes :(?:(?:::)|(?:\\.)|(?:[^:\n\r\\]))*: [['sdf:jls:djf'], ['jls:--djf'], [':jls:--djf'], [''], ['j=lz:--djf'], ['j=ls:--djf']] sdf:jls:djf sdf:jls:djf dashQuotes \-(?:(?:\-\-)|(?:\\.)|(?:[^\-\n\r\\]))*\- [['sdf:jls::-djf: sl'], ['sdf:::jls::-djf: sl:::'], [''], [''], ['']] sdf:jls::-djf: sl sdf:jls::-djf: sl hatQuotes \^(?:(?:\\.)|(?:[^\^\n\r\\]))*\^ [['sdf:jls'], ['--djf'], [''], ['==sdf:j=lz::--djf: sl='], ['']] sdf:jls sdf:jls hatQuotes1 \^(?:(?:\^\^)|(?:\\.)|(?:[^\^\n\r\\]))*\^ [['sdf:jls^--djf'], ['^==sdf:j=lz::--djf: sl='], ['']] sdf:jls^--djf sdf:jls^--djf dblEqQuotes ==(?:(?:\\.)|(?:(?:=(?!=)))|(?:[^=\n\r\\]))*== [['sdf:j=ls::--djf: sl']] sdf:j=ls::--djf: sl sdf:j=ls::--djf: sl ::: quotes :::(?:(?:(?:::(?!:))|(?::(?!::)))|(?:[^:\n\r]))*::: [['jls::--djf: sl']] jls::--djf: sl jls::--djf: sl ==-- quotes ==(?:(?:(?:\-(?!\-)))|(?:[^\-\n\r]))*\-\- [['sdf\\:j=lz::'], ['sdf\\:j=ls::']] sdf\:j=lz:: sdf\:j=lz:: ^^^ multiline quotes \^\^\^(?:(?:(?:\^\^(?!\^))|(?:\^(?!\^\^)))|(?:[^\^]))*\^\^\^ [['==sdf\\:j=lz::--djf: sl=^^=kfsjf\n sdlfjs ==sdf\\:j=ls::--djf: sl==kfsjf']] ==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf ==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf Raised expected exception: ValueError: quote_char cannot be the empty string \.\[(?:(?:(?:\](?!\.)))|(?:[^\]\n\r]))*\]\. ['...'] [''] [']'] [']]'] \+\*(?:(?:(?:\*(?!\+)))|(?:[^*\n\r]))*\*\+ ['...'] [''] ['*'] ['**'] \*/(?:(?:(?:/(?!\*)))|(?:[^/\n\r]))*/\* ['...'] [''] ['/'] ['//'] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately followed by keyword character, found '1000' (at char 5), (line:1, col:6) Raised expected exception: ParseException: Expected CaselessKeyword 'START', was immediately followed by keyword character, found '1000' (at char 5), (line:1, col:6) Raised expected exception: ValueError: min must be greater than 0 Raised expected exception: ValueError: max must be greater than, or equal to min Raised expected exception: ParseException: Expected ',', found end of text (at char 12), (line:1, col:13) 'ABC' [, 'ABC']... ['ABC', 'ABC'] 'ABC' [, 'ABC']... ['ABC', 'ABC', 'ABC'] {'True' | 'true' | 'False' | 'false'} [, {'True' | 'true' | 'False' | 'false'}]... bool bool bool bool bool [, bool]... 'ABC' [, 'ABC']... ['ABC', 'ABC', 'ABC'] ['bar', 'foo'] - one: 'foo' - two: 'bar' options(100) step(A) options(100) step(A) ^ ParseSyntaxException: Expected integer, found 'A' (at char 18), (line:1, col:19) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected integer, found 'A' (at char 18), (line:1, col:19) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal step(A) options(100) step(A) options(100) ^ ParseSyntaxException: Expected integer, found 'A' (at char 5), (line:1, col:6) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected integer, found 'A' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal options(100) step(100A) options(100) step(100A) ^ ParseSyntaxException: Expected 'Z', found 'A' (at char 21), (line:1, col:22) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected 'Z', found 'A' (at char 21), (line:1, col:22) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal options(100) step(22) step(100ZA) options(100) step(22) step(100ZA) ^ ParseSyntaxException: Expected ')', found 'A' (at char 31), (line:1, col:32) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected ')', found 'A' (at char 31), (line:1, col:32) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {{word}... num} pyparsing.core.OneOrMore - {word}... pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4790, in parseImpl loc, tokens = self_expr_parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 dd 123 ^ ParseException: Expected word, found '123' (at char 3), (line:1, col:4) pyparsing.core.And - {word word [word]... num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {word word [word]... num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 aa bb cc dd 123 ^ ParseException: Expected num, found 'dd' (at char 9), (line:1, col:10) pyparsing.core.And - {[word [word [word]]] num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'dd' (at char 9), (line:1, col:10) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) cc dd 123 ['cc', 'dd', '123'] aa bb cc dd 123 aa bb cc dd 123 ^ ParseException: Expected num, found 'cc' (at char 6), (line:1, col:7) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'cc' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ...... bb cc dd 123 bb cc dd 123 ^ ParseException: Expected num, found 'dd' (at char 6), (line:1, col:7) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'dd' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) dd 123 dd 123 ^ ParseException: Expected word, found '123' (at char 3), (line:1, col:4) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) a 1 ['a', 1] - label: 'a' - values: [1] b 1 2 3 ['b', 1, 2, 3] - label: 'b' - values: [1, 2, 3] c ['c'] - label: 'c' - values: [] a 1 ['a', 1] - label: 'a' - values: [1] b 1 2 3 ['b', 1, 2, 3] - label: 'b' - values: [1, 2, 3] c ['c'] - label: 'c' - values: [] a 1,1 ['a', [1, 1]] - label: 'a' - points: [[1, 1]] [0]: [1, 1] - x: 1 - y: 1 [0]: a [1]: [1, 1] - x: 1 - y: 1 b 1,1 2,2 3,3 ['b', [1, 1], [2, 2], [3, 3]] - label: 'b' - points: [[1, 1], [2, 2], [3, 3]] [0]: [1, 1] - x: 1 - y: 1 [1]: [2, 2] - x: 2 - y: 2 [2]: [3, 3] - x: 3 - y: 3 [0]: b [1]: [1, 1] - x: 1 - y: 1 [2]: [2, 2] - x: 2 - y: 2 [3]: [3, 3] - x: 3 - y: 3 c ['c'] - label: 'c' - points: [] [['a', '10'], ['b', '20']] - a: '10' - b: '20' [0]: ['a', '10'] [1]: ['b', '20'] ^ ParseException: Expected W:(A-Za-z) (at char 0), (line:1, col:1) tests.test_unit.Test02_WithoutPackrat pyparsing.core.Dict - Dict:({Group:({W:(A-Za-z) Suppress:('=') W:(0-9)})}...) pyparsing.core.OneOrMore - {Group:({W:(A-Za-z) Suppress:('=') W:(0-9)})}... pyparsing.core.Group - Group:({W:(A-Za-z) Suppress:('=') W:(0-9)}) pyparsing.core.And - {W:(A-Za-z) Suppress:('=') W:(0-9)} pyparsing.core._WordRegex - W:(A-Za-z) testing empty And testing empty Or testing empty MatchFirst testing empty Each Match [{integer | W:(0-9A-Za-z)}]... at loc 0(1,1) 123 A100 ^ Match integer at loc 0(1,1) 123 A100 ^ Matched integer -> [123] Match integer at loc 4(1,5) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found 'A100' (at char 4), (line:1, col:5) Match W:(0-9A-Za-z) at loc 4(1,5) 123 A100 ^ Matched W:(0-9A-Za-z) -> ['A100'] Match integer at loc 8(1,9) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 8), (line:1, col:9) Match W:(0-9A-Za-z) at loc 8(1,9) 123 A100 ^ Match W:(0-9A-Za-z) failed, ParseException raised: Expected W:(0-9A-Za-z), found end of text (at char 8), (line:1, col:9) Matched [{integer | W:(0-9A-Za-z)}]... -> [123, 'A100'] Match integer at loc 0(1,1) 123 A100 ^ Matched integer -> [123] Match integer at loc 4(1,5) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found 'A100' (at char 4), (line:1, col:5) Match W:(0-9A-Za-z) at loc 4(1,5) 123 A100 ^ Matched W:(0-9A-Za-z) -> ['A100'] Match integer at loc 8(1,9) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 8), (line:1, col:9) Match W:(0-9A-Za-z) at loc 8(1,9) 123 A100 ^ Match W:(0-9A-Za-z) failed, ParseException raised: Expected W:(0-9A-Za-z), found end of text (at char 8), (line:1, col:9) Match integer at loc 0(1,1) 1 2 3 ^ Matched integer -> ['1'] Match integer at loc 2(1,3) 1 2 3 ^ Matched integer -> ['2'] Match integer at loc 4(1,5) 1 2 3 ^ Matched integer -> ['3'] Match integer at loc 5(1,6) 1 2 3 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 5), (line:1, col:6) Packrat status: disabled ..............Match Z at loc 0(1,1) aba ^ Match Z failed, ParseException raised: Expected Z, found 'aba' (at char 0), (line:1, col:1) Match leading_a at loc 0(1,1) aba ^ Match A at loc 0(1,1) aba ^ Matched A -> ['a'] Match Z at loc 1(1,2) aba ^ Match Z failed, ParseException raised: Expected Z, found 'ba' (at char 1), (line:1, col:2) Match A at loc 1(1,2) aba ^ Match A failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) Match B at loc 1(1,2) aba ^ Matched B -> ['b'] Matched leading_a -> ['a'] Match Z at loc 1(1,2) aba ^ Match Z failed, ParseException raised: Expected Z, found 'ba' (at char 1), (line:1, col:2) Match leading_a at loc 1(1,2) aba ^ Match A at loc 1(1,2) aba ^ Match A failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) Match leading_a failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) Match B at loc 1(1,2) aba ^ Matched B -> ['b'] Match Z at loc 2(1,3) aba ^ Match Z failed, ParseException raised: Expected Z, found 'a' (at char 2), (line:1, col:3) Match leading_a at loc 2(1,3) aba ^ Match A at loc 2(1,3) aba ^ Matched A -> ['a'] Match Z at loc 3(1,4) aba ^ Match Z failed, ParseException raised: Expected Z, found end of text (at char 3), (line:1, col:4) Match A at loc 3(1,4) aba ^ Match A failed, ParseException raised: Expected A, found end of text (at char 3), (line:1, col:4) Match B at loc 3(1,4) aba ^ Match B failed, ParseException raised: Expected B, found end of text (at char 3), (line:1, col:4) Match leading_a failed, ParseException raised: Expected {Z | A | B}, found end of text (at char 3), (line:1, col:4) Match B at loc 2(1,3) aba ^ Match B failed, ParseException raised: Expected B, found 'a' (at char 2), (line:1, col:3) {'enable_debug_on_named_expressions': False, 'warn_multiple_tokens_in_named_alternation': False, 'warn_name_set_on_empty_Forward': False, 'warn_on_assignment_to_Forward': False, 'warn_on_match_first_with_lshift_operator': False, 'warn_on_multiple_string_args_to_oneof': False, 'warn_on_parse_using_empty_Forward': False, 'warn_ungrouped_named_tokens_in_collection': False} {'enable_debug_on_named_expressions': False, 'warn_multiple_tokens_in_named_alternation': True, 'warn_name_set_on_empty_Forward': True, 'warn_on_assignment_to_Forward': True, 'warn_on_match_first_with_lshift_operator': True, 'warn_on_multiple_string_args_to_oneof': True, 'warn_on_parse_using_empty_Forward': True, 'warn_ungrouped_named_tokens_in_collection': True} TypeError: descriptor 'upper' for 'str' objects doesn't apply to a 'int' object tests.test_unit.Test02_WithoutPackrat pyparsing.core._WordRegex - integer tests.test_unit.Modifier pyparsing.results.ParseResults 123 355 ^ ParseException: Expected word, found '355' (at char 4), (line:1, col:5) 123 355 (test using ErrorStop) ^ ParseSyntaxException: Expected word, found '355' (at char 4), (line:1, col:5) tests.test_unit.Test02_WithoutPackrat pyparsing.core.And - {int - word} A ^ ParseException: Expected int, found 'A' (at char 0), (line:1, col:1) tests.test_unit.Test02_WithoutPackrat pyparsing.core.And - {int int} divide_args pyparsing.core._WordRegex - int Explain for Packrat A ^ ParseException: Expected int, found 'A' (at char 0), (line:1, col:1) tests.test_unit.Test02_WithoutPackrat pyparsing.core.And - {int int} divide_args pyparsing.core._WordRegex - int Explain for Left Recursion A ^ ParseException: Expected int, found 'A' (at char 0), (line:1, col:1) tests.test_unit.Test02_WithoutPackrat pyparsing.core.And - {int int} divide_args pyparsing.core._WordRegex - int [' this_semi_does_nothing()', ''], [' neither_does_this_but_there_are_spaces_afterward()', ''], [' a = "a;b"', 'return a # this is a comment; it has a semicolon!'], [' z=1000', 'b("; in quotes")', 'c=200', 'return z'], [" return ';'"], [" '''a docstring; with a semicolon'''"], [' a = 10', 'b = 11', 'c = 12'], [' # this comment; has several; semicolons'], [' x = 12', 'return x # so; does; this; one'], [' x = 15', '', '', 'y += x', 'return y'], [' this_semi_does_nothing()', ';', ''], [' neither_does_this_but_there_are_spaces_afterward()', ';', ''], [' a = "a;b"', ';', 'return a # this is a comment; it has a semicolon!'], [' z=1000', ';', 'b("; in quotes")', ';', 'c=200', ';', 'return z'], [" return ';'"], [" '''a docstring; with a semicolon'''"], [' a = 10', ';', 'b = 11', ';', 'c = 12'], [' # this comment; has several; semicolons'], [' x = 12', ';', 'return x # so; does; this; one'], [' x = 15', ';', '', ';', '', ';', 'y += x', ';', 'return y'], [''], [' def main():'], [' this_semi_does_nothing()', ''], [' neither_does_this_but_there_are_spaces_afterward()', ''], [' a = "a;b"', 'return a # this is a comment; it has a semicolon!'], [''], [' def b():'], [' if False:'], [' z=1000', 'b("; in quotes"); c=200;return z'], [" return ';'"], [''], [' class Foo(object):'], [' def bar(self):'], [" '''a docstring; with a semicolon'''"], [' a = 10', 'b = 11; c = 12'], [''], [' # this comment; has several; semicolons'], [' if self.spam:'], [' x = 12', 'return x # so; does; this; one'], [' x = 15', ';; y += x; return y'], [''], [' def baz(self):'], [' return self.bar'], [' '], W:(0-9) W:(0-9){3} W:(0-9){2,...} W:(0-9){1,3} W:(0-9){2,3} (0-9) ['balloon'] - item: 'balloon' - qty: 99 verify behavior of getName() ['XXX', ['b'], ['bb'], ['a'], ['bbb'], ['bbbb'], ['aa'], ['bbbbb'], [':', 'c'], ['bbbbbb'], ['aaa']] [0]: XXX [1]: ['b'] - B: 'b' [2]: ['bb'] - B: 'bb' [3]: ['a'] - A: 'a' [4]: ['bbb'] - B: 'bbb' [5]: ['bbbb'] - B: 'bbbb' [6]: ['aa'] - A: 'aa' [7]: ['bbbbb'] - B: 'bbbbb' [8]: [':', 'c'] - C: 'c' [9]: ['bbbbbb'] - B: 'bbbbbb' [10]: ['aaa'] - A: 'aaa' XXX 'XXX' ['b'] ParseResults(['b'], {'B': 'b'}) ['bb'] ParseResults(['bb'], {'B': 'bb'}) ['a'] ParseResults(['a'], {'A': 'a'}) ['bbb'] ParseResults(['bbb'], {'B': 'bbb'}) ['bbbb'] ParseResults(['bbbb'], {'B': 'bbbb'}) ['aa'] ParseResults(['aa'], {'A': 'aa'}) ['bbbbb'] ParseResults(['bbbbb'], {'B': 'bbbbb'}) [':', 'c'] ParseResults([':', 'c'], {'C': 'c'}) ['bbbbbb'] ParseResults(['bbbbbb'], {'B': 'bbbbbb'}) ['aaa'] ParseResults(['aaa'], {'A': 'aaa'}) XXX b bb a bbb bbbb aa bbbbb :c bbbbbb aaa [None, 'B', 'B', 'A', 'B', 'B', 'A', 'B', None, 'B', 'A'] ['lsjd'] non-key ['sldkjf'] non-key ['IF'] non-key ['Saslkj'] non-key ['AND'] non-key ['lsdjf'] non-key verify behavior of ParseResults.get() ['b', 'bb', 'a', 'bbb', 'bbbb', 'aa', 'bbbbb', ':', 'c', 'bbbbbb', 'aaa'] - A: 'aaa' - B: 'bbbbbb' - C: 'c' aaa !D ['11.11.13', 'useless . useless,21 useless 2 | ', 14.21, ' | asmdakldm'] ['21.12.12', 'fmpaosmfpoamsp 4 | ', 41, ' | ajfa9si90'] Raised expected exception: ParseException: Expected number, found 'useless' (at char 32), (line:1, col:33) Raised expected exception: ParseException: Expected number, found 'fmpaosmfpoamsp' (at char 32), (line:1, col:33) [["'string1'", "'string2'"]] [['string1', 'strin""g2']] [['"string1"', '"strin""g2"'], ["'string1'", "'string2'"]] [['string1', 'strin"g2']] [['string1', 'string2']] [['string1', 'string2']] [['string1', 'string2']] ["'ms1'", '1', '0', "'2009-12-22'", "'2009-12-22 10:41:22'"] This & that 2 > 1 0 < 1 Don't get excited! I said "Don't get excited!" Copyright © 2021 Dot ⟶ ˙ ['I', 'totally', 'love', 'pickles'] a = 100 b = 101 c = c1 = 200 c2 = c21 = 999 c3 = 'A horse, a horse, my kingdom for a horse' d = 505 ......[['a', 100], ['b', 101], ['c', ['c1', 200], ['c2', ['c21', 999]], ['c3', 'A horse, a horse, my kingdom for a horse']], ['d', 505]] - a: 100 - b: 101 - c: [['c1', 200], ['c2', ['c21', 999]], ['c3', 'A horse, a horse, my kingdom for a horse']] - c1: 200 - c2: [['c21', 999]] - c21: 999 [0]: ['c21', 999] - c3: 'A horse, a horse, my kingdom for a horse' [0]: ['c1', 200] [1]: ['c2', ['c21', 999]] - c21: 999 [0]: c2 [1]: ['c21', 999] [2]: ['c3', 'A horse, a horse, my kingdom for a horse'] - d: 505 [0]: ['a', 100] [1]: ['b', 101] [2]: ['c', ['c1', 200], ['c2', ['c21', 999]], ['c3', 'A horse, a horse, my kingdom for a horse']] - c1: 200 - c2: [['c21', 999]] - c21: 999 [0]: ['c21', 999] - c3: 'A horse, a horse, my kingdom for a horse' [0]: c [1]: ['c1', 200] [2]: ['c2', ['c21', 999]] - c21: 999 [0]: c2 [1]: ['c21', 999] [3]: ['c3', 'A horse, a horse, my kingdom for a horse'] [3]: ['d', 505] [['A', [100, 101, 102]], ['B', [200, 201]], ['C', [300]]] [['A', [100, 101, 102]], ['B', [200, 201]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [200, 201]] [0]: B [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] 1 2 12345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] 1 2 12345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] 1 2 3 123456789012345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] using searchString [[['A', [100, 101, 102]]], [['B', [['b', [200, 201]]]]], [['C', [300]]]] [['A', [100, 101, 102]], ['B', [['b', [200, 201]]]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [['b', [200, 201]]]] [0]: B [1]: [['b', [200, 201]]] [0]: ['b', [200, 201]] [0]: b [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] using parseString [['A', [100, 101, 102]], ['B', [['b', [200, 201]]]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [['b', [200, 201]]]] [0]: B [1]: [['b', [200, 201]]] [0]: ['b', [200, 201]] [0]: b [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] test good indentation 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.1.2| 5: 2.| [['1.', ['1.1', ['1.1.1', '1.1.2']], '2.']] test bad indentation 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.2| 5: 2.| Raised expected exception: ParseException: Expected end of text, found '1' (at char 78), (line:4, col:18) 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.2| 5: 2.| Raised expected exception: ParseException: Expected end of text, found '1' (at char 76), (line:4, col:16) [['def', 'A', ['(', 'z', ')'], ':', [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']]], 'B', ['def', 'BB', ['(', 'a', 'b', 'c', ')'], ':', [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]]], 'C', 'D', ['def', 'spam', ['(', 'x', 'y', ')'], ':', [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]]]] [0]: ['def', 'A', ['(', 'z', ')'], ':', [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']]] [0]: def [1]: A [2]: ['(', 'z', ')'] [3]: : [4]: [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']] [0]: ['A1'] [1]: [['B', '=', '100']] [0]: ['B', '=', '100'] [2]: [['G', '=', 'A2']] [0]: ['G', '=', 'A2'] [3]: ['A2'] [4]: ['A3'] [1]: B [2]: ['def', 'BB', ['(', 'a', 'b', 'c', ')'], ':', [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]]] [0]: def [1]: BB [2]: ['(', 'a', 'b', 'c', ')'] [3]: : [4]: [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]] [0]: ['BB1'] [1]: [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]] [0]: ['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]] [0]: def [1]: BBA [2]: ['(', ')'] [3]: : [4]: [['bba1'], ['bba2'], ['bba3']] [0]: ['bba1'] [1]: ['bba2'] [2]: ['bba3'] [3]: C [4]: D [5]: ['def', 'spam', ['(', 'x', 'y', ')'], ':', [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]]] [0]: def [1]: spam [2]: ['(', 'x', 'y', ')'] [3]: : [4]: [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]] [0]: [['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]] [0]: ['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]] [0]: def [1]: eggs [2]: ['(', 'z', ')'] [3]: : [4]: [['pass']] [0]: ['pass'] Parsing 'one0'... Parsing 'four0'... Parsing 'extra'... Parsing 'one1'... Parsing 'four1'... extra: [test] one0: two (three) four0: five (seven) extra: [test] one1: two (three) four1: five (seven) ['extra', [['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]]], 'extra', [['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]]]] [0]: extra [1]: [['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]]] [0]: ['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]] [0]: test [1]: [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]] [0]: ['one0', [['two', 'three']]] [0]: one0 [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four0', [['five', 'seven']]] [0]: four0 [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: extra [3]: [['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]]] [0]: ['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]] [0]: test [1]: [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]] [0]: ['one1', [['two', 'three']]] [0]: one1 [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four1', [['five', 'seven']]] [0]: four1 [1]: [['five', 'seven']] [0]: ['five', 'seven'] Parsing 'one'... Parsing 'four'... Parsing 'extra'... Parsing 'one'... Parsing 'four'... Parsing 'one'... Parsing 'four'... Parsing 'eight'... Parsing 'eleven'... Parsing 'fourteen'... Parsing 'seventeen'... .......... extra: [test] one: two (three) four: five (seven) extra: [test] one: two (three) four: five (seven) [test] one: two (three) four: five (seven) [test] eight: nine (ten) eleven: twelve (thirteen) fourteen: fifteen (sixteen) seventeen: eighteen (nineteen) ['extra', [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]]], 'extra', [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]]]] [0]: extra [1]: [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]]] [0]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: extra [3]: [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]]] [0]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [1]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]] [0]: test [1]: [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]] [0]: ['eight', [['nine', 'ten']]] [0]: eight [1]: [['nine', 'ten']] [0]: ['nine', 'ten'] [1]: ['eleven', [['twelve', 'thirteen']]] [0]: eleven [1]: [['twelve', 'thirteen']] [0]: ['twelve', 'thirteen'] [2]: ['fourteen', [['fifteen', 'sixteen']]] [0]: fourteen [1]: [['fifteen', 'sixteen']] [0]: ['fifteen', 'sixteen'] [3]: ['seventeen', [['eighteen', 'nineteen']]] [0]: seventeen [1]: [['eighteen', 'nineteen']] [0]: ['eighteen', 'nineteen'] [[9, '+', 2, '+', 3]] [0]: [9, '+', 2, '+', 3] [[9, '+', [2, '*', 3]]] [0]: [9, '+', [2, '*', 3]] [0]: 9 [1]: + [2]: [2, '*', 3] [[[9, '+', 2], '*', 3]] [0]: [[9, '+', 2], '*', 3] [0]: [9, '+', 2] [1]: * [2]: 3 [[[9, '+', ['-', 2]], '*', 3]] [0]: [[9, '+', ['-', 2]], '*', 3] [0]: [9, '+', ['-', 2]] [0]: 9 [1]: + [2]: ['-', 2] [1]: * [2]: 3 [[[9, '+', ['-', ['-', 2]]], '*', 3]] [0]: [[9, '+', ['-', ['-', 2]]], '*', 3] [0]: [9, '+', ['-', ['-', 2]]] [0]: 9 [1]: + [2]: ['-', ['-', 2]] [0]: - [1]: ['-', 2] [1]: * [2]: 3 [[[9, '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]]] [0]: [[9, '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]] [0]: [9, '+', ['-', 2]] [0]: 9 [1]: + [2]: ['-', 2] [1]: * [2]: [3, '^', [2, '^', 2]] [0]: 3 [1]: ^ [2]: [2, '^', 2] [[[[9, '!'], '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]]] [0]: [[[9, '!'], '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]] [0]: [[9, '!'], '+', ['-', 2]] [0]: [9, '!'] [1]: + [2]: ['-', 2] [1]: * [2]: [3, '^', [2, '^', 2]] [0]: 3 [1]: ^ [2]: [2, '^', 2] [[['M', '*', 'X'], '+', 'B']] [0]: [['M', '*', 'X'], '+', 'B'] [0]: ['M', '*', 'X'] [1]: + [2]: B [['M', '*', ['X', '+', 'B']]] [0]: ['M', '*', ['X', '+', 'B']] [0]: M [1]: * [2]: ['X', '+', 'B'] [[1, '+', [2, '*', ['-', [3, '^', 4]], '*', 5], '+', ['-', ['+', ['-', 6]]]]] [0]: [1, '+', [2, '*', ['-', [3, '^', 4]], '*', 5], '+', ['-', ['+', ['-', 6]]]] [0]: 1 [1]: + [2]: [2, '*', ['-', [3, '^', 4]], '*', 5] [0]: 2 [1]: * [2]: ['-', [3, '^', 4]] [0]: - [1]: [3, '^', 4] [3]: * [4]: 5 [3]: + [4]: ['-', ['+', ['-', 6]]] [0]: - [1]: ['+', ['-', 6]] [0]: + [1]: ['-', 6] [[3, '!', '!']] [0]: [3, '!', '!'] p = True q = False r = True p and not q (p & ~q) = True not not p ~~p = True not(p and q) ~(p & q) = True q or not p and r (q | (~p & r)) = False q or not p or not r (q | ~p | ~r) = False q or not (p and r) (q | ~(p & r)) = False p or q or r (p | q | r) = True p or q or r and False (p | q | (r & False)) = True (p or q or r) and False ((p | q | r) & False) = False Raised expected exception: ValueError: if numterms=3, opExpr must be a tuple or list of two expressions Raised expected exception: ValueError: if numterms=3, opExpr must be a tuple or list of two expressions Raised expected exception: ValueError: operator must be unary (1), binary (2), or ternary (3) Raised expected exception: ValueError: operator must be unary (1), binary (2), or ternary (3) Raised expected exception: ValueError: operator must indicate right or left associativity evaluate_int 9 '9' => [9] (count=1) [[[3, '+', 2], '?', 12, ':', 13]] [0]: [[3, '+', 2], '?', 12, ':', 13] [0]: [3, '+', 2] [1]: ? [2]: 12 [3]: : [4]: 13 [[[3, '+', 2], '?', 12, ':', 13]] [0]: [[3, '+', 2], '?', 12, ':', 13] [0]: [3, '+', 2] [1]: ? [2]: 12 [3]: : [4]: 13 [[3, '+', [2, '+', 11]]] [0]: [3, '+', [2, '+', 11]] [0]: 3 [1]: + [2]: [2, '+', 11] [[3, '+', [2, '+', 11]]] [0]: [3, '+', [2, '+', 11]] [0]: 3 [1]: + [2]: [2, '+', 11] [[3, '+', ['<', [2, '+', 11], '>']]] [0]: [3, '+', ['<', [2, '+', 11], '>']] [0]: 3 [1]: + [2]: ['<', [2, '+', 11], '>'] [0]: < [1]: [2, '+', 11] [2]: > [[3, '+', ['<<', [2, '+', 11], '>>']]] [0]: [3, '+', ['<<', [2, '+', 11], '>>']] [0]: 3 [1]: + [2]: ['<<', [2, '+', 11], '>>'] [0]: << [1]: [2, '+', 11] [2]: >> [[[3, 'x'], '+', 2]] [0]: [[3, 'x'], '+', 2] [0]: [3, 'x'] [1]: + [2]: 2 [[[3, 'x'], '+', 2]] [0]: [[3, 'x'], '+', 2] [0]: [3, 'x'] [1]: + [2]: 2 bar = foo [['bar', '=', 'foo']] bar = foo & baz = fee ['&', [['bar', '=', 'foo'], ['baz', '=', 'fee']]] ['SELECT', 'color', 'FROM', 'colors'] ['SELECT', 'color', 'FROM', 'colors'] .....['1999', '/', '12', '/', '31'] - day: '31' - month: '12' - year: '1999' ['1999', '12', '31'] - day: '31' - month: '12' - year: '1999' Raised expected exception: ValueError: no such diagnostic 'xyzzy' ['testA', 'testB', 'testC'] =? ['testA', 'testB', 'testC'] ['testC'] =? ['testC'] 'testB\ntestC\n' =? 'testB\ntestC\n' ['testD', 'testE', 'testF'] =? ['testD', 'testE', 'testF'] ['testF'] =? ['testF'] 'testE\ntestF' =? 'testE\ntestF' ['a'] =? ['a'] ['a'] =? ['a'] '' =? '' 0 'aaa' 1 '\naaa' Raised expected exception: ParseException: Expected Re:('a+'), found '\' (at char 0), (line:1, col:1) 2 'a\naa' Raised expected exception: ParseException: Expected end of text, found '\' (at char 1), (line:1, col:2) 3 'aaa\n' Raised expected exception: ParseException: Expected end of text, found '\' (at char 3), (line:1, col:4) verify correct line() behavior when first line is empty string {W:(A) - LineStart W:(B)} AAA BBB ['AAA', 'BBB'] AAA BBB ['AAA', 'BBB'] AAA BBB BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) no \n in default whitespace chars {W:(A) - LineStart W:(B)} AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 3), (line:1, col:4) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 6), (line:1, col:7) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 6), (line:1, col:7) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} AAA BBB ['AAA', 'BBB'] AAA BBB ['AAA', 'BBB'] AAA BBB BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) pyparsing.core.And - {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} FAIL: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) .................. AAA BBB AAA BBB ^ ParseSyntaxException: Expected end of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} FAIL: Expected end of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) 1 1234567890 1:AAA 1| 2:AAA 2| 3:| 4: AAA| 5:| 6:B AAA| 7:| normal parsing 0 3 1 AAA 1 ParseResults(['AAA'], {}) 6 9 2 AAA 2 ParseResults(['AAA'], {}) 12 18 3 ParseResults(['AAA'], {}) parsing without \n in whitespace chars 0 3 1 AAA 1 'A' 6 9 2 AAA 2 'A' 13 18 4 AAA ' ' 1 1234567890 1:| 2:a| 3: b| 4: c| 5:d| 6:e| 7: f| 8: g| [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [[['a']], [['b']], [['c']], [['d']], [['e']], [['f']], [['g']]] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] Literal Expected 'xyz', found end of text (at char 1), (line:1, col:2) CaselessLiteral Expected 'XYZ', found end of text (at char 1), (line:1, col:2) Keyword Expected Keyword 'xyz', found end of text (at char 1), (line:1, col:2) CaselessKeyword Expected CaselessKeyword 'xyz', found end of text (at char 1), (line:1, col:2) Word Expected W:(xyz), found end of text (at char 1), (line:1, col:2) Regex Expected Re:('xyz'), found end of text (at char 1), (line:1, col:2) 1 start 2 {integer 'start' integer} [1, 'start', 2] {integer 'start' integer} [1, 'start', 2] {integer 'START' integer} [1, 'START', 2] {integer word integer} [1, 'start', 2] 3 start4 {integer 'start' integer} [3, 'start', 4] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately followed by keyword character, found '4' (at char 7), (line:1, col:8) Raised expected exception: ParseException: Expected CaselessKeyword 'START', was immediately followed by keyword character, found '4' (at char 7), (line:1, col:8) Raised expected exception: ParseException: Expected word, found 'start4' (at char 2), (line:1, col:3) 5start 6 [5, 'start', 6] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately preceded by keyword character, found '5start' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected CaselessKeyword 'START', keyword was immediately preceded by keyword character, found '5start' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected word, found 'start' (at char 1), (line:1, col:2) [28, 'ID', 'PARI12345678', 43] - id: 'PARI12345678' - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 [[28, ['ID', 'PARI12345678'], 43]] - loc: [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 [0]: [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 [0, ['ljsdf'], 5] ['ljsdf'] [8, ['lksdjjf'], 15] ['lksdjjf'] [18, ['lkkjj'], 23] ['lkkjj'] ['body', False, 'Hello', ''] - contents: 'Hello' - empty: False - endBody: '' - startBody: ['body', False] - empty: False - tag: 'body' - tag: 'body' DOB >!<100-10-2010;more garbage verify MatchFirst iterates properly ['A', 'A', '3', 'A'] Raised expected exception: ParseException: matched token not at column 1, found '3' (at char 4), (line:1, col:5) ABC ^ ParseException: Expected W:(0-9), found 'ABC' (at char 0), (line:1, col:1) tests.test_unit.Test02_WithoutPackrat pyparsing.core._WordRegex - W:(0-9) ['A'] - Achar: 'A' Raised expected exception: ValueError: cannot multiply ParserElement by negative value {'username': 'goat', 'errors': {'username': ['already taken', 'too short']}, 'empty_field': ''} Test defaults: [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Non-default opener [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Non-default closer [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Literal expressions for opener and closer [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Use ignore expression (1) [['let', [['greeting', '"Hello,', 'world!"']], ';;(foo bar', ['display', 'greeting']]] [0]: ['let', [['greeting', '"Hello,', 'world!"']], ';;(foo bar', ['display', 'greeting']] [0]: let [1]: [['greeting', '"Hello,', 'world!"']] [0]: ['greeting', '"Hello,', 'world!"'] [2]: ;;(foo bar [3]: ['display', 'greeting'] Use ignore expression (2) [['let', [['greeting', '"Hello, )world!"']], ';;', '(foo bar', ['display', 'greeting']]] [0]: ['let', [['greeting', '"Hello, )world!"']], ';;', '(foo bar', ['display', 'greeting']] [0]: let [1]: [['greeting', '"Hello, )world!"']] [0]: ['greeting', '"Hello, )world!"'] [2]: ;; [3]: (foo bar [4]: ['display', 'greeting'] Raised expected exception: ValueError: opening and closing strings cannot be the same Raised expected exception: ValueError: opening and closing arguments must be strings if no content expression is given ['aName', ['outer', ["'inner with opener {{ and closer }} in quoted string'"]]] [0]: aName [1]: ['outer', ["'inner with opener {{ and closer }} in quoted string'"]] [0]: outer [1]: ["'inner with opener {{ and closer }} in quoted string'"] ['aName', ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]]] [0]: aName [1]: ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]] [0]: outer [1]: ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"] [0]: 'inner [1]: with [2]: opener [3]: ['and', 'closer'] [4]: in [5]: quoted [6]: string' ['aName', ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]]] [0]: aName [1]: ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]] [0]: outer [1]: ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"] [0]: 'inner [1]: with [2]: opener [3]: ['and', 'closer'] [4]: in [5]: quoted [6]: string' 9413 tests produced real number PASS valid tests (321) real number with scientific notation PASS valid tests (2319) signed integer PASS valid tests (153) real number PASS invalid tests (2213) real number with scientific notation PASS invalid tests (6587) .........................signed integer PASS invalid tests (9260) # literal oneOf tests a b c ['a', 'b', 'c'] a a a ['a', 'a', 'a'] abc ['a', 'b', 'c'] # keyword oneOf tests a b c ['a', 'b', 'c'] a a a ['a', 'a', 'a'] # keyword oneOf failure tests abc abc ^ ParseException: Expected end of text, found 'abc' (at char 0), (line:1, col:1) pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd FAIL: Expected end of text, found 'abc' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1135, in parse_string se._parse(instring, loc) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3534, in parseImpl raise ParseException(instring, loc, self.errmsg, self) verify oneOf handles duplicate symbols verify oneOf handles generator input verify oneOf handles list input verify oneOf handles set input Raised expected exception: TypeError: Invalid argument to one_of, expected string or iterable ['XXX Y/123', '1,234.567890'] - data: '1,234.567890' - id: 'XXX Y/123' ['0', '123', '321', 444] Raised expected exception: ParseException: OnlyOnce obj called multiple times w/out reset, found '1' (at char 0), (line:1, col:1) ['100', '200', '300', 600] verify handling of Optional's beyond the end of string Tal Weiss Major Tal Major Weiss Major Major Major Tal Major Weiss Major Tal Weiss ['foo'] - foo: ['foo'] ['bar', 'foo', 'bar', 'foo', 'bar', 'foo'] - bar: ['bar', 'bar', 'bar'] - foo: ['foo', 'foo', 'foo'] Raised expected exception: ParseException: Missing one or more required elements ('foo'), found 'bar' (at char 1), (line:1, col:2) 1999-12-31 100 2001-01-01 [['1999-12-31'], 100, ['2001-01-01']] - date: [['1999-12-31'], ['2001-01-01']] [0]: ['1999-12-31'] - day: '31' - month: '12' - year: '1999' [1]: ['2001-01-01'] - day: '01' - month: '01' - year: '2001' - id: 100 [0]: ['1999-12-31'] - day: '31' - month: '12' - year: '1999' [1]: 100 [2]: ['2001-01-01'] - day: '01' - month: '01' - year: '2001' 42 [42] - id: 42 verify Optional's do not cause match failure if have results name _images/cal.png:77_ ['alt', 'empty', 'height', 'src', 'startImg', 'tag', 'width'] ['int', 'f', '(', ')', '{}'] ['DO', ['Z']] [244, 23, 13, 2343] - int_values: [244, 23, 13, 2343] - total: 2623 ### before parse action is added ### result1.dump(): [['Mauney', '46.5']] - Rider: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [0]: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' ### after parse action was added ### result1.dump(): [['Mauney', '46.5']] - Rider: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [0]: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [['x1', AnnotatedToken('val', ['1']), 'x2', AnnotatedToken('val', ['2'])]] [0]: ['x1', AnnotatedToken('val', ['1']), 'x2', AnnotatedToken('val', ['2'])] 'AAAAA' parseAll=False (shouldSucceed=True) 'AAAAA' parseAll=True (shouldSucceed=True) 'AAABB' parseAll=False (shouldSucceed=True) 'AAABB' parseAll=True (shouldSucceed=False) AAABB ^ ParseException: Expected end of text, found 'BB' (at char 3), (line:1, col:4) tests.test_unit.Test02_WithoutPackrat pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd 'AAAAA //blah' parseAll=False (shouldSucceed=True) 'AAAAA //blah' parseAll=True (shouldSucceed=True) 'AAABB //blah' parseAll=False (shouldSucceed=True) 'AAABB //blah' parseAll=True (shouldSucceed=False) AAABB //blah ^ ParseException: Expected end of text, found 'BB' (at char 3), (line:1, col:4) tests.test_unit.Test02_WithoutPackrat pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd '00aab' parseAll=False (shouldSucceed=True) '00aab' parseAll=True (shouldSucceed=True) '00aaf' parseAll=False (shouldSucceed=True) '00aaf' parseAll=True (shouldSucceed=False) 00aaf ^ ParseException: Expected end of text, found 'f' (at char 4), (line:1, col:5) tests.test_unit.Test02_WithoutPackrat pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd Parsing: 'a,b,c,100.2,,3' -> ['a', 'b', 'c', '100.2', '', '3'] Parsing: 'd, e, j k , m ' -> ['d', 'e', 'j k', 'm'] Parsing: "'Hello, World', f, g , , 5.1,x" -> ["'Hello, World'", 'f', 'g', '', '5.1', 'x'] Parsing: 'John Doe, 123 Main St., Cleveland, Ohio' -> ['John Doe', '123 Main St.', 'Cleveland', 'Ohio'] Parsing: 'Jane Doe, 456 St. James St., Los Angeles , California ' -> ['Jane Doe', '456 St. James St.', 'Los Angeles', 'California'] Parsing tests/karthik.ini ... 23 ['users'] users.K 8 8 users.mod_scheme 'QPSK' 'QPSK' users.Na K+2 K+2 OK Parsing examples/Setup.ini ... 125 ['Startup', 'Languages', 'test'] Startup.audioinf M3i M3i Languages.key1 0x0003 0x0003 test.foo bar bar OK Constructing EBNF parser with pyparsing... Parsing EBNF grammar with EBNF parser... - terminal_string - meta_identifier - integer - syntax - syntax_rule - definitions_list - single_definition - syntactic_term - syntactic_factor - syntactic_primary - optional_sequence - repeated_sequence - grouped_sequence Parsing EBNF grammar with generated EBNF parser... [['syntax', '=', '(', 'syntax_rule', ')', ',', '{', '(', 'syntax_rule', ')', '}', ';'], ['syntax_rule', '=', 'meta_identifier', ',', "'='", ',', 'definitions_list', ',', "';'", ';'], ['definitions_list', '=', 'single_definition', ',', '{', "'|'", ',', 'single_definition', '}', ';'], ['single_definition', '=', 'syntactic_term', ',', '{', "','", ',', 'syntactic_term', '}', ';'], ['syntactic_term', '=', 'syntactic_factor', ',', '[', "'-'", ',', 'syntactic_factor', ']', ';'], ['syntactic_factor', '=', '[', 'integer', ',', "'*'", ']', ',', 'syntactic_primary', ';'], ['syntactic_primary', '=', 'optional_sequence', '|', 'repeated_sequence', '|', 'grouped_sequence', '|', 'meta_identifier', '|', 'terminal_string', ';'], ['optional_sequence', '=', "'['", ',', 'definitions_list', ',', "']'", ';'], ['repeated_sequence', '=', "'{'", ',', 'definitions_list', ',', "'}'", ';'], ['grouped_sequence', '=', "'('", ',', 'definitions_list', ',', "')'", ';']] [['xavier', 'yeti'], ['alpha', 'beta', 'charlie'], ['will', 'beaver']] ['xavier', 'yeti'] ['alpha', 'beta', 'charlie'] ['will', 'beaver'] ['1', '0x2', '3', '0x4', 'aaa'] - base10: ['1', '3'] - hex: ['0x2', '0x4'] - word: ['aaa'] [[['Q', ['x', 'y', 'z']]], ':-', ['Bloo', ['x', 'Mitsis', 'y']], ['Foo', ['y', 'z', '1243']], ['y', '>', '28'], ['x', '<', '12'], ['x', '>', '3']] - Bloo: ['x', 'Mitsis', 'y'] - Foo: ['y', 'z', '1243'] - head: [['Q', ['x', 'y', 'z']]] - Q: ['x', 'y', 'z'] [0]: ['Q', ['x', 'y', 'z']] [0]: Q [1]: ['x', 'y', 'z'] - pred: [['y', '>', '28'], ['x', '<', '12'], ['x', '>', '3']] [0]: ['y', '>', '28'] [1]: ['x', '<', '12'] [2]: ['x', '>', '3'] [0]: [['Q', ['x', 'y', 'z']]] - Q: ['x', 'y', 'z'] [0]: ['Q', ['x', 'y', 'z']] [0]: Q [1]: ['x', 'y', 'z'] [1]: :- [2]: ['Bloo', ['x', 'Mitsis', 'y']] [0]: Bloo [1]: ['x', 'Mitsis', 'y'] [3]: ['Foo', ['y', 'z', '1243']] [0]: Foo [1]: ['y', 'z', '1243'] [4]: ['y', '>', '28'] [5]: ['x', '<', '12'] [6]: ['x', '>', '3'] Re:('[a-z]+') ['abc'] Re:('[a-z]+') ['abc'] Re:('[a-z]+') ['abc'] Re:('[a-z]+') ................['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] {Re:('[a-z]+') | Re:('[a-z]+')} ['abc'] {Re:('[a-z]+') ^ Re:('[a-z]+')} ['abc'] {Re:('[a-z]*') | Re:('[a-z]*')} ['abc'] {Re:('[a-z]*') ^ Re:('[a-z]*')} ['abc'] Raised expected exception: ParseSyntaxException: Expected W:(0-9), found 'bad' (at char 4), (line:1, col:5) Raised expected exception: ParseSyntaxException: should raise here (at char 0), (line:1, col:1) Raised expected exception: ParseSyntaxException: Expected identifier, found end of text (at char 1), (line:1, col:2) [123, 456, 789] [123, 456, 789] 9 -> 9 -9 -> -9 --9 -> 9 -E -> -2.718281828459045 9 + 3 + 5 -> 17 9 + 3 / 11 -> 9.272727272727273 (9 + 3) -> 12 (9+3) / 11 -> 1.0909090909090908 9 - 12 - 6 -> -9 9 - (12 - 6) -> 3 2*3.14159 -> 6.28318 3.1415926535*3.1415926535 / 10 -> 0.9869604400525172 PI * PI / 10 -> 0.9869604401089358 PI*PI/10 -> 0.9869604401089358 PI^2 -> 9.869604401089358 round(PI^2) -> 10 6.02E23 * 8.048 -> 4.844896e+24 e / 3 -> 0.9060939428196817 sin(PI/2) -> 1.0 10+sin(PI/4)^2 -> 10.5 trunc(E) -> 2 trunc(-E) -> -2 round(E) -> 3 round(-E) -> -3 E^PI -> 23.140692632779263 exp(0) -> 1.0 exp(1) -> 2.718281828459045 2^3^2 -> 512 (2^3)^2 -> 64 2^3+2 -> 10 2^3+5 -> 13 2^9 -> 512 sgn(-2) -> -1 sgn(0) -> 0 sgn(0.1) -> 1 round(E, 3) -> 2.718 round(PI^2, 3) -> 9.87 sgn(cos(PI/4)) -> 1 sgn(cos(PI/2)) -> 0 sgn(cos(PI*3/4)) -> -1 +(sgn(cos(PI/4))) -> 1 -(sgn(cos(PI/4))) -> -1 -> ['BODY', False] ['BODY', False] - empty: False - startBody: ['BODY', False] - empty: False - tag: 'BODY' - tag: 'BODY' -> ['BODY', ['bgcolor', '#00FFCC'], False] ['BODY', ['bgcolor', '#00FFCC'], False] - bgcolor: '#00FFCC' - empty: False - startBody: ['BODY', ['bgcolor', '#00FFCC'], False] - bgcolor: '#00FFCC' - empty: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFCC'] [2]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFCC'] [2]: False -> ['BODY', ['bgcolor', '#00FFAA'], True] ['BODY', ['bgcolor', '#00FFAA'], True] - bgcolor: '#00FFAA' - empty: True - startBody: ['BODY', ['bgcolor', '#00FFAA'], True] - bgcolor: '#00FFAA' - empty: True - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFAA'] [2]: True - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFAA'] [2]: True -> ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False -> ['BODY', True] ['BODY', True] - empty: True - startBody: ['BODY', True] - empty: True - tag: 'BODY' - tag: 'BODY' -> [''] [''] - endBody: '' end tag /* * a block comment * */ typedef string[10] tenStrings; typedef sequence stringSeq; typedef sequence< sequence > stringSeqSeq; interface QoSAdmin { stringSeq method1(in string arg1, inout long arg2); stringSeqSeq method2(in string arg1, inout long arg2, inout long arg3); string method3(); }; tokens = [['typedef', 'string', '[', '10', ']', 'tenStrings', ';'], ['typedef', ['sequence', '<', 'string', '>'], 'stringSeq', ';'], ['typedef', ['sequence', '<', ['sequence', '<', 'string', '>'], '>'], 'stringSeqSeq', ';'], ['interface', 'QoSAdmin', '{', 'stringSeq', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', 'stringSeqSeq', 'method2', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ['inout', 'long', 'arg3'], ')', ';', 'string', 'method3', '(', ')', ';', '}', ';']] 59 /* * a block comment * */ typedef string[10] tenStrings; typedef /** ** *** **** * * a block comment * */ sequence /*comment inside an And */ stringSeq; /* */ /**/ /***/ /****/ typedef sequence< sequence > stringSeqSeq; interface QoSAdmin { stringSeq method1(in string arg1, inout long arg2); stringSeqSeq method2(in string arg1, inout long arg2, inout long arg3); string method3(); }; tokens = [['typedef', 'string', '[', '10', ']', 'tenStrings', ';'], ['typedef', ['sequence', '<', 'string', '>'], 'stringSeq', ';'], ['typedef', ['sequence', '<', ['sequence', '<', 'string', '>'], '>'], 'stringSeqSeq', ';'], ['interface', 'QoSAdmin', '{', 'stringSeq', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', 'stringSeqSeq', 'method2', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ['inout', 'long', 'arg3'], ')', ';', 'string', 'method3', '(', ')', ';', '}', ';']] 59 const string test="Test String\n"; const long a = 0; const long b = -100; const float c = 3.14159; const long d = 0x007f7f7f; exception TestException { string msg; sequence dataStrings; }; interface TestInterface { void method1(in string arg1, inout long arg2); }; tokens = [['const', 'string', 'test', '=', '"Test String\\n"', ';'], ['const', 'long', 'a', '=', '0', ';'], ['const', 'long', 'b', '=', '-100', ';'], ['const', 'float', 'c', '=', '3.14159', ';'], ['const', 'long', 'd', '=', '0x007f7f7f', ';'], 'exception', 'TestException', '{', ['string', 'msg', ';'], [['sequence', '<', 'string', '>'], 'dataStrings', ';'], '}', ';', ['interface', 'TestInterface', '{', 'void', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', '}', ';']] 60 module Test1 { exception TestException { string msg; ]; interface TestInterface { void method1(in string arg1, inout long arg2) raises (TestException); }; }; exception TestException ^ Expected {moduleDef | {moduleItem}...}, found 'exception' (at char 56), (line:4, col:15) module Test1 { exception TestException { string msg; }; }; tokens = ['module', 'Test1', '{', 'exception', 'TestException', '{', ['string', 'msg', ';'], '}', ';', '}', ';'] 13 Test ifOnlyIfOnly Match Literal ['if'] Match Keyword failed Test if(OnlyIfOnly) Match Literal ['if'] Match Keyword ['if'] Test if (OnlyIf Only) Match Literal ['if'] Match Keyword ['if'] Test IFOnlyIfOnly Match Literal failed Match Keyword failed Test If(OnlyIfOnly) Match Literal failed Match Keyword ['if'] Test iF (OnlyIf Only) Match Literal failed Match Keyword ['if'] Raised expected exception: ValueError: null string passed to Keyword; use Empty() instead ['0', '123', '321', 444] ['spam', 'eggs'] - first: 'spam' - second: 'eggs' [] ['123', '456', 'ABC', 'DEF'] - ints: ['123', '456'] - words: ['ABC', 'DEF'] ['123', 'ABC', 'DEF'] - ints: ['123', '456'] ...........['List', '__add__', '__annotations__', '__bool__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattr__', '__getattribute__', '__getitem__', '__getnewargs__', '__getstate__', '__gt__', '__hash__', '__iadd__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__module__', '__ne__', '__new__', '__radd__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__setattr__', '__setitem__', '__setstate__', '__sizeof__', '__slots__', '__str__', '__subclasshook__', '__weakref__', '_all_names', '_asStringList', '_modal', '_name', '_null_values', '_parent', '_tokdict', '_toklist', 'append', 'asDict', 'asList', 'as_dict', 'as_list', 'clear', 'copy', 'dump', 'extend', 'from_dict', 'get', 'getName', 'get_name', 'haskeys', 'insert', 'items', 'keys', 'pop', 'pprint', 'trios', 'values'] ['spam', 'eggs', 'foo', 'bar'] ['abc', 'def', 'ghi', 'ihg', 'fed', 'cba'] [['123', 456, ['789', 789]]] - trios: ['123', 456, ['789', 789]] - first: '123' - second: 456 - third: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: 123 [1]: 456 [2]: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: ['123', 456, ['789', 789]] - first: '123' - second: 456 - third: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: 123 [1]: 456 [2]: ['789', 789] - threeInt: 789 - threeStr: '789' ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'] ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'] ['a', 'd', 'h', 'c', 'f', 'j', 'A', 'e', 'B', 'b', 'C', 'D', 'E', 'F', 'g', 'i', 'G', 'H', 'I', 'J'] ['a', 'd', 'h', 'c', 'f', 'j', 'A', 'e', 'B', 'b', 'C', 'D', 'E', 'F', 'g', 'i', 'G', 'H', 'I', 'J'] Pre-insert [[1, 2, 3], 'dice', ['rolled', 'first', 'try']] - additional: ['rolled', 'first', 'try'] - label: 'dice' - nums: [1, 2, 3] [0]: [1, 2, 3] [1]: dice [2]: ['rolled', 'first', 'try'] Post-insert [[1, 2, 3], 6, 'dice', ['rolled', 'first', 'try']] - additional: ['rolled', 'first', 'try'] - label: 'dice' - nums: [1, 2, 3] [0]: [1, 2, 3] [1]: 6 [2]: dice [3]: ['rolled', 'first', 'try'] [ 1,2,3,4,5,6 ] [['[', '1', '2', '3', '4', '5', '6', ']']] - LIST: ['[', '1', '2', '3', '4', '5', '6', ']'] - END_LIST: ']' - LIST_VALUES: ['1', '2', '3', '4', '5', '6'] - LIT_NUM: ['1', '2', '3', '4', '5', '6'] - START_LIST: '[' [0]: ['[', '1', '2', '3', '4', '5', '6', ']'] - END_LIST: ']' - LIST_VALUES: ['1', '2', '3', '4', '5', '6'] - LIT_NUM: ['1', '2', '3', '4', '5', '6'] - START_LIST: '[' "Golden Gate Bridge" 37.819722 -122.478611 height=746 span=4200 ['Golden Gate Bridge', [37.819722, -122.478611, ['height', 746], ['span', 4200]]] - data: [37.819722, -122.478611, ['height', 746], ['span', 4200]] - height: 746 - lat: 37.819722 - long: -122.478611 - span: 4200 [0]: 37.819722 [1]: -122.478611 [2]: ['height', 746] [3]: ['span', 4200] - name: 'Golden Gate Bridge' [0]: Golden Gate Bridge [1]: [37.819722, -122.478611, ['height', 746], ['span', 4200]] - height: 746 - lat: 37.819722 - long: -122.478611 - span: 4200 [0]: 37.819722 [1]: -122.478611 [2]: ['height', 746] [3]: ['span', 4200] ['a', ['href', 'blah'], False] - empty: False - href: 'blah' - startA: ['a', ['href', 'blah'], False] - empty: False - href: 'blah' - tag: 'a' [0]: a [1]: ['href', 'blah'] [2]: False - tag: 'a' [0]: a [1]: ['href', 'blah'] [2]: False [] [] [1, 2, 3, 4, 5] ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 0 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 1 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 2 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 3 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 4 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 5 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 0 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 1 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 2 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 3 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 4 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 5 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 0 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 1 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 2 [['BABBAB']] [0]: ['BABBAB'] ........................Test pickle dump protocol 3 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 4 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 5 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 0 ['BABBAB'] Test pickle dump protocol 1 ['BABBAB'] Test pickle dump protocol 2 ['BABBAB'] Test pickle dump protocol 3 ['BABBAB'] Test pickle dump protocol 4 ['BABBAB'] Test pickle dump protocol 5 ['BABBAB'] Test pickle dump protocol 0 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 1 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 2 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 3 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 4 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 5 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 0 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 1 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 2 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 3 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 4 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 5 ['BABBAB'] - name: ['BABBAB'] ParseResults(['test', 'blub'], {'word': 'blub'}) blub {'word': 'blub'} ParseResults(['test', 'blub'], {'word': ['test', 'blub']}) ['test', 'blub'] {'word': ['test', 'blub']} ['abc'] - A: 'abc' Raised expected exception: AttributeError: __xyz__ ['5', '4', '3', '2', '1'] {'eggs', 'spam'} not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] ParseResults([('A', 'Z')], {'Achar': ('A', 'Z')}) ('A', 'Z') ['/', [['respectaccents']]] ('/respectaccents/ignoreaccents', 0) ['/', [['ignoreaccents']]] ('/respectaccents/ignoreaccents', 15) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 1)}, '_info_': ('/respectaccents/ignoreaccents', 1)}, '/': '', ParseResults(['respectaccents'], {'_info_': ('/respectaccents/ignoreaccents', 1)}): '', '_info_': ('/respectaccents/ignoreaccents', 0)} ('/respectaccents/ignoreaccents', 0) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 16)}, '_info_': ('/respectaccents/ignoreaccents', 16)}, '/': '', ParseResults(['ignoreaccents'], {'_info_': ('/respectaccents/ignoreaccents', 16)}): '', '_info_': ('/respectaccents/ignoreaccents', 15)} ('/respectaccents/ignoreaccents', 15) ['/', [['respectaccents']]] ('/respectaccents/ignoreaccents', 0) ['/', [['ignoreaccents']]] ('/respectaccents/ignoreaccents', 15) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 1)}, '_info_': ('/respectaccents/ignoreaccents', 1)}, '/': '', ParseResults(['respectaccents'], {'_info_': ('/respectaccents/ignoreaccents', 1)}): '', '_info_': ('/respectaccents/ignoreaccents', 0)} ('/respectaccents/ignoreaccents', 0) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 16)}, '_info_': ('/respectaccents/ignoreaccents', 16)}, '/': '', ParseResults(['ignoreaccents'], {'_info_': ('/respectaccents/ignoreaccents', 16)}): '', '_info_': ('/respectaccents/ignoreaccents', 15)} ('/respectaccents/ignoreaccents', 15) SELECT * from XYZZY, ABC ['select', '*', 'from', 'XYZZY', 'ABC', ''] 6 select * from SYS.XYZZY ['select', '*', 'from', 'SYS.XYZZY', ''] 5 Select A from Sys.dual ['select', 'A', 'from', 'SYS.DUAL', ''] 5 Select A,B,C from Sys.dual ['select', 'A', 'B', 'C', 'from', 'SYS.DUAL', ''] 7 Select A, B, C from Sys.dual ['select', 'A', 'B', 'C', 'from', 'SYS.DUAL', ''] 7 Select A, B, C from Sys.dual, Table2 ['select', 'A', 'B', 'C', 'from', 'SYS.DUAL', 'TABLE2', ''] 8 Select A from Sys.dual where a in ('RED','GREEN','BLUE') ['select', 'A', 'from', 'SYS.DUAL', 'where', 'A', 'in', '(', "'RED'", "'GREEN'", "'BLUE'", ')'] 12 Select A from Sys.dual where a in ('RED','GREEN','BLUE') and b in (10,20,30) ['select', 'A', 'from', 'SYS.DUAL', 'where', 'A', 'in', '(', "'RED'", "'GREEN'", "'BLUE'", ')', 'and', 'B', 'in', '(', 10, 20, 30, ')'] 20 Select A,b from table1,table2 where table1.id eq table2.id -- test out comparison operators ['select', 'A', 'B', 'from', 'TABLE1', 'TABLE2', 'where', 'TABLE1.ID', 'eq', 'TABLE2.ID'] 10 Re:('[-+][0-9]+') correctly failed to match '1234 foo' Re:('[-+][0-9]+') correctly failed to match ' +foo' Re:('[0-9]+') correctly failed to match 'abc' Re:('[0-9]+') correctly failed to match '+123 foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match 'foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match '"foo bar\'' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match '\'foo bar"' Re:('[-+][0-9]+') correctly matched ' +123' Re:('[-+][0-9]+') correctly matched '+123' Re:('[-+][0-9]+') correctly matched '+123 foo' Re:('[-+][0-9]+') correctly matched '-0 foo' Re:('[0-9]+') correctly matched '123 foo' Re:('[0-9]+') correctly matched '0 foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly matched '"foo"' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly matched "'foo bar' baz" Re:('[A-Z]+') correctly failed to match 'blah' Re:('[A-Z]+') correctly matched 'BLAH' Re:('("(?P[^\"]*)")') correctly matched '"foo bar" baz' ['"zork"'] [('content', 'zork')] zork lets try an invalid RE successfully rejected an invalid RE: invalid pattern ('("[^"]*")|(\'[^\']*\'') passed to Regex Raised expected exception: ValueError: null string passed to Regex; use Empty() instead ['spam', 'eggs', 'suf'] ['pre', 'spam', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: ParseException: Missing one or more required elements ('and'), found ' ' (at char 4), (line:1, col:5) ['spam', 'and', 'eggs'] - first: 'spam' - second: 'eggs' Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement ['spam', 'eggs'] ['pre', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement ['abd', 'def', 'ghi', 'jkl'] ['abd', 'def', 'ghi', 'jkl'] Raised expected exception: TypeError: cannot multiply ParserElement and str objects Raised expected exception: TypeError: cannot multiply ParserElement and str objects ['spam', '11', '22'] - first: 'spam' - second: ['11', '22'] ['spam', '111', '222'] - first: 'spam' - second: ['111', '222'] ['spam'] - first: 'spam' ['spam', '12', '23', '34'] - first: 'spam' - second: ['12', '23', '34'] ['spam', '45'] - first: 'spam' - second: ['45'] ['spam', '100'] - first: 'spam' - second: ['100'] ['spam', '100', '200', '300'] - first: 'spam' - second: ['100', '200', '300'] ['spam', '1', '2'] - first: 'spam' - second: ['1', '2'] ['spam', '1', '2', '3'] - first: 'spam' - second: ['1', '2', '3'] Raised expected exception: ValueError: second tuple value must be greater or equal to first tuple value Raised expected exception: TypeError: cannot multiply ParserElement and (str,str) objects Raised expected exception: TypeError: cannot multiply ParserElement and (str,NoneType) objects Raised expected exception: TypeError: only 1 or 2 index arguments supported ((2, 3, 4)) ['spam', 'eggs', 'suf'] ['pre', 'spam', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement {{word {{word_1 word} ^ word}} ^ {word word word}} foo bar temp -> ['foo', 'bar', 'temp'] EXP: AAA..................................>>entering convert_to_int(line: '132', 0, ParseResults(['132'], {})) <>entering (line: '132', 0, ParseResults([132], {})) < (ret: 1320) >>entering Z(line: '132', 0, ParseResults([1320], {})) <] ('123', '456', 'lsdfkj') [('123', '456', 'lsdfkj')] Raised expected exception: TypeError: Regex may only be constructed with a string or a compiled RE object test sub with string This is the title: 'Richard III' test sub with re string

This is the main heading

This is the sub-heading

test sub with re string (Regex returns re.match)

This is the main heading

This is the sub-heading

test sub with callable that return str I want this in upcase: WHAT? WHAT? Raised expected exception: TypeError: cannot use sub() with a callable with Regex(asMatch=True) Raised expected exception: TypeError: cannot use sub() with Regex(asGroupList=True) Raised expected exception: TypeError: cannot use sub() with Regex(asGroupList=True) verify behavior with repeated tokens when packrat parsing is enabled abc 12 abc No literal match in abc12aabc c 12 c bc 12 bc ['abc', '12', 'abc'] No expression match in abc12cba No expression match in abc12abcdef {word-num-word ':' (prev) word-num-word} match: ['abc', '12', 'abc', ':', 'abc', '12', 'abc'] No expression match in abc12cba:abc12abc No expression match in abc12abc:abc12abcdef ['1', ':', '1'] No match in 1:10 ['12'] ['aaa', 'ddd', '12', 'aaa', 'ddd'] [['aaa', 'ddd'], ['aaa', 'ddd']] [0]: ['aaa', 'ddd'] [1]: ['aaa', 'ddd'] ['aaa', 'aaa'] ['bam', 'boo'] ['boo', 'bam'] BD -> Expected {'A' | {'B' 'C'} | 'E'}, found 'D' (at char 1), (line:1, col:2) [1, 2, 3, 4, 6, 8, 9, 10, 16] [1, 2, 3, 4, 6, 8, 9, 10, 16] [11] [11] 1/2 eval: 0.5 1/0 [1, '/', 0] - denominator: 0 - numerator: 1 eval_fraction failed: ZeroDivisionError: division by zero True ['129.6.15.28', '129.6.15.29', '132.163.4.101', '132.163.4.102', '132.163.4.103'] [(ParseResults([], {}), 5, 6)] Before parsing with setBreak: False After parsing with setBreak: True a | b | c d | e | f {a | b | c | d | e | f} Forward: + | - term + | - term Forward: ?: term ?: term Forward: {a | b | c [{d | e | f : ...}]...} int [, int]... (len) int... nested () expression (, ) (, ) common HTML entity lsdjkf &'"&xyzzy; Raised expected exception: TypeError: parse actions must be callable ['A'] - Achar: 'A' verify behavior of setResultsName with OneOrMore and ZeroOrMore ['test', 'test'] ['test', 'test'] ['test', 'test'] ['test', 'test'] ['test', 'test'] Received expected exception: just one arg (at char 0), (line:1, col:1) ['some text /* comment with ; in */', ';', 'working'] ['some text /* comment with ; in */some other stuff', ';', 'working'] ['some text /* comment with ; in */', ';', 'working'] Raised expected exception: ParseException: Expected ';', found ' ' (at char 37), (line:1, col:38) Raised expected exception: Exception: use of `...` expression without following SkipTo target expression verify proper streamline logic {{{'A' 'B'} 'C'} 'D'} {'A' 'B' 'C' 'D'} ['123'] ['123'] ['123'] ['123'] ['123'] ['123'] Raised expected exception: ParseException: Expected W:(0-9), found ' ' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected '123', found ' ' (at char 0), (line:1, col:1) {StringStart W:(a-e) StringEnd} 'aaa' ['aaa'] {LineStart W:(a-e) StringEnd} 'aaa' ['aaa'] {LineStart W:(a-e) StringEnd} '\naaa' ['aaa'] {LineStart W:(a-e) StringEnd} ' aaa' ['aaa'] {LineStart W:(a-e) StringEnd} '\n aaa' ['aaa'] {AtLineStart:(W:(a-e)) StringEnd} ' aaa' Raised expected exception: ParseException: not found at line start, found 'aaa' (at char 3), (line:1, col:4) {AtLineStart:(W:(a-e)) StringEnd} '\n aaa' Raised expected exception: ParseException: not found at line start, found 'aaa' (at char 4), (line:2, col:4) garbage;DOB 10-10-2010;more garbage ID PARI12345678;more garbage ID:PARI12345678 DOB:10-10-2010 INFO: ID:PARI12345678 DOB:10-10-2010 INFO: ['DOB', '10-10-2010'] - dob: '10-10-2010' ['ID', 'PARI12345678'] - id: 'PARI12345678' garbage;ID PARI12345678;more garbage DOB 10-10-2010;more garbage ID:PARI12345678 DOB:10-10-2010 INFO: ID:PARI12345678 DOB:10-10-2010 INFO: ['ID', 'PARI12345678'] - id: 'PARI12345678' ['DOB', '10-10-2010'] - dob: '10-10-2010' garbage;DOB 10-10-2010 ID: DOB:10-10-2010 INFO: ID: DOB:10-10-2010 INFO: ['DOB', '10-10-2010'] - dob: '10-10-2010' garbage;ID PARI12345678;more garbage- I am cool ID:PARI12345678 DOB: INFO: I am cool ID:PARI12345678 DOB: INFO: I am cool ['ID', 'PARI12345678'] - id: 'PARI12345678' ['-', ' I am cool'] - info: ' I am cool' 00 11 22 aa FF 0a 0d 1a [0, 17, 34, 170, 255, 10, 13, 26] I wish to buy 12345 shares of Acme Industries (as a gift to my (ex)wife) I 12,345 Acme Industries asagifttomyexwife 1 1234567890 1:| 2:| 3:check aaa| 1 1234567890 1:| 2:| 3:CHECK aaa| 1 2 12345678901234567890 1: check aaa| 1 2 12345678901234567890 1: CHECK aaa| [['rint'], ['a100']] 1 1234567890 1: check| 1 1234567890 1: CHECK| Original: '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' Should match: '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' aaa 333 ['aaa', '333'] b 1 ['b', '1'] ababab 32123 ['ababab', '32123'] 123 [123] 456 [456] ................... abc abc ^ ParseException: Expected {{integer}}, found 'abc' (at char 0), (line:1, col:1) pyparsing.core.Or - {{integer}} FAIL: Expected {{integer}}, found 'abc' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4025, in parseImpl raise maxException 101222 101222 ['Καλημέρα', ',', 'κόσμε', '!'] [['şehir', 'İzmir'], ['ülke', 'Türkiye'], ['nüfus', 4279677]] - nüfus: 4279677 - ülke: 'Türkiye' - şehir: 'İzmir' [0]: ['şehir', 'İzmir'] [1]: ['ülke', 'Türkiye'] [2]: ['nüfus', 4279677] 韂ćἸ֤ॡ똥>跣Ꚏܾฆ掇ŁἩגढ캭ä箕ᲆݠ์紥öᾷגּॲ뎻|跛Ӻܡร隃+θא꣡훜X褝ѵژ๘僂Ìίשּׂो쪧ú䨥ⷩڠศ歡ųΎל४큁b曪ⷺۮฮ迤ÖΒטच쭚¾葩ᲈٟฬ蚼ĚΡ֞ऎ퇙Í緳ѯۨฟ� ['韂ćἸ֤ॡ똥>跣Ꚏܾฆ掇ŁἩגढ캭ä箕ᲆݠ์紥öᾷגּॲ뎻|跛Ӻܡร隃+θא꣡훜X褝ѵژ๘僂Ìίשּׂो쪧ú䨥ⷩڠศ歡ųΎל४큁b曪ⷺۮฮ迤ÖΒטच쭚¾葩ᲈٟฬ蚼ĚΡ֞ऎ퇙Í緳ѯۨฟ�'] [[10, 'print', 123, ';'], [20, 'print', 234, ';', 567, ';'], [30, 'print', 890]] [0]: [10, 'print', 123, ';'] [1]: [20, 'print', 234, ';', 567, ';'] [2]: [30, 'print', 890] [['abc', 'abc', 'abc']] [0]: ['abc', 'abc', 'abc'] [["'def'", "'def'", "'def'"]] [0]: ["'def'", "'def'", "'def'"] [[123, 123, 123]] [0]: [123, 123, 123] [[4.56, 4.56, 4.56]] [0]: [4.56, 4.56, 4.56] [['a_bc', 'a_bc', 'a_bc']] [0]: ['a_bc', 'a_bc', 'a_bc'] [['abc', '\n'], ['abc', '\n'], ['abc']] [0]: ['abc', '\n'] [1]: ['abc', '\n'] [2]: ['abc'] [["'def'", '\n'], ["'def'", '\n'], ["'def'"]] [0]: ["'def'", '\n'] [1]: ["'def'", '\n'] [2]: ["'def'"] [[123, '\n'], [123, '\n'], [123]] [0]: [123, '\n'] [1]: [123, '\n'] [2]: [123] [[4.56, '\n'], [4.56, '\n'], [4.56]] [0]: [4.56, '\n'] [1]: [4.56, '\n'] [2]: [4.56] [['a_bc', '\n'], ['a_bc', '\n'], ['a_bc']] [0]: ['a_bc', '\n'] [1]: ['a_bc', '\n'] [2]: ['a_bc'] [['abc', 'abc', 'abc']] [0]: ['abc', 'abc', 'abc'] [["'def'", "'def'", "'def'"]] [0]: ["'def'", "'def'", "'def'"] [[123, 123, 123]] [0]: [123, 123, 123] [[4.56, 4.56, 4.56]] [0]: [4.56, 4.56, 4.56] [['a_bc', 'a_bc', 'a_bc']] [0]: ['a_bc', 'a_bc', 'a_bc'] verify behavior of validate() Forward: Group:({'A' | : ...}) RecursiveGrammarException: [Forward: Group:({'A' | : ...}), Group:({'A' | : ...}), {'A' | Forward: Group:({'A' | : ...})}, Forward: Group:({'A' | : ...})] Forward: {['A'] : ...} RecursiveGrammarException: [Forward: {['A'] : ...}, {['A'] Forward: {['A'] : ...}}, Forward: {['A'] : ...}] ('VUTSRQPONMLKJIHGFEDCBA', 5, ParseResults(['Q'], {})) ['V', 'U', 'T', 'S', 'R', 'Q', 'P', 'O', 'N', 'M', 'L', 'K', 'J', 'I', 'H', 'G', 'F', 'E', 'D', 'C', 'B', 'A'] ('VUTSRQPONMLKJIHGFEDCBA', 5, ParseResults(['Q'], {})) make a ClassAsPAStarNew ('VUTSRQPONMLKJIHGFEDCBA', 17, ParseResults(['E'], {})) making a ClassAsPA1 ['V', 'U', 'T', 'S', 'R', 'Q', 'P', 'O', 'N', 'M', 'L', 'K', 'J', 'I', 'H', 'G', 'F', 'E', 'D', 'C', 'B', 'A'] verify that using '<<' operator with a Forward raises a warning if there is a dangling '|' operator unsafe << and |, but diag not enabled, should not warn unsafe << and |, should warn unsafe << and |, should warn safe <<= and |, should not warn safe << and (|), should not warn [['a', ['b', 'x'], False, '2', ''], ['a', ['b', 'x'], False, '3', '']] [0]: ['a', ['b', 'x'], False, '2', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '2' [0]: a [1]: ['b', 'x'] [2]: False [3]: 2 [4]: [1]: ['a', ['b', 'x'], False, '3', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '3' [0]: a [1]: ['b', 'x'] [2]: False [3]: 3 [4]: [['a', ['b', 'x'], False, '2', ''], ['a', ['b', 'x'], False, '3', '']] [0]: ['a', ['b', 'x'], False, '2', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '2' [0]: a [1]: ['b', 'x'] [2]: False [3]: 2 [4]: [1]: ['a', ['b', 'x'], False, '3', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '3' [0]: a [1]: ['b', 'x'] [2]: False [3]: 3 [4]: [['a', ['class', 'boo'], False, '8', '']] [0]: ['a', ['class', 'boo'], False, '8', ''] - class: 'boo' - empty: False - endA: '' - tag: 'a' - value: '8' [0]: a [1]: ['class', 'boo'] [2]: False [3]: 8 [4]: ABC DEF GHI [['D', 'G'], ['A'], ['C', 'F'], ['I'], ['E'], ['A', 'I']] JKL MNO PQR [['J', 'M', 'P'], [], ['L', 'R'], ['O'], [], ['O']] STU VWX YZ [['S', 'V'], ['Y'], ['X', 'Z'], ['U'], [], ['U', 'Y']] ABC DEF GHI JKL MNO PQR STU VWX YZ [['D', 'G', 'J', 'M', 'P', 'S', 'V'], ['A', 'Y'], ['C', 'F', 'L', 'R', 'X', 'Z'], ['I', 'O', 'U'], ['E'], ['A', 'I', 'O', 'U', 'Y']] [['Hello'], ['Mr'], ['Ed'], ["it's"], ['Wilbur']] ['ABCDEMNXYZABCDEMNXYZABCDEMNXYZ'] Testing escape char: \ -> W:(\]) re: '[\\\]]+') Match ']]\\]]\\]\]\\]]\' -> True Testing escape char: \ -> W:([\) re: '[\[\\]+') Match '\[\[\[\[\\\[[\\[' -> True Testing escape char: \ -> W:(\]) re: '[\\\]]+') Match '\\]]\]]]\\]\]\]]' -> True Testing escape char: \ -> W:(\, A-Z) re: '\\[A-Z]*') Match '\PWKIHPQAANDXZXHB' -> True Testing escape char: \ -> W:(\, A-Z) re: '\\[A-Z]*') Match '\SWPMMXRCSTDCTKKN' -> True Testing escape char: ^ -> W:(^_) re: '[\^_]+') Match '^___^^^_^__^^__^' -> True Testing escape char: ^ -> W:(]^) re: '[\]\^]+') Match ']^^^^^]^^^^]]^^^' -> True Testing escape char: ^ -> W:(^_) re: '[\^_]+') Match '^_^^__^^^_^____^' -> True Testing escape char: ^ -> W:(^, A-Z) re: '\^[A-Z]*') Match '^DKXZLOXIXJGIXNQA' -> True Testing escape char: ^ -> W:(^, A-Z) re: '\^[A-Z]*') Match '^ZRVCAKPSIOFXWZVT' -> True Testing escape char: - -> W:(-.) re: '[\-.]+') Match '---...--.-..--..' -> True Testing escape char: - -> W:(,-) re: '[,\-]+') Match '--,-,--,---,,,-,' -> True Testing escape char: - -> W:(-.) re: '[\-.]+') Match '-.....--.-.-....' -> True Testing escape char: - -> W:(-, A-Z) re: '\-[A-Z]*') Match '-CAHRNDUQNHCZCQZO' -> True Testing escape char: - -> W:(-, A-Z) re: '\-[A-Z]*') Match '-AVHDNRDNWKIOULEE' -> True Testing escape char: ] -> W:(]^) re: '[\]\^]+') Match '^^]^^]^]]]]]^]]^' -> True Testing escape char: ] -> W:(\]) re: '[\\\]]+') Match '\]]]]]]\\]]\]]]\' -> True Testing escape char: ] -> W:(]^) re: '[\]\^]+') Match '^]]^]]]^^]^]^]]^' -> True Testing escape char: ] -> W:(], A-Z) re: '\][A-Z]*') Match ']IRCCOWHQDAZOSXOC' -> True Testing escape char: ] -> W:(], A-Z) re: '\][A-Z]*') Match ']KPROEJYNBWKUHVUV' -> True Testing escape char: [ -> W:([\) re: '[\[\\]+') Match '\\\\\\\\\[[[[\\\' -> True Testing escape char: [ -> W:(Z[) re: '[Z\[]+') Match 'ZZZZ[[[[ZZZZ[[Z[' -> True Testing escape char: [ -> W:([\) re: '[\[\\]+') Match '[[\[\\[[\[[\[[[\' -> True Testing escape char: [ -> W:([, A-Z) re: '\[[A-Z]*') Match '[JNWMYHEWJZXCVECU' -> True Testing escape char: [ -> W:([, A-Z) re: '\[[A-Z]*') Match '[DQNHFMAXEOMGJUMM' -> True Testing escape char: * -> W:(*+) re: '[*+]+') Match '+*+*+++++**+**++' -> True Testing escape char: * -> W:()*) re: '[)*]+') Match ')**))*))***))*)*' -> True Testing escape char: * -> W:(*+) re: '[*+]+') Match '*+*+*++***+****+' -> True Testing escape char: * -> W:(*, A-Z) re: '\*[A-Z]*') Match '*HTPQPGSPFSTWBWWX' -> True Testing escape char: * -> W:(*, A-Z) re: '\*[A-Z]*') Match '*ENBYZDPKECMIZYHT' -> True Testing escape char: + -> W:(+,) re: '[+,]+') Match '++,++,+,,,,+,+,,' -> True ....Testing escape char: + -> W:(*+) re: '[*+]+') Match '+*+**+**++**+**+' -> True Testing escape char: + -> W:(+,) re: '[+,]+') Match ',+++++,+,,+++,,+' -> True Testing escape char: + -> W:(+, A-Z) re: '\+[A-Z]*') Match '+KTWQRBERCLBBXZUG' -> True Testing escape char: + -> W:(+, A-Z) re: '\+[A-Z]*') Match '+ZUPVTRDLFMBOIXDV' -> True Testing escape char: . -> W:(./) re: '[./]+') Match '/.../..///././/.' -> True Testing escape char: . -> W:(-.) re: '[\-.]+') Match '-.-.-.----..-.-.' -> True Testing escape char: . -> W:(./) re: '[./]+') Match '.././/..//.//../' -> True Testing escape char: . -> W:(., A-Z) re: '\.[A-Z]*') Match '.PLQOZIFNAXCTANQJ' -> True Testing escape char: . -> W:(., A-Z) re: '\.[A-Z]*') Match '.QZYFRYNYEUEJUWAE' -> True Testing escape char: ? -> W:(?@) re: '[?@]+') Match '?@?@?@@@@@@?@@?@' -> True Testing escape char: ? -> W:(>?) re: '[>?]+') Match '?>>?>?>??>?>>?>>' -> True Testing escape char: ? -> W:(?@) re: '[?@]+') Match '??@?@?@?@???@@?@' -> True Testing escape char: ? -> W:(?, A-Z) re: '\?[A-Z]*') Match '?JKUDIIMDHQXDKFKZ' -> True Testing escape char: ? -> W:(?, A-Z) re: '\?[A-Z]*') Match '?IVNDTWYXGOUGCGVX' -> True ['p', 'q', 'r', 'False'] Raised expected exception: ParseException: Expected {(A-Za-z) | True | False}, found 'abc' (at char 0), (line:1, col:1) {'A' W:(0-9)} ... {'A' W:(0-9)} ... {'A' W:(0-9){1,6}} ... {'A' W:(0-9){1,6}} ... {'A' W:(0-9)} ... {'A' W:(0-9){2,...}} ... {'A' W:(0-9){2,6}} ... W:(A, 0-9) A[0-9]* W:(A, 0-9) A[0-9]* W:(A, 0-9){1,6} A[0-9]{0,5} W:(A, 0-9){1,6} A[0-9]{0,5} W:(A, 0-9) A[0-9]* W:(A, 0-9){2,...} ... W:(A, 0-9){2,6} ... W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9){1,6} [A-Za-z][0-9]{0,5} W:(A-Za-z, 0-9){1,6} [A-Za-z][0-9]{0,5} W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9){2,...} ... W:(A-Za-z, 0-9){2,6} ... ..................... Raised expected exception: ValueError: cannot specify a minimum length < 1; use Opt(Word()) if zero-length word is permitted Packrat enabled: True Packrat cache: _FifoCache 128 [[7], [9]] [[1, 4], [2, 4], [4, 3]] [[1, 4], [2, 4]] detected fatal condition ['balloon', '25'] - item: 'balloon' - qty: '25' ['rucksack', 49] - item: 'rucksack' - qty: 49 ['AAA', ' this line'] ['AAA', ' and this line'] [] [] d | aA | a | b | c d | Aa | a | b | c ['aA', 'aA', 'aA', 'aA'] ['Aa', 'Aa', 'Aa', 'Aa'] [[1, '?', 1, ':', 0, '?', 1, ':', 0]] [0]: [1, '?', 1, ':', 0, '?', 1, ':', 0] [[1, '?', 1, ':', [0, '?', 1, ':', 0]]] [0]: [1, '?', 1, ':', [0, '?', 1, ':', 0]] [0]: 1 [1]: ? [2]: 1 [3]: : [4]: [0, '?', 1, ':', 0] ['B', 'B', 'C', 'A', 'D'] ['B'] ['bcdfghjklmnpqrstvwxyz'] Raised expected exception: ValueError: cannot specify a minimum length < 1; use Opt(CharsNotIn()) if zero-length char group is permitted ['bcdfg'] ['bcdfghjklm'] Raised expected exception: ParseException: Expected !W:(AEIOU), found end of text (at char 21), (line:1, col:22) ATCATCGAATGGA ['ATCATCGAATGGA'] - mismatches: [] - original: 'ATCATCGAATGGA' XTCATCGAATGGX ['XTCATCGAATGGX'] - mismatches: [0, 12] - original: 'ATCATCGAATGGA' ATCATCGAAXGGA ['ATCATCGAAXGGA'] - mismatches: [9] - original: 'ATCATCGAATGGA' ATCAXXGAATGGA ['ATCAXXGAATGGA'] - mismatches: [4, 5] - original: 'ATCATCGAATGGA' ATCAXXGAATGXA ATCAXXGAATGXA ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ATCAXXGAATGG ATCAXXGAATGG ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ATCATCGAATGGA match XTCATCGAATGGX match ATCATCGAAXGGA match ATCAXXGAATGGA match ATCAXXGAATGXA exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) ATCAXXGAATGG exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) atcatcgaatgga ['atcatcgaatgga'] - mismatches: [] - original: 'ATCATCGAATGGA' xtcatcgaatggx ['xtcatcgaatggx'] - mismatches: [0, 12] - original: 'ATCATCGAATGGA' atcatcgaaxgga ['atcatcgaaxgga'] - mismatches: [9] - original: 'ATCATCGAATGGA' atcaxxgaatgga ['atcaxxgaatgga'] - mismatches: [4, 5] - original: 'ATCATCGAATGGA' atcaxxgaatgxa atcaxxgaatgxa ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) atcaxxgaatgg atcaxxgaatgg ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) atcatcgaatgga match xtcatcgaatggx match atcatcgaaxgga match atcaxxgaatgga match atcaxxgaatgxa exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) atcaxxgaatgg exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) ['*', '*', '*', '*'] [' ', 'test'] - indent: ' ' - word: 'test' [' ', 'test'] - word: 'test' verify processing of C and HTML comments AA:BB:CC:DD:EE:FF ['AA:BB:CC:DD:EE:FF'] AA.BB.CC.DD.EE.FF ['AA.BB.CC.DD.EE.FF'] AA-BB-CC-DD-EE-FF ['AA-BB-CC-DD-EE-FF'] # mixed delimiters AA.BB:CC:DD:EE:FF AA.BB:CC:DD:EE:FF ^ ParseException: Expected MAC address, found 'AA' (at char 0), (line:1, col:1) pyparsing.core.Regex - MAC address FAIL: Expected MAC address, found 'AA' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 0.0.0.0 ['0.0.0.0'] 1.1.1.1 ['1.1.1.1'] 127.0.0.1 ['127.0.0.1'] 1.10.100.199 ['1.10.100.199'] 255.255.255.255 ['255.255.255.255'] # out of range value 256.255.255.255 256.255.255.255 ^ ParseException: Expected IPv4 address, found '256' (at char 0), (line:1, col:1) pyparsing.core.Regex - IPv4 address FAIL: Expected IPv4 address, found '256' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 2001:0db8:85a3:0000:0000:8a2e:0370:7334 ['2001:0db8:85a3:0000:0000:8a2e:0370:7334'] 2134::1234:4567:2468:1236:2444:2106 ['2134::1234:4567:2468:1236:2444:2106'] 0:0:0:0:0:0:A00:1 ['0:0:0:0:0:0:A00:1'] 1080::8:800:200C:417A ['1080::8:800:200C:417A'] ::A00:1 ['::A00:1'] # loopback address ::1 ['::1'] # the null address :: ['::'] # ipv4 compatibility form ::ffff:192.168.0.1 ['::ffff:192.168.0.1'] # too few values 1080:0:0:0:8:800:200C 1080:0:0:0:8:800:200C ^ ParseException: Expected IPv6 address, found end of text (at char 21), (line:1, col:22) pyparsing.core.Combine - IPv6 address pyparsing.core.MatchFirst - IPv6 address pyparsing.core.And - full IPv6 address pyparsing.core.And - {':' hex_integer} pyparsing.core._SingleCharLiteral - ':' FAIL: Expected IPv6 address, found end of text (at char 21), (line:1, col:22) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4375, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4136, in parseImpl raise maxException File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4114, in parseImpl return e._parse( ^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 819, in _parseNoCache raise ParseException(instring, len_instring, self.errmsg, self) . # too many ::'s, only 1 allowed 2134::1234:4567::2444:2106 2134::1234:4567::2444:2106 ^ ParseException: Expected end of text, found ':' (at char 15), (line:1, col:16) pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd FAIL: Expected end of text, found ':' (at char 15), (line:1, col:16) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1135, in parse_string se._parse(instring, loc) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3534, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 100 [100] -100 [-100] +100 [100] 3.14159 [3.14159] 6.02e23 [6.02e+23] 1e-12 [1e-12] 1e12 [1000000000000.0] -1e12 [-1000000000000.0] 3.14159 [3.14159] 6.02e23 [6.02e+23] 100 [100.0] -100 [-100.0] +100 [100.0] 3.14159 [3.14159] 6.02e23 [6.02e+23] 1e-12 [1e-12] 1997 ['1997'] - day: None - month: None - year: '1997' 1997-07 ['1997-07'] - day: None - month: '07' - year: '1997' 1997-07-16 ['1997-07-16'] - day: '16' - month: '07' - year: '1997' 1997-07-16 [datetime.date(1997, 7, 16)] 1997-07-16T19:20+01:00 ['1997-07-16T19:20+01:00'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: None - tz: '+01:00' - year: '1997' 1997-07-16T19:20:30+01:00 ['1997-07-16T19:20:30+01:00'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30' - tz: '+01:00' - year: '1997' 1997-07-16T19:20:30.45Z ['1997-07-16T19:20:30.45Z'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30.45' - tz: 'Z' - year: '1997' 1997-07-16 19:20:30.45 ['1997-07-16 19:20:30.45'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30.45' - tz: None - year: '1997' 1997-07-16T19:20:30.45 [datetime.datetime(1997, 7, 16, 19, 20, 30, 450000)] 123e4567-e89b-12d3-a456-426655440000 ['123e4567-e89b-12d3-a456-426655440000'] 1/2 [0.5] -15/16 [-0.9375] -3/-4 [0.75] 1/2 [0.5] -15/16 [-0.9375] -3/-4 [0.75] 1 1/2 [1.5] 2 -15/16 [2.9375] 0 -3/-4 [-0.75] 12 [12] 100 [100] -3 [-3] 1.732 [1.732] -3.14159 [-3.14159] 6.02e23 [6.02e+23] http://foo.com/blah_blah ['http://foo.com/blah_blah'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah/ ['http://foo.com/blah_blah/'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah/' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah_(wikipedia) ['http://foo.com/blah_blah_(wikipedia)'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah_(wikipedia)' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah_(wikipedia)_(again) ['http://foo.com/blah_blah_(wikipedia)_(again)'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah_(wikipedia)_(again)' - port: None - query: None - scheme: 'http' http://www.example.com/wpstyle/?p=364 ['http://www.example.com/wpstyle/?p=364'] - auth: None - fragment: None - host: 'www.example.com' - path: '/wpstyle/' - port: None - query: 'p=364' - scheme: 'http' https://www.example.com/foo/?bar=baz&inga=42&quux ['https://www.example.com/foo/?bar=baz&inga=42&quux'] - auth: None - fragment: None - host: 'www.example.com' - path: '/foo/' - port: None - query: 'bar=baz&inga=42&quux' - scheme: 'https' http://✪df.ws/123 ['http://✪df.ws/123'] - auth: None - fragment: None - host: '✪df.ws' - path: '/123' - port: None - query: None - scheme: 'http' http://userid:password@example.com:8080 ['http://userid:password@example.com:8080'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: None - port: '8080' - query: None - scheme: 'http' http://userid:password@example.com:8080/ ['http://userid:password@example.com:8080/'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: '/' - port: '8080' - query: None - scheme: 'http' http://userid@example.com ['http://userid@example.com'] - auth: 'userid' - fragment: None - host: 'example.com' - path: None - port: None - query: None - scheme: 'http' http://userid@example.com/ ['http://userid@example.com/'] - auth: 'userid' - fragment: None - host: 'example.com' - path: '/' - port: None - query: None - scheme: 'http' http://userid@example.com:8080 ['http://userid@example.com:8080'] - auth: 'userid' - fragment: None - host: 'example.com' - path: None - port: '8080' - query: None - scheme: 'http' http://userid@example.com:8080/ ['http://userid@example.com:8080/'] - auth: 'userid' - fragment: None - host: 'example.com' - path: '/' - port: '8080' - query: None - scheme: 'http' http://userid:password@example.com ['http://userid:password@example.com'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: None - port: None - query: None - scheme: 'http' http://userid:password@example.com/ ['http://userid:password@example.com/'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: '/' - port: None - query: None - scheme: 'http' http://142.42.1.1/ ['http://142.42.1.1/'] - auth: None - fragment: None - host: '142.42.1.1' - path: '/' - port: None - query: None - scheme: 'http' http://142.42.1.1:8080/ ['http://142.42.1.1:8080/'] - auth: None - fragment: None - host: '142.42.1.1' - path: '/' - port: '8080' - query: None - scheme: 'http' http://➡.ws/䨹 ['http://➡.ws/䨹'] - auth: None - fragment: None - host: '➡.ws' - path: '/䨹' - port: None - query: None - scheme: 'http' http://⌘.ws ['http://⌘.ws'] - auth: None - fragment: None - host: '⌘.ws' - path: None - port: None - query: None - scheme: 'http' http://⌘.ws/ ['http://⌘.ws/'] - auth: None - fragment: None - host: '⌘.ws' - path: '/' - port: None - query: None - scheme: 'http' http://foo.com/blah_(wikipedia)#cite-1 ['http://foo.com/blah_(wikipedia)#cite-1'] - auth: None - fragment: 'cite-1' - host: 'foo.com' - path: '/blah_(wikipedia)' - port: None - query: None - scheme: 'http' http://foo.com/blah_(wikipedia)_blah#cite-1 ['http://foo.com/blah_(wikipedia)_blah#cite-1'] - auth: None - fragment: 'cite-1' - host: 'foo.com' - path: '/blah_(wikipedia)_blah' - port: None - query: None - scheme: 'http' http://foo.com/unicode_(✪)_in_parens ['http://foo.com/unicode_(✪)_in_parens'] - auth: None - fragment: None - host: 'foo.com' - path: '/unicode_(✪)_in_parens' - port: None - query: None - scheme: 'http' http://foo.com/(something)?after=parens ['http://foo.com/(something)?after=parens'] - auth: None - fragment: None - host: 'foo.com' - path: '/(something)' - port: None - query: 'after=parens' - scheme: 'http' http://☺.damowmow.com/ ['http://☺.damowmow.com/'] - auth: None - fragment: None - host: '☺.damowmow.com' - path: '/' - port: None - query: None - scheme: 'http' http://code.google.com/events/#&product=browser ['http://code.google.com/events/#&product=browser'] - auth: None - fragment: '&product=browser' - host: 'code.google.com' - path: '/events/' - port: None - query: None - scheme: 'http' http://j.mp ['http://j.mp'] - auth: None - fragment: None - host: 'j.mp' - path: None - port: None - query: None - scheme: 'http' ftp://foo.bar/baz ['ftp://foo.bar/baz'] - auth: None - fragment: None - host: 'foo.bar' - path: '/baz' - port: None - query: None - scheme: 'ftp' http://foo.bar/?q=Test%20URL-encoded%20stuff ['http://foo.bar/?q=Test%20URL-encoded%20stuff'] - auth: None - fragment: None - host: 'foo.bar' - path: '/' - port: None - query: 'q=Test%20URL-encoded%20stuff' - scheme: 'http' http://مثال.إختبار ['http://مثال.إختبار'] - auth: None - fragment: None - host: 'مثال.إختبار' - path: None - port: None - query: None - scheme: 'http' http:// http:// ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://. http://. ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://.. http://.. ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://../ http://../ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://? http://? ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://?? http://?? ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://??/ http://??/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://# http://# ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://## http://## ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://##/ http://##/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) # skip: http://foo.bar?q=Spaces should be encoded // // ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) //a //a ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ///a ///a ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) /// /// ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http:///a http:///a ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) foo.com foo.com ^ ParseException: Expected url, found 'foo' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'foo' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) rdar://1234 rdar://1234 ^ ParseException: Expected url, found 'rdar' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'rdar' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) h://test h://test ^ ParseException: Expected url, found 'h' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'h' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http:// shouldfail.com http:// shouldfail.com ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) :// should fail :// should fail ^ ParseException: Expected url, found ':' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found ':' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://foo.bar/foo(bar)baz quux http://foo.bar/foo(bar)baz quux ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ftps://foo.bar/ ftps://foo.bar/ ^ ParseException: Expected url, found 'ftps' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'ftps' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://-error-.invalid/ http://-error-.invalid/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) # skip: http://a.b--c.de/ http://-a.b.co http://-a.b.co ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://a.b-.co http://a.b-.co ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://0.0.0.0 http://0.0.0.0 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://10.1.1.0 http://10.1.1.0 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://10.1.1.255 http://10.1.1.255 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://224.1.1.1 http://224.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://1.1.1.1.1 http://1.1.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://123.123.123 http://123.123.123 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://3628126748 http://3628126748 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://.www.foo.bar/ http://.www.foo.bar/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) .................. # skip: http://www.foo.bar./ http://.www.foo.bar./ http://.www.foo.bar./ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://10.1.1.1 http://10.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ['https://bob:secret@www.example.com:8080/path/to/resource?filter=int#book-mark'] - auth: 'bob:secret' - fragment: 'book-mark' - host: 'www.example.com' - path: '/path/to/resource' - port: '8080' - query: 'filter=int' - scheme: 'https' Raised expected exception: ParseException: time data '1997-07-error' does not match format '%Y-%m-%d', found '1997' (at char 0), (line:1, col:1) Raised expected exception: ParseException: time data '1997-07-error' does not match format '%Y-%m-%dT%H:%M:%S.%f', found '1997' (at char 0), (line:1, col:1) 2 5 7 6 0 1 2 3 4 5 0 3 5 4 3 [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] 2 5 7 6 0 1 2 3 4 5 0 3 5 4 3 [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] B 5 7 F 0 1 2 3 4 5 _ C 5 4 3 [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] 5 string input item1 item2 item3 item4 item5 0 int user 2 int file 3 8 [['item1', 'item2', 'item3', 'item4', 'item5'], [], ['3', '8']] [0]: ['item1', 'item2', 'item3', 'item4', 'item5'] - count: 5 - items: ['item1', 'item2', 'item3', 'item4', 'item5'] - source: 'input' - type: 'string' [1]: [] - count: 0 - items: [] - source: 'user' - type: 'int' [2]: ['3', '8'] - count: 2 - items: ['3', '8'] - source: 'file' - type: 'int' type = '' source = '' ['True', 'True', 'False'] - items: ['True', 'True', 'False'] - type: 'bool' verify non-fatal usage of Literal("") Raised expected exception: ValueError: null string passed to Literal; use Empty() instead sdlfjs :sdf\:jls::djf: sl:kfsjf sdlfjs -sdf\:jls::--djf: sl-kfsjf sdlfjs -sdf\:::jls::--djf: sl:::-kfsjf sdlfjs ^sdf\:jls^^--djf^ sl-kfsjf sdlfjs ^^^==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf^^^ colonQuotes :(?:(?:::)|(?:\\.)|(?:[^:\n\r\\]))*: [['sdf:jls:djf'], ['jls:--djf'], [':jls:--djf'], [''], ['j=lz:--djf'], ['j=ls:--djf']] sdf:jls:djf sdf:jls:djf dashQuotes \-(?:(?:\-\-)|(?:\\.)|(?:[^\-\n\r\\]))*\- [['sdf:jls::-djf: sl'], ['sdf:::jls::-djf: sl:::'], [''], [''], ['']] sdf:jls::-djf: sl sdf:jls::-djf: sl hatQuotes \^(?:(?:\\.)|(?:[^\^\n\r\\]))*\^ [['sdf:jls'], ['--djf'], [''], ['==sdf:j=lz::--djf: sl='], ['']] sdf:jls sdf:jls hatQuotes1 \^(?:(?:\^\^)|(?:\\.)|(?:[^\^\n\r\\]))*\^ [['sdf:jls^--djf'], ['^==sdf:j=lz::--djf: sl='], ['']] sdf:jls^--djf sdf:jls^--djf dblEqQuotes ==(?:(?:\\.)|(?:(?:=(?!=)))|(?:[^=\n\r\\]))*== [['sdf:j=ls::--djf: sl']] sdf:j=ls::--djf: sl sdf:j=ls::--djf: sl ::: quotes :::(?:(?:(?:::(?!:))|(?::(?!::)))|(?:[^:\n\r]))*::: [['jls::--djf: sl']] jls::--djf: sl jls::--djf: sl ==-- quotes ==(?:(?:(?:\-(?!\-)))|(?:[^\-\n\r]))*\-\- [['sdf\\:j=lz::'], ['sdf\\:j=ls::']] sdf\:j=lz:: sdf\:j=lz:: ^^^ multiline quotes \^\^\^(?:(?:(?:\^\^(?!\^))|(?:\^(?!\^\^)))|(?:[^\^]))*\^\^\^ [['==sdf\\:j=lz::--djf: sl=^^=kfsjf\n sdlfjs ==sdf\\:j=ls::--djf: sl==kfsjf']] ==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf ==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf Raised expected exception: ValueError: quote_char cannot be the empty string \.\[(?:(?:(?:\](?!\.)))|(?:[^\]\n\r]))*\]\. ['...'] [''] [']'] [']]'] \+\*(?:(?:(?:\*(?!\+)))|(?:[^*\n\r]))*\*\+ ['...'] [''] ['*'] ['**'] \*/(?:(?:(?:/(?!\*)))|(?:[^/\n\r]))*/\* ['...'] [''] ['/'] ['//'] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately followed by keyword character, found '1000' (at char 5), (line:1, col:6) Raised expected exception: ParseException: Expected CaselessKeyword 'START', was immediately followed by keyword character, found '1000' (at char 5), (line:1, col:6) Raised expected exception: ValueError: min must be greater than 0 Raised expected exception: ValueError: max must be greater than, or equal to min Raised expected exception: ParseException: Expected ',', found end of text (at char 12), (line:1, col:13) 'ABC' [, 'ABC']... ['ABC', 'ABC'] 'ABC' [, 'ABC']... ['ABC', 'ABC', 'ABC'] {'True' | 'true' | 'False' | 'false'} [, {'True' | 'true' | 'False' | 'false'}]... bool bool bool bool bool [, bool]... 'ABC' [, 'ABC']... ['ABC', 'ABC', 'ABC'] ['bar', 'foo'] - one: 'foo' - two: 'bar' options(100) step(A) options(100) step(A) ^ ParseSyntaxException: Expected integer, found 'A' (at char 18), (line:1, col:19) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected integer, found 'A' (at char 18), (line:1, col:19) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal . step(A) options(100) step(A) options(100) ^ ParseSyntaxException: Expected integer, found 'A' (at char 5), (line:1, col:6) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected integer, found 'A' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal options(100) step(100A) options(100) step(100A) ^ ParseSyntaxException: Expected 'Z', found 'A' (at char 21), (line:1, col:22) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected 'Z', found 'A' (at char 21), (line:1, col:22) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal options(100) step(22) step(100ZA) options(100) step(22) step(100ZA) ^ ParseSyntaxException: Expected ')', found 'A' (at char 31), (line:1, col:32) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected ')', found 'A' (at char 31), (line:1, col:32) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {{word}... num} pyparsing.core.OneOrMore - {word}... pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4790, in parseImpl loc, tokens = self_expr_parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 dd 123 ^ ParseException: Expected word, found '123' (at char 3), (line:1, col:4) pyparsing.core.And - {word word [word]... num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {word word [word]... num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 aa bb cc dd 123 ^ ParseException: Expected num, found 'dd' (at char 9), (line:1, col:10) pyparsing.core.And - {[word [word [word]]] num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'dd' (at char 9), (line:1, col:10) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) cc dd 123 ['cc', 'dd', '123'] aa bb cc dd 123 aa bb cc dd 123 ^ ParseException: Expected num, found 'cc' (at char 6), (line:1, col:7) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'cc' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) .... bb cc dd 123 bb cc dd 123 ^ ParseException: Expected num, found 'dd' (at char 6), (line:1, col:7) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'dd' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) dd 123 dd 123 ^ ParseException: Expected word, found '123' (at char 3), (line:1, col:4) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) a 1 ['a', 1] - label: 'a' - values: [1] b 1 2 3 ['b', 1, 2, 3] - label: 'b' - values: [1, 2, 3] c ['c'] - label: 'c' - values: [] a 1 ['a', 1] - label: 'a' - values: [1] b 1 2 3 ['b', 1, 2, 3] - label: 'b' - values: [1, 2, 3] c ['c'] - label: 'c' - values: [] a 1,1 ['a', [1, 1]] - label: 'a' - points: [[1, 1]] [0]: [1, 1] - x: 1 - y: 1 [0]: a [1]: [1, 1] - x: 1 - y: 1 b 1,1 2,2 3,3 ['b', [1, 1], [2, 2], [3, 3]] - label: 'b' - points: [[1, 1], [2, 2], [3, 3]] [0]: [1, 1] - x: 1 - y: 1 [1]: [2, 2] - x: 2 - y: 2 [2]: [3, 3] - x: 3 - y: 3 [0]: b [1]: [1, 1] - x: 1 - y: 1 [2]: [2, 2] - x: 2 - y: 2 [3]: [3, 3] - x: 3 - y: 3 c ['c'] - label: 'c' - points: [] [['a', '10'], ['b', '20']] - a: '10' - b: '20' [0]: ['a', '10'] [1]: ['b', '20'] ^ ParseException: Expected W:(A-Za-z) (at char 0), (line:1, col:1) pyparsing.core.Dict - Dict:({Group:({W:(A-Za-z) Suppress:('=') W:(0-9)})}...) pyparsing.core.OneOrMore - {Group:({W:(A-Za-z) Suppress:('=') W:(0-9)})}... pyparsing.core.Group - Group:({W:(A-Za-z) Suppress:('=') W:(0-9)}) pyparsing.core.And - {W:(A-Za-z) Suppress:('=') W:(0-9)} pyparsing.core._WordRegex - W:(A-Za-z) testing empty And testing empty Or testing empty MatchFirst testing empty Each ..........Match [{integer | W:(0-9A-Za-z)}]... at loc 0(1,1) 123 A100 ^ Match integer at loc 0(1,1) 123 A100 ^ Matched integer -> [123] Match integer at loc 4(1,5) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found 'A100' (at char 4), (line:1, col:5) Match W:(0-9A-Za-z) at loc 4(1,5) 123 A100 ^ Matched W:(0-9A-Za-z) -> ['A100'] Match integer at loc 8(1,9) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 8), (line:1, col:9) Match W:(0-9A-Za-z) at loc 8(1,9) 123 A100 ^ Match W:(0-9A-Za-z) failed, ParseException raised: Expected W:(0-9A-Za-z), found end of text (at char 8), (line:1, col:9) Matched [{integer | W:(0-9A-Za-z)}]... -> [123, 'A100'] Match integer at loc 0(1,1) 123 A100 ^ Matched integer -> [123] Match integer at loc 4(1,5) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found 'A100' (at char 4), (line:1, col:5) Match W:(0-9A-Za-z) at loc 4(1,5) 123 A100 ^ Matched W:(0-9A-Za-z) -> ['A100'] Match integer at loc 8(1,9) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 8), (line:1, col:9) Match W:(0-9A-Za-z) at loc 8(1,9) 123 A100 ^ Match W:(0-9A-Za-z) failed, ParseException raised: Expected W:(0-9A-Za-z), found end of text (at char 8), (line:1, col:9) Match integer at loc 0(1,1) 1 2 3 ^ Matched integer -> ['1'] Match integer at loc 2(1,3) 1 2 3 ^ Matched integer -> ['2'] Match integer at loc 4(1,5) 1 2 3 ^ Matched integer -> ['3'] Match integer at loc 5(1,6) 1 2 3 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 5), (line:1, col:6) Packrat status: enabled Match Z at loc 0(1,1) aba ^ Match Z failed, ParseException raised: Expected Z, found 'aba' (at char 0), (line:1, col:1) Match leading_a at loc 0(1,1) aba ^ Match A at loc 0(1,1) aba ^ Matched A -> ['a'] Match Z at loc 1(1,2) aba ^ Match Z failed, ParseException raised: Expected Z, found 'ba' (at char 1), (line:1, col:2) Match A at loc 1(1,2) aba ^ Match A failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) Match B at loc 1(1,2) aba ^ Matched B -> ['b'] Matched leading_a -> ['a'] *Match Z at loc 1(1,2) aba ^ *Match Z failed, ParseException raised: Expected Z, found 'ba' (at char 1), (line:1, col:2) Match leading_a at loc 1(1,2) aba ^ Match A at loc 1(1,2) aba ^ Match A failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) Match leading_a failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) *Match B at loc 1(1,2) aba ^ *Matched B -> ['b'] Match Z at loc 2(1,3) aba ^ Match Z failed, ParseException raised: Expected Z, found 'a' (at char 2), (line:1, col:3) Match leading_a at loc 2(1,3) aba ^ Match A at loc 2(1,3) aba ^ Matched A -> ['a'] Match Z at loc 3(1,4) aba ^ Match Z failed, ParseException raised: Expected Z, found end of text (at char 3), (line:1, col:4) Match A at loc 3(1,4) aba ^ Match A failed, ParseException raised: Expected A, found end of text (at char 3), (line:1, col:4) Match B at loc 3(1,4) aba ^ Match B failed, ParseException raised: Expected B, found end of text (at char 3), (line:1, col:4) Match leading_a failed, ParseException raised: Expected {Z | A | B}, found end of text (at char 3), (line:1, col:4) Match B at loc 2(1,3) aba ^ Match B failed, ParseException raised: Expected B, found 'a' (at char 2), (line:1, col:3) {'enable_debug_on_named_expressions': False, 'warn_multiple_tokens_in_named_alternation': False, 'warn_name_set_on_empty_Forward': False, 'warn_on_assignment_to_Forward': False, 'warn_on_match_first_with_lshift_operator': False, 'warn_on_multiple_string_args_to_oneof': False, 'warn_on_parse_using_empty_Forward': False, 'warn_ungrouped_named_tokens_in_collection': False} {'enable_debug_on_named_expressions': False, 'warn_multiple_tokens_in_named_alternation': True, 'warn_name_set_on_empty_Forward': True, 'warn_on_assignment_to_Forward': True, 'warn_on_match_first_with_lshift_operator': True, 'warn_on_multiple_string_args_to_oneof': True, 'warn_on_parse_using_empty_Forward': True, 'warn_ungrouped_named_tokens_in_collection': True} TypeError: descriptor 'upper' for 'str' objects doesn't apply to a 'int' object tests.test_unit.Test04_WithPackrat pyparsing.core._WordRegex - integer tests.test_unit.Modifier pyparsing.results.ParseResults 123 355 ^ ParseException: Expected word, found '355' (at char 4), (line:1, col:5) 123 355 (test using ErrorStop) ^ ParseSyntaxException: Expected word, found '355' (at char 4), (line:1, col:5) tests.test_unit.Test04_WithPackrat pyparsing.core.And - {int - word} A ^ ParseException: Expected int, found 'A' (at char 0), (line:1, col:1) tests.test_unit.Test04_WithPackrat pyparsing.core.And - {int int} divide_args pyparsing.core._WordRegex - int test does local memoization enable/disable during test [' this_semi_does_nothing()', ''], [' neither_does_this_but_there_are_spaces_afterward()', ''], [' a = "a;b"', 'return a # this is a comment; it has a semicolon!'], [' z=1000', 'b("; in quotes")', 'c=200', 'return z'], [" return ';'"], [" '''a docstring; with a semicolon'''"], [' a = 10', 'b = 11', 'c = 12'], [' # this comment; has several; semicolons'], [' x = 12', 'return x # so; does; this; one'], [' x = 15', '', '', 'y += x', 'return y'], [' this_semi_does_nothing()', ';', ''], [' neither_does_this_but_there_are_spaces_afterward()', ';', ''], [' a = "a;b"', ';', 'return a # this is a comment; it has a semicolon!'], [' z=1000', ';', 'b("; in quotes")', ';', 'c=200', ';', 'return z'], [" return ';'"], [" '''a docstring; with a semicolon'''"], [' a = 10', ';', 'b = 11', ';', 'c = 12'], [' # this comment; has several; semicolons'], [' x = 12', ';', 'return x # so; does; this; one'], [' x = 15', ';', '', ';', '', ';', 'y += x', ';', 'return y'], [''], [' def main():'], [' this_semi_does_nothing()', ''], [' neither_does_this_but_there_are_spaces_afterward()', ''], [' a = "a;b"', 'return a # this is a comment; it has a semicolon!'], [''], [' def b():'], [' if False:'], [' z=1000', 'b("; in quotes"); c=200;return z'], [" return ';'"], [''], [' class Foo(object):'], [' def bar(self):'], [" '''a docstring; with a semicolon'''"], [' a = 10', 'b = 11; c = 12'], [''], [' # this comment; has several; semicolons'], [' if self.spam:'], [' x = 12', 'return x # so; does; this; one'], [' x = 15', ';; y += x; return y'], [''], [' def baz(self):'], [' return self.bar'], [' '], W:(0-9) W:(0-9){3} W:(0-9){2,...} W:(0-9){1,3} W:(0-9){2,3} (0-9) ['balloon'] - item: 'balloon' - qty: 99 verify behavior of getName() ['XXX', ['b'], ['bb'], ['a'], ['bbb'], ['bbbb'], ['aa'], ['bbbbb'], [':', 'c'], ['bbbbbb'], ['aaa']] [0]: XXX [1]: ['b'] - B: 'b' [2]: ['bb'] - B: 'bb' [3]: ['a'] - A: 'a' [4]: ['bbb'] - B: 'bbb' [5]: ['bbbb'] - B: 'bbbb' [6]: ['aa'] - A: 'aa' [7]: ['bbbbb'] - B: 'bbbbb' [8]: [':', 'c'] - C: 'c' [9]: ['bbbbbb'] - B: 'bbbbbb' [10]: ['aaa'] - A: 'aaa' XXX 'XXX' ['b'] ParseResults(['b'], {'B': 'b'}) ['bb'] ParseResults(['bb'], {'B': 'bb'}) ['a'] ParseResults(['a'], {'A': 'a'}) ['bbb'] ParseResults(['bbb'], {'B': 'bbb'}) ['bbbb'] ParseResults(['bbbb'], {'B': 'bbbb'}) ['aa'] ParseResults(['aa'], {'A': 'aa'}) ['bbbbb'] ParseResults(['bbbbb'], {'B': 'bbbbb'}) [':', 'c'] ParseResults([':', 'c'], {'C': 'c'}) ['bbbbbb'] ParseResults(['bbbbbb'], {'B': 'bbbbbb'}) ['aaa'] ............ParseResults(['aaa'], {'A': 'aaa'}) XXX b bb a bbb bbbb aa bbbbb :c bbbbbb aaa [None, 'B', 'B', 'A', 'B', 'B', 'A', 'B', None, 'B', 'A'] ['lsjd'] non-key ['sldkjf'] non-key ['IF'] non-key ['Saslkj'] non-key ['AND'] non-key ['lsdjf'] non-key verify behavior of ParseResults.get() ['b', 'bb', 'a', 'bbb', 'bbbb', 'aa', 'bbbbb', ':', 'c', 'bbbbbb', 'aaa'] - A: 'aaa' - B: 'bbbbbb' - C: 'c' aaa !D ['11.11.13', 'useless . useless,21 useless 2 | ', 14.21, ' | asmdakldm'] ['21.12.12', 'fmpaosmfpoamsp 4 | ', 41, ' | ajfa9si90'] Raised expected exception: ParseException: Expected number, found 'useless' (at char 32), (line:1, col:33) Raised expected exception: ParseException: Expected number, found 'fmpaosmfpoamsp' (at char 32), (line:1, col:33) [["'string1'", "'string2'"]] [['string1', 'strin""g2']] [['"string1"', '"strin""g2"'], ["'string1'", "'string2'"]] [['string1', 'strin"g2']] [['string1', 'string2']] [['string1', 'string2']] [['string1', 'string2']] ["'ms1'", '1', '0', "'2009-12-22'", "'2009-12-22 10:41:22'"] This & that 2 > 1 0 < 1 Don't get excited! I said "Don't get excited!" Copyright © 2021 Dot ⟶ ˙ ['I', 'totally', 'love', 'pickles'] a = 100 b = 101 c = c1 = 200 c2 = c21 = 999 c3 = 'A horse, a horse, my kingdom for a horse' d = 505 [['a', 100], ['b', 101], ['c', ['c1', 200], ['c2', ['c21', 999]]], ['c3', 'A horse, a horse, my kingdom for a horse'], ['d', 505]] - a: 100 - b: 101 - c: [['c1', 200], ['c2', ['c21', 999]]] - c1: 200 - c2: [['c21', 999]] - c21: 999 [0]: ['c21', 999] [0]: ['c1', 200] [1]: ['c2', ['c21', 999]] - c21: 999 [0]: c2 [1]: ['c21', 999] - c3: 'A horse, a horse, my kingdom for a horse' - d: 505 [0]: ['a', 100] [1]: ['b', 101] [2]: ['c', ['c1', 200], ['c2', ['c21', 999]]] - c1: 200 - c2: [['c21', 999]] - c21: 999 [0]: ['c21', 999] [0]: c [1]: ['c1', 200] [2]: ['c2', ['c21', 999]] - c21: 999 [0]: c2 [1]: ['c21', 999] [3]: ['c3', 'A horse, a horse, my kingdom for a horse'] [4]: ['d', 505] [['A', [100, 101, 102]], ['B', [200, 201]], ['C', [300]]] [['A', [100, 101, 102]], ['B', [200, 201]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [200, 201]] [0]: B [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] 1 2 12345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] 1 2 12345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] 1 2 3 123456789012345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] using searchString [[['A', [100, 101, 102]]], [['B', [['b', [200, 201]]]]], [['C', [300]]]] [['A', [100, 101, 102]], ['B', [['b', [200, 201]]]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [['b', [200, 201]]]] [0]: B [1]: [['b', [200, 201]]] [0]: ['b', [200, 201]] [0]: b [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] using parseString [['A', [100, 101, 102]], ['B', [['b', [200, 201]]]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [['b', [200, 201]]]] [0]: B [1]: [['b', [200, 201]]] [0]: ['b', [200, 201]] [0]: b [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] test good indentation 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.1.2| 5: 2.| [['1.', ['1.1', ['1.1.1', '1.1.2']], '2.']] test bad indentation 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.2| 5: 2.| Raised expected exception: ParseException: Expected end of text, found '1' (at char 78), (line:4, col:18) 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.2| 5: 2.| Raised expected exception: ParseException: Expected end of text, found '1' (at char 76), (line:4, col:16) [['def', 'A', ['(', 'z', ')'], ':', [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']]], 'B', ['def', 'BB', ['(', 'a', 'b', 'c', ')'], ':', [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]]], 'C', 'D', ['def', 'spam', ['(', 'x', 'y', ')'], ':', [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]]]] [0]: ['def', 'A', ['(', 'z', ')'], ':', [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']]] [0]: def [1]: A [2]: ['(', 'z', ')'] [3]: : [4]: [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']] [0]: ['A1'] [1]: [['B', '=', '100']] [0]: ['B', '=', '100'] [2]: [['G', '=', 'A2']] [0]: ['G', '=', 'A2'] [3]: ['A2'] [4]: ['A3'] [1]: B [2]: ['def', 'BB', ['(', 'a', 'b', 'c', ')'], ':', [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]]] [0]: def [1]: BB [2]: ['(', 'a', 'b', 'c', ')'] [3]: : [4]: [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]] [0]: ['BB1'] [1]: [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]] [0]: ['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]] [0]: def [1]: BBA [2]: ['(', ')'] [3]: : [4]: [['bba1'], ['bba2'], ['bba3']] [0]: ['bba1'] [1]: ['bba2'] [2]: ['bba3'] [3]: C [4]: D [5]: ['def', 'spam', ['(', 'x', 'y', ')'], ':', [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]]] [0]: def [1]: spam [2]: ['(', 'x', 'y', ')'] [3]: : [4]: [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]] [0]: [['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]] [0]: ['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]] [0]: def [1]: eggs [2]: ['(', 'z', ')'] [3]: : [4]: [['pass']] [0]: ['pass'] Parsing 'one0'... Parsing 'four0'... Parsing 'one1'... Parsing 'four1'... ... extra: [test] one0: two (three) four0: five (seven) extra: [test] one1: two (three) four1: five (seven) ['extra', [['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]]], 'extra', [['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]]]] [0]: extra [1]: [['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]]] [0]: ['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]] [0]: test [1]: [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]] [0]: ['one0', [['two', 'three']]] [0]: one0 [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four0', [['five', 'seven']]] [0]: four0 [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: extra [3]: [['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]]] [0]: ['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]] [0]: test [1]: [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]] [0]: ['one1', [['two', 'three']]] [0]: one1 [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four1', [['five', 'seven']]] [0]: four1 [1]: [['five', 'seven']] [0]: ['five', 'seven'] Parsing 'one'... Parsing 'four'... Parsing 'one'... Parsing 'four'... Parsing 'one'... Parsing 'four'... Parsing 'eight'... Parsing 'eleven'... Parsing 'fourteen'... Parsing 'seventeen'... extra: [test] one: two (three) four: five (seven) extra: [test] one: two (three) four: five (seven) [test] one: two (three) four: five (seven) [test] eight: nine (ten) eleven: twelve (thirteen) fourteen: fifteen (sixteen) seventeen: eighteen (nineteen) ['extra', [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]]], 'extra', [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]]]] [0]: extra [1]: [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]]] [0]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: extra [3]: [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]]] [0]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [1]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]] [0]: test [1]: [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]] [0]: ['eight', [['nine', 'ten']]] [0]: eight [1]: [['nine', 'ten']] [0]: ['nine', 'ten'] [1]: ['eleven', [['twelve', 'thirteen']]] [0]: eleven [1]: [['twelve', 'thirteen']] [0]: ['twelve', 'thirteen'] [2]: ['fourteen', [['fifteen', 'sixteen']]] [0]: fourteen [1]: [['fifteen', 'sixteen']] [0]: ['fifteen', 'sixteen'] [3]: ['seventeen', [['eighteen', 'nineteen']]] [0]: seventeen [1]: [['eighteen', 'nineteen']] [0]: ['eighteen', 'nineteen'] [[9, '+', 2, '+', 3]] [0]: [9, '+', 2, '+', 3] [[9, '+', [2, '*', 3]]] [0]: [9, '+', [2, '*', 3]] [0]: 9 [1]: + [2]: [2, '*', 3] [[[9, '+', 2], '*', 3]] [0]: [[9, '+', 2], '*', 3] [0]: [9, '+', 2] [1]: * [2]: 3 [[[9, '+', ['-', 2]], '*', 3]] [0]: [[9, '+', ['-', 2]], '*', 3] [0]: [9, '+', ['-', 2]] [0]: 9 [1]: + [2]: ['-', 2] [1]: * [2]: 3 [[[9, '+', ['-', ['-', 2]]], '*', 3]] [0]: [[9, '+', ['-', ['-', 2]]], '*', 3] [0]: [9, '+', ['-', ['-', 2]]] [0]: 9 [1]: + [2]: ['-', ['-', 2]] [0]: - [1]: ['-', 2] [1]: * [2]: 3 [[[9, '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]]] [0]: [[9, '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]] [0]: [9, '+', ['-', 2]] [0]: 9 [1]: + [2]: ['-', 2] [1]: * [2]: [3, '^', [2, '^', 2]] [0]: 3 [1]: ^ [2]: [2, '^', 2] [[[[9, '!'], '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]]] [0]: [[[9, '!'], '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]] [0]: [[9, '!'], '+', ['-', 2]] [0]: [9, '!'] [1]: + [2]: ['-', 2] [1]: * [2]: [3, '^', [2, '^', 2]] [0]: 3 [1]: ^ [2]: [2, '^', 2] [[['M', '*', 'X'], '+', 'B']] [0]: [['M', '*', 'X'], '+', 'B'] [0]: ['M', '*', 'X'] [1]: + [2]: B [['M', '*', ['X', '+', 'B']]] [0]: ['M', '*', ['X', '+', 'B']] [0]: M [1]: * [2]: ['X', '+', 'B'] [[1, '+', [2, '*', ['-', [3, '^', 4]], '*', 5], '+', ['-', ['+', ['-', 6]]]]] [0]: [1, '+', [2, '*', ['-', [3, '^', 4]], '*', 5], '+', ['-', ['+', ['-', 6]]]] [0]: 1 [1]: + [2]: [2, '*', ['-', [3, '^', 4]], '*', 5] [0]: 2 [1]: * [2]: ['-', [3, '^', 4]] [0]: - [1]: [3, '^', 4] [3]: * [4]: 5 [3]: + [4]: ['-', ['+', ['-', 6]]] [0]: - [1]: ['+', ['-', 6]] [0]: + [1]: ['-', 6] [[3, '!', '!']] [0]: [3, '!', '!'] p = True q = False r = True p and not q (p & ~q) = True not not p ~~p = True not(p and q) ~(p & q) = True q or not p and r (q | (~p & r)) = False q or not p or not r (q | ~p | ~r) = False q or not (p and r) (q | ~(p & r)) = False p or q or r (p | q | r) = True p or q or r and False (p | q | (r & False)) = True (p or q or r) and False ((p | q | r) & False) = False Raised expected exception: ValueError: if numterms=3, opExpr must be a tuple or list of two expressions ............Raised expected exception: ValueError: if numterms=3, opExpr must be a tuple or list of two expressions Raised expected exception: ValueError: operator must be unary (1), binary (2), or ternary (3) Raised expected exception: ValueError: operator must be unary (1), binary (2), or ternary (3) Raised expected exception: ValueError: operator must indicate right or left associativity evaluate_int 9 '9' => [9] (count=1) [[[3, '+', 2], '?', 12, ':', 13]] [0]: [[3, '+', 2], '?', 12, ':', 13] [0]: [3, '+', 2] [1]: ? [2]: 12 [3]: : [4]: 13 [[[3, '+', 2], '?', 12, ':', 13]] [0]: [[3, '+', 2], '?', 12, ':', 13] [0]: [3, '+', 2] [1]: ? [2]: 12 [3]: : [4]: 13 [[3, '+', [2, '+', 11]]] [0]: [3, '+', [2, '+', 11]] [0]: 3 [1]: + [2]: [2, '+', 11] [[3, '+', [2, '+', 11]]] [0]: [3, '+', [2, '+', 11]] [0]: 3 [1]: + [2]: [2, '+', 11] [[3, '+', ['<', [2, '+', 11], '>']]] [0]: [3, '+', ['<', [2, '+', 11], '>']] [0]: 3 [1]: + [2]: ['<', [2, '+', 11], '>'] [0]: < [1]: [2, '+', 11] [2]: > [[3, '+', ['<<', [2, '+', 11], '>>']]] [0]: [3, '+', ['<<', [2, '+', 11], '>>']] [0]: 3 [1]: + [2]: ['<<', [2, '+', 11], '>>'] [0]: << [1]: [2, '+', 11] [2]: >> [[[3, 'x'], '+', 2]] [0]: [[3, 'x'], '+', 2] [0]: [3, 'x'] [1]: + [2]: 2 [[[3, 'x'], '+', 2]] [0]: [[3, 'x'], '+', 2] [0]: [3, 'x'] [1]: + [2]: 2 bar = foo [['bar', '=', 'foo']] bar = foo & baz = fee ['&', [['bar', '=', 'foo'], ['baz', '=', 'fee']]] ['SELECT', 'color', 'FROM', 'colors'] ['SELECT', 'color', 'FROM', 'colors'] ['1999', '/', '12', '/', '31'] - day: '31' - month: '12' - year: '1999' ['1999', '12', '31'] - day: '31' - month: '12' - year: '1999' Raised expected exception: ValueError: no such diagnostic 'xyzzy' ['testA', 'testB', 'testC'] =? ['testA', 'testB', 'testC'] ['testC'] =? ['testC'] 'testB\ntestC\n' =? 'testB\ntestC\n' ['testD', 'testE', 'testF'] =? ['testD', 'testE', 'testF'] ['testF'] =? ['testF'] 'testE\ntestF' =? 'testE\ntestF' ['a'] =? ['a'] ['a'] =? ['a'] '' =? '' 0 'aaa' 1 '\naaa' Raised expected exception: ParseException: Expected Re:('a+'), found '\' (at char 0), (line:1, col:1) 2 'a\naa' Raised expected exception: ParseException: Expected end of text, found '\' (at char 1), (line:1, col:2) 3 'aaa\n' Raised expected exception: ParseException: Expected end of text, found '\' (at char 3), (line:1, col:4) verify correct line() behavior when first line is empty string {W:(A) - LineStart W:(B)} AAA BBB ['AAA', 'BBB'] AAA BBB ['AAA', 'BBB'] AAA BBB BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) no \n in default whitespace chars {W:(A) - LineStart W:(B)} AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 3), (line:1, col:4) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 6), (line:1, col:7) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) ...... AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 6), (line:1, col:7) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} AAA BBB ['AAA', 'BBB'] AAA BBB ['AAA', 'BBB'] AAA BBB BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) pyparsing.core.And - {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} FAIL: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA BBB ^ ParseSyntaxException: Expected end of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} FAIL: Expected end of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) 1 1234567890 1:AAA 1| 2:AAA 2| 3:| 4: AAA| 5:| 6:B AAA| 7:| normal parsing 0 3 1 AAA 1 ParseResults(['AAA'], {}) 6 9 2 AAA 2 ParseResults(['AAA'], {}) 12 18 3 ParseResults(['AAA'], {}) parsing without \n in whitespace chars 0 3 1 AAA 1 'A' 6 9 2 AAA 2 'A' 13 18 4 AAA ' ' 1 1234567890 1:| 2:a| 3: b| 4: c| 5:d| 6:e| 7: f| 8: g| [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [[['a']], [['b']], [['c']], [['d']], [['e']], [['f']], [['g']]] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] Literal Expected 'xyz', found end of text (at char 1), (line:1, col:2) CaselessLiteral Expected 'XYZ', found end of text (at char 1), (line:1, col:2) Keyword Expected Keyword 'xyz', found end of text (at char 1), (line:1, col:2) CaselessKeyword Expected CaselessKeyword 'xyz', found end of text (at char 1), (line:1, col:2) Word Expected W:(xyz), found end of text (at char 1), (line:1, col:2) Regex Expected Re:('xyz'), found end of text (at char 1), (line:1, col:2) 1 start 2 {integer 'start' integer} [1, 'start', 2] {integer 'start' integer} [1, 'start', 2] {integer 'START' integer} [1, 'START', 2] {integer word integer} [1, 'start', 2] 3 start4 {integer 'start' integer} [3, 'start', 4] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately followed by keyword character, found '4' (at char 7), (line:1, col:8) Raised expected exception: ParseException: Expected CaselessKeyword 'START', was immediately followed by keyword character, found '4' (at char 7), (line:1, col:8) Raised expected exception: ParseException: Expected word, found 'start4' (at char 2), (line:1, col:3) 5start 6 [5, 'start', 6] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately preceded by keyword character, found '5start' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected CaselessKeyword 'START', keyword was immediately preceded by keyword character, found '5start' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected word, found 'start' (at char 1), (line:1, col:2) [28, 'ID', 'PARI12345678', 43] - id: 'PARI12345678' - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 .............................[[28, ['ID', 'PARI12345678'], 43]] - loc: [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 [0]: [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 [0, ['ljsdf'], 5] ['ljsdf'] [8, ['lksdjjf'], 15] ['lksdjjf'] [18, ['lkkjj'], 23] ['lkkjj'] ['body', False, 'Hello', ''] - contents: 'Hello' - empty: False - endBody: '' - startBody: ['body', False] - empty: False - tag: 'body' - tag: 'body' DOB >!<100-10-2010;more garbage verify MatchFirst iterates properly ['A', 'A', '3', 'A'] Raised expected exception: ParseException: matched token not at column 1, found '3' (at char 4), (line:1, col:5) ABC ^ ParseException: Expected W:(0-9), found 'ABC' (at char 0), (line:1, col:1) tests.test_unit.Test04_WithPackrat pyparsing.core._WordRegex - W:(0-9) ['A'] - Achar: 'A' Raised expected exception: ValueError: cannot multiply ParserElement by negative value {'username': 'goat', 'errors': {'username': ['already taken', 'too short']}, 'empty_field': ''} Test defaults: [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Non-default opener [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Non-default closer [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Literal expressions for opener and closer [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Use ignore expression (1) [['let', [['greeting', '"Hello,', 'world!"']], ';;(foo bar', ['display', 'greeting']]] [0]: ['let', [['greeting', '"Hello,', 'world!"']], ';;(foo bar', ['display', 'greeting']] [0]: let [1]: [['greeting', '"Hello,', 'world!"']] [0]: ['greeting', '"Hello,', 'world!"'] [2]: ;;(foo bar [3]: ['display', 'greeting'] Use ignore expression (2) [['let', [['greeting', '"Hello, )world!"']], ';;', '(foo bar', ['display', 'greeting']]] [0]: ['let', [['greeting', '"Hello, )world!"']], ';;', '(foo bar', ['display', 'greeting']] [0]: let [1]: [['greeting', '"Hello, )world!"']] [0]: ['greeting', '"Hello, )world!"'] [2]: ;; [3]: (foo bar [4]: ['display', 'greeting'] Raised expected exception: ValueError: opening and closing strings cannot be the same Raised expected exception: ValueError: opening and closing arguments must be strings if no content expression is given ['aName', ['outer', ["'inner with opener {{ and closer }} in quoted string'"]]] [0]: aName [1]: ['outer', ["'inner with opener {{ and closer }} in quoted string'"]] [0]: outer [1]: ["'inner with opener {{ and closer }} in quoted string'"] ['aName', ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]]] [0]: aName [1]: ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]] [0]: outer [1]: ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"] [0]: 'inner [1]: with [2]: opener [3]: ['and', 'closer'] [4]: in [5]: quoted [6]: string' ['aName', ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]]] [0]: aName [1]: ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]] [0]: outer [1]: ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"] [0]: 'inner [1]: with [2]: opener [3]: ['and', 'closer'] [4]: in [5]: quoted [6]: string' 9413 tests produced real number PASS valid tests (321) real number with scientific notation PASS valid tests (2319) signed integer PASS valid tests (153) real number PASS invalid tests (2213) real number with scientific notation PASS invalid tests (6587) signed integer PASS invalid tests (9260) # literal oneOf tests a b c ['a', 'b', 'c'] a a a ['a', 'a', 'a'] abc ['a', 'b', 'c'] # keyword oneOf tests a b c ['a', 'b', 'c'] a a a ['a', 'a', 'a'] # keyword oneOf failure tests abc abc ^ ParseException: Expected end of text, found 'abc' (at char 0), (line:1, col:1) pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd FAIL: Expected end of text, found 'abc' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1135, in parse_string se._parse(instring, loc) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3534, in parseImpl raise ParseException(instring, loc, self.errmsg, self) verify oneOf handles duplicate symbols verify oneOf handles generator input verify oneOf handles list input verify oneOf handles set input Raised expected exception: TypeError: Invalid argument to one_of, expected string or iterable ['XXX Y/123', '1,234.567890'] - data: '1,234.567890' - id: 'XXX Y/123' ['0', '123', '321', 444] Raised expected exception: ParseException: OnlyOnce obj called multiple times w/out reset, found '1' (at char 0), (line:1, col:1) ['100', '200', '300', 600] verify handling of Optional's beyond the end of string Tal Weiss Major Tal Major Weiss Major Major Major Tal Major Weiss Major Tal Weiss ['foo'] - foo: ['foo'] ['bar', 'foo', 'bar', 'foo', 'bar', 'foo'] - bar: ['bar', 'bar', 'bar'] - foo: ['foo', 'foo', 'foo'] Raised expected exception: ParseException: Missing one or more required elements ('foo'), found 'bar' (at char 1), (line:1, col:2) 1999-12-31 100 2001-01-01 [['1999-12-31'], 100, ['2001-01-01']] - date: [['1999-12-31'], ['2001-01-01']] [0]: ['1999-12-31'] - day: '31' - month: '12' - year: '1999' [1]: ['2001-01-01'] - day: '01' - month: '01' - year: '2001' - id: 100 [0]: ['1999-12-31'] - day: '31' - month: '12' - year: '1999' [1]: 100 [2]: ['2001-01-01'] - day: '01' - month: '01' - year: '2001' 42 [42] - id: 42 verify Optional's do not cause match failure if have results name _images/cal.png:77_ ['alt', 'empty', 'height', 'src', 'startImg', 'tag', 'width'] ['int', 'f', '(', ')', '{}'] ['DO', ['Z']] [244, 23, 13, 2343] - int_values: [244, 23, 13, 2343] - total: 2623 ### before parse action is added ### result1.dump(): [['Mauney', '46.5']] - Rider: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [0]: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' ...............### after parse action was added ### result1.dump(): [['Mauney', '46.5']] - Rider: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [0]: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [['x1', AnnotatedToken('val', ['1']), 'x2', AnnotatedToken('val', ['2'])]] [0]: ['x1', AnnotatedToken('val', ['1']), 'x2', AnnotatedToken('val', ['2'])] 'AAAAA' parseAll=False (shouldSucceed=True) 'AAAAA' parseAll=True (shouldSucceed=True) 'AAABB' parseAll=False (shouldSucceed=True) 'AAABB' parseAll=True (shouldSucceed=False) AAABB ^ ParseException: Expected end of text, found 'BB' (at char 3), (line:1, col:4) tests.test_unit.Test04_WithPackrat pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd 'AAAAA //blah' parseAll=False (shouldSucceed=True) 'AAAAA //blah' parseAll=True (shouldSucceed=True) 'AAABB //blah' parseAll=False (shouldSucceed=True) 'AAABB //blah' parseAll=True (shouldSucceed=False) AAABB //blah ^ ParseException: Expected end of text, found 'BB' (at char 3), (line:1, col:4) tests.test_unit.Test04_WithPackrat pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd '00aab' parseAll=False (shouldSucceed=True) '00aab' parseAll=True (shouldSucceed=True) '00aaf' parseAll=False (shouldSucceed=True) '00aaf' parseAll=True (shouldSucceed=False) 00aaf ^ ParseException: Expected end of text, found 'f' (at char 4), (line:1, col:5) tests.test_unit.Test04_WithPackrat pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd Parsing: 'a,b,c,100.2,,3' -> ['a', 'b', 'c', '100.2', '', '3'] Parsing: 'd, e, j k , m ' -> ['d', 'e', 'j k', 'm'] Parsing: "'Hello, World', f, g , , 5.1,x" -> ["'Hello, World'", 'f', 'g', '', '5.1', 'x'] Parsing: 'John Doe, 123 Main St., Cleveland, Ohio' -> ['John Doe', '123 Main St.', 'Cleveland', 'Ohio'] Parsing: 'Jane Doe, 456 St. James St., Los Angeles , California ' -> ['Jane Doe', '456 St. James St.', 'Los Angeles', 'California'] Parsing tests/karthik.ini ... 23 ['users'] users.K 8 8 users.mod_scheme 'QPSK' 'QPSK' users.Na K+2 K+2 OK Parsing examples/Setup.ini ... 125 ['Startup', 'Languages', 'test'] Startup.audioinf M3i M3i Languages.key1 0x0003 0x0003 test.foo bar bar OK Constructing EBNF parser with pyparsing... Parsing EBNF grammar with EBNF parser... - terminal_string - meta_identifier - integer - syntax - syntax_rule - definitions_list - single_definition - syntactic_term - syntactic_factor - syntactic_primary - optional_sequence - repeated_sequence - grouped_sequence Parsing EBNF grammar with generated EBNF parser... [['syntax', '=', '(', 'syntax_rule', ')', ',', '{', '(', 'syntax_rule', ')', '}', ';'], ['syntax_rule', '=', 'meta_identifier', ',', "'='", ',', 'definitions_list', ',', "';'", ';'], ['definitions_list', '=', 'single_definition', ',', '{', "'|'", ',', 'single_definition', '}', ';'], ['single_definition', '=', 'syntactic_term', ',', '{', "','", ',', 'syntactic_term', '}', ';'], ['syntactic_term', '=', 'syntactic_factor', ',', '[', "'-'", ',', 'syntactic_factor', ']', ';'], ['syntactic_factor', '=', '[', 'integer', ',', "'*'", ']', ',', 'syntactic_primary', ';'], ['syntactic_primary', '=', 'optional_sequence', '|', 'repeated_sequence', '|', 'grouped_sequence', '|', 'meta_identifier', '|', 'terminal_string', ';'], ['optional_sequence', '=', "'['", ',', 'definitions_list', ',', "']'", ';'], ['repeated_sequence', '=', "'{'", ',', 'definitions_list', ',', "'}'", ';'], ['grouped_sequence', '=', "'('", ',', 'definitions_list', ',', "')'", ';']] [['xavier', 'yeti'], ['alpha', 'beta', 'charlie'], ['will', 'beaver']] ['xavier', 'yeti'] ['alpha', 'beta', 'charlie'] ['will', 'beaver'] ['1', '0x2', '3', '0x4', 'aaa'] - base10: ['1', '3'] - hex: ['0x2', '0x4'] - word: ['aaa'] [[['Q', ['x', 'y', 'z']]], ':-', ['Bloo', ['x', 'Mitsis', 'y']], ['Foo', ['y', 'z', '1243']], ['y', '>', '28'], ['x', '<', '12'], ['x', '>', '3']] - Bloo: ['x', 'Mitsis', 'y'] - Foo: ['y', 'z', '1243'] - head: [['Q', ['x', 'y', 'z']]] - Q: ['x', 'y', 'z'] [0]: ['Q', ['x', 'y', 'z']] [0]: Q [1]: ['x', 'y', 'z'] - pred: [['y', '>', '28'], ['x', '<', '12'], ['x', '>', '3']] [0]: ['y', '>', '28'] [1]: ['x', '<', '12'] [2]: ['x', '>', '3'] [0]: [['Q', ['x', 'y', 'z']]] - Q: ['x', 'y', 'z'] [0]: ['Q', ['x', 'y', 'z']] [0]: Q [1]: ['x', 'y', 'z'] [1]: :- [2]: ['Bloo', ['x', 'Mitsis', 'y']] [0]: Bloo [1]: ['x', 'Mitsis', 'y'] [3]: ['Foo', ['y', 'z', '1243']] [0]: Foo [1]: ['y', 'z', '1243'] [4]: ['y', '>', '28'] [5]: ['x', '<', '12'] [6]: ['x', '>', '3'] Re:('[a-z]+') ['abc'] Re:('[a-z]+') ['abc'] Re:('[a-z]+') ['abc'] Re:('[a-z]+') ['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] {Re:('[a-z]+') | Re:('[a-z]+')} ['abc'] {Re:('[a-z]+') ^ Re:('[a-z]+')} ['abc'] {Re:('[a-z]*') | Re:('[a-z]*')} ['abc'] {Re:('[a-z]*') ^ Re:('[a-z]*')} ['abc'] Raised expected exception: ParseSyntaxException: Expected W:(0-9), found 'bad' (at char 4), (line:1, col:5) Raised expected exception: ParseSyntaxException: should raise here (at char 0), (line:1, col:1) Raised expected exception: ParseSyntaxException: Expected identifier, found end of text (at char 1), (line:1, col:2) [123, 456, 789] [123, 456, 789] 9 -> 9 -9 -> -9 --9 -> 9 -E -> -2.718281828459045 9 + 3 + 5 -> 17 9 + 3 / 11 -> 9.272727272727273 (9 + 3) -> 12 (9+3) / 11 -> 1.0909090909090908 9 - 12 - 6 -> -9 9 - (12 - 6) -> 3 2*3.14159 -> 6.28318 3.1415926535*3.1415926535 / 10 -> 0.9869604400525172 PI * PI / 10 -> 0.9869604401089358 PI*PI/10 -> 0.9869604401089358 PI^2 -> 9.869604401089358 round(PI^2) -> 10 6.02E23 * 8.048 -> 4.844896e+24 e / 3 -> 0.9060939428196817 sin(PI/2) -> 1.0 10+sin(PI/4)^2 -> 10.5 trunc(E) -> 2 trunc(-E) -> -2 round(E) -> 3 round(-E) -> -3 E^PI -> 23.140692632779263 exp(0) -> 1.0 exp(1) -> 2.718281828459045 2^3^2 -> 512 (2^3)^2 -> 64 2^3+2 -> 10 2^3+5 -> 13 2^9 -> 512 sgn(-2) -> -1 sgn(0) -> 0 sgn(0.1) -> 1 round(E, 3) -> 2.718 round(PI^2, 3) -> 9.87 sgn(cos(PI/4)) -> 1 sgn(cos(PI/2)) -> 0 sgn(cos(PI*3/4)) -> -1 +(sgn(cos(PI/4))) -> 1 -(sgn(cos(PI/4))) -> -1 -> ['BODY', False] ['BODY', False] - empty: False - startBody: ['BODY', False] - empty: False - tag: 'BODY' - tag: 'BODY' -> ['BODY', ['bgcolor', '#00FFCC'], False] ['BODY', ['bgcolor', '#00FFCC'], False] - bgcolor: '#00FFCC' - empty: False - startBody: ['BODY', ['bgcolor', '#00FFCC'], False] - bgcolor: '#00FFCC' - empty: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFCC'] [2]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFCC'] [2]: False -> ['BODY', ['bgcolor', '#00FFAA'], True] ['BODY', ['bgcolor', '#00FFAA'], True] - bgcolor: '#00FFAA' - empty: True - startBody: ['BODY', ['bgcolor', '#00FFAA'], True] - bgcolor: '#00FFAA' - empty: True - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFAA'] [2]: True - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFAA'] [2]: True -> ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False -> ['BODY', True] ['BODY', True] - empty: True - startBody: ['BODY', True] - empty: True - tag: 'BODY' - tag: 'BODY' -> [''] [''] - endBody: '' end tag ................ /* * a block comment * */ typedef string[10] tenStrings; typedef sequence stringSeq; typedef sequence< sequence > stringSeqSeq; interface QoSAdmin { stringSeq method1(in string arg1, inout long arg2); stringSeqSeq method2(in string arg1, inout long arg2, inout long arg3); string method3(); }; tokens = [['typedef', 'string', '[', '10', ']', 'tenStrings', ';'], ['typedef', ['sequence', '<', 'string', '>'], 'stringSeq', ';'], ['typedef', ['sequence', '<', ['sequence', '<', 'string', '>'], '>'], 'stringSeqSeq', ';'], ['interface', 'QoSAdmin', '{', 'stringSeq', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', 'stringSeqSeq', 'method2', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ['inout', 'long', 'arg3'], ')', ';', 'string', 'method3', '(', ')', ';', '}', ';']] 59 /* * a block comment * */ typedef string[10] tenStrings; typedef /** ** *** **** * * a block comment * */ sequence /*comment inside an And */ stringSeq; /* */ /**/ /***/ /****/ typedef sequence< sequence > stringSeqSeq; interface QoSAdmin { stringSeq method1(in string arg1, inout long arg2); stringSeqSeq method2(in string arg1, inout long arg2, inout long arg3); string method3(); }; tokens = [['typedef', 'string', '[', '10', ']', 'tenStrings', ';'], ['typedef', ['sequence', '<', 'string', '>'], 'stringSeq', ';'], ['typedef', ['sequence', '<', ['sequence', '<', 'string', '>'], '>'], 'stringSeqSeq', ';'], ['interface', 'QoSAdmin', '{', 'stringSeq', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', 'stringSeqSeq', 'method2', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ['inout', 'long', 'arg3'], ')', ';', 'string', 'method3', '(', ')', ';', '}', ';']] 59 const string test="Test String\n"; const long a = 0; const long b = -100; const float c = 3.14159; const long d = 0x007f7f7f; exception TestException { string msg; sequence dataStrings; }; interface TestInterface { void method1(in string arg1, inout long arg2); }; tokens = [['const', 'string', 'test', '=', '"Test String\\n"', ';'], ['const', 'long', 'a', '=', '0', ';'], ['const', 'long', 'b', '=', '-100', ';'], ['const', 'float', 'c', '=', '3.14159', ';'], ['const', 'long', 'd', '=', '0x007f7f7f', ';'], 'exception', 'TestException', '{', ['string', 'msg', ';'], [['sequence', '<', 'string', '>'], 'dataStrings', ';'], '}', ';', ['interface', 'TestInterface', '{', 'void', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', '}', ';']] 60 module Test1 { exception TestException { string msg; ]; interface TestInterface { void method1(in string arg1, inout long arg2) raises (TestException); }; }; exception TestException ^ Expected {moduleDef | {moduleItem}...}, found 'exception' (at char 56), (line:4, col:15) module Test1 { exception TestException { string msg; }; }; tokens = ['module', 'Test1', '{', 'exception', 'TestException', '{', ['string', 'msg', ';'], '}', ';', '}', ';'] 13 Test ifOnlyIfOnly Match Literal ['if'] Match Keyword failed Test if(OnlyIfOnly) Match Literal ['if'] Match Keyword ['if'] Test if (OnlyIf Only) Match Literal ['if'] Match Keyword ['if'] Test IFOnlyIfOnly Match Literal failed Match Keyword failed Test If(OnlyIfOnly) Match Literal failed Match Keyword ['if'] Test iF (OnlyIf Only) Match Literal failed Match Keyword ['if'] Raised expected exception: ValueError: null string passed to Keyword; use Empty() instead ['0', '123', '321', 444] ['spam', 'eggs'] - first: 'spam' - second: 'eggs' [] ['123', '456', 'ABC', 'DEF'] - ints: ['123', '456'] - words: ['ABC', 'DEF'] ['123', 'ABC', 'DEF'] - ints: ['123', '456'] ['List', '__add__', '__annotations__', '__bool__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattr__', '__getattribute__', '__getitem__', '__getnewargs__', '__getstate__', '__gt__', '__hash__', '__iadd__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__module__', '__ne__', '__new__', '__radd__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__setattr__', '__setitem__', '__setstate__', '__sizeof__', '__slots__', '__str__', '__subclasshook__', '__weakref__', '_all_names', '_asStringList', '_modal', '_name', '_null_values', '_parent', '_tokdict', '_toklist', 'append', 'asDict', 'asList', 'as_dict', 'as_list', 'clear', 'copy', 'dump', 'extend', 'from_dict', 'get', 'getName', 'get_name', 'haskeys', 'insert', 'items', 'keys', 'pop', 'pprint', 'trios', 'values'] ['spam', 'eggs', 'foo', 'bar'] ['abc', 'def', 'ghi', 'ihg', 'fed', 'cba'] [['123', 456, ['789', 789]]] - trios: ['123', 456, ['789', 789]] - first: '123' - second: 456 - third: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: 123 [1]: 456 [2]: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: ['123', 456, ['789', 789]] - first: '123' - second: 456 - third: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: 123 [1]: 456 [2]: ['789', 789] - threeInt: 789 - threeStr: '789' ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'] ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'] ['f', 'h', 'A', 'B', 'g', 'c', 'e', 'C', 'b', 'D', 'E', 'F', 'd', 'i', 'j', 'G', 'H', 'a', 'I', 'J'] ['f', 'h', 'A', 'B', 'g', 'c', 'e', 'C', 'b', 'D', 'E', 'F', 'd', 'i', 'j', 'G', 'H', 'a', 'I', 'J'] Pre-insert [[1, 2, 3], 'dice', ['rolled', 'first', 'try']] - additional: ['rolled', 'first', 'try'] - label: 'dice' - nums: [1, 2, 3] [0]: [1, 2, 3] [1]: dice [2]: ['rolled', 'first', 'try'] Post-insert [[1, 2, 3], 6, 'dice', ['rolled', 'first', 'try']] - additional: ['rolled', 'first', 'try'] - label: 'dice' - nums: [1, 2, 3] [0]: [1, 2, 3] [1]: 6 [2]: dice [3]: ['rolled', 'first', 'try'] [ 1,2,3,4,5,6 ] [['[', '1', '2', '3', '4', '5', '6', ']']] - LIST: ['[', '1', '2', '3', '4', '5', '6', ']'] - END_LIST: ']' - LIST_VALUES: ['1', '2', '3', '4', '5', '6'] - LIT_NUM: ['1', '2', '3', '4', '5', '6'] - START_LIST: '[' [0]: ['[', '1', '2', '3', '4', '5', '6', ']'] - END_LIST: ']' - LIST_VALUES: ['1', '2', '3', '4', '5', '6'] - LIT_NUM: ['1', '2', '3', '4', '5', '6'] - START_LIST: '[' "Golden Gate Bridge" 37.819722 -122.478611 height=746 span=4200 ['Golden Gate Bridge', [37.819722, -122.478611, ['height', 746], ['span', 4200]]] - data: [37.819722, -122.478611, ['height', 746], ['span', 4200]] - height: 746 - lat: 37.819722 - long: -122.478611 - span: 4200 [0]: 37.819722 [1]: -122.478611 [2]: ['height', 746] [3]: ['span', 4200] - name: 'Golden Gate Bridge' [0]: Golden Gate Bridge [1]: [37.819722, -122.478611, ['height', 746], ['span', 4200]] - height: 746 - lat: 37.819722 - long: -122.478611 - span: 4200 [0]: 37.819722 [1]: -122.478611 [2]: ['height', 746] [3]: ['span', 4200] .............['a', ['href', 'blah'], False] - empty: False - href: 'blah' - startA: ['a', ['href', 'blah'], False] - empty: False - href: 'blah' - tag: 'a' [0]: a [1]: ['href', 'blah'] [2]: False - tag: 'a' [0]: a [1]: ['href', 'blah'] [2]: False [] [] [1, 2, 3, 4, 5] ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 0 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 1 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 2 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 3 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 4 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 5 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 0 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 1 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 2 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 3 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 4 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 5 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 0 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 1 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 2 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 3 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 4 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 5 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 0 ['BABBAB'] Test pickle dump protocol 1 ['BABBAB'] Test pickle dump protocol 2 ['BABBAB'] Test pickle dump protocol 3 ['BABBAB'] Test pickle dump protocol 4 ['BABBAB'] Test pickle dump protocol 5 ['BABBAB'] Test pickle dump protocol 0 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 1 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 2 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 3 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 4 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 5 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 0 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 1 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 2 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 3 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 4 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 5 ['BABBAB'] - name: ['BABBAB'] ParseResults(['test', 'blub'], {'word': 'blub'}) blub {'word': 'blub'} ParseResults(['test', 'blub'], {'word': ['test', 'blub']}) ['test', 'blub'] {'word': ['test', 'blub']} ['abc'] - A: 'abc' Raised expected exception: AttributeError: __xyz__ ['5', '4', '3', '2', '1'] {'eggs', 'spam'} not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] ParseResults([('A', 'Z')], {'Achar': ('A', 'Z')}) ('A', 'Z') ['/', [['respectaccents']]] ('/respectaccents/ignoreaccents', 0) ['/', [['ignoreaccents']]] ('/respectaccents/ignoreaccents', 15) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 1)}, '_info_': ('/respectaccents/ignoreaccents', 1)}, '/': '', ParseResults(['respectaccents'], {'_info_': ('/respectaccents/ignoreaccents', 1)}): '', '_info_': ('/respectaccents/ignoreaccents', 0)} ('/respectaccents/ignoreaccents', 0) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 16)}, '_info_': ('/respectaccents/ignoreaccents', 16)}, '/': '', ParseResults(['ignoreaccents'], {'_info_': ('/respectaccents/ignoreaccents', 16)}): '', '_info_': ('/respectaccents/ignoreaccents', 15)} ('/respectaccents/ignoreaccents', 15) ['/', [['respectaccents']]] ('/respectaccents/ignoreaccents', 0) ['/', [['ignoreaccents']]] ('/respectaccents/ignoreaccents', 15) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 1)}, '_info_': ('/respectaccents/ignoreaccents', 1)}, '/': '', ParseResults(['respectaccents'], {'_info_': ('/respectaccents/ignoreaccents', 1)}): '', '_info_': ('/respectaccents/ignoreaccents', 0)} ('/respectaccents/ignoreaccents', 0) ..............................{'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 16)}, '_info_': ('/respectaccents/ignoreaccents', 16)}, '/': '', ParseResults(['ignoreaccents'], {'_info_': ('/respectaccents/ignoreaccents', 16)}): '', '_info_': ('/respectaccents/ignoreaccents', 15)} ('/respectaccents/ignoreaccents', 15) SELECT * from XYZZY, ABC ['select', '*', 'from', 'XYZZY', 'ABC', ''] 6 select * from SYS.XYZZY ['select', '*', 'from', 'SYS.XYZZY', ''] 5 Select A from Sys.dual ['select', 'A', 'from', 'SYS.DUAL', ''] 5 Select A,B,C from Sys.dual ['select', 'A', 'B', 'C', 'from', 'SYS.DUAL', ''] 7 Select A, B, C from Sys.dual ['select', 'A', 'B', 'C', 'from', 'SYS.DUAL', ''] 7 Select A, B, C from Sys.dual, Table2 ['select', 'A', 'B', 'C', 'from', 'SYS.DUAL', 'TABLE2', ''] 8 Select A from Sys.dual where a in ('RED','GREEN','BLUE') ['select', 'A', 'from', 'SYS.DUAL', 'where', 'A', 'in', '(', "'RED'", "'GREEN'", "'BLUE'", ')'] 12 Select A from Sys.dual where a in ('RED','GREEN','BLUE') and b in (10,20,30) ['select', 'A', 'from', 'SYS.DUAL', 'where', 'A', 'in', '(', "'RED'", "'GREEN'", "'BLUE'", ')', 'and', 'B', 'in', '(', 10, 20, 30, ')'] 20 Select A,b from table1,table2 where table1.id eq table2.id -- test out comparison operators ['select', 'A', 'B', 'from', 'TABLE1', 'TABLE2', 'where', 'TABLE1.ID', 'eq', 'TABLE2.ID'] 10 Re:('[-+][0-9]+') correctly failed to match '1234 foo' Re:('[-+][0-9]+') correctly failed to match ' +foo' Re:('[0-9]+') correctly failed to match 'abc' Re:('[0-9]+') correctly failed to match '+123 foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match 'foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match '"foo bar\'' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match '\'foo bar"' Re:('[-+][0-9]+') correctly matched ' +123' Re:('[-+][0-9]+') correctly matched '+123' Re:('[-+][0-9]+') correctly matched '+123 foo' Re:('[-+][0-9]+') correctly matched '-0 foo' Re:('[0-9]+') correctly matched '123 foo' Re:('[0-9]+') correctly matched '0 foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly matched '"foo"' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly matched "'foo bar' baz" Re:('[A-Z]+') correctly failed to match 'blah' Re:('[A-Z]+') correctly matched 'BLAH' Re:('("(?P[^\"]*)")') correctly matched '"foo bar" baz' ['"zork"'] [('content', 'zork')] zork lets try an invalid RE successfully rejected an invalid RE: invalid pattern ('("[^"]*")|(\'[^\']*\'') passed to Regex Raised expected exception: ValueError: null string passed to Regex; use Empty() instead ['spam', 'eggs', 'suf'] ['pre', 'spam', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: ParseException: Missing one or more required elements ('and'), found ' ' (at char 4), (line:1, col:5) ['spam', 'and', 'eggs'] - first: 'spam' - second: 'eggs' Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement ['spam', 'eggs'] ['pre', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement ['abd', 'def', 'ghi', 'jkl'] ['abd', 'def', 'ghi', 'jkl'] Raised expected exception: TypeError: cannot multiply ParserElement and str objects Raised expected exception: TypeError: cannot multiply ParserElement and str objects ['spam', '11', '22'] - first: 'spam' - second: ['11', '22'] ['spam', '111', '222'] - first: 'spam' - second: ['111', '222'] ['spam'] - first: 'spam' ['spam', '12', '23', '34'] - first: 'spam' - second: ['12', '23', '34'] ['spam', '45'] - first: 'spam' - second: ['45'] ['spam', '100'] - first: 'spam' - second: ['100'] ['spam', '100', '200', '300'] - first: 'spam' - second: ['100', '200', '300'] ['spam', '1', '2'] - first: 'spam' - second: ['1', '2'] ['spam', '1', '2', '3'] - first: 'spam' - second: ['1', '2', '3'] Raised expected exception: ValueError: second tuple value must be greater or equal to first tuple value Raised expected exception: TypeError: cannot multiply ParserElement and (str,str) objects Raised expected exception: TypeError: cannot multiply ParserElement and (str,NoneType) objects Raised expected exception: TypeError: only 1 or 2 index arguments supported ((2, 3, 4)) ['spam', 'eggs', 'suf'] ['pre', 'spam', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement {{word {{word_1 word} ^ word}} ^ {word word word}} foo bar temp -> ['foo', 'bar', 'temp'] EXP: AAA ['123', '456', '789', '234'] GOT: AAA ['123', '456', '789', '234'] AAA ['123', '456', '789', '234'] EXP: 234 ['123', '456', '789'] GOT: 234 ['123', '456', '789'] 234 ['123', '456', '789'] EXP: AAA ['123', '456', '789'] GOT: AAA ['123', '456', '789'] AAA ['123', '456', '789'] EXP: 789 ['123', '456'] GOT: 789 ['123', '456'] 789 ['123', '456'] noname ['123', '456'] ['AAA', '123', '456', '789', '234'] - name: 'AAA' Raised expected exception: TypeError: pop() got an unexpected keyword argument 'notDefault' c384 b8324 _9293874 _293 404 $%^$^%$2939 [384, 8324] - prefix: ['c', 'b'] [9293874, 293] [404] [2939] - prefix: ['^%$'] [2939] [404] [['working']] [0]: ['working'] - main: ['working'] - negs_lb: 'not' got maximum excursion limit exception ['like "SQL"'] ['aaayaaa'] 'a valid single quoted string' 'an invalid single quoted string because it spans lines' "a valid double quoted string" "an invalid double quoted string because it spans lines" [("'a valid single quoted string'", 17, 47)] [('a valid double quoted string', 154, 184)] [("'a valid single quoted string'", 17, 47), ('"a valid double quoted string"', 154, 184)] [("'This string has an escaped (\\') quote character'", 17, 66)] [('This string has an escaped (\\") quote character', 83, 132)] [("'This string has an escaped (\\') quote character'", 17, 66), ('"This string has an escaped (\\") quote character"', 83, 132)] [("'This string has an doubled ('') quote character'", 17, 66)] [('This string has an doubled ("") quote character', 83, 132)] [("'This string has an doubled ('') quote character'", 17, 66), ('"This string has an doubled ("") quote character"', 83, 132)] testing catastrophic RE backtracking in implementation of dblQuotedString Raised expected exception: ValueError: endQuoteChar cannot be the empty string ['myc(114)r(11)dd'] ['myc(114)r(11)dd'] return as list of match groups [('123', '456', 'lsdfkj')] [('123', '456', 'lsdfkj')] return as re.match instance [] ('123', '456', 'lsdfkj') [('123', '456', 'lsdfkj')] Raised expected exception: TypeError: Regex may only be constructed with a string or a compiled RE object test sub with string This is the title: 'Richard III' test sub with re string

This is the main heading

This is the sub-heading

test sub with re string (Regex returns re.match)

This is the main heading

This is the sub-heading

test sub with callable that return str I want this in upcase: WHAT? WHAT? Raised expected exception: TypeError: cannot use sub() with a callable with Regex(asMatch=True) Raised expected exception: TypeError: cannot use sub() with Regex(asGroupList=True) Raised expected exception: TypeError: cannot use sub() with Regex(asGroupList=True) verify behavior with repeated tokens when packrat parsing is enabled skipping this test, not compatible with memoization skipping this test, not compatible with memoization skipping this test, not compatible with memoization skipping this test, not compatible with memoization ...................>>entering convert_to_int(line: '132', 0, ParseResults(['132'], {})) <>entering (line: '132', 0, ParseResults([132], {})) < (ret: 1320) >>entering Z(line: '132', 0, ParseResults([1320], {})) < Expected {'A' | {'B' 'C'} | 'E'}, found 'D' (at char 1), (line:1, col:2) [1, 2, 3, 4, 6, 8, 9, 10, 16] [1, 2, 3, 4, 6, 8, 9, 10, 16] [11] [11] 1/2 eval: 0.5 1/0 [1, '/', 0] - denominator: 0 - numerator: 1 eval_fraction failed: ZeroDivisionError: division by zero True ['129.6.15.28', '129.6.15.29', '132.163.4.101', '132.163.4.102', '132.163.4.103'] [(ParseResults([], {}), 5, 6)] Before parsing with setBreak: False After parsing with setBreak: True a | b | c d | e | f {a | b | c | d | e | f} Forward: + | - term + | - term Forward: ?: term ?: term Forward: {a | b | c [{d | e | f : ...}]...} int [, int]... (len) int... nested () expression (, ) (, ) common HTML entity lsdjkf &'"&xyzzy; Raised expected exception: TypeError: parse actions must be callable ['A'] - Achar: 'A' verify behavior of setResultsName with OneOrMore and ZeroOrMore ['test', 'test'] ['test', 'test'] ['test', 'test'] ['test', 'test'] ['test', 'test'] Received expected exception: just one arg (at char 0), (line:1, col:1) ['some text /* comment with ; in */', ';', 'working'] ['some text /* comment with ; in */some other stuff', ';', 'working'] ['some text /* comment with ; in */', ';', 'working'] Raised expected exception: ParseException: Expected ';', found ' ' (at char 37), (line:1, col:38) Raised expected exception: Exception: use of `...` expression without following SkipTo target expression verify proper streamline logic {{{'A' 'B'} 'C'} 'D'} {'A' 'B' 'C' 'D'} ['123'] ['123'] ['123'] ['123'] ['123'] ['123'] Raised expected exception: ParseException: Expected W:(0-9), found ' ' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected '123', found ' ' (at char 0), (line:1, col:1) {StringStart W:(a-e) StringEnd} 'aaa' ['aaa'] {LineStart W:(a-e) StringEnd} 'aaa' ['aaa'] {LineStart W:(a-e) StringEnd} '\naaa' ['aaa'] {LineStart W:(a-e) StringEnd} ' aaa' ['aaa'] {LineStart W:(a-e) StringEnd} '\n aaa' ['aaa'] {AtLineStart:(W:(a-e)) StringEnd} ' aaa' Raised expected exception: ParseException: not found at line start, found 'aaa' (at char 3), (line:1, col:4) {AtLineStart:(W:(a-e)) StringEnd} '\n aaa' Raised expected exception: ParseException: not found at line start, found 'aaa' (at char 4), (line:2, col:4) garbage;DOB 10-10-2010;more garbage ID PARI12345678;more garbage ID:PARI12345678 DOB:10-10-2010 INFO: ID:PARI12345678 DOB:10-10-2010 INFO: ['DOB', '10-10-2010'] - dob: '10-10-2010' ['ID', 'PARI12345678'] - id: 'PARI12345678' garbage;ID PARI12345678;more garbage DOB 10-10-2010;more garbage ID:PARI12345678 DOB:10-10-2010 INFO: ID:PARI12345678 DOB:10-10-2010 INFO: ['ID', 'PARI12345678'] - id: 'PARI12345678' ['DOB', '10-10-2010'] - dob: '10-10-2010' garbage;DOB 10-10-2010 ID: DOB:10-10-2010 INFO: ID: DOB:10-10-2010 INFO: ['DOB', '10-10-2010'] - dob: '10-10-2010' garbage;ID PARI12345678;more garbage- I am cool ID:PARI12345678 DOB: INFO: I am cool ID:PARI12345678 DOB: INFO: I am cool ['ID', 'PARI12345678'] - id: 'PARI12345678' ['-', ' I am cool'] - info: ' I am cool' 00 11 22 aa FF 0a 0d 1a [0, 17, 34, 170, 255, 10, 13, 26] I wish to buy 12345 shares of Acme Industries (as a gift to my (ex)wife) I 12,345 Acme Industries asagifttomyexwife 1 1234567890 1:| 2:| 3:check aaa| 1 1234567890 1:| 2:| 3:CHECK aaa| 1 2 12345678901234567890 1: check aaa| 1 2 12345678901234567890 1: CHECK aaa| [['rint'], ['a100']] 1 1234567890 1: check| 1 1234567890 1: CHECK| Original: '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' Should match: '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' aaa 333 ['aaa', '333'] b 1 ['b', '1'] ababab 32123 ['ababab', '32123'] 123 [123] 456 [456] abc abc ^ ParseException: Expected {{integer}}, found 'abc' (at char 0), (line:1, col:1) pyparsing.core.Or - {{integer}} FAIL: Expected {{integer}}, found 'abc' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4025, in parseImpl raise maxException 101222 101222 ['Καλημέρα', ',', 'κόσμε', '!'] [['şehir', 'İzmir'], ['ülke', 'Türkiye'], ['nüfus', 4279677]] - nüfus: 4279677 - ülke: 'Türkiye' - şehir: 'İzmir' [0]: ['şehir', 'İzmir'] [1]: ['ülke', 'Türkiye'] [2]: ['nüfus', 4279677] 缉WὟﬤं훶g冺шٌํ蝺÷Πבֿऴ깥©䪒ԗٜ๎戍È̓שּׂॢ뾱·蕍Ԗܥๅ郯ŚΠ֘ꣴ곭Ö蕁еڭฯ溠Ĥἑﬣ॑컺ß㘅ӻ۲็率.ῖבּॣ킺7煁ꙁۭซ旐vὔהꣿ묞þ馢ⷪ܁๐襝ĵᾧֶ७뮕0鈄Ҟܳี� ['缉WὟﬤं훶g冺шٌํ蝺÷Πבֿऴ깥©䪒ԗٜ๎戍È̓שּׂॢ뾱·蕍Ԗܥๅ郯ŚΠ֘ꣴ곭Ö蕁еڭฯ溠Ĥἑﬣ॑컺ß㘅ӻ۲็率.ῖבּॣ킺7煁ꙁۭซ旐vὔהꣿ묞þ馢ⷪ܁๐襝ĵᾧֶ७뮕0鈄Ҟܳี�'] [[10, 'print', 123, ';'], [20, 'print', 234, ';', 567, ';'], [30, 'print', 890]] [0]: [10, 'print', 123, ';'] [1]: [20, 'print', 234, ';', 567, ';'] [2]: [30, 'print', 890] [['abc', 'abc', 'abc']] [0]: ['abc', 'abc', 'abc'] [["'def'", "'def'", "'def'"]] [0]: ["'def'", "'def'", "'def'"] [[123, 123, 123]] [0]: [123, 123, 123] [[4.56, 4.56, 4.56]] [0]: [4.56, 4.56, 4.56] [['a_bc', 'a_bc', 'a_bc']] [0]: ['a_bc', 'a_bc', 'a_bc'] [['abc', '\n'], ['abc', '\n'], ['abc']] [0]: ['abc', '\n'] [1]: ['abc', '\n'] [2]: ['abc'] [["'def'", '\n'], ["'def'", '\n'], ["'def'"]] [0]: ["'def'", '\n'] [1]: ["'def'", '\n'] [2]: ["'def'"] [[123, '\n'], [123, '\n'], [123]] [0]: [123, '\n'] [1]: [123, '\n'] [2]: [123] [[4.56, '\n'], [4.56, '\n'], [4.56]] [0]: [4.56, '\n'] [1]: [4.56, '\n'] [2]: [4.56] [['a_bc', '\n'], ['a_bc', '\n'], ['a_bc']] [0]: ['a_bc', '\n'] [1]: ['a_bc', '\n'] [2]: ['a_bc'] [['abc', 'abc', 'abc']] [0]: ['abc', 'abc', 'abc'] [["'def'", "'def'", "'def'"]] [0]: ["'def'", "'def'", "'def'"] [[123, 123, 123]] [0]: [123, 123, 123] [[4.56, 4.56, 4.56]] [0]: [4.56, 4.56, 4.56] [['a_bc', 'a_bc', 'a_bc']] [0]: ['a_bc', 'a_bc', 'a_bc'] verify behavior of validate() Forward: Group:({'A' | : ...}) RecursiveGrammarException: [Forward: Group:({'A' | : ...}), Group:({'A' | : ...}), {'A' | Forward: Group:({'A' | : ...})}, Forward: Group:({'A' | : ...})] Forward: {['A'] : ...} RecursiveGrammarException: [Forward: {['A'] : ...}, {['A'] Forward: {['A'] : ...}}, Forward: {['A'] : ...}] ('VUTSRQPONMLKJIHGFEDCBA', 5, ParseResults(['Q'], {})) ['V', 'U', 'T', 'S', 'R', 'Q', 'P', 'O', 'N', 'M', 'L', 'K', 'J', 'I', 'H', 'G', 'F', 'E', 'D', 'C', 'B', 'A'] ('VUTSRQPONMLKJIHGFEDCBA', 5, ParseResults(['Q'], {})) make a ClassAsPAStarNew ('VUTSRQPONMLKJIHGFEDCBA', 17, ParseResults(['E'], {})) making a ClassAsPA1 ['V', 'U', 'T', 'S', 'R', 'Q', 'P', 'O', 'N', 'M', 'L', 'K', 'J', 'I', 'H', 'G', 'F', 'E', 'D', 'C', 'B', 'A'] verify that using '<<' operator with a Forward raises a warning if there is a dangling '|' operator unsafe << and |, but diag not enabled, should not warn unsafe << and |, should warn unsafe << and |, should warn safe <<= and |, should not warn safe << and (|), should not warn .........[['a', ['b', 'x'], False, '2', ''], ['a', ['b', 'x'], False, '3', '']] [0]: ['a', ['b', 'x'], False, '2', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '2' [0]: a [1]: ['b', 'x'] [2]: False [3]: 2 [4]: [1]: ['a', ['b', 'x'], False, '3', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '3' [0]: a [1]: ['b', 'x'] [2]: False [3]: 3 [4]: [['a', ['b', 'x'], False, '2', ''], ['a', ['b', 'x'], False, '3', '']] [0]: ['a', ['b', 'x'], False, '2', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '2' [0]: a [1]: ['b', 'x'] [2]: False [3]: 2 [4]: [1]: ['a', ['b', 'x'], False, '3', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '3' [0]: a [1]: ['b', 'x'] [2]: False [3]: 3 [4]: [['a', ['class', 'boo'], False, '8', '']] [0]: ['a', ['class', 'boo'], False, '8', ''] - class: 'boo' - empty: False - endA: '' - tag: 'a' - value: '8' [0]: a [1]: ['class', 'boo'] [2]: False [3]: 8 [4]: ABC DEF GHI [['D', 'G'], ['A'], ['C', 'F'], ['I'], ['E'], ['A', 'I']] JKL MNO PQR [['J', 'M', 'P'], [], ['L', 'R'], ['O'], [], ['O']] STU VWX YZ [['S', 'V'], ['Y'], ['X', 'Z'], ['U'], [], ['U', 'Y']] ABC DEF GHI JKL MNO PQR STU VWX YZ [['D', 'G', 'J', 'M', 'P', 'S', 'V'], ['A', 'Y'], ['C', 'F', 'L', 'R', 'X', 'Z'], ['I', 'O', 'U'], ['E'], ['A', 'I', 'O', 'U', 'Y']] [['Hello'], ['Mr'], ['Ed'], ["it's"], ['Wilbur']] ['ABCDEMNXYZABCDEMNXYZABCDEMNXYZ'] Testing escape char: \ -> W:(\]) re: '[\\\]]+') Match '\]]\]\]]\]\\\]]\' -> True Testing escape char: \ -> W:([\) re: '[\[\\]+') Match '[\\\\[\[\[\\\[\\' -> True Testing escape char: \ -> W:(\]) re: '[\\\]]+') Match '\]]\]]\]\\]\\\]]' -> True Testing escape char: \ -> W:(\, A-Z) re: '\\[A-Z]*') Match '\HTAODKZGLZAPXFCA' -> True Testing escape char: \ -> W:(\, A-Z) re: '\\[A-Z]*') Match '\GLHIRQNHLXCBKKZT' -> True Testing escape char: ^ -> W:(^_) re: '[\^_]+') Match '_^_^^_^^_^^^^_^_' -> True Testing escape char: ^ -> W:(]^) re: '[\]\^]+') Match ']^]]]]]]]^]^]^]^' -> True Testing escape char: ^ -> W:(^_) re: '[\^_]+') Match '^__^_^^_____^_^_' -> True Testing escape char: ^ -> W:(^, A-Z) re: '\^[A-Z]*') Match '^QOLBWZCIHQFCYYBV' -> True Testing escape char: ^ -> W:(^, A-Z) re: '\^[A-Z]*') Match '^IFWDHUAPJWYZDVOW' -> True Testing escape char: - -> W:(-.) re: '[\-.]+') Match '..-----..-.-----' -> True Testing escape char: - -> W:(,-) re: '[,\-]+') Match '---,-,,,----,,,-' -> True Testing escape char: - -> W:(-.) re: '[\-.]+') Match '--..-.--..---.--' -> True Testing escape char: - -> W:(-, A-Z) re: '\-[A-Z]*') Match '-UNAZRMJTZKINBEJU' -> True Testing escape char: - -> W:(-, A-Z) re: '\-[A-Z]*') Match '-PMRYZBCANQNHXJMF' -> True Testing escape char: ] -> W:(]^) re: '[\]\^]+') Match ']]^^]^]^^]]^^]^^' -> True Testing escape char: ] -> W:(\]) re: '[\\\]]+') Match '\]\]\\\]]\]]]]]\' -> True Testing escape char: ] -> W:(]^) re: '[\]\^]+') Match ']]^^^^^^]]^^^]]^' -> True Testing escape char: ] -> W:(], A-Z) re: '\][A-Z]*') Match ']HIKJEKWTKMWLOITY' -> True Testing escape char: ] -> W:(], A-Z) re: '\][A-Z]*') Match ']VBGNCAIPRPRUVTQX' -> True Testing escape char: [ -> W:([\) re: '[\[\\]+') Match '[\[[[[\\[[\[[[[[' -> True Testing escape char: [ -> W:(Z[) re: '[Z\[]+') Match 'Z[[[[[[Z[[Z[[[Z[' -> True Testing escape char: [ -> W:([\) re: '[\[\\]+') Match '\[\[[\[\\[\\\\[\' -> True Testing escape char: [ -> W:([, A-Z) re: '\[[A-Z]*') Match '[ICAWSIMHCBZHCYVP' -> True Testing escape char: [ -> W:([, A-Z) re: '\[[A-Z]*') Match '[IOYMBCJEICYWUNQU' -> True Testing escape char: * -> W:(*+) re: '[*+]+') Match '+++++++*+*++*+++' -> True Testing escape char: * -> W:()*) re: '[)*]+') Match '**)**))))******)' -> True Testing escape char: * -> W:(*+) re: '[*+]+') Match '+*+*+**+**++++++' -> True Testing escape char: * -> W:(*, A-Z) re: '\*[A-Z]*') Match '*AVIBWYUXXLJYAKMT' -> True Testing escape char: * -> W:(*, A-Z) re: '\*[A-Z]*') Match '*OMIQZWKDBOEHZTJT' -> True Testing escape char: + -> W:(+,) re: '[+,]+') Match ',++++++++++,,,++' -> True Testing escape char: + -> W:(*+) re: '[*+]+') Match '**++*****+******' -> True Testing escape char: + -> W:(+,) re: '[+,]+') Match '+,,+,,+,,,,,,,,,' -> True Testing escape char: + -> W:(+, A-Z) re: '\+[A-Z]*') Match '+IYFZIUWKDCSJRGIR' -> True Testing escape char: + -> W:(+, A-Z) re: '\+[A-Z]*') Match '+RMLKWESOMKVCXOYV' -> True Testing escape char: . -> W:(./) re: '[./]+') Match '/././.../..////.' -> True Testing escape char: . -> W:(-.) re: '[\-.]+') Match '..-.-..--..-..-.' -> True Testing escape char: . -> W:(./) re: '[./]+') Match '//////...././...' -> True Testing escape char: . -> W:(., A-Z) re: '\.[A-Z]*') Match '.XIGQPWNIXXIRXNST' -> True Testing escape char: . -> W:(., A-Z) re: '\.[A-Z]*') Match '.OSWJPWLLMNESWKSO' -> True Testing escape char: ? -> W:(?@) re: '[?@]+') Match '@@??@@@?@@@??@??' -> True Testing escape char: ? -> W:(>?) re: '[>?]+') Match '?>>????>?>>????>' -> True Testing escape char: ? -> W:(?@) re: '[?@]+') Match '??@@@???@?@@?@??' -> True Testing escape char: ? -> W:(?, A-Z) re: '\?[A-Z]*') Match '?AYKFJMJAQGEURTCG' -> True Testing escape char: ? -> W:(?, A-Z) re: '\?[A-Z]*') Match '?NHQGTBYTIIEAZRCZ' -> True ['p', 'q', 'r', 'False'] Raised expected exception: ParseException: Expected {(A-Za-z) | True | False}, found 'abc' (at char 0), (line:1, col:1) {'A' W:(0-9)} ... {'A' W:(0-9)} ... {'A' W:(0-9){1,6}} ... {'A' W:(0-9){1,6}} ... {'A' W:(0-9)} ... {'A' W:(0-9){2,...}} ... {'A' W:(0-9){2,6}} ... W:(A, 0-9) A[0-9]* W:(A, 0-9) A[0-9]* W:(A, 0-9){1,6} A[0-9]{0,5} W:(A, 0-9){1,6} A[0-9]{0,5} W:(A, 0-9) A[0-9]* W:(A, 0-9){2,...} ... W:(A, 0-9){2,6} ... W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9){1,6} [A-Za-z][0-9]{0,5} W:(A-Za-z, 0-9){1,6} [A-Za-z][0-9]{0,5} W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9){2,...} ... W:(A-Za-z, 0-9){2,6} ... ..................... Raised expected exception: ValueError: cannot specify a minimum length < 1; use Opt(Word()) if zero-length word is permitted Packrat enabled: True Packrat cache: _FifoCache 16 [[7], [9]] [[1, 4], [2, 4], [4, 3]] [[1, 4], [2, 4]] detected fatal condition ['balloon', '25'] - item: 'balloon' - qty: '25' ['rucksack', 49] - item: 'rucksack' - qty: 49 ['AAA', ' this line'] ['AAA', ' and this line'] [] [] d | aA | a | b | c d | Aa | a | b | c ['aA', 'aA', 'aA', 'aA'] ['Aa', 'Aa', 'Aa', 'Aa'] [[1, '?', 1, ':', 0, '?', 1, ':', 0]] [0]: [1, '?', 1, ':', 0, '?', 1, ':', 0] [[1, '?', 1, ':', [0, '?', 1, ':', 0]]] [0]: [1, '?', 1, ':', [0, '?', 1, ':', 0]] [0]: 1 [1]: ? [2]: 1 [3]: : [4]: [0, '?', 1, ':', 0] ['B', 'B', 'C', 'A', 'D'] ['B'] ['bcdfghjklmnpqrstvwxyz'] Raised expected exception: ValueError: cannot specify a minimum length < 1; use Opt(CharsNotIn()) if zero-length char group is permitted ['bcdfg'] ['bcdfghjklm'] Raised expected exception: ParseException: Expected !W:(AEIOU), found end of text (at char 21), (line:1, col:22) ATCATCGAATGGA ['ATCATCGAATGGA'] - mismatches: [] - original: 'ATCATCGAATGGA' XTCATCGAATGGX ['XTCATCGAATGGX'] - mismatches: [0, 12] - original: 'ATCATCGAATGGA' ATCATCGAAXGGA ['ATCATCGAAXGGA'] - mismatches: [9] - original: 'ATCATCGAATGGA' ATCAXXGAATGGA ['ATCAXXGAATGGA'] - mismatches: [4, 5] - original: 'ATCATCGAATGGA' ATCAXXGAATGXA ATCAXXGAATGXA ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ATCAXXGAATGG ATCAXXGAATGG ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ATCATCGAATGGA match XTCATCGAATGGX match ATCATCGAAXGGA match ATCAXXGAATGGA match ATCAXXGAATGXA exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) ATCAXXGAATGG exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) atcatcgaatgga ['atcatcgaatgga'] - mismatches: [] - original: 'ATCATCGAATGGA' xtcatcgaatggx ['xtcatcgaatggx'] - mismatches: [0, 12] - original: 'ATCATCGAATGGA' atcatcgaaxgga ['atcatcgaaxgga'] - mismatches: [9] - original: 'ATCATCGAATGGA' atcaxxgaatgga ['atcaxxgaatgga'] - mismatches: [4, 5] - original: 'ATCATCGAATGGA' atcaxxgaatgxa atcaxxgaatgxa ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) atcaxxgaatgg atcaxxgaatgg ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) atcatcgaatgga match xtcatcgaatggx match atcatcgaaxgga match atcaxxgaatgga match atcaxxgaatgxa exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) atcaxxgaatgg exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) ['*', '*', '*', '*'] [' ', 'test'] - indent: ' ' - word: 'test' [' ', 'test'] - word: 'test' verify processing of C and HTML comments AA:BB:CC:DD:EE:FF ['AA:BB:CC:DD:EE:FF'] AA.BB.CC.DD.EE.FF ['AA.BB.CC.DD.EE.FF'] AA-BB-CC-DD-EE-FF ['AA-BB-CC-DD-EE-FF'] # mixed delimiters AA.BB:CC:DD:EE:FF AA.BB:CC:DD:EE:FF ^ ParseException: Expected MAC address, found 'AA' (at char 0), (line:1, col:1) pyparsing.core.Regex - MAC address FAIL: Expected MAC address, found 'AA' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 0.0.0.0 ['0.0.0.0'] 1.1.1.1 ['1.1.1.1'] 127.0.0.1 ['127.0.0.1'] 1.10.100.199 ['1.10.100.199'] 255.255.255.255 ['255.255.255.255'] # out of range value 256.255.255.255 256.255.255.255 ^ ParseException: Expected IPv4 address, found '256' (at char 0), (line:1, col:1) pyparsing.core.Regex - IPv4 address FAIL: Expected IPv4 address, found '256' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 2001:0db8:85a3:0000:0000:8a2e:0370:7334 ['2001:0db8:85a3:0000:0000:8a2e:0370:7334'] 2134::1234:4567:2468:1236:2444:2106 ['2134::1234:4567:2468:1236:2444:2106'] 0:0:0:0:0:0:A00:1 ['0:0:0:0:0:0:A00:1'] 1080::8:800:200C:417A ['1080::8:800:200C:417A'] ::A00:1 ['::A00:1'] # loopback address ::1 ['::1'] # the null address :: ['::'] # ipv4 compatibility form ::ffff:192.168.0.1 ['::ffff:192.168.0.1'] # too few values 1080:0:0:0:8:800:200C 1080:0:0:0:8:800:200C ^ ParseException: Expected IPv6 address, found end of text (at char 21), (line:1, col:22) pyparsing.core.Combine - IPv6 address pyparsing.core.MatchFirst - IPv6 address pyparsing.core.And - full IPv6 address pyparsing.core.And - {':' hex_integer} pyparsing.core._SingleCharLiteral - ':' FAIL: Expected IPv6 address, found end of text (at char 21), (line:1, col:22) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4375, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4136, in parseImpl raise maxException File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4114, in parseImpl return e._parse( ^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 819, in _parseNoCache raise ParseException(instring, len_instring, self.errmsg, self) . # too many ::'s, only 1 allowed 2134::1234:4567::2444:2106 2134::1234:4567::2444:2106 ^ ParseException: Expected end of text, found ':' (at char 15), (line:1, col:16) pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd FAIL: Expected end of text, found ':' (at char 15), (line:1, col:16) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1135, in parse_string se._parse(instring, loc) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3534, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 100 [100] -100 [-100] +100 [100] 3.14159 [3.14159] 6.02e23 [6.02e+23] 1e-12 [1e-12] 1e12 [1000000000000.0] -1e12 [-1000000000000.0] 3.14159 [3.14159] 6.02e23 [6.02e+23] 100 [100.0] -100 [-100.0] +100 [100.0] 3.14159 [3.14159] 6.02e23 [6.02e+23] 1e-12 [1e-12] 1997 ['1997'] - day: None - month: None - year: '1997' 1997-07 ['1997-07'] - day: None - month: '07' - year: '1997' 1997-07-16 ['1997-07-16'] - day: '16' - month: '07' - year: '1997' 1997-07-16 [datetime.date(1997, 7, 16)] 1997-07-16T19:20+01:00 ['1997-07-16T19:20+01:00'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: None - tz: '+01:00' - year: '1997' 1997-07-16T19:20:30+01:00 ['1997-07-16T19:20:30+01:00'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30' - tz: '+01:00' - year: '1997' 1997-07-16T19:20:30.45Z ['1997-07-16T19:20:30.45Z'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30.45' - tz: 'Z' - year: '1997' 1997-07-16 19:20:30.45 ['1997-07-16 19:20:30.45'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30.45' - tz: None - year: '1997' 1997-07-16T19:20:30.45 [datetime.datetime(1997, 7, 16, 19, 20, 30, 450000)] 123e4567-e89b-12d3-a456-426655440000 ['123e4567-e89b-12d3-a456-426655440000'] 1/2 [0.5] -15/16 [-0.9375] -3/-4 [0.75] 1/2 [0.5] -15/16 [-0.9375] -3/-4 [0.75] 1 1/2 [1.5] 2 -15/16 [2.9375] 0 -3/-4 [-0.75] 12 [12] 100 [100] -3 [-3] 1.732 [1.732] -3.14159 [-3.14159] 6.02e23 [6.02e+23] http://foo.com/blah_blah ['http://foo.com/blah_blah'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah/ ['http://foo.com/blah_blah/'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah/' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah_(wikipedia) ['http://foo.com/blah_blah_(wikipedia)'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah_(wikipedia)' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah_(wikipedia)_(again) ['http://foo.com/blah_blah_(wikipedia)_(again)'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah_(wikipedia)_(again)' - port: None - query: None - scheme: 'http' http://www.example.com/wpstyle/?p=364 ['http://www.example.com/wpstyle/?p=364'] - auth: None - fragment: None - host: 'www.example.com' - path: '/wpstyle/' - port: None - query: 'p=364' - scheme: 'http' https://www.example.com/foo/?bar=baz&inga=42&quux ['https://www.example.com/foo/?bar=baz&inga=42&quux'] - auth: None - fragment: None - host: 'www.example.com' - path: '/foo/' - port: None - query: 'bar=baz&inga=42&quux' - scheme: 'https' http://✪df.ws/123 ['http://✪df.ws/123'] - auth: None - fragment: None - host: '✪df.ws' - path: '/123' - port: None - query: None - scheme: 'http' http://userid:password@example.com:8080 ['http://userid:password@example.com:8080'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: None - port: '8080' - query: None - scheme: 'http' http://userid:password@example.com:8080/ ['http://userid:password@example.com:8080/'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: '/' - port: '8080' - query: None - scheme: 'http' http://userid@example.com ['http://userid@example.com'] - auth: 'userid' - fragment: None - host: 'example.com' - path: None - port: None - query: None - scheme: 'http' http://userid@example.com/ ['http://userid@example.com/'] - auth: 'userid' - fragment: None - host: 'example.com' - path: '/' - port: None - query: None - scheme: 'http' http://userid@example.com:8080 ['http://userid@example.com:8080'] - auth: 'userid' - fragment: None - host: 'example.com' - path: None - port: '8080' - query: None - scheme: 'http' http://userid@example.com:8080/ ['http://userid@example.com:8080/'] - auth: 'userid' - fragment: None - host: 'example.com' - path: '/' - port: '8080' - query: None - scheme: 'http' http://userid:password@example.com ['http://userid:password@example.com'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: None - port: None - query: None - scheme: 'http' http://userid:password@example.com/ ['http://userid:password@example.com/'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: '/' - port: None - query: None - scheme: 'http' http://142.42.1.1/ ['http://142.42.1.1/'] - auth: None - fragment: None - host: '142.42.1.1' - path: '/' - port: None - query: None - scheme: 'http' http://142.42.1.1:8080/ ['http://142.42.1.1:8080/'] - auth: None - fragment: None - host: '142.42.1.1' - path: '/' - port: '8080' - query: None - scheme: 'http' http://➡.ws/䨹 ['http://➡.ws/䨹'] - auth: None - fragment: None - host: '➡.ws' - path: '/䨹' - port: None - query: None - scheme: 'http' http://⌘.ws ['http://⌘.ws'] - auth: None - fragment: None - host: '⌘.ws' - path: None - port: None - query: None - scheme: 'http' http://⌘.ws/ ['http://⌘.ws/'] - auth: None - fragment: None - host: '⌘.ws' - path: '/' - port: None - query: None - scheme: 'http' http://foo.com/blah_(wikipedia)#cite-1 ['http://foo.com/blah_(wikipedia)#cite-1'] - auth: None - fragment: 'cite-1' - host: 'foo.com' - path: '/blah_(wikipedia)' - port: None - query: None - scheme: 'http' http://foo.com/blah_(wikipedia)_blah#cite-1 ['http://foo.com/blah_(wikipedia)_blah#cite-1'] - auth: None - fragment: 'cite-1' - host: 'foo.com' - path: '/blah_(wikipedia)_blah' - port: None - query: None - scheme: 'http' http://foo.com/unicode_(✪)_in_parens ['http://foo.com/unicode_(✪)_in_parens'] - auth: None - fragment: None - host: 'foo.com' - path: '/unicode_(✪)_in_parens' - port: None - query: None - scheme: 'http' http://foo.com/(something)?after=parens ['http://foo.com/(something)?after=parens'] - auth: None - fragment: None - host: 'foo.com' - path: '/(something)' - port: None - query: 'after=parens' - scheme: 'http' http://☺.damowmow.com/ ['http://☺.damowmow.com/'] - auth: None - fragment: None - host: '☺.damowmow.com' - path: '/' - port: None - query: None - scheme: 'http' http://code.google.com/events/#&product=browser ['http://code.google.com/events/#&product=browser'] - auth: None - fragment: '&product=browser' - host: 'code.google.com' - path: '/events/' - port: None - query: None - scheme: 'http' http://j.mp ['http://j.mp'] - auth: None - fragment: None - host: 'j.mp' - path: None - port: None - query: None - scheme: 'http' ftp://foo.bar/baz ['ftp://foo.bar/baz'] - auth: None - fragment: None - host: 'foo.bar' - path: '/baz' - port: None - query: None - scheme: 'ftp' http://foo.bar/?q=Test%20URL-encoded%20stuff ['http://foo.bar/?q=Test%20URL-encoded%20stuff'] - auth: None - fragment: None - host: 'foo.bar' - path: '/' - port: None - query: 'q=Test%20URL-encoded%20stuff' - scheme: 'http' http://مثال.إختبار ['http://مثال.إختبار'] - auth: None - fragment: None - host: 'مثال.إختبار' - path: None - port: None - query: None - scheme: 'http' http:// http:// ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://. http://. ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://.. http://.. ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://../ http://../ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://? http://? ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://?? http://?? ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://??/ http://??/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://# http://# ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://## http://## ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://##/ http://##/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) # skip: http://foo.bar?q=Spaces should be encoded // // ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) //a //a ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ///a ///a ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) /// /// ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http:///a http:///a ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) foo.com foo.com ^ ParseException: Expected url, found 'foo' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'foo' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) rdar://1234 rdar://1234 ^ ParseException: Expected url, found 'rdar' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'rdar' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) h://test h://test ^ ParseException: Expected url, found 'h' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'h' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http:// shouldfail.com http:// shouldfail.com ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) :// should fail :// should fail ^ ParseException: Expected url, found ':' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found ':' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://foo.bar/foo(bar)baz quux http://foo.bar/foo(bar)baz quux ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ftps://foo.bar/ ftps://foo.bar/ ^ ParseException: Expected url, found 'ftps' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'ftps' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://-error-.invalid/ http://-error-.invalid/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) # skip: http://a.b--c.de/ http://-a.b.co http://-a.b.co ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://a.b-.co http://a.b-.co ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://0.0.0.0 http://0.0.0.0 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://10.1.1.0 http://10.1.1.0 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://10.1.1.255 http://10.1.1.255 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://224.1.1.1 http://224.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://1.1.1.1.1 http://1.1.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://123.123.123 http://123.123.123 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://3628126748 http://3628126748 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://.www.foo.bar/ http://.www.foo.bar/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) .................. # skip: http://www.foo.bar./ http://.www.foo.bar./ http://.www.foo.bar./ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://10.1.1.1 http://10.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ['https://bob:secret@www.example.com:8080/path/to/resource?filter=int#book-mark'] - auth: 'bob:secret' - fragment: 'book-mark' - host: 'www.example.com' - path: '/path/to/resource' - port: '8080' - query: 'filter=int' - scheme: 'https' Raised expected exception: ParseException: time data '1997-07-error' does not match format '%Y-%m-%d', found '1997' (at char 0), (line:1, col:1) Raised expected exception: ParseException: time data '1997-07-error' does not match format '%Y-%m-%dT%H:%M:%S.%f', found '1997' (at char 0), (line:1, col:1) 2 5 7 6 0 1 2 3 4 5 0 3 5 4 3 [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] 2 5 7 6 0 1 2 3 4 5 0 3 5 4 3 [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] B 5 7 F 0 1 2 3 4 5 _ C 5 4 3 [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] 5 string input item1 item2 item3 item4 item5 0 int user 2 int file 3 8 [['item1', 'item2', 'item3', 'item4', 'item5'], [], ['3', '8']] [0]: ['item1', 'item2', 'item3', 'item4', 'item5'] - count: 5 - items: ['item1', 'item2', 'item3', 'item4', 'item5'] - source: 'input' - type: 'string' [1]: [] - count: 0 - items: [] - source: 'user' - type: 'int' [2]: ['3', '8'] - count: 2 - items: ['3', '8'] - source: 'file' - type: 'int' type = '' source = '' ['True', 'True', 'False'] - items: ['True', 'True', 'False'] - type: 'bool' verify non-fatal usage of Literal("") Raised expected exception: ValueError: null string passed to Literal; use Empty() instead sdlfjs :sdf\:jls::djf: sl:kfsjf sdlfjs -sdf\:jls::--djf: sl-kfsjf sdlfjs -sdf\:::jls::--djf: sl:::-kfsjf sdlfjs ^sdf\:jls^^--djf^ sl-kfsjf sdlfjs ^^^==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf^^^ colonQuotes :(?:(?:::)|(?:\\.)|(?:[^:\n\r\\]))*: [['sdf:jls:djf'], ['jls:--djf'], [':jls:--djf'], [''], ['j=lz:--djf'], ['j=ls:--djf']] sdf:jls:djf sdf:jls:djf dashQuotes \-(?:(?:\-\-)|(?:\\.)|(?:[^\-\n\r\\]))*\- [['sdf:jls::-djf: sl'], ['sdf:::jls::-djf: sl:::'], [''], [''], ['']] sdf:jls::-djf: sl sdf:jls::-djf: sl hatQuotes \^(?:(?:\\.)|(?:[^\^\n\r\\]))*\^ [['sdf:jls'], ['--djf'], [''], ['==sdf:j=lz::--djf: sl='], ['']] sdf:jls sdf:jls hatQuotes1 \^(?:(?:\^\^)|(?:\\.)|(?:[^\^\n\r\\]))*\^ [['sdf:jls^--djf'], ['^==sdf:j=lz::--djf: sl='], ['']] sdf:jls^--djf sdf:jls^--djf dblEqQuotes ==(?:(?:\\.)|(?:(?:=(?!=)))|(?:[^=\n\r\\]))*== [['sdf:j=ls::--djf: sl']] sdf:j=ls::--djf: sl sdf:j=ls::--djf: sl ::: quotes :::(?:(?:(?:::(?!:))|(?::(?!::)))|(?:[^:\n\r]))*::: [['jls::--djf: sl']] jls::--djf: sl jls::--djf: sl ==-- quotes ==(?:(?:(?:\-(?!\-)))|(?:[^\-\n\r]))*\-\- [['sdf\\:j=lz::'], ['sdf\\:j=ls::']] sdf\:j=lz:: sdf\:j=lz:: ^^^ multiline quotes \^\^\^(?:(?:(?:\^\^(?!\^))|(?:\^(?!\^\^)))|(?:[^\^]))*\^\^\^ [['==sdf\\:j=lz::--djf: sl=^^=kfsjf\n sdlfjs ==sdf\\:j=ls::--djf: sl==kfsjf']] ==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf ==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf Raised expected exception: ValueError: quote_char cannot be the empty string \.\[(?:(?:(?:\](?!\.)))|(?:[^\]\n\r]))*\]\. ['...'] [''] [']'] [']]'] \+\*(?:(?:(?:\*(?!\+)))|(?:[^*\n\r]))*\*\+ ['...'] [''] ['*'] ['**'] \*/(?:(?:(?:/(?!\*)))|(?:[^/\n\r]))*/\* ['...'] [''] ['/'] ['//'] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately followed by keyword character, found '1000' (at char 5), (line:1, col:6) Raised expected exception: ParseException: Expected CaselessKeyword 'START', was immediately followed by keyword character, found '1000' (at char 5), (line:1, col:6) Raised expected exception: ValueError: min must be greater than 0 Raised expected exception: ValueError: max must be greater than, or equal to min Raised expected exception: ParseException: Expected ',', found end of text (at char 12), (line:1, col:13) 'ABC' [, 'ABC']... ['ABC', 'ABC'] 'ABC' [, 'ABC']... ['ABC', 'ABC', 'ABC'] {'True' | 'true' | 'False' | 'false'} [, {'True' | 'true' | 'False' | 'false'}]... bool bool bool bool bool [, bool]... 'ABC' [, 'ABC']... ['ABC', 'ABC', 'ABC'] ['bar', 'foo'] - one: 'foo' - two: 'bar' options(100) step(A) options(100) step(A) ^ ParseSyntaxException: Expected integer, found 'A' (at char 18), (line:1, col:19) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected integer, found 'A' (at char 18), (line:1, col:19) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal . step(A) options(100) step(A) options(100) ^ ParseSyntaxException: Expected integer, found 'A' (at char 5), (line:1, col:6) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected integer, found 'A' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal options(100) step(100A) options(100) step(100A) ^ ParseSyntaxException: Expected 'Z', found 'A' (at char 21), (line:1, col:22) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected 'Z', found 'A' (at char 21), (line:1, col:22) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal options(100) step(22) step(100ZA) options(100) step(22) step(100ZA) ^ ParseSyntaxException: Expected ')', found 'A' (at char 31), (line:1, col:32) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected ')', found 'A' (at char 31), (line:1, col:32) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {{word}... num} pyparsing.core.OneOrMore - {word}... pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4790, in parseImpl loc, tokens = self_expr_parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 dd 123 ^ ParseException: Expected word, found '123' (at char 3), (line:1, col:4) pyparsing.core.And - {word word [word]... num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {word word [word]... num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 aa bb cc dd 123 ^ ParseException: Expected num, found 'dd' (at char 9), (line:1, col:10) pyparsing.core.And - {[word [word [word]]] num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'dd' (at char 9), (line:1, col:10) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) cc dd 123 ['cc', 'dd', '123'] aa bb cc dd 123 aa bb cc dd 123 ^ ParseException: Expected num, found 'cc' (at char 6), (line:1, col:7) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'cc' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) .... bb cc dd 123 bb cc dd 123 ^ ParseException: Expected num, found 'dd' (at char 6), (line:1, col:7) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'dd' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) dd 123 dd 123 ^ ParseException: Expected word, found '123' (at char 3), (line:1, col:4) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) a 1 ['a', 1] - label: 'a' - values: [1] b 1 2 3 ['b', 1, 2, 3] - label: 'b' - values: [1, 2, 3] c ['c'] - label: 'c' - values: [] a 1 ['a', 1] - label: 'a' - values: [1] b 1 2 3 ['b', 1, 2, 3] - label: 'b' - values: [1, 2, 3] c ['c'] - label: 'c' - values: [] a 1,1 ['a', [1, 1]] - label: 'a' - points: [[1, 1]] [0]: [1, 1] - x: 1 - y: 1 [0]: a [1]: [1, 1] - x: 1 - y: 1 b 1,1 2,2 3,3 ['b', [1, 1], [2, 2], [3, 3]] - label: 'b' - points: [[1, 1], [2, 2], [3, 3]] [0]: [1, 1] - x: 1 - y: 1 [1]: [2, 2] - x: 2 - y: 2 [2]: [3, 3] - x: 3 - y: 3 [0]: b [1]: [1, 1] - x: 1 - y: 1 [2]: [2, 2] - x: 2 - y: 2 [3]: [3, 3] - x: 3 - y: 3 c ['c'] - label: 'c' - points: [] [['a', '10'], ['b', '20']] - a: '10' - b: '20' [0]: ['a', '10'] [1]: ['b', '20'] ^ ParseException: Expected W:(A-Za-z) (at char 0), (line:1, col:1) pyparsing.core.Dict - Dict:({Group:({W:(A-Za-z) Suppress:('=') W:(0-9)})}...) pyparsing.core.OneOrMore - {Group:({W:(A-Za-z) Suppress:('=') W:(0-9)})}... pyparsing.core.Group - Group:({W:(A-Za-z) Suppress:('=') W:(0-9)}) pyparsing.core.And - {W:(A-Za-z) Suppress:('=') W:(0-9)} pyparsing.core._WordRegex - W:(A-Za-z) testing empty And testing empty Or testing empty MatchFirst testing empty Each ..........Match [{integer | W:(0-9A-Za-z)}]... at loc 0(1,1) 123 A100 ^ Match integer at loc 0(1,1) 123 A100 ^ Matched integer -> [123] Match integer at loc 4(1,5) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found 'A100' (at char 4), (line:1, col:5) Match W:(0-9A-Za-z) at loc 4(1,5) 123 A100 ^ Matched W:(0-9A-Za-z) -> ['A100'] Match integer at loc 8(1,9) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 8), (line:1, col:9) Match W:(0-9A-Za-z) at loc 8(1,9) 123 A100 ^ Match W:(0-9A-Za-z) failed, ParseException raised: Expected W:(0-9A-Za-z), found end of text (at char 8), (line:1, col:9) Matched [{integer | W:(0-9A-Za-z)}]... -> [123, 'A100'] Match integer at loc 0(1,1) 123 A100 ^ Matched integer -> [123] Match integer at loc 4(1,5) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found 'A100' (at char 4), (line:1, col:5) Match W:(0-9A-Za-z) at loc 4(1,5) 123 A100 ^ Matched W:(0-9A-Za-z) -> ['A100'] Match integer at loc 8(1,9) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 8), (line:1, col:9) Match W:(0-9A-Za-z) at loc 8(1,9) 123 A100 ^ Match W:(0-9A-Za-z) failed, ParseException raised: Expected W:(0-9A-Za-z), found end of text (at char 8), (line:1, col:9) Match integer at loc 0(1,1) 1 2 3 ^ Matched integer -> ['1'] Match integer at loc 2(1,3) 1 2 3 ^ Matched integer -> ['2'] Match integer at loc 4(1,5) 1 2 3 ^ Matched integer -> ['3'] Match integer at loc 5(1,6) 1 2 3 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 5), (line:1, col:6) Packrat status: enabled Match Z at loc 0(1,1) aba ^ Match Z failed, ParseException raised: Expected Z, found 'aba' (at char 0), (line:1, col:1) Match leading_a at loc 0(1,1) aba ^ Match A at loc 0(1,1) aba ^ Matched A -> ['a'] Match Z at loc 1(1,2) aba ^ Match Z failed, ParseException raised: Expected Z, found 'ba' (at char 1), (line:1, col:2) Match A at loc 1(1,2) aba ^ Match A failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) Match B at loc 1(1,2) aba ^ Matched B -> ['b'] Matched leading_a -> ['a'] *Match Z at loc 1(1,2) aba ^ *Match Z failed, ParseException raised: Expected Z, found 'ba' (at char 1), (line:1, col:2) Match leading_a at loc 1(1,2) aba ^ Match A at loc 1(1,2) aba ^ Match A failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) Match leading_a failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) *Match B at loc 1(1,2) aba ^ *Matched B -> ['b'] Match Z at loc 2(1,3) aba ^ Match Z failed, ParseException raised: Expected Z, found 'a' (at char 2), (line:1, col:3) Match leading_a at loc 2(1,3) aba ^ Match A at loc 2(1,3) aba ^ Matched A -> ['a'] Match Z at loc 3(1,4) aba ^ Match Z failed, ParseException raised: Expected Z, found end of text (at char 3), (line:1, col:4) Match A at loc 3(1,4) aba ^ Match A failed, ParseException raised: Expected A, found end of text (at char 3), (line:1, col:4) Match B at loc 3(1,4) aba ^ Match B failed, ParseException raised: Expected B, found end of text (at char 3), (line:1, col:4) Match leading_a failed, ParseException raised: Expected {Z | A | B}, found end of text (at char 3), (line:1, col:4) Match B at loc 2(1,3) aba ^ Match B failed, ParseException raised: Expected B, found 'a' (at char 2), (line:1, col:3) {'enable_debug_on_named_expressions': False, 'warn_multiple_tokens_in_named_alternation': False, 'warn_name_set_on_empty_Forward': False, 'warn_on_assignment_to_Forward': False, 'warn_on_match_first_with_lshift_operator': False, 'warn_on_multiple_string_args_to_oneof': False, 'warn_on_parse_using_empty_Forward': False, 'warn_ungrouped_named_tokens_in_collection': False} {'enable_debug_on_named_expressions': False, 'warn_multiple_tokens_in_named_alternation': True, 'warn_name_set_on_empty_Forward': True, 'warn_on_assignment_to_Forward': True, 'warn_on_match_first_with_lshift_operator': True, 'warn_on_multiple_string_args_to_oneof': True, 'warn_on_parse_using_empty_Forward': True, 'warn_ungrouped_named_tokens_in_collection': True} TypeError: descriptor 'upper' for 'str' objects doesn't apply to a 'int' object tests.test_unit.Test06_WithBoundedPackrat pyparsing.core._WordRegex - integer tests.test_unit.Modifier pyparsing.results.ParseResults 123 355 ^ ParseException: Expected word, found '355' (at char 4), (line:1, col:5) 123 355 (test using ErrorStop) ^ ParseSyntaxException: Expected word, found '355' (at char 4), (line:1, col:5) tests.test_unit.Test06_WithBoundedPackrat pyparsing.core.And - {int - word} A ^ ParseException: Expected int, found 'A' (at char 0), (line:1, col:1) tests.test_unit.Test06_WithBoundedPackrat pyparsing.core.And - {int int} divide_args pyparsing.core._WordRegex - int test does local memoization enable/disable during test [' this_semi_does_nothing()', ''], [' neither_does_this_but_there_are_spaces_afterward()', ''], [' a = "a;b"', 'return a # this is a comment; it has a semicolon!'], [' z=1000', 'b("; in quotes")', 'c=200', 'return z'], [" return ';'"], [" '''a docstring; with a semicolon'''"], [' a = 10', 'b = 11', 'c = 12'], [' # this comment; has several; semicolons'], [' x = 12', 'return x # so; does; this; one'], [' x = 15', '', '', 'y += x', 'return y'], [' this_semi_does_nothing()', ';', ''], [' neither_does_this_but_there_are_spaces_afterward()', ';', ''], [' a = "a;b"', ';', 'return a # this is a comment; it has a semicolon!'], [' z=1000', ';', 'b("; in quotes")', ';', 'c=200', ';', 'return z'], [" return ';'"], [" '''a docstring; with a semicolon'''"], [' a = 10', ';', 'b = 11', ';', 'c = 12'], [' # this comment; has several; semicolons'], [' x = 12', ';', 'return x # so; does; this; one'], [' x = 15', ';', '', ';', '', ';', 'y += x', ';', 'return y'], [''], [' def main():'], [' this_semi_does_nothing()', ''], [' neither_does_this_but_there_are_spaces_afterward()', ''], [' a = "a;b"', 'return a # this is a comment; it has a semicolon!'], [''], [' def b():'], [' if False:'], [' z=1000', 'b("; in quotes"); c=200;return z'], [" return ';'"], [''], [' class Foo(object):'], [' def bar(self):'], [" '''a docstring; with a semicolon'''"], [' a = 10', 'b = 11; c = 12'], [''], [' # this comment; has several; semicolons'], [' if self.spam:'], [' x = 12', 'return x # so; does; this; one'], [' x = 15', ';; y += x; return y'], [''], [' def baz(self):'], [' return self.bar'], [' '], W:(0-9) W:(0-9){3} W:(0-9){2,...} W:(0-9){1,3} W:(0-9){2,3} (0-9) ['balloon'] - item: 'balloon' - qty: 99 verify behavior of getName() ['XXX', ['b'], ['bb'], ['a'], ['bbb'], ['bbbb'], ['aa'], ['bbbbb'], [':', 'c'], ['bbbbbb'], ['aaa']] [0]: XXX [1]: ['b'] - B: 'b' [2]: ['bb'] - B: 'bb' [3]: ['a'] - A: 'a' [4]: ['bbb'] - B: 'bbb' [5]: ['bbbb'] - B: 'bbbb' [6]: ['aa'] - A: 'aa' [7]: ['bbbbb'] - B: 'bbbbb' [8]: [':', 'c'] - C: 'c' [9]: ['bbbbbb'] - B: 'bbbbbb' [10]: ['aaa'] - A: 'aaa' XXX 'XXX' ['b'] ParseResults(['b'], {'B': 'b'}) ['bb'] ParseResults(['bb'], {'B': 'bb'}) ['a'] ParseResults(['a'], {'A': 'a'}) ['bbb'] ParseResults(['bbb'], {'B': 'bbb'}) ['bbbb'] ParseResults(['bbbb'], {'B': 'bbbb'}) ['aa'] ParseResults(['aa'], {'A': 'aa'}) ['bbbbb'] ParseResults(['bbbbb'], {'B': 'bbbbb'}) [':', 'c'] ParseResults([':', 'c'], {'C': 'c'}) ['bbbbbb'] ............ParseResults(['bbbbbb'], {'B': 'bbbbbb'}) ['aaa'] ParseResults(['aaa'], {'A': 'aaa'}) XXX b bb a bbb bbbb aa bbbbb :c bbbbbb aaa [None, 'B', 'B', 'A', 'B', 'B', 'A', 'B', None, 'B', 'A'] ['lsjd'] non-key ['sldkjf'] non-key ['IF'] non-key ['Saslkj'] non-key ['AND'] non-key ['lsdjf'] non-key verify behavior of ParseResults.get() ['b', 'bb', 'a', 'bbb', 'bbbb', 'aa', 'bbbbb', ':', 'c', 'bbbbbb', 'aaa'] - A: 'aaa' - B: 'bbbbbb' - C: 'c' aaa !D ['11.11.13', 'useless . useless,21 useless 2 | ', 14.21, ' | asmdakldm'] ['21.12.12', 'fmpaosmfpoamsp 4 | ', 41, ' | ajfa9si90'] Raised expected exception: ParseException: Expected number, found 'useless' (at char 32), (line:1, col:33) Raised expected exception: ParseException: Expected number, found 'fmpaosmfpoamsp' (at char 32), (line:1, col:33) [["'string1'", "'string2'"]] [['string1', 'strin""g2']] [['"string1"', '"strin""g2"'], ["'string1'", "'string2'"]] [['string1', 'strin"g2']] [['string1', 'string2']] [['string1', 'string2']] [['string1', 'string2']] ["'ms1'", '1', '0', "'2009-12-22'", "'2009-12-22 10:41:22'"] This & that 2 > 1 0 < 1 Don't get excited! I said "Don't get excited!" Copyright © 2021 Dot ⟶ ˙ ['I', 'totally', 'love', 'pickles'] a = 100 b = 101 c = c1 = 200 c2 = c21 = 999 c3 = 'A horse, a horse, my kingdom for a horse' d = 505 [['a', 100], ['b', 101], ['c', ['c1', 200], ['c2', ['c21', 999]], ['c3', 'A horse, a horse, my kingdom for a horse']], ['d', 505]] - a: 100 - b: 101 - c: [['c1', 200], ['c2', ['c21', 999]], ['c3', 'A horse, a horse, my kingdom for a horse']] - c1: 200 - c2: [['c21', 999]] - c21: 999 [0]: ['c21', 999] - c3: 'A horse, a horse, my kingdom for a horse' [0]: ['c1', 200] [1]: ['c2', ['c21', 999]] - c21: 999 [0]: c2 [1]: ['c21', 999] [2]: ['c3', 'A horse, a horse, my kingdom for a horse'] - d: 505 [0]: ['a', 100] [1]: ['b', 101] [2]: ['c', ['c1', 200], ['c2', ['c21', 999]], ['c3', 'A horse, a horse, my kingdom for a horse']] - c1: 200 - c2: [['c21', 999]] - c21: 999 [0]: ['c21', 999] - c3: 'A horse, a horse, my kingdom for a horse' [0]: c [1]: ['c1', 200] [2]: ['c2', ['c21', 999]] - c21: 999 [0]: c2 [1]: ['c21', 999] [3]: ['c3', 'A horse, a horse, my kingdom for a horse'] [3]: ['d', 505] [['A', [100, 101, 102]], ['B', [200, 201]], ['C', [300]]] [['A', [100, 101, 102]], ['B', [200, 201]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [200, 201]] [0]: B [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] 1 2 12345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] 1 2 12345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] 1 2 3 123456789012345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] using searchString [[['A', [100, 101, 102]]], [['B', [['b', [200, 201]]]]], [['C', [300]]]] [['A', [100, 101, 102]], ['B', [['b', [200, 201]]]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [['b', [200, 201]]]] [0]: B [1]: [['b', [200, 201]]] [0]: ['b', [200, 201]] [0]: b [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] using parseString [['A', [100, 101, 102]], ['B', [['b', [200, 201]]]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [['b', [200, 201]]]] [0]: B [1]: [['b', [200, 201]]] [0]: ['b', [200, 201]] [0]: b [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] test good indentation 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.1.2| 5: 2.| [['1.', ['1.1', ['1.1.1', '1.1.2']], '2.']] test bad indentation 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.2| 5: 2.| Raised expected exception: ParseException: Expected end of text, found '1' (at char 78), (line:4, col:18) 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.2| 5: 2.| Raised expected exception: ParseException: Expected end of text, found '1' (at char 76), (line:4, col:16) [['def', 'A', ['(', 'z', ')'], ':', [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']]], 'B', ['def', 'BB', ['(', 'a', 'b', 'c', ')'], ':', [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]]], 'C', 'D', ['def', 'spam', ['(', 'x', 'y', ')'], ':', [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]]]] [0]: ['def', 'A', ['(', 'z', ')'], ':', [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']]] [0]: def [1]: A [2]: ['(', 'z', ')'] [3]: : [4]: [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']] [0]: ['A1'] [1]: [['B', '=', '100']] [0]: ['B', '=', '100'] [2]: [['G', '=', 'A2']] [0]: ['G', '=', 'A2'] [3]: ['A2'] [4]: ['A3'] [1]: B [2]: ['def', 'BB', ['(', 'a', 'b', 'c', ')'], ':', [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]]] [0]: def [1]: BB [2]: ['(', 'a', 'b', 'c', ')'] [3]: : [4]: [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]] [0]: ['BB1'] [1]: [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]] [0]: ['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]] [0]: def [1]: BBA [2]: ['(', ')'] [3]: : [4]: [['bba1'], ['bba2'], ['bba3']] [0]: ['bba1'] [1]: ['bba2'] [2]: ['bba3'] [3]: C [4]: D [5]: ['def', 'spam', ['(', 'x', 'y', ')'], ':', [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]]] [0]: def [1]: spam [2]: ['(', 'x', 'y', ')'] [3]: : [4]: [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]] [0]: [['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]] [0]: ['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]] [0]: def [1]: eggs [2]: ['(', 'z', ')'] [3]: : [4]: [['pass']] [0]: ['pass'] Parsing 'one0'... Parsing 'four0'... Parsing 'one1'... Parsing 'four1'... ... extra: [test] one0: two (three) four0: five (seven) extra: [test] one1: two (three) four1: five (seven) ['extra', [['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]]], 'extra', [['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]]]] [0]: extra [1]: [['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]]] [0]: ['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]] [0]: test [1]: [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]] [0]: ['one0', [['two', 'three']]] [0]: one0 [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four0', [['five', 'seven']]] [0]: four0 [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: extra [3]: [['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]]] [0]: ['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]] [0]: test [1]: [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]] [0]: ['one1', [['two', 'three']]] [0]: one1 [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four1', [['five', 'seven']]] [0]: four1 [1]: [['five', 'seven']] [0]: ['five', 'seven'] Parsing 'one'... Parsing 'four'... Parsing 'one'... Parsing 'four'... Parsing 'one'... Parsing 'four'... Parsing 'eight'... Parsing 'eleven'... Parsing 'fourteen'... Parsing 'seventeen'... extra: [test] one: two (three) four: five (seven) extra: [test] one: two (three) four: five (seven) [test] one: two (three) four: five (seven) [test] eight: nine (ten) eleven: twelve (thirteen) fourteen: fifteen (sixteen) seventeen: eighteen (nineteen) ['extra', [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]]], 'extra', [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]]]] [0]: extra [1]: [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]]] [0]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: extra [3]: [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]]] [0]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [1]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]] [0]: test [1]: [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]] [0]: ['eight', [['nine', 'ten']]] [0]: eight [1]: [['nine', 'ten']] [0]: ['nine', 'ten'] [1]: ['eleven', [['twelve', 'thirteen']]] [0]: eleven [1]: [['twelve', 'thirteen']] [0]: ['twelve', 'thirteen'] [2]: ['fourteen', [['fifteen', 'sixteen']]] [0]: fourteen [1]: [['fifteen', 'sixteen']] [0]: ['fifteen', 'sixteen'] [3]: ['seventeen', [['eighteen', 'nineteen']]] [0]: seventeen [1]: [['eighteen', 'nineteen']] [0]: ['eighteen', 'nineteen'] [[9, '+', 2, '+', 3]] [0]: [9, '+', 2, '+', 3] [[9, '+', [2, '*', 3]]] [0]: [9, '+', [2, '*', 3]] [0]: 9 [1]: + [2]: [2, '*', 3] [[[9, '+', 2], '*', 3]] [0]: [[9, '+', 2], '*', 3] [0]: [9, '+', 2] [1]: * [2]: 3 [[[9, '+', ['-', 2]], '*', 3]] [0]: [[9, '+', ['-', 2]], '*', 3] [0]: [9, '+', ['-', 2]] [0]: 9 [1]: + [2]: ['-', 2] [1]: * [2]: 3 [[[9, '+', ['-', ['-', 2]]], '*', 3]] [0]: [[9, '+', ['-', ['-', 2]]], '*', 3] [0]: [9, '+', ['-', ['-', 2]]] [0]: 9 [1]: + [2]: ['-', ['-', 2]] [0]: - [1]: ['-', 2] [1]: * [2]: 3 [[[9, '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]]] [0]: [[9, '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]] [0]: [9, '+', ['-', 2]] [0]: 9 [1]: + [2]: ['-', 2] [1]: * [2]: [3, '^', [2, '^', 2]] [0]: 3 [1]: ^ [2]: [2, '^', 2] [[[[9, '!'], '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]]] [0]: [[[9, '!'], '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]] [0]: [[9, '!'], '+', ['-', 2]] [0]: [9, '!'] [1]: + [2]: ['-', 2] [1]: * [2]: [3, '^', [2, '^', 2]] [0]: 3 [1]: ^ [2]: [2, '^', 2] [[['M', '*', 'X'], '+', 'B']] [0]: [['M', '*', 'X'], '+', 'B'] [0]: ['M', '*', 'X'] [1]: + [2]: B [['M', '*', ['X', '+', 'B']]] [0]: ['M', '*', ['X', '+', 'B']] [0]: M [1]: * [2]: ['X', '+', 'B'] [[1, '+', [2, '*', ['-', [3, '^', 4]], '*', 5], '+', ['-', ['+', ['-', 6]]]]] [0]: [1, '+', [2, '*', ['-', [3, '^', 4]], '*', 5], '+', ['-', ['+', ['-', 6]]]] [0]: 1 [1]: + [2]: [2, '*', ['-', [3, '^', 4]], '*', 5] [0]: 2 [1]: * [2]: ['-', [3, '^', 4]] [0]: - [1]: [3, '^', 4] [3]: * [4]: 5 [3]: + [4]: ['-', ['+', ['-', 6]]] [0]: - [1]: ['+', ['-', 6]] [0]: + [1]: ['-', 6] [[3, '!', '!']] [0]: [3, '!', '!'] p = True q = False r = True p and not q (p & ~q) = True not not p ~~p = True not(p and q) ~(p & q) = True q or not p and r (q | (~p & r)) = False q or not p or not r (q | ~p | ~r) = False q or not (p and r) (q | ~(p & r)) = False p or q or r (p | q | r) = True p or q or r and False (p | q | (r & False)) = True (p or q or r) and False ((p | q | r) & False) = False Raised expected exception: ValueError: if numterms=3, opExpr must be a tuple or list of two expressions ............Raised expected exception: ValueError: if numterms=3, opExpr must be a tuple or list of two expressions Raised expected exception: ValueError: operator must be unary (1), binary (2), or ternary (3) Raised expected exception: ValueError: operator must be unary (1), binary (2), or ternary (3) Raised expected exception: ValueError: operator must indicate right or left associativity evaluate_int 9 '9' => [9] (count=1) [[[3, '+', 2], '?', 12, ':', 13]] [0]: [[3, '+', 2], '?', 12, ':', 13] [0]: [3, '+', 2] [1]: ? [2]: 12 [3]: : [4]: 13 [[[3, '+', 2], '?', 12, ':', 13]] [0]: [[3, '+', 2], '?', 12, ':', 13] [0]: [3, '+', 2] [1]: ? [2]: 12 [3]: : [4]: 13 [[3, '+', [2, '+', 11]]] [0]: [3, '+', [2, '+', 11]] [0]: 3 [1]: + [2]: [2, '+', 11] [[3, '+', [2, '+', 11]]] [0]: [3, '+', [2, '+', 11]] [0]: 3 [1]: + [2]: [2, '+', 11] [[3, '+', ['<', [2, '+', 11], '>']]] [0]: [3, '+', ['<', [2, '+', 11], '>']] [0]: 3 [1]: + [2]: ['<', [2, '+', 11], '>'] [0]: < [1]: [2, '+', 11] [2]: > [[3, '+', ['<<', [2, '+', 11], '>>']]] [0]: [3, '+', ['<<', [2, '+', 11], '>>']] [0]: 3 [1]: + [2]: ['<<', [2, '+', 11], '>>'] [0]: << [1]: [2, '+', 11] [2]: >> [[[3, 'x'], '+', 2]] [0]: [[3, 'x'], '+', 2] [0]: [3, 'x'] [1]: + [2]: 2 [[[3, 'x'], '+', 2]] [0]: [[3, 'x'], '+', 2] [0]: [3, 'x'] [1]: + [2]: 2 bar = foo [['bar', '=', 'foo']] bar = foo & baz = fee ['&', [['bar', '=', 'foo'], ['baz', '=', 'fee']]] ['SELECT', 'color', 'FROM', 'colors'] ['SELECT', 'color', 'FROM', 'colors'] ['1999', '/', '12', '/', '31'] - day: '31' - month: '12' - year: '1999' ['1999', '12', '31'] - day: '31' - month: '12' - year: '1999' Raised expected exception: ValueError: no such diagnostic 'xyzzy' ['testA', 'testB', 'testC'] =? ['testA', 'testB', 'testC'] ['testC'] =? ['testC'] 'testB\ntestC\n' =? 'testB\ntestC\n' ['testD', 'testE', 'testF'] =? ['testD', 'testE', 'testF'] ['testF'] =? ['testF'] 'testE\ntestF' =? 'testE\ntestF' ['a'] =? ['a'] ['a'] =? ['a'] '' =? '' 0 'aaa' 1 '\naaa' Raised expected exception: ParseException: Expected Re:('a+'), found '\' (at char 0), (line:1, col:1) 2 'a\naa' Raised expected exception: ParseException: Expected end of text, found '\' (at char 1), (line:1, col:2) 3 'aaa\n' Raised expected exception: ParseException: Expected end of text, found '\' (at char 3), (line:1, col:4) verify correct line() behavior when first line is empty string {W:(A) - LineStart W:(B)} AAA BBB ['AAA', 'BBB'] AAA BBB ['AAA', 'BBB'] AAA BBB BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) no \n in default whitespace chars {W:(A) - LineStart W:(B)} AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 3), (line:1, col:4) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 6), (line:1, col:7) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) ...... AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 6), (line:1, col:7) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} AAA BBB ['AAA', 'BBB'] AAA BBB ['AAA', 'BBB'] AAA BBB BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) pyparsing.core.And - {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} FAIL: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA BBB ^ ParseSyntaxException: Expected end of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} FAIL: Expected end of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) 1 1234567890 1:AAA 1| 2:AAA 2| 3:| 4: AAA| 5:| 6:B AAA| 7:| normal parsing 0 3 1 AAA 1 ParseResults(['AAA'], {}) 6 9 2 AAA 2 ParseResults(['AAA'], {}) 12 18 3 ParseResults(['AAA'], {}) parsing without \n in whitespace chars 0 3 1 AAA 1 'A' 6 9 2 AAA 2 'A' 13 18 4 AAA ' ' 1 1234567890 1:| 2:a| 3: b| 4: c| 5:d| 6:e| 7: f| 8: g| [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [[['a']], [['b']], [['c']], [['d']], [['e']], [['f']], [['g']]] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] Literal Expected 'xyz', found end of text (at char 1), (line:1, col:2) CaselessLiteral Expected 'XYZ', found end of text (at char 1), (line:1, col:2) Keyword Expected Keyword 'xyz', found end of text (at char 1), (line:1, col:2) CaselessKeyword Expected CaselessKeyword 'xyz', found end of text (at char 1), (line:1, col:2) Word Expected W:(xyz), found end of text (at char 1), (line:1, col:2) Regex Expected Re:('xyz'), found end of text (at char 1), (line:1, col:2) 1 start 2 {integer 'start' integer} [1, 'start', 2] {integer 'start' integer} [1, 'start', 2] {integer 'START' integer} [1, 'START', 2] {integer word integer} [1, 'start', 2] 3 start4 {integer 'start' integer} [3, 'start', 4] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately followed by keyword character, found '4' (at char 7), (line:1, col:8) Raised expected exception: ParseException: Expected CaselessKeyword 'START', was immediately followed by keyword character, found '4' (at char 7), (line:1, col:8) Raised expected exception: ParseException: Expected word, found 'start4' (at char 2), (line:1, col:3) 5start 6 [5, 'start', 6] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately preceded by keyword character, found '5start' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected CaselessKeyword 'START', keyword was immediately preceded by keyword character, found '5start' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected word, found 'start' (at char 1), (line:1, col:2) [28, 'ID', 'PARI12345678', 43] - id: 'PARI12345678' - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 .............................[[28, ['ID', 'PARI12345678'], 43]] - loc: [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 [0]: [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 [0, ['ljsdf'], 5] ['ljsdf'] [8, ['lksdjjf'], 15] ['lksdjjf'] [18, ['lkkjj'], 23] ['lkkjj'] ['body', False, 'Hello', ''] - contents: 'Hello' - empty: False - endBody: '' - startBody: ['body', False] - empty: False - tag: 'body' - tag: 'body' DOB >!<100-10-2010;more garbage verify MatchFirst iterates properly ['A', 'A', '3', 'A'] Raised expected exception: ParseException: matched token not at column 1, found '3' (at char 4), (line:1, col:5) ABC ^ ParseException: Expected W:(0-9), found 'ABC' (at char 0), (line:1, col:1) tests.test_unit.Test06_WithBoundedPackrat pyparsing.core._WordRegex - W:(0-9) ['A'] - Achar: 'A' Raised expected exception: ValueError: cannot multiply ParserElement by negative value {'username': 'goat', 'errors': {'username': ['already taken', 'too short']}, 'empty_field': ''} Test defaults: [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Non-default opener [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Non-default closer [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Literal expressions for opener and closer [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Use ignore expression (1) [['let', [['greeting', '"Hello,', 'world!"']], ';;(foo bar', ['display', 'greeting']]] [0]: ['let', [['greeting', '"Hello,', 'world!"']], ';;(foo bar', ['display', 'greeting']] [0]: let [1]: [['greeting', '"Hello,', 'world!"']] [0]: ['greeting', '"Hello,', 'world!"'] [2]: ;;(foo bar [3]: ['display', 'greeting'] Use ignore expression (2) [['let', [['greeting', '"Hello, )world!"']], ';;', '(foo bar', ['display', 'greeting']]] [0]: ['let', [['greeting', '"Hello, )world!"']], ';;', '(foo bar', ['display', 'greeting']] [0]: let [1]: [['greeting', '"Hello, )world!"']] [0]: ['greeting', '"Hello, )world!"'] [2]: ;; [3]: (foo bar [4]: ['display', 'greeting'] Raised expected exception: ValueError: opening and closing strings cannot be the same Raised expected exception: ValueError: opening and closing arguments must be strings if no content expression is given ['aName', ['outer', ["'inner with opener {{ and closer }} in quoted string'"]]] [0]: aName [1]: ['outer', ["'inner with opener {{ and closer }} in quoted string'"]] [0]: outer [1]: ["'inner with opener {{ and closer }} in quoted string'"] ['aName', ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]]] [0]: aName [1]: ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]] [0]: outer [1]: ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"] [0]: 'inner [1]: with [2]: opener [3]: ['and', 'closer'] [4]: in [5]: quoted [6]: string' ['aName', ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]]] [0]: aName [1]: ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]] [0]: outer [1]: ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"] [0]: 'inner [1]: with [2]: opener [3]: ['and', 'closer'] [4]: in [5]: quoted [6]: string' 9413 tests produced real number PASS valid tests (321) real number with scientific notation PASS valid tests (2319) signed integer PASS valid tests (153) real number PASS invalid tests (2213) real number with scientific notation PASS invalid tests (6587) signed integer PASS invalid tests (9260) # literal oneOf tests a b c ['a', 'b', 'c'] a a a ['a', 'a', 'a'] abc ['a', 'b', 'c'] # keyword oneOf tests a b c ['a', 'b', 'c'] a a a ['a', 'a', 'a'] # keyword oneOf failure tests abc abc ^ ParseException: Expected end of text, found 'abc' (at char 0), (line:1, col:1) pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd FAIL: Expected end of text, found 'abc' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1135, in parse_string se._parse(instring, loc) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3534, in parseImpl raise ParseException(instring, loc, self.errmsg, self) verify oneOf handles duplicate symbols verify oneOf handles generator input verify oneOf handles list input verify oneOf handles set input Raised expected exception: TypeError: Invalid argument to one_of, expected string or iterable ['XXX Y/123', '1,234.567890'] - data: '1,234.567890' - id: 'XXX Y/123' ['0', '123', '321', 444] Raised expected exception: ParseException: OnlyOnce obj called multiple times w/out reset, found '1' (at char 0), (line:1, col:1) ['100', '200', '300', 600] verify handling of Optional's beyond the end of string Tal Weiss Major Tal Major Weiss Major Major Major Tal Major Weiss Major Tal Weiss ['foo'] - foo: ['foo'] ['bar', 'foo', 'bar', 'foo', 'bar', 'foo'] - bar: ['bar', 'bar', 'bar'] - foo: ['foo', 'foo', 'foo'] Raised expected exception: ParseException: Missing one or more required elements ('foo'), found 'bar' (at char 1), (line:1, col:2) 1999-12-31 100 2001-01-01 [['1999-12-31'], 100, ['2001-01-01']] - date: [['1999-12-31'], ['2001-01-01']] [0]: ['1999-12-31'] - day: '31' - month: '12' - year: '1999' [1]: ['2001-01-01'] - day: '01' - month: '01' - year: '2001' - id: 100 [0]: ['1999-12-31'] - day: '31' - month: '12' - year: '1999' [1]: 100 [2]: ['2001-01-01'] - day: '01' - month: '01' - year: '2001' 42 [42] - id: 42 verify Optional's do not cause match failure if have results name _images/cal.png:77_ ['alt', 'empty', 'height', 'src', 'startImg', 'tag', 'width'] ['int', 'f', '(', ')', '{}'] ['DO', ['Z']] [244, 23, 13, 2343] - int_values: [244, 23, 13, 2343] - total: 2623 ### before parse action is added ### result1.dump(): [['Mauney', '46.5']] - Rider: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [0]: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' ...............### after parse action was added ### result1.dump(): [['Mauney', '46.5']] - Rider: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [0]: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [['x1', AnnotatedToken('val', ['1']), 'x2', AnnotatedToken('val', ['2'])]] [0]: ['x1', AnnotatedToken('val', ['1']), 'x2', AnnotatedToken('val', ['2'])] 'AAAAA' parseAll=False (shouldSucceed=True) 'AAAAA' parseAll=True (shouldSucceed=True) 'AAABB' parseAll=False (shouldSucceed=True) 'AAABB' parseAll=True (shouldSucceed=False) AAABB ^ ParseException: Expected end of text, found 'BB' (at char 3), (line:1, col:4) tests.test_unit.Test06_WithBoundedPackrat pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd 'AAAAA //blah' parseAll=False (shouldSucceed=True) 'AAAAA //blah' parseAll=True (shouldSucceed=True) 'AAABB //blah' parseAll=False (shouldSucceed=True) 'AAABB //blah' parseAll=True (shouldSucceed=False) AAABB //blah ^ ParseException: Expected end of text, found 'BB' (at char 3), (line:1, col:4) tests.test_unit.Test06_WithBoundedPackrat pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd '00aab' parseAll=False (shouldSucceed=True) '00aab' parseAll=True (shouldSucceed=True) '00aaf' parseAll=False (shouldSucceed=True) '00aaf' parseAll=True (shouldSucceed=False) 00aaf ^ ParseException: Expected end of text, found 'f' (at char 4), (line:1, col:5) tests.test_unit.Test06_WithBoundedPackrat pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd Parsing: 'a,b,c,100.2,,3' -> ['a', 'b', 'c', '100.2', '', '3'] Parsing: 'd, e, j k , m ' -> ['d', 'e', 'j k', 'm'] Parsing: "'Hello, World', f, g , , 5.1,x" -> ["'Hello, World'", 'f', 'g', '', '5.1', 'x'] Parsing: 'John Doe, 123 Main St., Cleveland, Ohio' -> ['John Doe', '123 Main St.', 'Cleveland', 'Ohio'] Parsing: 'Jane Doe, 456 St. James St., Los Angeles , California ' -> ['Jane Doe', '456 St. James St.', 'Los Angeles', 'California'] Parsing tests/karthik.ini ... 23 ['users'] users.K 8 8 users.mod_scheme 'QPSK' 'QPSK' users.Na K+2 K+2 OK Parsing examples/Setup.ini ... 125 ['Startup', 'Languages', 'test'] Startup.audioinf M3i M3i Languages.key1 0x0003 0x0003 test.foo bar bar OK Constructing EBNF parser with pyparsing... Parsing EBNF grammar with EBNF parser... - terminal_string - meta_identifier - integer - syntax - syntax_rule - definitions_list - single_definition - syntactic_term - syntactic_factor - syntactic_primary - optional_sequence - repeated_sequence - grouped_sequence Parsing EBNF grammar with generated EBNF parser... [['syntax', '=', '(', 'syntax_rule', ')', ',', '{', '(', 'syntax_rule', ')', '}', ';'], ['syntax_rule', '=', 'meta_identifier', ',', "'='", ',', 'definitions_list', ',', "';'", ';'], ['definitions_list', '=', 'single_definition', ',', '{', "'|'", ',', 'single_definition', '}', ';'], ['single_definition', '=', 'syntactic_term', ',', '{', "','", ',', 'syntactic_term', '}', ';'], ['syntactic_term', '=', 'syntactic_factor', ',', '[', "'-'", ',', 'syntactic_factor', ']', ';'], ['syntactic_factor', '=', '[', 'integer', ',', "'*'", ']', ',', 'syntactic_primary', ';'], ['syntactic_primary', '=', 'optional_sequence', '|', 'repeated_sequence', '|', 'grouped_sequence', '|', 'meta_identifier', '|', 'terminal_string', ';'], ['optional_sequence', '=', "'['", ',', 'definitions_list', ',', "']'", ';'], ['repeated_sequence', '=', "'{'", ',', 'definitions_list', ',', "'}'", ';'], ['grouped_sequence', '=', "'('", ',', 'definitions_list', ',', "')'", ';']] [['xavier', 'yeti'], ['alpha', 'beta', 'charlie'], ['will', 'beaver']] ['xavier', 'yeti'] ['alpha', 'beta', 'charlie'] ['will', 'beaver'] ['1', '0x2', '3', '0x4', 'aaa'] - base10: ['1', '3'] - hex: ['0x2', '0x4'] - word: ['aaa'] [[['Q', ['x', 'y', 'z']]], ':-', ['Bloo', ['x', 'Mitsis', 'y']], ['Foo', ['y', 'z', '1243']], ['y', '>', '28'], ['x', '<', '12'], ['x', '>', '3']] - Bloo: ['x', 'Mitsis', 'y'] - Foo: ['y', 'z', '1243'] - head: [['Q', ['x', 'y', 'z']]] - Q: ['x', 'y', 'z'] [0]: ['Q', ['x', 'y', 'z']] [0]: Q [1]: ['x', 'y', 'z'] - pred: [['y', '>', '28'], ['x', '<', '12'], ['x', '>', '3']] [0]: ['y', '>', '28'] [1]: ['x', '<', '12'] [2]: ['x', '>', '3'] [0]: [['Q', ['x', 'y', 'z']]] - Q: ['x', 'y', 'z'] [0]: ['Q', ['x', 'y', 'z']] [0]: Q [1]: ['x', 'y', 'z'] [1]: :- [2]: ['Bloo', ['x', 'Mitsis', 'y']] [0]: Bloo [1]: ['x', 'Mitsis', 'y'] [3]: ['Foo', ['y', 'z', '1243']] [0]: Foo [1]: ['y', 'z', '1243'] [4]: ['y', '>', '28'] [5]: ['x', '<', '12'] [6]: ['x', '>', '3'] Re:('[a-z]+') ['abc'] Re:('[a-z]+') ['abc'] Re:('[a-z]+') ['abc'] Re:('[a-z]+') ['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] {Re:('[a-z]+') | Re:('[a-z]+')} ['abc'] {Re:('[a-z]+') ^ Re:('[a-z]+')} ['abc'] {Re:('[a-z]*') | Re:('[a-z]*')} ['abc'] {Re:('[a-z]*') ^ Re:('[a-z]*')} ['abc'] Raised expected exception: ParseSyntaxException: Expected W:(0-9), found 'bad' (at char 4), (line:1, col:5) Raised expected exception: ParseSyntaxException: should raise here (at char 0), (line:1, col:1) Raised expected exception: ParseSyntaxException: Expected identifier, found end of text (at char 1), (line:1, col:2) [123, 456, 789] [123, 456, 789] 9 -> 9 -9 -> -9 --9 -> 9 -E -> -2.718281828459045 9 + 3 + 5 -> 17 9 + 3 / 11 -> 9.272727272727273 (9 + 3) -> 12 (9+3) / 11 -> 1.0909090909090908 9 - 12 - 6 -> -9 9 - (12 - 6) -> 3 2*3.14159 -> 6.28318 3.1415926535*3.1415926535 / 10 -> 0.9869604400525172 PI * PI / 10 -> 0.9869604401089358 PI*PI/10 -> 0.9869604401089358 PI^2 -> 9.869604401089358 round(PI^2) -> 10 6.02E23 * 8.048 -> 4.844896e+24 e / 3 -> 0.9060939428196817 sin(PI/2) -> 1.0 10+sin(PI/4)^2 -> 10.5 trunc(E) -> 2 trunc(-E) -> -2 round(E) -> 3 round(-E) -> -3 E^PI -> 23.140692632779263 exp(0) -> 1.0 exp(1) -> 2.718281828459045 2^3^2 -> 512 (2^3)^2 -> 64 2^3+2 -> 10 2^3+5 -> 13 2^9 -> 512 sgn(-2) -> -1 sgn(0) -> 0 sgn(0.1) -> 1 round(E, 3) -> 2.718 round(PI^2, 3) -> 9.87 sgn(cos(PI/4)) -> 1 sgn(cos(PI/2)) -> 0 sgn(cos(PI*3/4)) -> -1 +(sgn(cos(PI/4))) -> 1 -(sgn(cos(PI/4))) -> -1 -> ['BODY', False] ['BODY', False] - empty: False - startBody: ['BODY', False] - empty: False - tag: 'BODY' - tag: 'BODY' -> ['BODY', ['bgcolor', '#00FFCC'], False] ['BODY', ['bgcolor', '#00FFCC'], False] - bgcolor: '#00FFCC' - empty: False - startBody: ['BODY', ['bgcolor', '#00FFCC'], False] - bgcolor: '#00FFCC' - empty: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFCC'] [2]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFCC'] [2]: False -> ['BODY', ['bgcolor', '#00FFAA'], True] ['BODY', ['bgcolor', '#00FFAA'], True] - bgcolor: '#00FFAA' - empty: True - startBody: ['BODY', ['bgcolor', '#00FFAA'], True] - bgcolor: '#00FFAA' - empty: True - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFAA'] [2]: True - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFAA'] [2]: True -> ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False -> ['BODY', True] ['BODY', True] - empty: True - startBody: ['BODY', True] - empty: True - tag: 'BODY' - tag: 'BODY' -> [''] [''] - endBody: '' end tag ................ /* * a block comment * */ typedef string[10] tenStrings; typedef sequence stringSeq; typedef sequence< sequence > stringSeqSeq; interface QoSAdmin { stringSeq method1(in string arg1, inout long arg2); stringSeqSeq method2(in string arg1, inout long arg2, inout long arg3); string method3(); }; tokens = [['typedef', 'string', '[', '10', ']', 'tenStrings', ';'], ['typedef', ['sequence', '<', 'string', '>'], 'stringSeq', ';'], ['typedef', ['sequence', '<', ['sequence', '<', 'string', '>'], '>'], 'stringSeqSeq', ';'], ['interface', 'QoSAdmin', '{', 'stringSeq', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', 'stringSeqSeq', 'method2', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ['inout', 'long', 'arg3'], ')', ';', 'string', 'method3', '(', ')', ';', '}', ';']] 59 /* * a block comment * */ typedef string[10] tenStrings; typedef /** ** *** **** * * a block comment * */ sequence /*comment inside an And */ stringSeq; /* */ /**/ /***/ /****/ typedef sequence< sequence > stringSeqSeq; interface QoSAdmin { stringSeq method1(in string arg1, inout long arg2); stringSeqSeq method2(in string arg1, inout long arg2, inout long arg3); string method3(); }; tokens = [['typedef', 'string', '[', '10', ']', 'tenStrings', ';'], ['typedef', ['sequence', '<', 'string', '>'], 'stringSeq', ';'], ['typedef', ['sequence', '<', ['sequence', '<', 'string', '>'], '>'], 'stringSeqSeq', ';'], ['interface', 'QoSAdmin', '{', 'stringSeq', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', 'stringSeqSeq', 'method2', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ['inout', 'long', 'arg3'], ')', ';', 'string', 'method3', '(', ')', ';', '}', ';']] 59 const string test="Test String\n"; const long a = 0; const long b = -100; const float c = 3.14159; const long d = 0x007f7f7f; exception TestException { string msg; sequence dataStrings; }; interface TestInterface { void method1(in string arg1, inout long arg2); }; tokens = [['const', 'string', 'test', '=', '"Test String\\n"', ';'], ['const', 'long', 'a', '=', '0', ';'], ['const', 'long', 'b', '=', '-100', ';'], ['const', 'float', 'c', '=', '3.14159', ';'], ['const', 'long', 'd', '=', '0x007f7f7f', ';'], 'exception', 'TestException', '{', ['string', 'msg', ';'], [['sequence', '<', 'string', '>'], 'dataStrings', ';'], '}', ';', ['interface', 'TestInterface', '{', 'void', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', '}', ';']] 60 module Test1 { exception TestException { string msg; ]; interface TestInterface { void method1(in string arg1, inout long arg2) raises (TestException); }; }; exception TestException ^ Expected {moduleDef | {moduleItem}...}, found 'exception' (at char 56), (line:4, col:15) module Test1 { exception TestException { string msg; }; }; tokens = ['module', 'Test1', '{', 'exception', 'TestException', '{', ['string', 'msg', ';'], '}', ';', '}', ';'] 13 Test ifOnlyIfOnly Match Literal ['if'] Match Keyword failed Test if(OnlyIfOnly) Match Literal ['if'] Match Keyword ['if'] Test if (OnlyIf Only) Match Literal ['if'] Match Keyword ['if'] Test IFOnlyIfOnly Match Literal failed Match Keyword failed Test If(OnlyIfOnly) Match Literal failed Match Keyword ['if'] Test iF (OnlyIf Only) Match Literal failed Match Keyword ['if'] Raised expected exception: ValueError: null string passed to Keyword; use Empty() instead ['0', '123', '321', 444] ['spam', 'eggs'] - first: 'spam' - second: 'eggs' [] ['123', '456', 'ABC', 'DEF'] - ints: ['123', '456'] - words: ['ABC', 'DEF'] ['123', 'ABC', 'DEF'] - ints: ['123', '456'] ['List', '__add__', '__annotations__', '__bool__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattr__', '__getattribute__', '__getitem__', '__getnewargs__', '__getstate__', '__gt__', '__hash__', '__iadd__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__module__', '__ne__', '__new__', '__radd__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__setattr__', '__setitem__', '__setstate__', '__sizeof__', '__slots__', '__str__', '__subclasshook__', '__weakref__', '_all_names', '_asStringList', '_modal', '_name', '_null_values', '_parent', '_tokdict', '_toklist', 'append', 'asDict', 'asList', 'as_dict', 'as_list', 'clear', 'copy', 'dump', 'extend', 'from_dict', 'get', 'getName', 'get_name', 'haskeys', 'insert', 'items', 'keys', 'pop', 'pprint', 'trios', 'values'] ['spam', 'eggs', 'foo', 'bar'] ['abc', 'def', 'ghi', 'ihg', 'fed', 'cba'] [['123', 456, ['789', 789]]] - trios: ['123', 456, ['789', 789]] - first: '123' - second: 456 - third: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: 123 [1]: 456 [2]: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: ['123', 456, ['789', 789]] - first: '123' - second: 456 - third: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: 123 [1]: 456 [2]: ['789', 789] - threeInt: 789 - threeStr: '789' ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'] ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'] ['h', 'A', 'i', 'd', 'g', 'j', 'a', 'c', 'B', 'f', 'C', 'D', 'E', 'F', 'G', 'e', 'b', 'H', 'I', 'J'] ['h', 'A', 'i', 'd', 'g', 'j', 'a', 'c', 'B', 'f', 'C', 'D', 'E', 'F', 'G', 'e', 'b', 'H', 'I', 'J'] Pre-insert [[1, 2, 3], 'dice', ['rolled', 'first', 'try']] - additional: ['rolled', 'first', 'try'] - label: 'dice' - nums: [1, 2, 3] [0]: [1, 2, 3] [1]: dice [2]: ['rolled', 'first', 'try'] Post-insert [[1, 2, 3], 6, 'dice', ['rolled', 'first', 'try']] - additional: ['rolled', 'first', 'try'] - label: 'dice' - nums: [1, 2, 3] [0]: [1, 2, 3] [1]: 6 [2]: dice [3]: ['rolled', 'first', 'try'] [ 1,2,3,4,5,6 ] [['[', '1', '2', '3', '4', '5', '6', ']']] - LIST: ['[', '1', '2', '3', '4', '5', '6', ']'] - END_LIST: ']' - LIST_VALUES: ['1', '2', '3', '4', '5', '6'] - LIT_NUM: ['1', '2', '3', '4', '5', '6'] - START_LIST: '[' [0]: ['[', '1', '2', '3', '4', '5', '6', ']'] - END_LIST: ']' - LIST_VALUES: ['1', '2', '3', '4', '5', '6'] - LIT_NUM: ['1', '2', '3', '4', '5', '6'] - START_LIST: '[' "Golden Gate Bridge" 37.819722 -122.478611 height=746 span=4200 ['Golden Gate Bridge', [37.819722, -122.478611, ['height', 746], ['span', 4200]]] - data: [37.819722, -122.478611, ['height', 746], ['span', 4200]] - height: 746 - lat: 37.819722 - long: -122.478611 - span: 4200 [0]: 37.819722 [1]: -122.478611 [2]: ['height', 746] [3]: ['span', 4200] - name: 'Golden Gate Bridge' [0]: Golden Gate Bridge [1]: [37.819722, -122.478611, ['height', 746], ['span', 4200]] - height: 746 - lat: 37.819722 - long: -122.478611 - span: 4200 [0]: 37.819722 [1]: -122.478611 [2]: ['height', 746] [3]: ['span', 4200] .............['a', ['href', 'blah'], False] - empty: False - href: 'blah' - startA: ['a', ['href', 'blah'], False] - empty: False - href: 'blah' - tag: 'a' [0]: a [1]: ['href', 'blah'] [2]: False - tag: 'a' [0]: a [1]: ['href', 'blah'] [2]: False [] [] [1, 2, 3, 4, 5] ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 0 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 1 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 2 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 3 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 4 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 5 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 0 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 1 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 2 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 3 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 4 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 5 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 0 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 1 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 2 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 3 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 4 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 5 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 0 ['BABBAB'] Test pickle dump protocol 1 ['BABBAB'] Test pickle dump protocol 2 ['BABBAB'] Test pickle dump protocol 3 ['BABBAB'] Test pickle dump protocol 4 ['BABBAB'] Test pickle dump protocol 5 ['BABBAB'] Test pickle dump protocol 0 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 1 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 2 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 3 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 4 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 5 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 0 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 1 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 2 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 3 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 4 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 5 ['BABBAB'] - name: ['BABBAB'] ParseResults(['test', 'blub'], {'word': 'blub'}) blub {'word': 'blub'} ParseResults(['test', 'blub'], {'word': ['test', 'blub']}) ['test', 'blub'] {'word': ['test', 'blub']} ['abc'] - A: 'abc' Raised expected exception: AttributeError: __xyz__ ['5', '4', '3', '2', '1'] {'eggs', 'spam'} not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] ParseResults([('A', 'Z')], {'Achar': ('A', 'Z')}) ('A', 'Z') ['/', [['respectaccents']]] ('/respectaccents/ignoreaccents', 0) ['/', [['ignoreaccents']]] ('/respectaccents/ignoreaccents', 15) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 1)}, '_info_': ('/respectaccents/ignoreaccents', 1)}, '/': '', ParseResults(['respectaccents'], {'_info_': ('/respectaccents/ignoreaccents', 1)}): '', '_info_': ('/respectaccents/ignoreaccents', 0)} ('/respectaccents/ignoreaccents', 0) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 16)}, '_info_': ('/respectaccents/ignoreaccents', 16)}, '/': '', ParseResults(['ignoreaccents'], {'_info_': ('/respectaccents/ignoreaccents', 16)}): '', '_info_': ('/respectaccents/ignoreaccents', 15)} ('/respectaccents/ignoreaccents', 15) ['/', [['respectaccents']]] ('/respectaccents/ignoreaccents', 0) ['/', [['ignoreaccents']]] ('/respectaccents/ignoreaccents', 15) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 1)}, '_info_': ('/respectaccents/ignoreaccents', 1)}, '/': '', ParseResults(['respectaccents'], {'_info_': ('/respectaccents/ignoreaccents', 1)}): '', '_info_': ('/respectaccents/ignoreaccents', 0)} ('/respectaccents/ignoreaccents', 0) ..............................{'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 16)}, '_info_': ('/respectaccents/ignoreaccents', 16)}, '/': '', ParseResults(['ignoreaccents'], {'_info_': ('/respectaccents/ignoreaccents', 16)}): '', '_info_': ('/respectaccents/ignoreaccents', 15)} ('/respectaccents/ignoreaccents', 15) SELECT * from XYZZY, ABC ['select', '*', 'from', 'XYZZY', 'ABC', ''] 6 select * from SYS.XYZZY ['select', '*', 'from', 'SYS.XYZZY', ''] 5 Select A from Sys.dual ['select', 'A', 'from', 'SYS.DUAL', ''] 5 Select A,B,C from Sys.dual ['select', 'A', 'B', 'C', 'from', 'SYS.DUAL', ''] 7 Select A, B, C from Sys.dual ['select', 'A', 'B', 'C', 'from', 'SYS.DUAL', ''] 7 Select A, B, C from Sys.dual, Table2 ['select', 'A', 'B', 'C', 'from', 'SYS.DUAL', 'TABLE2', ''] 8 Select A from Sys.dual where a in ('RED','GREEN','BLUE') ['select', 'A', 'from', 'SYS.DUAL', 'where', 'A', 'in', '(', "'RED'", "'GREEN'", "'BLUE'", ')'] 12 Select A from Sys.dual where a in ('RED','GREEN','BLUE') and b in (10,20,30) ['select', 'A', 'from', 'SYS.DUAL', 'where', 'A', 'in', '(', "'RED'", "'GREEN'", "'BLUE'", ')', 'and', 'B', 'in', '(', 10, 20, 30, ')'] 20 Select A,b from table1,table2 where table1.id eq table2.id -- test out comparison operators ['select', 'A', 'B', 'from', 'TABLE1', 'TABLE2', 'where', 'TABLE1.ID', 'eq', 'TABLE2.ID'] 10 Re:('[-+][0-9]+') correctly failed to match '1234 foo' Re:('[-+][0-9]+') correctly failed to match ' +foo' Re:('[0-9]+') correctly failed to match 'abc' Re:('[0-9]+') correctly failed to match '+123 foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match 'foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match '"foo bar\'' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match '\'foo bar"' Re:('[-+][0-9]+') correctly matched ' +123' Re:('[-+][0-9]+') correctly matched '+123' Re:('[-+][0-9]+') correctly matched '+123 foo' Re:('[-+][0-9]+') correctly matched '-0 foo' Re:('[0-9]+') correctly matched '123 foo' Re:('[0-9]+') correctly matched '0 foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly matched '"foo"' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly matched "'foo bar' baz" Re:('[A-Z]+') correctly failed to match 'blah' Re:('[A-Z]+') correctly matched 'BLAH' Re:('("(?P[^\"]*)")') correctly matched '"foo bar" baz' ['"zork"'] [('content', 'zork')] zork lets try an invalid RE successfully rejected an invalid RE: invalid pattern ('("[^"]*")|(\'[^\']*\'') passed to Regex Raised expected exception: ValueError: null string passed to Regex; use Empty() instead ['spam', 'eggs', 'suf'] ['pre', 'spam', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: ParseException: Missing one or more required elements ('and'), found ' ' (at char 4), (line:1, col:5) ['spam', 'and', 'eggs'] - first: 'spam' - second: 'eggs' Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement ['spam', 'eggs'] ['pre', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement ['abd', 'def', 'ghi', 'jkl'] ['abd', 'def', 'ghi', 'jkl'] Raised expected exception: TypeError: cannot multiply ParserElement and str objects Raised expected exception: TypeError: cannot multiply ParserElement and str objects ['spam', '11', '22'] - first: 'spam' - second: ['11', '22'] ['spam', '111', '222'] - first: 'spam' - second: ['111', '222'] ['spam'] - first: 'spam' ['spam', '12', '23', '34'] - first: 'spam' - second: ['12', '23', '34'] ['spam', '45'] - first: 'spam' - second: ['45'] ['spam', '100'] - first: 'spam' - second: ['100'] ['spam', '100', '200', '300'] - first: 'spam' - second: ['100', '200', '300'] ['spam', '1', '2'] - first: 'spam' - second: ['1', '2'] ['spam', '1', '2', '3'] - first: 'spam' - second: ['1', '2', '3'] Raised expected exception: ValueError: second tuple value must be greater or equal to first tuple value Raised expected exception: TypeError: cannot multiply ParserElement and (str,str) objects Raised expected exception: TypeError: cannot multiply ParserElement and (str,NoneType) objects Raised expected exception: TypeError: only 1 or 2 index arguments supported ((2, 3, 4)) ['spam', 'eggs', 'suf'] ['pre', 'spam', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement {{word {{word_1 word} ^ word}} ^ {word word word}} foo bar temp -> ['foo', 'bar', 'temp'] EXP: AAA ['123', '456', '789', '234'] GOT: AAA ['123', '456', '789', '234'] AAA ['123', '456', '789', '234'] EXP: 234 ['123', '456', '789'] GOT: 234 ['123', '456', '789'] 234 ['123', '456', '789'] EXP: AAA ['123', '456', '789'] GOT: AAA ['123', '456', '789'] AAA ['123', '456', '789'] EXP: 789 ['123', '456'] GOT: 789 ['123', '456'] 789 ['123', '456'] noname ['123', '456'] ['AAA', '123', '456', '789', '234'] - name: 'AAA' Raised expected exception: TypeError: pop() got an unexpected keyword argument 'notDefault' c384 b8324 _9293874 _293 404 $%^$^%$2939 [384, 8324] - prefix: ['c', 'b'] [9293874, 293] [404] [2939] - prefix: ['^%$'] [2939] [404] [['working']] [0]: ['working'] - main: ['working'] - negs_lb: 'not' got maximum excursion limit exception ['like "SQL"'] ['aaayaaa'] 'a valid single quoted string' 'an invalid single quoted string because it spans lines' "a valid double quoted string" "an invalid double quoted string because it spans lines" [("'a valid single quoted string'", 17, 47)] [('a valid double quoted string', 154, 184)] [("'a valid single quoted string'", 17, 47), ('"a valid double quoted string"', 154, 184)] [("'This string has an escaped (\\') quote character'", 17, 66)] [('This string has an escaped (\\") quote character', 83, 132)] [("'This string has an escaped (\\') quote character'", 17, 66), ('"This string has an escaped (\\") quote character"', 83, 132)] [("'This string has an doubled ('') quote character'", 17, 66)] [('This string has an doubled ("") quote character', 83, 132)] [("'This string has an doubled ('') quote character'", 17, 66), ('"This string has an doubled ("") quote character"', 83, 132)] testing catastrophic RE backtracking in implementation of dblQuotedString Raised expected exception: ValueError: endQuoteChar cannot be the empty string ['myc(114)r(11)dd'] ['myc(114)r(11)dd'] return as list of match groups [('123', '456', 'lsdfkj')] [('123', '456', 'lsdfkj')] return as re.match instance [] ('123', '456', 'lsdfkj') [('123', '456', 'lsdfkj')] Raised expected exception: TypeError: Regex may only be constructed with a string or a compiled RE object test sub with string This is the title: 'Richard III' test sub with re string

This is the main heading

This is the sub-heading

test sub with re string (Regex returns re.match)

This is the main heading

This is the sub-heading

test sub with callable that return str I want this in upcase: WHAT? WHAT? Raised expected exception: TypeError: cannot use sub() with a callable with Regex(asMatch=True) Raised expected exception: TypeError: cannot use sub() with Regex(asGroupList=True) Raised expected exception: TypeError: cannot use sub() with Regex(asGroupList=True) verify behavior with repeated tokens when packrat parsing is enabled skipping this test, not compatible with memoization skipping this test, not compatible with memoization skipping this test, not compatible with memoization skipping this test, not compatible with memoization ...................>>entering convert_to_int(line: '132', 0, ParseResults(['132'], {})) <>entering (line: '132', 0, ParseResults([132], {})) < (ret: 1320) >>entering Z(line: '132', 0, ParseResults([1320], {})) < Expected {'A' | {'B' 'C'} | 'E'}, found 'D' (at char 1), (line:1, col:2) [1, 2, 3, 4, 6, 8, 9, 10, 16] [1, 2, 3, 4, 6, 8, 9, 10, 16] [11] [11] 1/2 eval: 0.5 1/0 [1, '/', 0] - denominator: 0 - numerator: 1 eval_fraction failed: ZeroDivisionError: division by zero True ['129.6.15.28', '129.6.15.29', '132.163.4.101', '132.163.4.102', '132.163.4.103'] [(ParseResults([], {}), 5, 6)] Before parsing with setBreak: False After parsing with setBreak: True a | b | c d | e | f {a | b | c | d | e | f} Forward: + | - term + | - term Forward: ?: term ?: term Forward: {a | b | c [{d | e | f : ...}]...} int [, int]... (len) int... nested () expression (, ) (, ) common HTML entity lsdjkf &'"&xyzzy; Raised expected exception: TypeError: parse actions must be callable ['A'] - Achar: 'A' verify behavior of setResultsName with OneOrMore and ZeroOrMore ['test', 'test'] ['test', 'test'] ['test', 'test'] ['test', 'test'] ['test', 'test'] Received expected exception: just one arg (at char 0), (line:1, col:1) ['some text /* comment with ; in */', ';', 'working'] ['some text /* comment with ; in */some other stuff', ';', 'working'] ['some text /* comment with ; in */', ';', 'working'] Raised expected exception: ParseException: Expected ';', found ' ' (at char 37), (line:1, col:38) Raised expected exception: Exception: use of `...` expression without following SkipTo target expression verify proper streamline logic {{{'A' 'B'} 'C'} 'D'} {'A' 'B' 'C' 'D'} ['123'] ['123'] ['123'] ['123'] ['123'] ['123'] Raised expected exception: ParseException: Expected W:(0-9), found ' ' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected '123', found ' ' (at char 0), (line:1, col:1) {StringStart W:(a-e) StringEnd} 'aaa' ['aaa'] {LineStart W:(a-e) StringEnd} 'aaa' ['aaa'] {LineStart W:(a-e) StringEnd} '\naaa' ['aaa'] {LineStart W:(a-e) StringEnd} ' aaa' ['aaa'] {LineStart W:(a-e) StringEnd} '\n aaa' ['aaa'] {AtLineStart:(W:(a-e)) StringEnd} ' aaa' Raised expected exception: ParseException: not found at line start, found 'aaa' (at char 3), (line:1, col:4) {AtLineStart:(W:(a-e)) StringEnd} '\n aaa' Raised expected exception: ParseException: not found at line start, found 'aaa' (at char 4), (line:2, col:4) garbage;DOB 10-10-2010;more garbage ID PARI12345678;more garbage ID:PARI12345678 DOB:10-10-2010 INFO: ID:PARI12345678 DOB:10-10-2010 INFO: ['DOB', '10-10-2010'] - dob: '10-10-2010' ['ID', 'PARI12345678'] - id: 'PARI12345678' garbage;ID PARI12345678;more garbage DOB 10-10-2010;more garbage ID:PARI12345678 DOB:10-10-2010 INFO: ID:PARI12345678 DOB:10-10-2010 INFO: ['ID', 'PARI12345678'] - id: 'PARI12345678' ['DOB', '10-10-2010'] - dob: '10-10-2010' garbage;DOB 10-10-2010 ID: DOB:10-10-2010 INFO: ID: DOB:10-10-2010 INFO: ['DOB', '10-10-2010'] - dob: '10-10-2010' garbage;ID PARI12345678;more garbage- I am cool ID:PARI12345678 DOB: INFO: I am cool ID:PARI12345678 DOB: INFO: I am cool ['ID', 'PARI12345678'] - id: 'PARI12345678' ['-', ' I am cool'] - info: ' I am cool' 00 11 22 aa FF 0a 0d 1a [0, 17, 34, 170, 255, 10, 13, 26] I wish to buy 12345 shares of Acme Industries (as a gift to my (ex)wife) I 12,345 Acme Industries asagifttomyexwife 1 1234567890 1:| 2:| 3:check aaa| 1 1234567890 1:| 2:| 3:CHECK aaa| 1 2 12345678901234567890 1: check aaa| 1 2 12345678901234567890 1: CHECK aaa| [['rint'], ['a100']] 1 1234567890 1: check| 1 1234567890 1: CHECK| Original: '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' Should match: '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' aaa 333 ['aaa', '333'] b 1 ['b', '1'] ababab 32123 ['ababab', '32123'] 123 [123] 456 [456] abc abc ^ ParseException: Expected {{integer}}, found 'abc' (at char 0), (line:1, col:1) pyparsing.core.Or - {{integer}} FAIL: Expected {{integer}}, found 'abc' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4025, in parseImpl raise maxException 101222 101222 ['Καλημέρα', ',', 'κόσμε', '!'] [['şehir', 'İzmir'], ['ülke', 'Türkiye'], ['nüfus', 4279677]] - nüfus: 4279677 - ülke: 'Türkiye' - şehir: 'İzmir' [0]: ['şehir', 'İzmir'] [1]: ['ülke', 'Türkiye'] [2]: ['nüfus', 4279677] 栩Ōᵦחॕᅃ­冚Ҭ١นコZῦרऀᅮ2僨Ԙݰฌ钣8Ϋכּ५ᇨk莮Ꙙۃฃ痍Éὶמּऴ팪n䢮Ꚑڦธ薧Ēίיּ५틳¥嗕Ђّศ蚧Šᴪ֒०밌ö窼в١๖瀂uὰﬧउ끔]忙Ꙩݙึ蠬âϗֻ꣫뒼'覓ꙏ١ฤ� ["栩Ōᵦחॕᅃ\xad冚Ҭ١นコZῦרऀᅮ2僨Ԙݰฌ钣8Ϋכּ५ᇨk莮Ꙙۃฃ痍Éὶמּऴ팪n䢮Ꚑڦธ薧Ēίיּ५틳¥嗕Ђّศ蚧Šᴪ֒०밌ö窼в١๖瀂uὰﬧउ끔]忙Ꙩݙึ蠬âϗֻ꣫뒼'覓ꙏ١ฤ�"] [[10, 'print', 123, ';'], [20, 'print', 234, ';', 567, ';'], [30, 'print', 890]] [0]: [10, 'print', 123, ';'] [1]: [20, 'print', 234, ';', 567, ';'] [2]: [30, 'print', 890] [['abc', 'abc', 'abc']] [0]: ['abc', 'abc', 'abc'] [["'def'", "'def'", "'def'"]] [0]: ["'def'", "'def'", "'def'"] [[123, 123, 123]] [0]: [123, 123, 123] [[4.56, 4.56, 4.56]] [0]: [4.56, 4.56, 4.56] [['a_bc', 'a_bc', 'a_bc']] [0]: ['a_bc', 'a_bc', 'a_bc'] [['abc', '\n'], ['abc', '\n'], ['abc']] [0]: ['abc', '\n'] [1]: ['abc', '\n'] [2]: ['abc'] [["'def'", '\n'], ["'def'", '\n'], ["'def'"]] [0]: ["'def'", '\n'] [1]: ["'def'", '\n'] [2]: ["'def'"] [[123, '\n'], [123, '\n'], [123]] [0]: [123, '\n'] [1]: [123, '\n'] [2]: [123] [[4.56, '\n'], [4.56, '\n'], [4.56]] [0]: [4.56, '\n'] [1]: [4.56, '\n'] [2]: [4.56] [['a_bc', '\n'], ['a_bc', '\n'], ['a_bc']] [0]: ['a_bc', '\n'] [1]: ['a_bc', '\n'] [2]: ['a_bc'] [['abc', 'abc', 'abc']] [0]: ['abc', 'abc', 'abc'] [["'def'", "'def'", "'def'"]] [0]: ["'def'", "'def'", "'def'"] [[123, 123, 123]] [0]: [123, 123, 123] [[4.56, 4.56, 4.56]] [0]: [4.56, 4.56, 4.56] [['a_bc', 'a_bc', 'a_bc']] [0]: ['a_bc', 'a_bc', 'a_bc'] verify behavior of validate() Forward: Group:({'A' | : ...}) RecursiveGrammarException: [Forward: Group:({'A' | : ...}), Group:({'A' | : ...}), {'A' | Forward: Group:({'A' | : ...})}, Forward: Group:({'A' | : ...})] Forward: {['A'] : ...} RecursiveGrammarException: [Forward: {['A'] : ...}, {['A'] Forward: {['A'] : ...}}, Forward: {['A'] : ...}] ('VUTSRQPONMLKJIHGFEDCBA', 5, ParseResults(['Q'], {})) ['V', 'U', 'T', 'S', 'R', 'Q', 'P', 'O', 'N', 'M', 'L', 'K', 'J', 'I', 'H', 'G', 'F', 'E', 'D', 'C', 'B', 'A'] ('VUTSRQPONMLKJIHGFEDCBA', 5, ParseResults(['Q'], {})) make a ClassAsPAStarNew ('VUTSRQPONMLKJIHGFEDCBA', 17, ParseResults(['E'], {})) making a ClassAsPA1 ['V', 'U', 'T', 'S', 'R', 'Q', 'P', 'O', 'N', 'M', 'L', 'K', 'J', 'I', 'H', 'G', 'F', 'E', 'D', 'C', 'B', 'A'] verify that using '<<' operator with a Forward raises a warning if there is a dangling '|' operator unsafe << and |, but diag not enabled, should not warn unsafe << and |, should warn unsafe << and |, should warn safe <<= and |, should not warn safe << and (|), should not warn .........[['a', ['b', 'x'], False, '2', ''], ['a', ['b', 'x'], False, '3', '']] [0]: ['a', ['b', 'x'], False, '2', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '2' [0]: a [1]: ['b', 'x'] [2]: False [3]: 2 [4]: [1]: ['a', ['b', 'x'], False, '3', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '3' [0]: a [1]: ['b', 'x'] [2]: False [3]: 3 [4]: [['a', ['b', 'x'], False, '2', ''], ['a', ['b', 'x'], False, '3', '']] [0]: ['a', ['b', 'x'], False, '2', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '2' [0]: a [1]: ['b', 'x'] [2]: False [3]: 2 [4]: [1]: ['a', ['b', 'x'], False, '3', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '3' [0]: a [1]: ['b', 'x'] [2]: False [3]: 3 [4]: [['a', ['class', 'boo'], False, '8', '']] [0]: ['a', ['class', 'boo'], False, '8', ''] - class: 'boo' - empty: False - endA: '' - tag: 'a' - value: '8' [0]: a [1]: ['class', 'boo'] [2]: False [3]: 8 [4]: ABC DEF GHI [['D', 'G'], ['A'], ['C', 'F'], ['I'], ['E'], ['A', 'I']] JKL MNO PQR [['J', 'M', 'P'], [], ['L', 'R'], ['O'], [], ['O']] STU VWX YZ [['S', 'V'], ['Y'], ['X', 'Z'], ['U'], [], ['U', 'Y']] ABC DEF GHI JKL MNO PQR STU VWX YZ [['D', 'G', 'J', 'M', 'P', 'S', 'V'], ['A', 'Y'], ['C', 'F', 'L', 'R', 'X', 'Z'], ['I', 'O', 'U'], ['E'], ['A', 'I', 'O', 'U', 'Y']] [['Hello'], ['Mr'], ['Ed'], ["it's"], ['Wilbur']] ['ABCDEMNXYZABCDEMNXYZABCDEMNXYZ'] Testing escape char: \ -> W:(\]) re: '[\\\]]+') Match ']\\\]]]]]]]\\]\]' -> True Testing escape char: \ -> W:([\) re: '[\[\\]+') Match '\[\[[[[\\[[\\\[[' -> True Testing escape char: \ -> W:(\]) re: '[\\\]]+') Match '\\]]\]\]]]]]]\\]' -> True Testing escape char: \ -> W:(\, A-Z) re: '\\[A-Z]*') Match '\AZCENGEZAUCXKZIT' -> True Testing escape char: \ -> W:(\, A-Z) re: '\\[A-Z]*') Match '\FYSLOXPDFJTRNXYI' -> True Testing escape char: ^ -> W:(^_) re: '[\^_]+') Match '^______^^_^__^^_' -> True Testing escape char: ^ -> W:(]^) re: '[\]\^]+') Match '^]]]^]^^]^^]^^]^' -> True Testing escape char: ^ -> W:(^_) re: '[\^_]+') Match '___^________^^__' -> True Testing escape char: ^ -> W:(^, A-Z) re: '\^[A-Z]*') Match '^GXKVQBSFMYNSSQYV' -> True Testing escape char: ^ -> W:(^, A-Z) re: '\^[A-Z]*') Match '^QQLLJKHGVZQZANYQ' -> True Testing escape char: - -> W:(-.) re: '[\-.]+') Match '--.-.--...---.--' -> True Testing escape char: - -> W:(,-) re: '[,\-]+') Match '----,,-,,,-,--,,' -> True Testing escape char: - -> W:(-.) re: '[\-.]+') Match '.-----.-.-.-----' -> True Testing escape char: - -> W:(-, A-Z) re: '\-[A-Z]*') Match '-OMBYROSPHREBZHXQ' -> True Testing escape char: - -> W:(-, A-Z) re: '\-[A-Z]*') Match '-PNJFAVFEGOFPAZBS' -> True Testing escape char: ] -> W:(]^) re: '[\]\^]+') Match ']]^^^^]^]^]^]^^^' -> True Testing escape char: ] -> W:(\]) re: '[\\\]]+') Match '\]]\\]]\\]]]]]]]' -> True Testing escape char: ] -> W:(]^) re: '[\]\^]+') Match ']^^]^^]^^]^]^]^]' -> True Testing escape char: ] -> W:(], A-Z) re: '\][A-Z]*') Match ']TXXWPTXYDBXUEXCP' -> True Testing escape char: ] -> W:(], A-Z) re: '\][A-Z]*') Match ']JVTABJVIBLHLPXMJ' -> True Testing escape char: [ -> W:([\) re: '[\[\\]+') Match '[\[[[\[\[[[\[\[\' -> True Testing escape char: [ -> W:(Z[) re: '[Z\[]+') Match '[[Z[[[[Z[[Z[ZZZ[' -> True Testing escape char: [ -> W:([\) re: '[\[\\]+') Match '\[\[\\[\[\\\[[[\' -> True Testing escape char: [ -> W:([, A-Z) re: '\[[A-Z]*') Match '[VRJJVMDQCAFHPQWG' -> True Testing escape char: [ -> W:([, A-Z) re: '\[[A-Z]*') Match '[NIUFQYGFDTJANGAW' -> True Testing escape char: * -> W:(*+) re: '[*+]+') Match '**++*++++*+++*+*' -> True Testing escape char: * -> W:()*) re: '[)*]+') Match '*)))))*))))*))))' -> True Testing escape char: * -> W:(*+) re: '[*+]+') Match '*++++*+*+***+**+' -> True Testing escape char: * -> W:(*, A-Z) re: '\*[A-Z]*') Match '*DTFNTNUWDJLGFHDN' -> True Testing escape char: * -> W:(*, A-Z) re: '\*[A-Z]*') Match '*VSYCBJJKTGGKYNOF' -> True Testing escape char: + -> W:(+,) re: '[+,]+') Match ',,+,+,+,,+,,,+,+' -> True Testing escape char: + -> W:(*+) re: '[*+]+') Match '*+*++**+*+***+++' -> True Testing escape char: + -> W:(+,) re: '[+,]+') Match ',,++,+,+++,+,,,,' -> True Testing escape char: + -> W:(+, A-Z) re: '\+[A-Z]*') Match '+WZZANDAYCKWVZBPW' -> True Testing escape char: + -> W:(+, A-Z) re: '\+[A-Z]*') Match '+FGVBEXIMDWMUAZEB' -> True Testing escape char: . -> W:(./) re: '[./]+') Match '/../......//.../' -> True Testing escape char: . -> W:(-.) re: '[\-.]+') Match '---.-.-.--.--..-' -> True Testing escape char: . -> W:(./) re: '[./]+') Match '/...////../././.' -> True Testing escape char: . -> W:(., A-Z) re: '\.[A-Z]*') Match '.ZHDSDOFSNQQBUKZL' -> True Testing escape char: . -> W:(., A-Z) re: '\.[A-Z]*') Match '.WCDUCUIKHTUURBSI' -> True Testing escape char: ? -> W:(?@) re: '[?@]+') Match '??????@@@??@@@??' -> True Testing escape char: ? -> W:(>?) re: '[>?]+') Match '>?>>>>?>?>>???>>' -> True Testing escape char: ? -> W:(?@) re: '[?@]+') Match '@@@??@??@?????@?' -> True Testing escape char: ? -> W:(?, A-Z) re: '\?[A-Z]*') Match '?TZAORTONLPKIBMVT' -> True Testing escape char: ? -> W:(?, A-Z) re: '\?[A-Z]*') Match '?CVMRURLBQEXJYHHR' -> True ['p', 'q', 'r', 'False'] Raised expected exception: ParseException: Expected {(A-Za-z) | True | False}, found 'abc' (at char 0), (line:1, col:1) {'A' W:(0-9)} ... {'A' W:(0-9)} ... {'A' W:(0-9){1,6}} ... {'A' W:(0-9){1,6}} ... {'A' W:(0-9)} ... {'A' W:(0-9){2,...}} ... {'A' W:(0-9){2,6}} ... W:(A, 0-9) A[0-9]* W:(A, 0-9) A[0-9]* W:(A, 0-9){1,6} A[0-9]{0,5} W:(A, 0-9){1,6} A[0-9]{0,5} W:(A, 0-9) A[0-9]* W:(A, 0-9){2,...} ... W:(A, 0-9){2,6} ... W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9){1,6} [A-Za-z][0-9]{0,5} W:(A-Za-z, 0-9){1,6} [A-Za-z][0-9]{0,5} W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9){2,...} ... W:(A-Za-z, 0-9){2,6} ... ..................... Raised expected exception: ValueError: cannot specify a minimum length < 1; use Opt(Word()) if zero-length word is permitted Packrat enabled: True Packrat cache: _UnboundedCache None [[7], [9]] [[1, 4], [2, 4], [4, 3]] [[1, 4], [2, 4]] detected fatal condition ['balloon', '25'] - item: 'balloon' - qty: '25' ['rucksack', 49] - item: 'rucksack' - qty: 49 ['AAA', ' this line'] ['AAA', ' and this line'] [] [] d | aA | a | b | c d | Aa | a | b | c ['aA', 'aA', 'aA', 'aA'] ['Aa', 'Aa', 'Aa', 'Aa'] [[1, '?', 1, ':', 0, '?', 1, ':', 0]] [0]: [1, '?', 1, ':', 0, '?', 1, ':', 0] [[1, '?', 1, ':', [0, '?', 1, ':', 0]]] [0]: [1, '?', 1, ':', [0, '?', 1, ':', 0]] [0]: 1 [1]: ? [2]: 1 [3]: : [4]: [0, '?', 1, ':', 0] ['B', 'B', 'C', 'A', 'D'] ['B'] ['bcdfghjklmnpqrstvwxyz'] Raised expected exception: ValueError: cannot specify a minimum length < 1; use Opt(CharsNotIn()) if zero-length char group is permitted ['bcdfg'] ['bcdfghjklm'] Raised expected exception: ParseException: Expected !W:(AEIOU), found end of text (at char 21), (line:1, col:22) ATCATCGAATGGA ['ATCATCGAATGGA'] - mismatches: [] - original: 'ATCATCGAATGGA' XTCATCGAATGGX ['XTCATCGAATGGX'] - mismatches: [0, 12] - original: 'ATCATCGAATGGA' ATCATCGAAXGGA ['ATCATCGAAXGGA'] - mismatches: [9] - original: 'ATCATCGAATGGA' ATCAXXGAATGGA ['ATCAXXGAATGGA'] - mismatches: [4, 5] - original: 'ATCATCGAATGGA' ATCAXXGAATGXA ATCAXXGAATGXA ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ATCAXXGAATGG ATCAXXGAATGG ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ATCATCGAATGGA match XTCATCGAATGGX match ATCATCGAAXGGA match ATCAXXGAATGGA match ATCAXXGAATGXA exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) ATCAXXGAATGG exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) atcatcgaatgga ['atcatcgaatgga'] - mismatches: [] - original: 'ATCATCGAATGGA' xtcatcgaatggx ['xtcatcgaatggx'] - mismatches: [0, 12] - original: 'ATCATCGAATGGA' atcatcgaaxgga ['atcatcgaaxgga'] - mismatches: [9] - original: 'ATCATCGAATGGA' atcaxxgaatgga ['atcaxxgaatgga'] - mismatches: [4, 5] - original: 'ATCATCGAATGGA' atcaxxgaatgxa atcaxxgaatgxa ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) atcaxxgaatgg atcaxxgaatgg ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) atcatcgaatgga match xtcatcgaatggx match atcatcgaaxgga match atcaxxgaatgga match atcaxxgaatgxa exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) atcaxxgaatgg exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) ['*', '*', '*', '*'] [' ', 'test'] - indent: ' ' - word: 'test' [' ', 'test'] - word: 'test' verify processing of C and HTML comments AA:BB:CC:DD:EE:FF ['AA:BB:CC:DD:EE:FF'] AA.BB.CC.DD.EE.FF ['AA.BB.CC.DD.EE.FF'] AA-BB-CC-DD-EE-FF ['AA-BB-CC-DD-EE-FF'] # mixed delimiters AA.BB:CC:DD:EE:FF AA.BB:CC:DD:EE:FF ^ ParseException: Expected MAC address, found 'AA' (at char 0), (line:1, col:1) pyparsing.core.Regex - MAC address FAIL: Expected MAC address, found 'AA' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 0.0.0.0 ['0.0.0.0'] 1.1.1.1 ['1.1.1.1'] 127.0.0.1 ['127.0.0.1'] 1.10.100.199 ['1.10.100.199'] 255.255.255.255 ['255.255.255.255'] # out of range value 256.255.255.255 256.255.255.255 ^ ParseException: Expected IPv4 address, found '256' (at char 0), (line:1, col:1) pyparsing.core.Regex - IPv4 address FAIL: Expected IPv4 address, found '256' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 2001:0db8:85a3:0000:0000:8a2e:0370:7334 ['2001:0db8:85a3:0000:0000:8a2e:0370:7334'] 2134::1234:4567:2468:1236:2444:2106 ['2134::1234:4567:2468:1236:2444:2106'] 0:0:0:0:0:0:A00:1 ['0:0:0:0:0:0:A00:1'] 1080::8:800:200C:417A ['1080::8:800:200C:417A'] ::A00:1 ['::A00:1'] # loopback address ::1 ['::1'] # the null address :: ['::'] # ipv4 compatibility form ::ffff:192.168.0.1 ['::ffff:192.168.0.1'] # too few values 1080:0:0:0:8:800:200C 1080:0:0:0:8:800:200C ^ ParseException: Expected IPv6 address, found end of text (at char 21), (line:1, col:22) pyparsing.core.Combine - IPv6 address pyparsing.core.MatchFirst - IPv6 address pyparsing.core.And - full IPv6 address pyparsing.core.And - {':' hex_integer} pyparsing.core._SingleCharLiteral - ':' FAIL: Expected IPv6 address, found end of text (at char 21), (line:1, col:22) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4375, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4136, in parseImpl raise maxException File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4114, in parseImpl return e._parse( ^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 819, in _parseNoCache raise ParseException(instring, len_instring, self.errmsg, self) . # too many ::'s, only 1 allowed 2134::1234:4567::2444:2106 2134::1234:4567::2444:2106 ^ ParseException: Expected end of text, found ':' (at char 15), (line:1, col:16) pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd FAIL: Expected end of text, found ':' (at char 15), (line:1, col:16) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1135, in parse_string se._parse(instring, loc) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3534, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 100 [100] -100 [-100] +100 [100] 3.14159 [3.14159] 6.02e23 [6.02e+23] 1e-12 [1e-12] 1e12 [1000000000000.0] -1e12 [-1000000000000.0] 3.14159 [3.14159] 6.02e23 [6.02e+23] 100 [100.0] -100 [-100.0] +100 [100.0] 3.14159 [3.14159] 6.02e23 [6.02e+23] 1e-12 [1e-12] 1997 ['1997'] - day: None - month: None - year: '1997' 1997-07 ['1997-07'] - day: None - month: '07' - year: '1997' 1997-07-16 ['1997-07-16'] - day: '16' - month: '07' - year: '1997' 1997-07-16 [datetime.date(1997, 7, 16)] 1997-07-16T19:20+01:00 ['1997-07-16T19:20+01:00'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: None - tz: '+01:00' - year: '1997' 1997-07-16T19:20:30+01:00 ['1997-07-16T19:20:30+01:00'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30' - tz: '+01:00' - year: '1997' 1997-07-16T19:20:30.45Z ['1997-07-16T19:20:30.45Z'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30.45' - tz: 'Z' - year: '1997' 1997-07-16 19:20:30.45 ['1997-07-16 19:20:30.45'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30.45' - tz: None - year: '1997' 1997-07-16T19:20:30.45 [datetime.datetime(1997, 7, 16, 19, 20, 30, 450000)] 123e4567-e89b-12d3-a456-426655440000 ['123e4567-e89b-12d3-a456-426655440000'] 1/2 [0.5] -15/16 [-0.9375] -3/-4 [0.75] 1/2 [0.5] -15/16 [-0.9375] -3/-4 [0.75] 1 1/2 [1.5] 2 -15/16 [2.9375] 0 -3/-4 [-0.75] 12 [12] 100 [100] -3 [-3] 1.732 [1.732] -3.14159 [-3.14159] 6.02e23 [6.02e+23] http://foo.com/blah_blah ['http://foo.com/blah_blah'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah/ ['http://foo.com/blah_blah/'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah/' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah_(wikipedia) ['http://foo.com/blah_blah_(wikipedia)'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah_(wikipedia)' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah_(wikipedia)_(again) ['http://foo.com/blah_blah_(wikipedia)_(again)'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah_(wikipedia)_(again)' - port: None - query: None - scheme: 'http' http://www.example.com/wpstyle/?p=364 ['http://www.example.com/wpstyle/?p=364'] - auth: None - fragment: None - host: 'www.example.com' - path: '/wpstyle/' - port: None - query: 'p=364' - scheme: 'http' https://www.example.com/foo/?bar=baz&inga=42&quux ['https://www.example.com/foo/?bar=baz&inga=42&quux'] - auth: None - fragment: None - host: 'www.example.com' - path: '/foo/' - port: None - query: 'bar=baz&inga=42&quux' - scheme: 'https' http://✪df.ws/123 ['http://✪df.ws/123'] - auth: None - fragment: None - host: '✪df.ws' - path: '/123' - port: None - query: None - scheme: 'http' http://userid:password@example.com:8080 ['http://userid:password@example.com:8080'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: None - port: '8080' - query: None - scheme: 'http' http://userid:password@example.com:8080/ ['http://userid:password@example.com:8080/'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: '/' - port: '8080' - query: None - scheme: 'http' http://userid@example.com ['http://userid@example.com'] - auth: 'userid' - fragment: None - host: 'example.com' - path: None - port: None - query: None - scheme: 'http' http://userid@example.com/ ['http://userid@example.com/'] - auth: 'userid' - fragment: None - host: 'example.com' - path: '/' - port: None - query: None - scheme: 'http' http://userid@example.com:8080 ['http://userid@example.com:8080'] - auth: 'userid' - fragment: None - host: 'example.com' - path: None - port: '8080' - query: None - scheme: 'http' http://userid@example.com:8080/ ['http://userid@example.com:8080/'] - auth: 'userid' - fragment: None - host: 'example.com' - path: '/' - port: '8080' - query: None - scheme: 'http' http://userid:password@example.com ['http://userid:password@example.com'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: None - port: None - query: None - scheme: 'http' http://userid:password@example.com/ ['http://userid:password@example.com/'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: '/' - port: None - query: None - scheme: 'http' http://142.42.1.1/ ['http://142.42.1.1/'] - auth: None - fragment: None - host: '142.42.1.1' - path: '/' - port: None - query: None - scheme: 'http' http://142.42.1.1:8080/ ['http://142.42.1.1:8080/'] - auth: None - fragment: None - host: '142.42.1.1' - path: '/' - port: '8080' - query: None - scheme: 'http' http://➡.ws/䨹 ['http://➡.ws/䨹'] - auth: None - fragment: None - host: '➡.ws' - path: '/䨹' - port: None - query: None - scheme: 'http' http://⌘.ws ['http://⌘.ws'] - auth: None - fragment: None - host: '⌘.ws' - path: None - port: None - query: None - scheme: 'http' http://⌘.ws/ ['http://⌘.ws/'] - auth: None - fragment: None - host: '⌘.ws' - path: '/' - port: None - query: None - scheme: 'http' http://foo.com/blah_(wikipedia)#cite-1 ['http://foo.com/blah_(wikipedia)#cite-1'] - auth: None - fragment: 'cite-1' - host: 'foo.com' - path: '/blah_(wikipedia)' - port: None - query: None - scheme: 'http' http://foo.com/blah_(wikipedia)_blah#cite-1 ['http://foo.com/blah_(wikipedia)_blah#cite-1'] - auth: None - fragment: 'cite-1' - host: 'foo.com' - path: '/blah_(wikipedia)_blah' - port: None - query: None - scheme: 'http' http://foo.com/unicode_(✪)_in_parens ['http://foo.com/unicode_(✪)_in_parens'] - auth: None - fragment: None - host: 'foo.com' - path: '/unicode_(✪)_in_parens' - port: None - query: None - scheme: 'http' http://foo.com/(something)?after=parens ['http://foo.com/(something)?after=parens'] - auth: None - fragment: None - host: 'foo.com' - path: '/(something)' - port: None - query: 'after=parens' - scheme: 'http' http://☺.damowmow.com/ ['http://☺.damowmow.com/'] - auth: None - fragment: None - host: '☺.damowmow.com' - path: '/' - port: None - query: None - scheme: 'http' http://code.google.com/events/#&product=browser ['http://code.google.com/events/#&product=browser'] - auth: None - fragment: '&product=browser' - host: 'code.google.com' - path: '/events/' - port: None - query: None - scheme: 'http' http://j.mp ['http://j.mp'] - auth: None - fragment: None - host: 'j.mp' - path: None - port: None - query: None - scheme: 'http' ftp://foo.bar/baz ['ftp://foo.bar/baz'] - auth: None - fragment: None - host: 'foo.bar' - path: '/baz' - port: None - query: None - scheme: 'ftp' http://foo.bar/?q=Test%20URL-encoded%20stuff ['http://foo.bar/?q=Test%20URL-encoded%20stuff'] - auth: None - fragment: None - host: 'foo.bar' - path: '/' - port: None - query: 'q=Test%20URL-encoded%20stuff' - scheme: 'http' http://مثال.إختبار ['http://مثال.إختبار'] - auth: None - fragment: None - host: 'مثال.إختبار' - path: None - port: None - query: None - scheme: 'http' http:// http:// ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://. http://. ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://.. http://.. ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://../ http://../ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://? http://? ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://?? http://?? ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://??/ http://??/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://# http://# ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://## http://## ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://##/ http://##/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) # skip: http://foo.bar?q=Spaces should be encoded // // ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) //a //a ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ///a ///a ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) /// /// ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http:///a http:///a ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) foo.com foo.com ^ ParseException: Expected url, found 'foo' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'foo' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) rdar://1234 rdar://1234 ^ ParseException: Expected url, found 'rdar' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'rdar' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) h://test h://test ^ ParseException: Expected url, found 'h' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'h' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http:// shouldfail.com http:// shouldfail.com ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) :// should fail :// should fail ^ ParseException: Expected url, found ':' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found ':' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://foo.bar/foo(bar)baz quux http://foo.bar/foo(bar)baz quux ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ftps://foo.bar/ ftps://foo.bar/ ^ ParseException: Expected url, found 'ftps' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'ftps' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://-error-.invalid/ http://-error-.invalid/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) # skip: http://a.b--c.de/ http://-a.b.co http://-a.b.co ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://a.b-.co http://a.b-.co ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://0.0.0.0 http://0.0.0.0 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://10.1.1.0 http://10.1.1.0 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://10.1.1.255 http://10.1.1.255 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://224.1.1.1 http://224.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://1.1.1.1.1 http://1.1.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://123.123.123 http://123.123.123 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://3628126748 http://3628126748 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://.www.foo.bar/ http://.www.foo.bar/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) .................. # skip: http://www.foo.bar./ http://.www.foo.bar./ http://.www.foo.bar./ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://10.1.1.1 http://10.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ['https://bob:secret@www.example.com:8080/path/to/resource?filter=int#book-mark'] - auth: 'bob:secret' - fragment: 'book-mark' - host: 'www.example.com' - path: '/path/to/resource' - port: '8080' - query: 'filter=int' - scheme: 'https' Raised expected exception: ParseException: time data '1997-07-error' does not match format '%Y-%m-%d', found '1997' (at char 0), (line:1, col:1) Raised expected exception: ParseException: time data '1997-07-error' does not match format '%Y-%m-%dT%H:%M:%S.%f', found '1997' (at char 0), (line:1, col:1) 2 5 7 6 0 1 2 3 4 5 0 3 5 4 3 [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] 2 5 7 6 0 1 2 3 4 5 0 3 5 4 3 [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] B 5 7 F 0 1 2 3 4 5 _ C 5 4 3 [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] 5 string input item1 item2 item3 item4 item5 0 int user 2 int file 3 8 [['item1', 'item2', 'item3', 'item4', 'item5'], [], ['3', '8']] [0]: ['item1', 'item2', 'item3', 'item4', 'item5'] - count: 5 - items: ['item1', 'item2', 'item3', 'item4', 'item5'] - source: 'input' - type: 'string' [1]: [] - count: 0 - items: [] - source: 'user' - type: 'int' [2]: ['3', '8'] - count: 2 - items: ['3', '8'] - source: 'file' - type: 'int' type = '' source = '' ['True', 'True', 'False'] - items: ['True', 'True', 'False'] - type: 'bool' verify non-fatal usage of Literal("") Raised expected exception: ValueError: null string passed to Literal; use Empty() instead sdlfjs :sdf\:jls::djf: sl:kfsjf sdlfjs -sdf\:jls::--djf: sl-kfsjf sdlfjs -sdf\:::jls::--djf: sl:::-kfsjf sdlfjs ^sdf\:jls^^--djf^ sl-kfsjf sdlfjs ^^^==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf^^^ colonQuotes :(?:(?:::)|(?:\\.)|(?:[^:\n\r\\]))*: [['sdf:jls:djf'], ['jls:--djf'], [':jls:--djf'], [''], ['j=lz:--djf'], ['j=ls:--djf']] sdf:jls:djf sdf:jls:djf dashQuotes \-(?:(?:\-\-)|(?:\\.)|(?:[^\-\n\r\\]))*\- [['sdf:jls::-djf: sl'], ['sdf:::jls::-djf: sl:::'], [''], [''], ['']] sdf:jls::-djf: sl sdf:jls::-djf: sl hatQuotes \^(?:(?:\\.)|(?:[^\^\n\r\\]))*\^ [['sdf:jls'], ['--djf'], [''], ['==sdf:j=lz::--djf: sl='], ['']] sdf:jls sdf:jls hatQuotes1 \^(?:(?:\^\^)|(?:\\.)|(?:[^\^\n\r\\]))*\^ [['sdf:jls^--djf'], ['^==sdf:j=lz::--djf: sl='], ['']] sdf:jls^--djf sdf:jls^--djf dblEqQuotes ==(?:(?:\\.)|(?:(?:=(?!=)))|(?:[^=\n\r\\]))*== [['sdf:j=ls::--djf: sl']] sdf:j=ls::--djf: sl sdf:j=ls::--djf: sl ::: quotes :::(?:(?:(?:::(?!:))|(?::(?!::)))|(?:[^:\n\r]))*::: [['jls::--djf: sl']] jls::--djf: sl jls::--djf: sl ==-- quotes ==(?:(?:(?:\-(?!\-)))|(?:[^\-\n\r]))*\-\- [['sdf\\:j=lz::'], ['sdf\\:j=ls::']] sdf\:j=lz:: sdf\:j=lz:: ^^^ multiline quotes \^\^\^(?:(?:(?:\^\^(?!\^))|(?:\^(?!\^\^)))|(?:[^\^]))*\^\^\^ [['==sdf\\:j=lz::--djf: sl=^^=kfsjf\n sdlfjs ==sdf\\:j=ls::--djf: sl==kfsjf']] ==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf ==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf Raised expected exception: ValueError: quote_char cannot be the empty string \.\[(?:(?:(?:\](?!\.)))|(?:[^\]\n\r]))*\]\. ['...'] [''] [']'] [']]'] \+\*(?:(?:(?:\*(?!\+)))|(?:[^*\n\r]))*\*\+ ['...'] [''] ['*'] ['**'] \*/(?:(?:(?:/(?!\*)))|(?:[^/\n\r]))*/\* ['...'] [''] ['/'] ['//'] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately followed by keyword character, found '1000' (at char 5), (line:1, col:6) Raised expected exception: ParseException: Expected CaselessKeyword 'START', was immediately followed by keyword character, found '1000' (at char 5), (line:1, col:6) Raised expected exception: ValueError: min must be greater than 0 Raised expected exception: ValueError: max must be greater than, or equal to min Raised expected exception: ParseException: Expected ',', found end of text (at char 12), (line:1, col:13) 'ABC' [, 'ABC']... ['ABC', 'ABC'] 'ABC' [, 'ABC']... ['ABC', 'ABC', 'ABC'] {'True' | 'true' | 'False' | 'false'} [, {'True' | 'true' | 'False' | 'false'}]... bool bool bool bool bool [, bool]... 'ABC' [, 'ABC']... ['ABC', 'ABC', 'ABC'] ['bar', 'foo'] - one: 'foo' - two: 'bar' options(100) step(A) options(100) step(A) ^ ParseSyntaxException: Expected integer, found 'A' (at char 18), (line:1, col:19) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected integer, found 'A' (at char 18), (line:1, col:19) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal . step(A) options(100) step(A) options(100) ^ ParseSyntaxException: Expected integer, found 'A' (at char 5), (line:1, col:6) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected integer, found 'A' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal options(100) step(100A) options(100) step(100A) ^ ParseSyntaxException: Expected 'Z', found 'A' (at char 21), (line:1, col:22) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected 'Z', found 'A' (at char 21), (line:1, col:22) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal options(100) step(22) step(100ZA) options(100) step(22) step(100ZA) ^ ParseSyntaxException: Expected ')', found 'A' (at char 31), (line:1, col:32) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected ')', found 'A' (at char 31), (line:1, col:32) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {{word}... num} pyparsing.core.OneOrMore - {word}... pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4790, in parseImpl loc, tokens = self_expr_parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 dd 123 ^ ParseException: Expected word, found '123' (at char 3), (line:1, col:4) pyparsing.core.And - {word word [word]... num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {word word [word]... num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 aa bb cc dd 123 ^ ParseException: Expected num, found 'dd' (at char 9), (line:1, col:10) pyparsing.core.And - {[word [word [word]]] num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'dd' (at char 9), (line:1, col:10) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) cc dd 123 ['cc', 'dd', '123'] aa bb cc dd 123 aa bb cc dd 123 ^ ParseException: Expected num, found 'cc' (at char 6), (line:1, col:7) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'cc' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) .... bb cc dd 123 bb cc dd 123 ^ ParseException: Expected num, found 'dd' (at char 6), (line:1, col:7) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'dd' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) dd 123 dd 123 ^ ParseException: Expected word, found '123' (at char 3), (line:1, col:4) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) a 1 ['a', 1] - label: 'a' - values: [1] b 1 2 3 ['b', 1, 2, 3] - label: 'b' - values: [1, 2, 3] c ['c'] - label: 'c' - values: [] a 1 ['a', 1] - label: 'a' - values: [1] b 1 2 3 ['b', 1, 2, 3] - label: 'b' - values: [1, 2, 3] c ['c'] - label: 'c' - values: [] a 1,1 ['a', [1, 1]] - label: 'a' - points: [[1, 1]] [0]: [1, 1] - x: 1 - y: 1 [0]: a [1]: [1, 1] - x: 1 - y: 1 b 1,1 2,2 3,3 ['b', [1, 1], [2, 2], [3, 3]] - label: 'b' - points: [[1, 1], [2, 2], [3, 3]] [0]: [1, 1] - x: 1 - y: 1 [1]: [2, 2] - x: 2 - y: 2 [2]: [3, 3] - x: 3 - y: 3 [0]: b [1]: [1, 1] - x: 1 - y: 1 [2]: [2, 2] - x: 2 - y: 2 [3]: [3, 3] - x: 3 - y: 3 c ['c'] - label: 'c' - points: [] [['a', '10'], ['b', '20']] - a: '10' - b: '20' [0]: ['a', '10'] [1]: ['b', '20'] ^ ParseException: Expected W:(A-Za-z) (at char 0), (line:1, col:1) pyparsing.core.Dict - Dict:({Group:({W:(A-Za-z) Suppress:('=') W:(0-9)})}...) pyparsing.core.OneOrMore - {Group:({W:(A-Za-z) Suppress:('=') W:(0-9)})}... pyparsing.core.Group - Group:({W:(A-Za-z) Suppress:('=') W:(0-9)}) pyparsing.core.And - {W:(A-Za-z) Suppress:('=') W:(0-9)} pyparsing.core._WordRegex - W:(A-Za-z) testing empty And testing empty Or testing empty MatchFirst testing empty Each ..........Match [{integer | W:(0-9A-Za-z)}]... at loc 0(1,1) 123 A100 ^ Match integer at loc 0(1,1) 123 A100 ^ Matched integer -> [123] Match integer at loc 4(1,5) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found 'A100' (at char 4), (line:1, col:5) Match W:(0-9A-Za-z) at loc 4(1,5) 123 A100 ^ Matched W:(0-9A-Za-z) -> ['A100'] Match integer at loc 8(1,9) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 8), (line:1, col:9) Match W:(0-9A-Za-z) at loc 8(1,9) 123 A100 ^ Match W:(0-9A-Za-z) failed, ParseException raised: Expected W:(0-9A-Za-z), found end of text (at char 8), (line:1, col:9) Matched [{integer | W:(0-9A-Za-z)}]... -> [123, 'A100'] Match integer at loc 0(1,1) 123 A100 ^ Matched integer -> [123] Match integer at loc 4(1,5) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found 'A100' (at char 4), (line:1, col:5) Match W:(0-9A-Za-z) at loc 4(1,5) 123 A100 ^ Matched W:(0-9A-Za-z) -> ['A100'] Match integer at loc 8(1,9) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 8), (line:1, col:9) Match W:(0-9A-Za-z) at loc 8(1,9) 123 A100 ^ Match W:(0-9A-Za-z) failed, ParseException raised: Expected W:(0-9A-Za-z), found end of text (at char 8), (line:1, col:9) Match integer at loc 0(1,1) 1 2 3 ^ Matched integer -> ['1'] Match integer at loc 2(1,3) 1 2 3 ^ Matched integer -> ['2'] Match integer at loc 4(1,5) 1 2 3 ^ Matched integer -> ['3'] Match integer at loc 5(1,6) 1 2 3 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 5), (line:1, col:6) Packrat status: enabled Match Z at loc 0(1,1) aba ^ Match Z failed, ParseException raised: Expected Z, found 'aba' (at char 0), (line:1, col:1) Match leading_a at loc 0(1,1) aba ^ Match A at loc 0(1,1) aba ^ Matched A -> ['a'] Match Z at loc 1(1,2) aba ^ Match Z failed, ParseException raised: Expected Z, found 'ba' (at char 1), (line:1, col:2) Match A at loc 1(1,2) aba ^ Match A failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) Match B at loc 1(1,2) aba ^ Matched B -> ['b'] Matched leading_a -> ['a'] *Match Z at loc 1(1,2) aba ^ *Match Z failed, ParseException raised: Expected Z, found 'ba' (at char 1), (line:1, col:2) Match leading_a at loc 1(1,2) aba ^ Match A at loc 1(1,2) aba ^ Match A failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) Match leading_a failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) *Match B at loc 1(1,2) aba ^ *Matched B -> ['b'] Match Z at loc 2(1,3) aba ^ Match Z failed, ParseException raised: Expected Z, found 'a' (at char 2), (line:1, col:3) Match leading_a at loc 2(1,3) aba ^ Match A at loc 2(1,3) aba ^ Matched A -> ['a'] Match Z at loc 3(1,4) aba ^ Match Z failed, ParseException raised: Expected Z, found end of text (at char 3), (line:1, col:4) Match A at loc 3(1,4) aba ^ Match A failed, ParseException raised: Expected A, found end of text (at char 3), (line:1, col:4) Match B at loc 3(1,4) aba ^ Match B failed, ParseException raised: Expected B, found end of text (at char 3), (line:1, col:4) Match leading_a failed, ParseException raised: Expected {Z | A | B}, found end of text (at char 3), (line:1, col:4) Match B at loc 2(1,3) aba ^ Match B failed, ParseException raised: Expected B, found 'a' (at char 2), (line:1, col:3) {'enable_debug_on_named_expressions': False, 'warn_multiple_tokens_in_named_alternation': False, 'warn_name_set_on_empty_Forward': False, 'warn_on_assignment_to_Forward': False, 'warn_on_match_first_with_lshift_operator': False, 'warn_on_multiple_string_args_to_oneof': False, 'warn_on_parse_using_empty_Forward': False, 'warn_ungrouped_named_tokens_in_collection': False} {'enable_debug_on_named_expressions': False, 'warn_multiple_tokens_in_named_alternation': True, 'warn_name_set_on_empty_Forward': True, 'warn_on_assignment_to_Forward': True, 'warn_on_match_first_with_lshift_operator': True, 'warn_on_multiple_string_args_to_oneof': True, 'warn_on_parse_using_empty_Forward': True, 'warn_ungrouped_named_tokens_in_collection': True} TypeError: descriptor 'upper' for 'str' objects doesn't apply to a 'int' object tests.test_unit.Test08_WithUnboundedPackrat pyparsing.core._WordRegex - integer tests.test_unit.Modifier pyparsing.results.ParseResults 123 355 ^ ParseException: Expected word, found '355' (at char 4), (line:1, col:5) 123 355 (test using ErrorStop) ^ ParseSyntaxException: Expected word, found '355' (at char 4), (line:1, col:5) tests.test_unit.Test08_WithUnboundedPackrat pyparsing.core.And - {int - word} A ^ ParseException: Expected int, found 'A' (at char 0), (line:1, col:1) tests.test_unit.Test08_WithUnboundedPackrat pyparsing.core.And - {int int} divide_args pyparsing.core._WordRegex - int test does local memoization enable/disable during test [' this_semi_does_nothing()', ''], [' neither_does_this_but_there_are_spaces_afterward()', ''], [' a = "a;b"', 'return a # this is a comment; it has a semicolon!'], [' z=1000', 'b("; in quotes")', 'c=200', 'return z'], [" return ';'"], [" '''a docstring; with a semicolon'''"], [' a = 10', 'b = 11', 'c = 12'], [' # this comment; has several; semicolons'], [' x = 12', 'return x # so; does; this; one'], [' x = 15', '', '', 'y += x', 'return y'], [' this_semi_does_nothing()', ';', ''], [' neither_does_this_but_there_are_spaces_afterward()', ';', ''], [' a = "a;b"', ';', 'return a # this is a comment; it has a semicolon!'], [' z=1000', ';', 'b("; in quotes")', ';', 'c=200', ';', 'return z'], [" return ';'"], [" '''a docstring; with a semicolon'''"], [' a = 10', ';', 'b = 11', ';', 'c = 12'], [' # this comment; has several; semicolons'], [' x = 12', ';', 'return x # so; does; this; one'], [' x = 15', ';', '', ';', '', ';', 'y += x', ';', 'return y'], [''], [' def main():'], [' this_semi_does_nothing()', ''], [' neither_does_this_but_there_are_spaces_afterward()', ''], [' a = "a;b"', 'return a # this is a comment; it has a semicolon!'], [''], [' def b():'], [' if False:'], [' z=1000', 'b("; in quotes"); c=200;return z'], [" return ';'"], [''], [' class Foo(object):'], [' def bar(self):'], [" '''a docstring; with a semicolon'''"], [' a = 10', 'b = 11; c = 12'], [''], [' # this comment; has several; semicolons'], [' if self.spam:'], [' x = 12', 'return x # so; does; this; one'], [' x = 15', ';; y += x; return y'], [''], [' def baz(self):'], [' return self.bar'], [' '], W:(0-9) W:(0-9){3} W:(0-9){2,...} W:(0-9){1,3} W:(0-9){2,3} (0-9) ['balloon'] - item: 'balloon' - qty: 99 verify behavior of getName() ['XXX', ['b'], ['bb'], ['a'], ['bbb'], ['bbbb'], ['aa'], ['bbbbb'], [':', 'c'], ['bbbbbb'], ['aaa']] [0]: XXX [1]: ['b'] - B: 'b' [2]: ['bb'] - B: 'bb' [3]: ['a'] - A: 'a' [4]: ['bbb'] - B: 'bbb' [5]: ['bbbb'] - B: 'bbbb' [6]: ['aa'] - A: 'aa' [7]: ['bbbbb'] - B: 'bbbbb' [8]: [':', 'c'] - C: 'c' [9]: ['bbbbbb'] - B: 'bbbbbb' [10]: ['aaa'] - A: 'aaa' XXX 'XXX' ['b'] ParseResults(['b'], {'B': 'b'}) ['bb'] ParseResults(['bb'], {'B': 'bb'}) ['a'] ParseResults(['a'], {'A': 'a'}) ['bbb'] ParseResults(['bbb'], {'B': 'bbb'}) ['bbbb'] ParseResults(['bbbb'], {'B': 'bbbb'}) ['aa'] ParseResults(['aa'], {'A': 'aa'}) ['bbbbb'] ParseResults(['bbbbb'], {'B': 'bbbbb'}) [':', 'c'] ParseResults([':', 'c'], {'C': 'c'}) ['bbbbbb'] ............ParseResults(['bbbbbb'], {'B': 'bbbbbb'}) ['aaa'] ParseResults(['aaa'], {'A': 'aaa'}) XXX b bb a bbb bbbb aa bbbbb :c bbbbbb aaa [None, 'B', 'B', 'A', 'B', 'B', 'A', 'B', None, 'B', 'A'] ['lsjd'] non-key ['sldkjf'] non-key ['IF'] non-key ['Saslkj'] non-key ['AND'] non-key ['lsdjf'] non-key verify behavior of ParseResults.get() ['b', 'bb', 'a', 'bbb', 'bbbb', 'aa', 'bbbbb', ':', 'c', 'bbbbbb', 'aaa'] - A: 'aaa' - B: 'bbbbbb' - C: 'c' aaa !D ['11.11.13', 'useless . useless,21 useless 2 | ', 14.21, ' | asmdakldm'] ['21.12.12', 'fmpaosmfpoamsp 4 | ', 41, ' | ajfa9si90'] Raised expected exception: ParseException: Expected number, found 'useless' (at char 32), (line:1, col:33) Raised expected exception: ParseException: Expected number, found 'fmpaosmfpoamsp' (at char 32), (line:1, col:33) [["'string1'", "'string2'"]] [['string1', 'strin""g2']] [['"string1"', '"strin""g2"'], ["'string1'", "'string2'"]] [['string1', 'strin"g2']] [['string1', 'string2']] [['string1', 'string2']] [['string1', 'string2']] ["'ms1'", '1', '0', "'2009-12-22'", "'2009-12-22 10:41:22'"] This & that 2 > 1 0 < 1 Don't get excited! I said "Don't get excited!" Copyright © 2021 Dot ⟶ ˙ ['I', 'totally', 'love', 'pickles'] a = 100 b = 101 c = c1 = 200 c2 = c21 = 999 c3 = 'A horse, a horse, my kingdom for a horse' d = 505 [['a', 100], ['b', 101], ['c', ['c1', 200], ['c2', ['c21', 999]]], ['c3', 'A horse, a horse, my kingdom for a horse'], ['d', 505]] - a: 100 - b: 101 - c: [['c1', 200], ['c2', ['c21', 999]]] - c1: 200 - c2: [['c21', 999]] - c21: 999 [0]: ['c21', 999] [0]: ['c1', 200] [1]: ['c2', ['c21', 999]] - c21: 999 [0]: c2 [1]: ['c21', 999] - c3: 'A horse, a horse, my kingdom for a horse' - d: 505 [0]: ['a', 100] [1]: ['b', 101] [2]: ['c', ['c1', 200], ['c2', ['c21', 999]]] - c1: 200 - c2: [['c21', 999]] - c21: 999 [0]: ['c21', 999] [0]: c [1]: ['c1', 200] [2]: ['c2', ['c21', 999]] - c21: 999 [0]: c2 [1]: ['c21', 999] [3]: ['c3', 'A horse, a horse, my kingdom for a horse'] [4]: ['d', 505] [['A', [100, 101, 102]], ['B', [200, 201]], ['C', [300]]] [['A', [100, 101, 102]], ['B', [200, 201]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [200, 201]] [0]: B [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] 1 2 12345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] 1 2 12345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] 1 2 3 123456789012345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] using searchString [[['A', [100, 101, 102]]], [['B', [['b', [200, 201]]]]], [['C', [300]]]] [['A', [100, 101, 102]], ['B', [['b', [200, 201]]]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [['b', [200, 201]]]] [0]: B [1]: [['b', [200, 201]]] [0]: ['b', [200, 201]] [0]: b [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] using parseString [['A', [100, 101, 102]], ['B', [['b', [200, 201]]]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [['b', [200, 201]]]] [0]: B [1]: [['b', [200, 201]]] [0]: ['b', [200, 201]] [0]: b [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] test good indentation 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.1.2| 5: 2.| [['1.', ['1.1', ['1.1.1', '1.1.2']], '2.']] test bad indentation 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.2| 5: 2.| Raised expected exception: ParseException: Expected end of text, found '1' (at char 78), (line:4, col:18) 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.2| 5: 2.| Raised expected exception: ParseException: Expected end of text, found '1' (at char 76), (line:4, col:16) [['def', 'A', ['(', 'z', ')'], ':', [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']]], 'B', ['def', 'BB', ['(', 'a', 'b', 'c', ')'], ':', [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]]], 'C', 'D', ['def', 'spam', ['(', 'x', 'y', ')'], ':', [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]]]] [0]: ['def', 'A', ['(', 'z', ')'], ':', [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']]] [0]: def [1]: A [2]: ['(', 'z', ')'] [3]: : [4]: [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']] [0]: ['A1'] [1]: [['B', '=', '100']] [0]: ['B', '=', '100'] [2]: [['G', '=', 'A2']] [0]: ['G', '=', 'A2'] [3]: ['A2'] [4]: ['A3'] [1]: B [2]: ['def', 'BB', ['(', 'a', 'b', 'c', ')'], ':', [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]]] [0]: def [1]: BB [2]: ['(', 'a', 'b', 'c', ')'] [3]: : [4]: [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]] [0]: ['BB1'] [1]: [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]] [0]: ['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]] [0]: def [1]: BBA [2]: ['(', ')'] [3]: : [4]: [['bba1'], ['bba2'], ['bba3']] [0]: ['bba1'] [1]: ['bba2'] [2]: ['bba3'] [3]: C [4]: D [5]: ['def', 'spam', ['(', 'x', 'y', ')'], ':', [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]]] [0]: def [1]: spam [2]: ['(', 'x', 'y', ')'] [3]: : [4]: [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]] [0]: [['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]] [0]: ['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]] [0]: def [1]: eggs [2]: ['(', 'z', ')'] [3]: : [4]: [['pass']] [0]: ['pass'] Parsing 'one0'... Parsing 'four0'... Parsing 'one1'... Parsing 'four1'... ... extra: [test] one0: two (three) four0: five (seven) extra: [test] one1: two (three) four1: five (seven) ['extra', [['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]]], 'extra', [['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]]]] [0]: extra [1]: [['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]]] [0]: ['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]] [0]: test [1]: [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]] [0]: ['one0', [['two', 'three']]] [0]: one0 [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four0', [['five', 'seven']]] [0]: four0 [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: extra [3]: [['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]]] [0]: ['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]] [0]: test [1]: [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]] [0]: ['one1', [['two', 'three']]] [0]: one1 [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four1', [['five', 'seven']]] [0]: four1 [1]: [['five', 'seven']] [0]: ['five', 'seven'] Parsing 'one'... Parsing 'four'... Parsing 'one'... Parsing 'four'... Parsing 'one'... Parsing 'four'... Parsing 'eight'... Parsing 'eleven'... Parsing 'fourteen'... Parsing 'seventeen'... extra: [test] one: two (three) four: five (seven) extra: [test] one: two (three) four: five (seven) [test] one: two (three) four: five (seven) [test] eight: nine (ten) eleven: twelve (thirteen) fourteen: fifteen (sixteen) seventeen: eighteen (nineteen) ['extra', [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]]], 'extra', [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]]]] [0]: extra [1]: [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]]] [0]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: extra [3]: [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]]] [0]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [1]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]] [0]: test [1]: [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]] [0]: ['eight', [['nine', 'ten']]] [0]: eight [1]: [['nine', 'ten']] [0]: ['nine', 'ten'] [1]: ['eleven', [['twelve', 'thirteen']]] [0]: eleven [1]: [['twelve', 'thirteen']] [0]: ['twelve', 'thirteen'] [2]: ['fourteen', [['fifteen', 'sixteen']]] [0]: fourteen [1]: [['fifteen', 'sixteen']] [0]: ['fifteen', 'sixteen'] [3]: ['seventeen', [['eighteen', 'nineteen']]] [0]: seventeen [1]: [['eighteen', 'nineteen']] [0]: ['eighteen', 'nineteen'] [[9, '+', 2, '+', 3]] [0]: [9, '+', 2, '+', 3] [[9, '+', [2, '*', 3]]] [0]: [9, '+', [2, '*', 3]] [0]: 9 [1]: + [2]: [2, '*', 3] [[[9, '+', 2], '*', 3]] [0]: [[9, '+', 2], '*', 3] [0]: [9, '+', 2] [1]: * [2]: 3 [[[9, '+', ['-', 2]], '*', 3]] [0]: [[9, '+', ['-', 2]], '*', 3] [0]: [9, '+', ['-', 2]] [0]: 9 [1]: + [2]: ['-', 2] [1]: * [2]: 3 [[[9, '+', ['-', ['-', 2]]], '*', 3]] [0]: [[9, '+', ['-', ['-', 2]]], '*', 3] [0]: [9, '+', ['-', ['-', 2]]] [0]: 9 [1]: + [2]: ['-', ['-', 2]] [0]: - [1]: ['-', 2] [1]: * [2]: 3 [[[9, '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]]] [0]: [[9, '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]] [0]: [9, '+', ['-', 2]] [0]: 9 [1]: + [2]: ['-', 2] [1]: * [2]: [3, '^', [2, '^', 2]] [0]: 3 [1]: ^ [2]: [2, '^', 2] [[[[9, '!'], '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]]] [0]: [[[9, '!'], '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]] [0]: [[9, '!'], '+', ['-', 2]] [0]: [9, '!'] [1]: + [2]: ['-', 2] [1]: * [2]: [3, '^', [2, '^', 2]] [0]: 3 [1]: ^ [2]: [2, '^', 2] [[['M', '*', 'X'], '+', 'B']] [0]: [['M', '*', 'X'], '+', 'B'] [0]: ['M', '*', 'X'] [1]: + [2]: B [['M', '*', ['X', '+', 'B']]] [0]: ['M', '*', ['X', '+', 'B']] [0]: M [1]: * [2]: ['X', '+', 'B'] [[1, '+', [2, '*', ['-', [3, '^', 4]], '*', 5], '+', ['-', ['+', ['-', 6]]]]] [0]: [1, '+', [2, '*', ['-', [3, '^', 4]], '*', 5], '+', ['-', ['+', ['-', 6]]]] [0]: 1 [1]: + [2]: [2, '*', ['-', [3, '^', 4]], '*', 5] [0]: 2 [1]: * [2]: ['-', [3, '^', 4]] [0]: - [1]: [3, '^', 4] [3]: * [4]: 5 [3]: + [4]: ['-', ['+', ['-', 6]]] [0]: - [1]: ['+', ['-', 6]] [0]: + [1]: ['-', 6] [[3, '!', '!']] [0]: [3, '!', '!'] p = True q = False r = True p and not q (p & ~q) = True not not p ~~p = True not(p and q) ~(p & q) = True q or not p and r (q | (~p & r)) = False q or not p or not r (q | ~p | ~r) = False q or not (p and r) (q | ~(p & r)) = False p or q or r (p | q | r) = True p or q or r and False (p | q | (r & False)) = True (p or q or r) and False ((p | q | r) & False) = False Raised expected exception: ValueError: if numterms=3, opExpr must be a tuple or list of two expressions ............Raised expected exception: ValueError: if numterms=3, opExpr must be a tuple or list of two expressions Raised expected exception: ValueError: operator must be unary (1), binary (2), or ternary (3) Raised expected exception: ValueError: operator must be unary (1), binary (2), or ternary (3) Raised expected exception: ValueError: operator must indicate right or left associativity evaluate_int 9 '9' => [9] (count=1) [[[3, '+', 2], '?', 12, ':', 13]] [0]: [[3, '+', 2], '?', 12, ':', 13] [0]: [3, '+', 2] [1]: ? [2]: 12 [3]: : [4]: 13 [[[3, '+', 2], '?', 12, ':', 13]] [0]: [[3, '+', 2], '?', 12, ':', 13] [0]: [3, '+', 2] [1]: ? [2]: 12 [3]: : [4]: 13 [[3, '+', [2, '+', 11]]] [0]: [3, '+', [2, '+', 11]] [0]: 3 [1]: + [2]: [2, '+', 11] [[3, '+', [2, '+', 11]]] [0]: [3, '+', [2, '+', 11]] [0]: 3 [1]: + [2]: [2, '+', 11] [[3, '+', ['<', [2, '+', 11], '>']]] [0]: [3, '+', ['<', [2, '+', 11], '>']] [0]: 3 [1]: + [2]: ['<', [2, '+', 11], '>'] [0]: < [1]: [2, '+', 11] [2]: > [[3, '+', ['<<', [2, '+', 11], '>>']]] [0]: [3, '+', ['<<', [2, '+', 11], '>>']] [0]: 3 [1]: + [2]: ['<<', [2, '+', 11], '>>'] [0]: << [1]: [2, '+', 11] [2]: >> [[[3, 'x'], '+', 2]] [0]: [[3, 'x'], '+', 2] [0]: [3, 'x'] [1]: + [2]: 2 [[[3, 'x'], '+', 2]] [0]: [[3, 'x'], '+', 2] [0]: [3, 'x'] [1]: + [2]: 2 bar = foo [['bar', '=', 'foo']] bar = foo & baz = fee ['&', [['bar', '=', 'foo'], ['baz', '=', 'fee']]] ['SELECT', 'color', 'FROM', 'colors'] ['SELECT', 'color', 'FROM', 'colors'] ['1999', '/', '12', '/', '31'] - day: '31' - month: '12' - year: '1999' ['1999', '12', '31'] - day: '31' - month: '12' - year: '1999' Raised expected exception: ValueError: no such diagnostic 'xyzzy' ['testA', 'testB', 'testC'] =? ['testA', 'testB', 'testC'] ['testC'] =? ['testC'] 'testB\ntestC\n' =? 'testB\ntestC\n' ['testD', 'testE', 'testF'] =? ['testD', 'testE', 'testF'] ['testF'] =? ['testF'] 'testE\ntestF' =? 'testE\ntestF' ['a'] =? ['a'] ['a'] =? ['a'] '' =? '' 0 'aaa' 1 '\naaa' Raised expected exception: ParseException: Expected Re:('a+'), found '\' (at char 0), (line:1, col:1) 2 'a\naa' Raised expected exception: ParseException: Expected end of text, found '\' (at char 1), (line:1, col:2) 3 'aaa\n' Raised expected exception: ParseException: Expected end of text, found '\' (at char 3), (line:1, col:4) verify correct line() behavior when first line is empty string {W:(A) - LineStart W:(B)} AAA BBB ['AAA', 'BBB'] AAA BBB ['AAA', 'BBB'] AAA BBB BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) no \n in default whitespace chars {W:(A) - LineStart W:(B)} AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 3), (line:1, col:4) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 6), (line:1, col:7) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) ...... AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 6), (line:1, col:7) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} AAA BBB ['AAA', 'BBB'] AAA BBB ['AAA', 'BBB'] AAA BBB BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) pyparsing.core.And - {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} FAIL: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA BBB ^ ParseSyntaxException: Expected end of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} FAIL: Expected end of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) 1 1234567890 1:AAA 1| 2:AAA 2| 3:| 4: AAA| 5:| 6:B AAA| 7:| normal parsing 0 3 1 AAA 1 ParseResults(['AAA'], {}) 6 9 2 AAA 2 ParseResults(['AAA'], {}) 12 18 3 ParseResults(['AAA'], {}) parsing without \n in whitespace chars 0 3 1 AAA 1 'A' 6 9 2 AAA 2 'A' 13 18 4 AAA ' ' 1 1234567890 1:| 2:a| 3: b| 4: c| 5:d| 6:e| 7: f| 8: g| [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [[['a']], [['b']], [['c']], [['d']], [['e']], [['f']], [['g']]] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] Literal Expected 'xyz', found end of text (at char 1), (line:1, col:2) CaselessLiteral Expected 'XYZ', found end of text (at char 1), (line:1, col:2) Keyword Expected Keyword 'xyz', found end of text (at char 1), (line:1, col:2) CaselessKeyword Expected CaselessKeyword 'xyz', found end of text (at char 1), (line:1, col:2) Word Expected W:(xyz), found end of text (at char 1), (line:1, col:2) Regex Expected Re:('xyz'), found end of text (at char 1), (line:1, col:2) 1 start 2 {integer 'start' integer} [1, 'start', 2] {integer 'start' integer} [1, 'start', 2] {integer 'START' integer} [1, 'START', 2] {integer word integer} [1, 'start', 2] 3 start4 {integer 'start' integer} [3, 'start', 4] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately followed by keyword character, found '4' (at char 7), (line:1, col:8) Raised expected exception: ParseException: Expected CaselessKeyword 'START', was immediately followed by keyword character, found '4' (at char 7), (line:1, col:8) Raised expected exception: ParseException: Expected word, found 'start4' (at char 2), (line:1, col:3) 5start 6 [5, 'start', 6] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately preceded by keyword character, found '5start' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected CaselessKeyword 'START', keyword was immediately preceded by keyword character, found '5start' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected word, found 'start' (at char 1), (line:1, col:2) [28, 'ID', 'PARI12345678', 43] - id: 'PARI12345678' - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 .............................[[28, ['ID', 'PARI12345678'], 43]] - loc: [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 [0]: [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 [0, ['ljsdf'], 5] ['ljsdf'] [8, ['lksdjjf'], 15] ['lksdjjf'] [18, ['lkkjj'], 23] ['lkkjj'] ['body', False, 'Hello', ''] - contents: 'Hello' - empty: False - endBody: '' - startBody: ['body', False] - empty: False - tag: 'body' - tag: 'body' DOB >!<100-10-2010;more garbage verify MatchFirst iterates properly ['A', 'A', '3', 'A'] Raised expected exception: ParseException: matched token not at column 1, found '3' (at char 4), (line:1, col:5) ABC ^ ParseException: Expected W:(0-9), found 'ABC' (at char 0), (line:1, col:1) tests.test_unit.Test08_WithUnboundedPackrat pyparsing.core._WordRegex - W:(0-9) ['A'] - Achar: 'A' Raised expected exception: ValueError: cannot multiply ParserElement by negative value {'username': 'goat', 'errors': {'username': ['already taken', 'too short']}, 'empty_field': ''} Test defaults: [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Non-default opener [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Non-default closer [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Literal expressions for opener and closer [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Use ignore expression (1) [['let', [['greeting', '"Hello,', 'world!"']], ';;(foo bar', ['display', 'greeting']]] [0]: ['let', [['greeting', '"Hello,', 'world!"']], ';;(foo bar', ['display', 'greeting']] [0]: let [1]: [['greeting', '"Hello,', 'world!"']] [0]: ['greeting', '"Hello,', 'world!"'] [2]: ;;(foo bar [3]: ['display', 'greeting'] Use ignore expression (2) [['let', [['greeting', '"Hello, )world!"']], ';;', '(foo bar', ['display', 'greeting']]] [0]: ['let', [['greeting', '"Hello, )world!"']], ';;', '(foo bar', ['display', 'greeting']] [0]: let [1]: [['greeting', '"Hello, )world!"']] [0]: ['greeting', '"Hello, )world!"'] [2]: ;; [3]: (foo bar [4]: ['display', 'greeting'] Raised expected exception: ValueError: opening and closing strings cannot be the same Raised expected exception: ValueError: opening and closing arguments must be strings if no content expression is given ['aName', ['outer', ["'inner with opener {{ and closer }} in quoted string'"]]] [0]: aName [1]: ['outer', ["'inner with opener {{ and closer }} in quoted string'"]] [0]: outer [1]: ["'inner with opener {{ and closer }} in quoted string'"] ['aName', ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]]] [0]: aName [1]: ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]] [0]: outer [1]: ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"] [0]: 'inner [1]: with [2]: opener [3]: ['and', 'closer'] [4]: in [5]: quoted [6]: string' ['aName', ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]]] [0]: aName [1]: ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]] [0]: outer [1]: ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"] [0]: 'inner [1]: with [2]: opener [3]: ['and', 'closer'] [4]: in [5]: quoted [6]: string' 9413 tests produced real number PASS valid tests (321) real number with scientific notation PASS valid tests (2319) signed integer PASS valid tests (153) real number PASS invalid tests (2213) real number with scientific notation PASS invalid tests (6587) signed integer PASS invalid tests (9260) # literal oneOf tests a b c ['a', 'b', 'c'] a a a ['a', 'a', 'a'] abc ['a', 'b', 'c'] # keyword oneOf tests a b c ['a', 'b', 'c'] a a a ['a', 'a', 'a'] # keyword oneOf failure tests abc abc ^ ParseException: Expected end of text, found 'abc' (at char 0), (line:1, col:1) pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd FAIL: Expected end of text, found 'abc' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1135, in parse_string se._parse(instring, loc) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3534, in parseImpl raise ParseException(instring, loc, self.errmsg, self) verify oneOf handles duplicate symbols verify oneOf handles generator input verify oneOf handles list input verify oneOf handles set input Raised expected exception: TypeError: Invalid argument to one_of, expected string or iterable ['XXX Y/123', '1,234.567890'] - data: '1,234.567890' - id: 'XXX Y/123' ['0', '123', '321', 444] Raised expected exception: ParseException: OnlyOnce obj called multiple times w/out reset, found '1' (at char 0), (line:1, col:1) ['100', '200', '300', 600] verify handling of Optional's beyond the end of string Tal Weiss Major Tal Major Weiss Major Major Major Tal Major Weiss Major Tal Weiss ['foo'] - foo: ['foo'] ['bar', 'foo', 'bar', 'foo', 'bar', 'foo'] - bar: ['bar', 'bar', 'bar'] - foo: ['foo', 'foo', 'foo'] Raised expected exception: ParseException: Missing one or more required elements ('foo'), found 'bar' (at char 1), (line:1, col:2) 1999-12-31 100 2001-01-01 [['1999-12-31'], 100, ['2001-01-01']] - date: [['1999-12-31'], ['2001-01-01']] [0]: ['1999-12-31'] - day: '31' - month: '12' - year: '1999' [1]: ['2001-01-01'] - day: '01' - month: '01' - year: '2001' - id: 100 [0]: ['1999-12-31'] - day: '31' - month: '12' - year: '1999' [1]: 100 [2]: ['2001-01-01'] - day: '01' - month: '01' - year: '2001' 42 [42] - id: 42 verify Optional's do not cause match failure if have results name _images/cal.png:77_ ['alt', 'empty', 'height', 'src', 'startImg', 'tag', 'width'] ['int', 'f', '(', ')', '{}'] ['DO', ['Z']] [244, 23, 13, 2343] - int_values: [244, 23, 13, 2343] - total: 2623 ### before parse action is added ### result1.dump(): [['Mauney', '46.5']] - Rider: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [0]: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' ...............### after parse action was added ### result1.dump(): [['Mauney', '46.5']] - Rider: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [0]: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [['x1', AnnotatedToken('val', ['1']), 'x2', AnnotatedToken('val', ['2'])]] [0]: ['x1', AnnotatedToken('val', ['1']), 'x2', AnnotatedToken('val', ['2'])] 'AAAAA' parseAll=False (shouldSucceed=True) 'AAAAA' parseAll=True (shouldSucceed=True) 'AAABB' parseAll=False (shouldSucceed=True) 'AAABB' parseAll=True (shouldSucceed=False) AAABB ^ ParseException: Expected end of text, found 'BB' (at char 3), (line:1, col:4) tests.test_unit.Test08_WithUnboundedPackrat pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd 'AAAAA //blah' parseAll=False (shouldSucceed=True) 'AAAAA //blah' parseAll=True (shouldSucceed=True) 'AAABB //blah' parseAll=False (shouldSucceed=True) 'AAABB //blah' parseAll=True (shouldSucceed=False) AAABB //blah ^ ParseException: Expected end of text, found 'BB' (at char 3), (line:1, col:4) tests.test_unit.Test08_WithUnboundedPackrat pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd '00aab' parseAll=False (shouldSucceed=True) '00aab' parseAll=True (shouldSucceed=True) '00aaf' parseAll=False (shouldSucceed=True) '00aaf' parseAll=True (shouldSucceed=False) 00aaf ^ ParseException: Expected end of text, found 'f' (at char 4), (line:1, col:5) tests.test_unit.Test08_WithUnboundedPackrat pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd Parsing: 'a,b,c,100.2,,3' -> ['a', 'b', 'c', '100.2', '', '3'] Parsing: 'd, e, j k , m ' -> ['d', 'e', 'j k', 'm'] Parsing: "'Hello, World', f, g , , 5.1,x" -> ["'Hello, World'", 'f', 'g', '', '5.1', 'x'] Parsing: 'John Doe, 123 Main St., Cleveland, Ohio' -> ['John Doe', '123 Main St.', 'Cleveland', 'Ohio'] Parsing: 'Jane Doe, 456 St. James St., Los Angeles , California ' -> ['Jane Doe', '456 St. James St.', 'Los Angeles', 'California'] Parsing tests/karthik.ini ... 23 ['users'] users.K 8 8 users.mod_scheme 'QPSK' 'QPSK' users.Na K+2 K+2 OK Parsing examples/Setup.ini ... 125 ['Startup', 'Languages', 'test'] Startup.audioinf M3i M3i Languages.key1 0x0003 0x0003 test.foo bar bar OK Constructing EBNF parser with pyparsing... Parsing EBNF grammar with EBNF parser... - terminal_string - meta_identifier - integer - syntax - syntax_rule - definitions_list - single_definition - syntactic_term - syntactic_factor - syntactic_primary - optional_sequence - repeated_sequence - grouped_sequence Parsing EBNF grammar with generated EBNF parser... [['syntax', '=', '(', 'syntax_rule', ')', ',', '{', '(', 'syntax_rule', ')', '}', ';'], ['syntax_rule', '=', 'meta_identifier', ',', "'='", ',', 'definitions_list', ',', "';'", ';'], ['definitions_list', '=', 'single_definition', ',', '{', "'|'", ',', 'single_definition', '}', ';'], ['single_definition', '=', 'syntactic_term', ',', '{', "','", ',', 'syntactic_term', '}', ';'], ['syntactic_term', '=', 'syntactic_factor', ',', '[', "'-'", ',', 'syntactic_factor', ']', ';'], ['syntactic_factor', '=', '[', 'integer', ',', "'*'", ']', ',', 'syntactic_primary', ';'], ['syntactic_primary', '=', 'optional_sequence', '|', 'repeated_sequence', '|', 'grouped_sequence', '|', 'meta_identifier', '|', 'terminal_string', ';'], ['optional_sequence', '=', "'['", ',', 'definitions_list', ',', "']'", ';'], ['repeated_sequence', '=', "'{'", ',', 'definitions_list', ',', "'}'", ';'], ['grouped_sequence', '=', "'('", ',', 'definitions_list', ',', "')'", ';']] [['xavier', 'yeti'], ['alpha', 'beta', 'charlie'], ['will', 'beaver']] ['xavier', 'yeti'] ['alpha', 'beta', 'charlie'] ['will', 'beaver'] ['1', '0x2', '3', '0x4', 'aaa'] - base10: ['1', '3'] - hex: ['0x2', '0x4'] - word: ['aaa'] [[['Q', ['x', 'y', 'z']]], ':-', ['Bloo', ['x', 'Mitsis', 'y']], ['Foo', ['y', 'z', '1243']], ['y', '>', '28'], ['x', '<', '12'], ['x', '>', '3']] - Bloo: ['x', 'Mitsis', 'y'] - Foo: ['y', 'z', '1243'] - head: [['Q', ['x', 'y', 'z']]] - Q: ['x', 'y', 'z'] [0]: ['Q', ['x', 'y', 'z']] [0]: Q [1]: ['x', 'y', 'z'] - pred: [['y', '>', '28'], ['x', '<', '12'], ['x', '>', '3']] [0]: ['y', '>', '28'] [1]: ['x', '<', '12'] [2]: ['x', '>', '3'] [0]: [['Q', ['x', 'y', 'z']]] - Q: ['x', 'y', 'z'] [0]: ['Q', ['x', 'y', 'z']] [0]: Q [1]: ['x', 'y', 'z'] [1]: :- [2]: ['Bloo', ['x', 'Mitsis', 'y']] [0]: Bloo [1]: ['x', 'Mitsis', 'y'] [3]: ['Foo', ['y', 'z', '1243']] [0]: Foo [1]: ['y', 'z', '1243'] [4]: ['y', '>', '28'] [5]: ['x', '<', '12'] [6]: ['x', '>', '3'] Re:('[a-z]+') ['abc'] Re:('[a-z]+') ['abc'] Re:('[a-z]+') ['abc'] Re:('[a-z]+') ['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] {Re:('[a-z]+') | Re:('[a-z]+')} ['abc'] {Re:('[a-z]+') ^ Re:('[a-z]+')} ['abc'] {Re:('[a-z]*') | Re:('[a-z]*')} ['abc'] {Re:('[a-z]*') ^ Re:('[a-z]*')} ['abc'] Raised expected exception: ParseSyntaxException: Expected W:(0-9), found 'bad' (at char 4), (line:1, col:5) Raised expected exception: ParseSyntaxException: should raise here (at char 0), (line:1, col:1) Raised expected exception: ParseSyntaxException: Expected identifier, found end of text (at char 1), (line:1, col:2) [123, 456, 789] [123, 456, 789] 9 -> 9 -9 -> -9 --9 -> 9 -E -> -2.718281828459045 9 + 3 + 5 -> 17 9 + 3 / 11 -> 9.272727272727273 (9 + 3) -> 12 (9+3) / 11 -> 1.0909090909090908 9 - 12 - 6 -> -9 9 - (12 - 6) -> 3 2*3.14159 -> 6.28318 3.1415926535*3.1415926535 / 10 -> 0.9869604400525172 PI * PI / 10 -> 0.9869604401089358 PI*PI/10 -> 0.9869604401089358 PI^2 -> 9.869604401089358 round(PI^2) -> 10 6.02E23 * 8.048 -> 4.844896e+24 e / 3 -> 0.9060939428196817 sin(PI/2) -> 1.0 10+sin(PI/4)^2 -> 10.5 trunc(E) -> 2 trunc(-E) -> -2 round(E) -> 3 round(-E) -> -3 E^PI -> 23.140692632779263 exp(0) -> 1.0 exp(1) -> 2.718281828459045 2^3^2 -> 512 (2^3)^2 -> 64 2^3+2 -> 10 2^3+5 -> 13 2^9 -> 512 sgn(-2) -> -1 sgn(0) -> 0 sgn(0.1) -> 1 round(E, 3) -> 2.718 round(PI^2, 3) -> 9.87 sgn(cos(PI/4)) -> 1 sgn(cos(PI/2)) -> 0 sgn(cos(PI*3/4)) -> -1 +(sgn(cos(PI/4))) -> 1 -(sgn(cos(PI/4))) -> -1 -> ['BODY', False] ['BODY', False] - empty: False - startBody: ['BODY', False] - empty: False - tag: 'BODY' - tag: 'BODY' -> ['BODY', ['bgcolor', '#00FFCC'], False] ['BODY', ['bgcolor', '#00FFCC'], False] - bgcolor: '#00FFCC' - empty: False - startBody: ['BODY', ['bgcolor', '#00FFCC'], False] - bgcolor: '#00FFCC' - empty: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFCC'] [2]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFCC'] [2]: False -> ['BODY', ['bgcolor', '#00FFAA'], True] ['BODY', ['bgcolor', '#00FFAA'], True] - bgcolor: '#00FFAA' - empty: True - startBody: ['BODY', ['bgcolor', '#00FFAA'], True] - bgcolor: '#00FFAA' - empty: True - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFAA'] [2]: True - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFAA'] [2]: True -> ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False -> ['BODY', True] ['BODY', True] - empty: True - startBody: ['BODY', True] - empty: True - tag: 'BODY' - tag: 'BODY' -> [''] [''] - endBody: '' end tag ................ /* * a block comment * */ typedef string[10] tenStrings; typedef sequence stringSeq; typedef sequence< sequence > stringSeqSeq; interface QoSAdmin { stringSeq method1(in string arg1, inout long arg2); stringSeqSeq method2(in string arg1, inout long arg2, inout long arg3); string method3(); }; tokens = [['typedef', 'string', '[', '10', ']', 'tenStrings', ';'], ['typedef', ['sequence', '<', 'string', '>'], 'stringSeq', ';'], ['typedef', ['sequence', '<', ['sequence', '<', 'string', '>'], '>'], 'stringSeqSeq', ';'], ['interface', 'QoSAdmin', '{', 'stringSeq', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', 'stringSeqSeq', 'method2', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ['inout', 'long', 'arg3'], ')', ';', 'string', 'method3', '(', ')', ';', '}', ';']] 59 /* * a block comment * */ typedef string[10] tenStrings; typedef /** ** *** **** * * a block comment * */ sequence /*comment inside an And */ stringSeq; /* */ /**/ /***/ /****/ typedef sequence< sequence > stringSeqSeq; interface QoSAdmin { stringSeq method1(in string arg1, inout long arg2); stringSeqSeq method2(in string arg1, inout long arg2, inout long arg3); string method3(); }; tokens = [['typedef', 'string', '[', '10', ']', 'tenStrings', ';'], ['typedef', ['sequence', '<', 'string', '>'], 'stringSeq', ';'], ['typedef', ['sequence', '<', ['sequence', '<', 'string', '>'], '>'], 'stringSeqSeq', ';'], ['interface', 'QoSAdmin', '{', 'stringSeq', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', 'stringSeqSeq', 'method2', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ['inout', 'long', 'arg3'], ')', ';', 'string', 'method3', '(', ')', ';', '}', ';']] 59 const string test="Test String\n"; const long a = 0; const long b = -100; const float c = 3.14159; const long d = 0x007f7f7f; exception TestException { string msg; sequence dataStrings; }; interface TestInterface { void method1(in string arg1, inout long arg2); }; tokens = [['const', 'string', 'test', '=', '"Test String\\n"', ';'], ['const', 'long', 'a', '=', '0', ';'], ['const', 'long', 'b', '=', '-100', ';'], ['const', 'float', 'c', '=', '3.14159', ';'], ['const', 'long', 'd', '=', '0x007f7f7f', ';'], 'exception', 'TestException', '{', ['string', 'msg', ';'], [['sequence', '<', 'string', '>'], 'dataStrings', ';'], '}', ';', ['interface', 'TestInterface', '{', 'void', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', '}', ';']] 60 module Test1 { exception TestException { string msg; ]; interface TestInterface { void method1(in string arg1, inout long arg2) raises (TestException); }; }; exception TestException ^ Expected {moduleDef | {moduleItem}...}, found 'exception' (at char 56), (line:4, col:15) module Test1 { exception TestException { string msg; }; }; tokens = ['module', 'Test1', '{', 'exception', 'TestException', '{', ['string', 'msg', ';'], '}', ';', '}', ';'] 13 Test ifOnlyIfOnly Match Literal ['if'] Match Keyword failed Test if(OnlyIfOnly) Match Literal ['if'] Match Keyword ['if'] Test if (OnlyIf Only) Match Literal ['if'] Match Keyword ['if'] Test IFOnlyIfOnly Match Literal failed Match Keyword failed Test If(OnlyIfOnly) Match Literal failed Match Keyword ['if'] Test iF (OnlyIf Only) Match Literal failed Match Keyword ['if'] Raised expected exception: ValueError: null string passed to Keyword; use Empty() instead ['0', '123', '321', 444] ['spam', 'eggs'] - first: 'spam' - second: 'eggs' [] ['123', '456', 'ABC', 'DEF'] - ints: ['123', '456'] - words: ['ABC', 'DEF'] ['123', 'ABC', 'DEF'] - ints: ['123', '456'] ['List', '__add__', '__annotations__', '__bool__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattr__', '__getattribute__', '__getitem__', '__getnewargs__', '__getstate__', '__gt__', '__hash__', '__iadd__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__module__', '__ne__', '__new__', '__radd__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__setattr__', '__setitem__', '__setstate__', '__sizeof__', '__slots__', '__str__', '__subclasshook__', '__weakref__', '_all_names', '_asStringList', '_modal', '_name', '_null_values', '_parent', '_tokdict', '_toklist', 'append', 'asDict', 'asList', 'as_dict', 'as_list', 'clear', 'copy', 'dump', 'extend', 'from_dict', 'get', 'getName', 'get_name', 'haskeys', 'insert', 'items', 'keys', 'pop', 'pprint', 'trios', 'values'] ['spam', 'eggs', 'foo', 'bar'] ['abc', 'def', 'ghi', 'ihg', 'fed', 'cba'] [['123', 456, ['789', 789]]] - trios: ['123', 456, ['789', 789]] - first: '123' - second: 456 - third: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: 123 [1]: 456 [2]: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: ['123', 456, ['789', 789]] - first: '123' - second: 456 - third: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: 123 [1]: 456 [2]: ['789', 789] - threeInt: 789 - threeStr: '789' ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'] ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'] ['h', 'A', 'B', 'C', 'g', 'i', 'D', 'a', 'd', 'E', 'F', 'b', 'G', 'H', 'j', 'f', 'c', 'I', 'e', 'J'] ['h', 'A', 'B', 'C', 'g', 'i', 'D', 'a', 'd', 'E', 'F', 'b', 'G', 'H', 'j', 'f', 'c', 'I', 'e', 'J'] Pre-insert [[1, 2, 3], 'dice', ['rolled', 'first', 'try']] - additional: ['rolled', 'first', 'try'] - label: 'dice' - nums: [1, 2, 3] [0]: [1, 2, 3] [1]: dice [2]: ['rolled', 'first', 'try'] Post-insert [[1, 2, 3], 6, 'dice', ['rolled', 'first', 'try']] - additional: ['rolled', 'first', 'try'] - label: 'dice' - nums: [1, 2, 3] [0]: [1, 2, 3] [1]: 6 [2]: dice [3]: ['rolled', 'first', 'try'] [ 1,2,3,4,5,6 ] [['[', '1', '2', '3', '4', '5', '6', ']']] - LIST: ['[', '1', '2', '3', '4', '5', '6', ']'] - END_LIST: ']' - LIST_VALUES: ['1', '2', '3', '4', '5', '6'] - LIT_NUM: ['1', '2', '3', '4', '5', '6'] - START_LIST: '[' [0]: ['[', '1', '2', '3', '4', '5', '6', ']'] - END_LIST: ']' - LIST_VALUES: ['1', '2', '3', '4', '5', '6'] - LIT_NUM: ['1', '2', '3', '4', '5', '6'] - START_LIST: '[' "Golden Gate Bridge" 37.819722 -122.478611 height=746 span=4200 ['Golden Gate Bridge', [37.819722, -122.478611, ['height', 746], ['span', 4200]]] - data: [37.819722, -122.478611, ['height', 746], ['span', 4200]] - height: 746 - lat: 37.819722 - long: -122.478611 - span: 4200 [0]: 37.819722 [1]: -122.478611 [2]: ['height', 746] [3]: ['span', 4200] - name: 'Golden Gate Bridge' [0]: Golden Gate Bridge [1]: [37.819722, -122.478611, ['height', 746], ['span', 4200]] - height: 746 - lat: 37.819722 - long: -122.478611 - span: 4200 [0]: 37.819722 [1]: -122.478611 [2]: ['height', 746] [3]: ['span', 4200] .............['a', ['href', 'blah'], False] - empty: False - href: 'blah' - startA: ['a', ['href', 'blah'], False] - empty: False - href: 'blah' - tag: 'a' [0]: a [1]: ['href', 'blah'] [2]: False - tag: 'a' [0]: a [1]: ['href', 'blah'] [2]: False [] [] [1, 2, 3, 4, 5] ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 0 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 1 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 2 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 3 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 4 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 5 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 0 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 1 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 2 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 3 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 4 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 5 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 0 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 1 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 2 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 3 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 4 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 5 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 0 ['BABBAB'] Test pickle dump protocol 1 ['BABBAB'] Test pickle dump protocol 2 ['BABBAB'] Test pickle dump protocol 3 ['BABBAB'] Test pickle dump protocol 4 ['BABBAB'] Test pickle dump protocol 5 ['BABBAB'] Test pickle dump protocol 0 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 1 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 2 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 3 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 4 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 5 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 0 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 1 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 2 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 3 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 4 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 5 ['BABBAB'] - name: ['BABBAB'] ParseResults(['test', 'blub'], {'word': 'blub'}) blub {'word': 'blub'} ParseResults(['test', 'blub'], {'word': ['test', 'blub']}) ['test', 'blub'] {'word': ['test', 'blub']} ['abc'] - A: 'abc' Raised expected exception: AttributeError: __xyz__ ['5', '4', '3', '2', '1'] {'eggs', 'spam'} not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] ParseResults([('A', 'Z')], {'Achar': ('A', 'Z')}) ('A', 'Z') ['/', [['respectaccents']]] ('/respectaccents/ignoreaccents', 0) ['/', [['ignoreaccents']]] ('/respectaccents/ignoreaccents', 15) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 1)}, '_info_': ('/respectaccents/ignoreaccents', 1)}, '/': '', ParseResults(['respectaccents'], {'_info_': ('/respectaccents/ignoreaccents', 1)}): '', '_info_': ('/respectaccents/ignoreaccents', 0)} ('/respectaccents/ignoreaccents', 0) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 16)}, '_info_': ('/respectaccents/ignoreaccents', 16)}, '/': '', ParseResults(['ignoreaccents'], {'_info_': ('/respectaccents/ignoreaccents', 16)}): '', '_info_': ('/respectaccents/ignoreaccents', 15)} ('/respectaccents/ignoreaccents', 15) ['/', [['respectaccents']]] ('/respectaccents/ignoreaccents', 0) ['/', [['ignoreaccents']]] ('/respectaccents/ignoreaccents', 15) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 1)}, '_info_': ('/respectaccents/ignoreaccents', 1)}, '/': '', ParseResults(['respectaccents'], {'_info_': ('/respectaccents/ignoreaccents', 1)}): '', '_info_': ('/respectaccents/ignoreaccents', 0)} ('/respectaccents/ignoreaccents', 0) ..............................{'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 16)}, '_info_': ('/respectaccents/ignoreaccents', 16)}, '/': '', ParseResults(['ignoreaccents'], {'_info_': ('/respectaccents/ignoreaccents', 16)}): '', '_info_': ('/respectaccents/ignoreaccents', 15)} ('/respectaccents/ignoreaccents', 15) SELECT * from XYZZY, ABC ['select', '*', 'from', 'XYZZY', 'ABC', ''] 6 select * from SYS.XYZZY ['select', '*', 'from', 'SYS.XYZZY', ''] 5 Select A from Sys.dual ['select', 'A', 'from', 'SYS.DUAL', ''] 5 Select A,B,C from Sys.dual ['select', 'A', 'B', 'C', 'from', 'SYS.DUAL', ''] 7 Select A, B, C from Sys.dual ['select', 'A', 'B', 'C', 'from', 'SYS.DUAL', ''] 7 Select A, B, C from Sys.dual, Table2 ['select', 'A', 'B', 'C', 'from', 'SYS.DUAL', 'TABLE2', ''] 8 Select A from Sys.dual where a in ('RED','GREEN','BLUE') ['select', 'A', 'from', 'SYS.DUAL', 'where', 'A', 'in', '(', "'RED'", "'GREEN'", "'BLUE'", ')'] 12 Select A from Sys.dual where a in ('RED','GREEN','BLUE') and b in (10,20,30) ['select', 'A', 'from', 'SYS.DUAL', 'where', 'A', 'in', '(', "'RED'", "'GREEN'", "'BLUE'", ')', 'and', 'B', 'in', '(', 10, 20, 30, ')'] 20 Select A,b from table1,table2 where table1.id eq table2.id -- test out comparison operators ['select', 'A', 'B', 'from', 'TABLE1', 'TABLE2', 'where', 'TABLE1.ID', 'eq', 'TABLE2.ID'] 10 Re:('[-+][0-9]+') correctly failed to match '1234 foo' Re:('[-+][0-9]+') correctly failed to match ' +foo' Re:('[0-9]+') correctly failed to match 'abc' Re:('[0-9]+') correctly failed to match '+123 foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match 'foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match '"foo bar\'' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match '\'foo bar"' Re:('[-+][0-9]+') correctly matched ' +123' Re:('[-+][0-9]+') correctly matched '+123' Re:('[-+][0-9]+') correctly matched '+123 foo' Re:('[-+][0-9]+') correctly matched '-0 foo' Re:('[0-9]+') correctly matched '123 foo' Re:('[0-9]+') correctly matched '0 foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly matched '"foo"' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly matched "'foo bar' baz" Re:('[A-Z]+') correctly failed to match 'blah' Re:('[A-Z]+') correctly matched 'BLAH' Re:('("(?P[^\"]*)")') correctly matched '"foo bar" baz' ['"zork"'] [('content', 'zork')] zork lets try an invalid RE successfully rejected an invalid RE: invalid pattern ('("[^"]*")|(\'[^\']*\'') passed to Regex Raised expected exception: ValueError: null string passed to Regex; use Empty() instead ['spam', 'eggs', 'suf'] ['pre', 'spam', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: ParseException: Missing one or more required elements ('and'), found ' ' (at char 4), (line:1, col:5) ['spam', 'and', 'eggs'] - first: 'spam' - second: 'eggs' Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement ['spam', 'eggs'] ['pre', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement ['abd', 'def', 'ghi', 'jkl'] ['abd', 'def', 'ghi', 'jkl'] Raised expected exception: TypeError: cannot multiply ParserElement and str objects Raised expected exception: TypeError: cannot multiply ParserElement and str objects ['spam', '11', '22'] - first: 'spam' - second: ['11', '22'] ['spam', '111', '222'] - first: 'spam' - second: ['111', '222'] ['spam'] - first: 'spam' ['spam', '12', '23', '34'] - first: 'spam' - second: ['12', '23', '34'] ['spam', '45'] - first: 'spam' - second: ['45'] ['spam', '100'] - first: 'spam' - second: ['100'] ['spam', '100', '200', '300'] - first: 'spam' - second: ['100', '200', '300'] ['spam', '1', '2'] - first: 'spam' - second: ['1', '2'] ['spam', '1', '2', '3'] - first: 'spam' - second: ['1', '2', '3'] Raised expected exception: ValueError: second tuple value must be greater or equal to first tuple value Raised expected exception: TypeError: cannot multiply ParserElement and (str,str) objects Raised expected exception: TypeError: cannot multiply ParserElement and (str,NoneType) objects Raised expected exception: TypeError: only 1 or 2 index arguments supported ((2, 3, 4)) ['spam', 'eggs', 'suf'] ['pre', 'spam', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement {{word {{word_1 word} ^ word}} ^ {word word word}} foo bar temp -> ['foo', 'bar', 'temp'] EXP: AAA ['123', '456', '789', '234'] GOT: AAA ['123', '456', '789', '234'] AAA ['123', '456', '789', '234'] EXP: 234 ['123', '456', '789'] GOT: 234 ['123', '456', '789'] 234 ['123', '456', '789'] EXP: AAA ['123', '456', '789'] GOT: AAA ['123', '456', '789'] AAA ['123', '456', '789'] EXP: 789 ['123', '456'] GOT: 789 ['123', '456'] 789 ['123', '456'] noname ['123', '456'] ['AAA', '123', '456', '789', '234'] - name: 'AAA' Raised expected exception: TypeError: pop() got an unexpected keyword argument 'notDefault' c384 b8324 _9293874 _293 404 $%^$^%$2939 [384, 8324] - prefix: ['c', 'b'] [9293874, 293] [404] [2939] - prefix: ['^%$'] [2939] [404] [['working']] [0]: ['working'] - main: ['working'] - negs_lb: 'not' got maximum excursion limit exception ['like "SQL"'] ['aaayaaa'] 'a valid single quoted string' 'an invalid single quoted string because it spans lines' "a valid double quoted string" "an invalid double quoted string because it spans lines" [("'a valid single quoted string'", 17, 47)] [('a valid double quoted string', 154, 184)] [("'a valid single quoted string'", 17, 47), ('"a valid double quoted string"', 154, 184)] [("'This string has an escaped (\\') quote character'", 17, 66)] [('This string has an escaped (\\") quote character', 83, 132)] [("'This string has an escaped (\\') quote character'", 17, 66), ('"This string has an escaped (\\") quote character"', 83, 132)] [("'This string has an doubled ('') quote character'", 17, 66)] [('This string has an doubled ("") quote character', 83, 132)] [("'This string has an doubled ('') quote character'", 17, 66), ('"This string has an doubled ("") quote character"', 83, 132)] testing catastrophic RE backtracking in implementation of dblQuotedString Raised expected exception: ValueError: endQuoteChar cannot be the empty string ['myc(114)r(11)dd'] ['myc(114)r(11)dd'] return as list of match groups [('123', '456', 'lsdfkj')] [('123', '456', 'lsdfkj')] return as re.match instance [] ('123', '456', 'lsdfkj') [('123', '456', 'lsdfkj')] Raised expected exception: TypeError: Regex may only be constructed with a string or a compiled RE object test sub with string This is the title: 'Richard III' test sub with re string

This is the main heading

This is the sub-heading

test sub with re string (Regex returns re.match)

This is the main heading

This is the sub-heading

test sub with callable that return str I want this in upcase: WHAT? WHAT? Raised expected exception: TypeError: cannot use sub() with a callable with Regex(asMatch=True) Raised expected exception: TypeError: cannot use sub() with Regex(asGroupList=True) Raised expected exception: TypeError: cannot use sub() with Regex(asGroupList=True) verify behavior with repeated tokens when packrat parsing is enabled skipping this test, not compatible with memoization skipping this test, not compatible with memoization skipping this test, not compatible with memoization skipping this test, not compatible with memoization ...................>>entering convert_to_int(line: '132', 0, ParseResults(['132'], {})) <>entering (line: '132', 0, ParseResults([132], {})) < (ret: 1320) >>entering Z(line: '132', 0, ParseResults([1320], {})) < Expected {'A' | {'B' 'C'} | 'E'}, found 'D' (at char 1), (line:1, col:2) [1, 2, 3, 4, 6, 8, 9, 10, 16] [1, 2, 3, 4, 6, 8, 9, 10, 16] [11] [11] 1/2 eval: 0.5 1/0 [1, '/', 0] - denominator: 0 - numerator: 1 eval_fraction failed: ZeroDivisionError: division by zero True ['129.6.15.28', '129.6.15.29', '132.163.4.101', '132.163.4.102', '132.163.4.103'] [(ParseResults([], {}), 5, 6)] Before parsing with setBreak: False After parsing with setBreak: True a | b | c d | e | f {a | b | c | d | e | f} Forward: + | - term + | - term Forward: ?: term ?: term Forward: {a | b | c [{d | e | f : ...}]...} int [, int]... (len) int... nested () expression (, ) (, ) common HTML entity lsdjkf &'"&xyzzy; Raised expected exception: TypeError: parse actions must be callable ['A'] - Achar: 'A' verify behavior of setResultsName with OneOrMore and ZeroOrMore ['test', 'test'] ['test', 'test'] ['test', 'test'] ['test', 'test'] ['test', 'test'] Received expected exception: just one arg (at char 0), (line:1, col:1) ['some text /* comment with ; in */', ';', 'working'] ['some text /* comment with ; in */some other stuff', ';', 'working'] ['some text /* comment with ; in */', ';', 'working'] Raised expected exception: ParseException: Expected ';', found ' ' (at char 37), (line:1, col:38) Raised expected exception: Exception: use of `...` expression without following SkipTo target expression verify proper streamline logic {{{'A' 'B'} 'C'} 'D'} {'A' 'B' 'C' 'D'} ['123'] ['123'] ['123'] ['123'] ['123'] ['123'] Raised expected exception: ParseException: Expected W:(0-9), found ' ' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected '123', found ' ' (at char 0), (line:1, col:1) {StringStart W:(a-e) StringEnd} 'aaa' ['aaa'] {LineStart W:(a-e) StringEnd} 'aaa' ['aaa'] {LineStart W:(a-e) StringEnd} '\naaa' ['aaa'] {LineStart W:(a-e) StringEnd} ' aaa' ['aaa'] {LineStart W:(a-e) StringEnd} '\n aaa' ['aaa'] {AtLineStart:(W:(a-e)) StringEnd} ' aaa' Raised expected exception: ParseException: not found at line start, found 'aaa' (at char 3), (line:1, col:4) {AtLineStart:(W:(a-e)) StringEnd} '\n aaa' Raised expected exception: ParseException: not found at line start, found 'aaa' (at char 4), (line:2, col:4) garbage;DOB 10-10-2010;more garbage ID PARI12345678;more garbage ID:PARI12345678 DOB:10-10-2010 INFO: ID:PARI12345678 DOB:10-10-2010 INFO: ['DOB', '10-10-2010'] - dob: '10-10-2010' ['ID', 'PARI12345678'] - id: 'PARI12345678' garbage;ID PARI12345678;more garbage DOB 10-10-2010;more garbage ID:PARI12345678 DOB:10-10-2010 INFO: ID:PARI12345678 DOB:10-10-2010 INFO: ['ID', 'PARI12345678'] - id: 'PARI12345678' ['DOB', '10-10-2010'] - dob: '10-10-2010' garbage;DOB 10-10-2010 ID: DOB:10-10-2010 INFO: ID: DOB:10-10-2010 INFO: ['DOB', '10-10-2010'] - dob: '10-10-2010' garbage;ID PARI12345678;more garbage- I am cool ID:PARI12345678 DOB: INFO: I am cool ID:PARI12345678 DOB: INFO: I am cool ['ID', 'PARI12345678'] - id: 'PARI12345678' ['-', ' I am cool'] - info: ' I am cool' 00 11 22 aa FF 0a 0d 1a [0, 17, 34, 170, 255, 10, 13, 26] I wish to buy 12345 shares of Acme Industries (as a gift to my (ex)wife) I 12,345 Acme Industries asagifttomyexwife 1 1234567890 1:| 2:| 3:check aaa| 1 1234567890 1:| 2:| 3:CHECK aaa| 1 2 12345678901234567890 1: check aaa| 1 2 12345678901234567890 1: CHECK aaa| [['rint'], ['a100']] 1 1234567890 1: check| 1 1234567890 1: CHECK| Original: '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' Should match: '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' aaa 333 ['aaa', '333'] b 1 ['b', '1'] ababab 32123 ['ababab', '32123'] 123 [123] 456 [456] abc abc ^ ParseException: Expected {{integer}}, found 'abc' (at char 0), (line:1, col:1) pyparsing.core.Or - {{integer}} FAIL: Expected {{integer}}, found 'abc' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 921, in _parseCache value = self._parseNoCache(instring, loc, doActions, callPreParse) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4025, in parseImpl raise maxException 101222 101222 ['Καλημέρα', ',', 'κόσμε', '!'] [['şehir', 'İzmir'], ['ülke', 'Türkiye'], ['nüfus', 4279677]] - nüfus: 4279677 - ülke: 'Türkiye' - şehir: 'İzmir' [0]: ['şehir', 'İzmir'] [1]: ['ülke', 'Türkiye'] [2]: ['nüfus', 4279677] 韡}ᾬקज캸0氐ћڈึ珡Ĉᵠֿॽ봅h臨Ꙕ܎ท捽ùϻנּ२뫯Ë穈ⷽ܇ํ舟PΛטּॐ욪Ø㚏ⷤ؋ร蓓ŜὮ֦क़뻘÷䢗ѹܒ๎鎬Pσ֙꣩붹ò瓎ԓ٫๐杔ÒῪﬞॱ춀°喆Ҡ١ฐ挲Yꭥﬦए츜¹枺ⷣڛฎ� ['韡}ᾬקज캸0氐ћڈึ珡Ĉᵠֿॽ봅h臨Ꙕ\u070eท捽ùϻנּ२뫯Ë穈ⷽ܇ํ舟PΛטּॐ욪Ø㚏ⷤ؋ร蓓ŜὮ֦क़뻘÷䢗ѹܒ๎鎬Pσ֙꣩붹ò瓎ԓ٫๐杔ÒῪﬞॱ춀°喆Ҡ١ฐ挲Yꭥﬦए츜¹枺ⷣڛฎ�'] [[10, 'print', 123, ';'], [20, 'print', 234, ';', 567, ';'], [30, 'print', 890]] [0]: [10, 'print', 123, ';'] [1]: [20, 'print', 234, ';', 567, ';'] [2]: [30, 'print', 890] [['abc', 'abc', 'abc']] [0]: ['abc', 'abc', 'abc'] [["'def'", "'def'", "'def'"]] [0]: ["'def'", "'def'", "'def'"] [[123, 123, 123]] [0]: [123, 123, 123] [[4.56, 4.56, 4.56]] [0]: [4.56, 4.56, 4.56] [['a_bc', 'a_bc', 'a_bc']] [0]: ['a_bc', 'a_bc', 'a_bc'] [['abc', '\n'], ['abc', '\n'], ['abc']] [0]: ['abc', '\n'] [1]: ['abc', '\n'] [2]: ['abc'] [["'def'", '\n'], ["'def'", '\n'], ["'def'"]] [0]: ["'def'", '\n'] [1]: ["'def'", '\n'] [2]: ["'def'"] [[123, '\n'], [123, '\n'], [123]] [0]: [123, '\n'] [1]: [123, '\n'] [2]: [123] [[4.56, '\n'], [4.56, '\n'], [4.56]] [0]: [4.56, '\n'] [1]: [4.56, '\n'] [2]: [4.56] [['a_bc', '\n'], ['a_bc', '\n'], ['a_bc']] [0]: ['a_bc', '\n'] [1]: ['a_bc', '\n'] [2]: ['a_bc'] [['abc', 'abc', 'abc']] [0]: ['abc', 'abc', 'abc'] [["'def'", "'def'", "'def'"]] [0]: ["'def'", "'def'", "'def'"] [[123, 123, 123]] [0]: [123, 123, 123] [[4.56, 4.56, 4.56]] [0]: [4.56, 4.56, 4.56] [['a_bc', 'a_bc', 'a_bc']] [0]: ['a_bc', 'a_bc', 'a_bc'] verify behavior of validate() Forward: Group:({'A' | : ...}) RecursiveGrammarException: [Forward: Group:({'A' | : ...}), Group:({'A' | : ...}), {'A' | Forward: Group:({'A' | : ...})}, Forward: Group:({'A' | : ...})] Forward: {['A'] : ...} RecursiveGrammarException: [Forward: {['A'] : ...}, {['A'] Forward: {['A'] : ...}}, Forward: {['A'] : ...}] ('VUTSRQPONMLKJIHGFEDCBA', 5, ParseResults(['Q'], {})) ['V', 'U', 'T', 'S', 'R', 'Q', 'P', 'O', 'N', 'M', 'L', 'K', 'J', 'I', 'H', 'G', 'F', 'E', 'D', 'C', 'B', 'A'] ('VUTSRQPONMLKJIHGFEDCBA', 5, ParseResults(['Q'], {})) make a ClassAsPAStarNew ('VUTSRQPONMLKJIHGFEDCBA', 17, ParseResults(['E'], {})) making a ClassAsPA1 ['V', 'U', 'T', 'S', 'R', 'Q', 'P', 'O', 'N', 'M', 'L', 'K', 'J', 'I', 'H', 'G', 'F', 'E', 'D', 'C', 'B', 'A'] verify that using '<<' operator with a Forward raises a warning if there is a dangling '|' operator unsafe << and |, but diag not enabled, should not warn unsafe << and |, should warn unsafe << and |, should warn safe <<= and |, should not warn safe << and (|), should not warn .........[['a', ['b', 'x'], False, '2', ''], ['a', ['b', 'x'], False, '3', '']] [0]: ['a', ['b', 'x'], False, '2', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '2' [0]: a [1]: ['b', 'x'] [2]: False [3]: 2 [4]: [1]: ['a', ['b', 'x'], False, '3', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '3' [0]: a [1]: ['b', 'x'] [2]: False [3]: 3 [4]: [['a', ['b', 'x'], False, '2', ''], ['a', ['b', 'x'], False, '3', '']] [0]: ['a', ['b', 'x'], False, '2', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '2' [0]: a [1]: ['b', 'x'] [2]: False [3]: 2 [4]: [1]: ['a', ['b', 'x'], False, '3', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '3' [0]: a [1]: ['b', 'x'] [2]: False [3]: 3 [4]: [['a', ['class', 'boo'], False, '8', '']] [0]: ['a', ['class', 'boo'], False, '8', ''] - class: 'boo' - empty: False - endA: '' - tag: 'a' - value: '8' [0]: a [1]: ['class', 'boo'] [2]: False [3]: 8 [4]: ABC DEF GHI [['D', 'G'], ['A'], ['C', 'F'], ['I'], ['E'], ['A', 'I']] JKL MNO PQR [['J', 'M', 'P'], [], ['L', 'R'], ['O'], [], ['O']] STU VWX YZ [['S', 'V'], ['Y'], ['X', 'Z'], ['U'], [], ['U', 'Y']] ABC DEF GHI JKL MNO PQR STU VWX YZ [['D', 'G', 'J', 'M', 'P', 'S', 'V'], ['A', 'Y'], ['C', 'F', 'L', 'R', 'X', 'Z'], ['I', 'O', 'U'], ['E'], ['A', 'I', 'O', 'U', 'Y']] [['Hello'], ['Mr'], ['Ed'], ["it's"], ['Wilbur']] ['ABCDEMNXYZABCDEMNXYZABCDEMNXYZ'] Testing escape char: \ -> W:(\]) re: '[\\\]]+') Match ']\\]\\\\]\]]\]]\' -> True Testing escape char: \ -> W:([\) re: '[\[\\]+') Match '\[\\\[[\\\[\\\\\' -> True Testing escape char: \ -> W:(\]) re: '[\\\]]+') Match '\]\\\\\]\\\]]\]\' -> True Testing escape char: \ -> W:(\, A-Z) re: '\\[A-Z]*') Match '\OHLAQLSSJEJHGMXD' -> True Testing escape char: \ -> W:(\, A-Z) re: '\\[A-Z]*') Match '\SRUELXHZIPLVONPO' -> True Testing escape char: ^ -> W:(^_) re: '[\^_]+') Match '____^__^_^_^__^_' -> True Testing escape char: ^ -> W:(]^) re: '[\]\^]+') Match ']^]]^^]]^]^]]]]]' -> True Testing escape char: ^ -> W:(^_) re: '[\^_]+') Match '^_^_^_^^^^_^__^_' -> True Testing escape char: ^ -> W:(^, A-Z) re: '\^[A-Z]*') Match '^HMTONHRUYWGEKLVV' -> True Testing escape char: ^ -> W:(^, A-Z) re: '\^[A-Z]*') Match '^EBTKIFABPASKDDPI' -> True Testing escape char: - -> W:(-.) re: '[\-.]+') Match '-.----....-....-' -> True Testing escape char: - -> W:(,-) re: '[,\-]+') Match '-,,,-,,-,,,,-,,,' -> True Testing escape char: - -> W:(-.) re: '[\-.]+') Match '...-...----.--.-' -> True Testing escape char: - -> W:(-, A-Z) re: '\-[A-Z]*') Match '-BGRZRTEGQPTIVMVS' -> True Testing escape char: - -> W:(-, A-Z) re: '\-[A-Z]*') Match '-CITADSYNPVAMPRZW' -> True Testing escape char: ] -> W:(]^) re: '[\]\^]+') Match '^^^^]]^^]^^^^^^^' -> True Testing escape char: ] -> W:(\]) re: '[\\\]]+') Match ']]\\]]]\]]\]]]\\' -> True Testing escape char: ] -> W:(]^) re: '[\]\^]+') Match '^]]]^^]]]^^]]^^^' -> True Testing escape char: ] -> W:(], A-Z) re: '\][A-Z]*') Match ']FSXAIOPDFUXJIKJQ' -> True Testing escape char: ] -> W:(], A-Z) re: '\][A-Z]*') Match ']FLMOQPIWSIZVQPVW' -> True Testing escape char: [ -> W:([\) re: '[\[\\]+') Match '[\[\\[\[\[[[\[\\' -> True Testing escape char: [ -> W:(Z[) re: '[Z\[]+') Match 'ZZZZ[ZZ[[Z[Z[ZZ[' -> True Testing escape char: [ -> W:([\) re: '[\[\\]+') Match '[[[[[\[[[[\\[[\\' -> True Testing escape char: [ -> W:([, A-Z) re: '\[[A-Z]*') Match '[CNMYLBNKICWROFVF' -> True Testing escape char: [ -> W:([, A-Z) re: '\[[A-Z]*') Match '[YPVQYRJDESDNYIYH' -> True Testing escape char: * -> W:(*+) re: '[*+]+') Match '++****+***+*+*+*' -> True Testing escape char: * -> W:()*) re: '[)*]+') Match '*)**)))*)*)**)**' -> True Testing escape char: * -> W:(*+) re: '[*+]+') Match '+*+++*+*++**++**' -> True Testing escape char: * -> W:(*, A-Z) re: '\*[A-Z]*') Match '*PZXXCJBLRVKUFWNM' -> True Testing escape char: * -> W:(*, A-Z) re: '\*[A-Z]*') Match '*HZFSQRVOFOVOKVLX' -> True Testing escape char: + -> W:(+,) re: '[+,]+') Match '+,+,,,,++,++,+,,' -> True Testing escape char: + -> W:(*+) re: '[*+]+') Match '+*++*+++*++**+*+' -> True Testing escape char: + -> W:(+,) re: '[+,]+') Match ',++,+++,+++++,+,' -> True Testing escape char: + -> W:(+, A-Z) re: '\+[A-Z]*') Match '+IVRAXEGSNYRINSGE' -> True Testing escape char: + -> W:(+, A-Z) re: '\+[A-Z]*') Match '+FUBGCEEOWQVFIMON' -> True Testing escape char: . -> W:(./) re: '[./]+') Match './//...../...//.' -> True Testing escape char: . -> W:(-.) re: '[\-.]+') Match '..--..-..---..-.' -> True Testing escape char: . -> W:(./) re: '[./]+') Match '//..././////.///' -> True Testing escape char: . -> W:(., A-Z) re: '\.[A-Z]*') Match '.DCMBAKXOPCXRYEGL' -> True Testing escape char: . -> W:(., A-Z) re: '\.[A-Z]*') Match '.HRQXFOYUZSIUKMLI' -> True Testing escape char: ? -> W:(?@) re: '[?@]+') Match '@@@??@?@@?@??@?@' -> True Testing escape char: ? -> W:(>?) re: '[>?]+') Match '>>>?>???>??>>??>' -> True Testing escape char: ? -> W:(?@) re: '[?@]+') Match '??@@?@@???@@@@??' -> True Testing escape char: ? -> W:(?, A-Z) re: '\?[A-Z]*') Match '?GICQFVTNJGKWVYNE' -> True Testing escape char: ? -> W:(?, A-Z) re: '\?[A-Z]*') Match '?SCJXXMWMMWOQIUBZ' -> True ['p', 'q', 'r', 'False'] Raised expected exception: ParseException: Expected {(A-Za-z) | True | False}, found 'abc' (at char 0), (line:1, col:1) {'A' W:(0-9)} ... {'A' W:(0-9)} ... {'A' W:(0-9){1,6}} ... {'A' W:(0-9){1,6}} ... {'A' W:(0-9)} ... {'A' W:(0-9){2,...}} ... {'A' W:(0-9){2,6}} ... W:(A, 0-9) A[0-9]* W:(A, 0-9) A[0-9]* W:(A, 0-9){1,6} A[0-9]{0,5} W:(A, 0-9){1,6} A[0-9]{0,5} W:(A, 0-9) A[0-9]* W:(A, 0-9){2,...} ... W:(A, 0-9){2,6} ... W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9){1,6} [A-Za-z][0-9]{0,5} W:(A-Za-z, 0-9){1,6} [A-Za-z][0-9]{0,5} W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9){2,...} ... W:(A-Za-z, 0-9){2,6} ... .................... Raised expected exception: ValueError: cannot specify a minimum length < 1; use Opt(Word()) if zero-length word is permitted Left-Recursion enabled: True [[7], [9]] [[1, 4], [2, 4], [4, 3]] [[1, 4], [2, 4]] detected fatal condition ['balloon', '25'] - item: 'balloon' - qty: '25' ['rucksack', 49] - item: 'rucksack' - qty: 49 ['AAA', ' this line'] ['AAA', ' and this line'] [] [] d | aA | a | b | c d | Aa | a | b | c ['aA', 'aA', 'aA', 'aA'] ['Aa', 'Aa', 'Aa', 'Aa'] [[1, '?', 1, ':', 0, '?', 1, ':', 0]] [0]: [1, '?', 1, ':', 0, '?', 1, ':', 0] [[1, '?', 1, ':', [0, '?', 1, ':', 0]]] [0]: [1, '?', 1, ':', [0, '?', 1, ':', 0]] [0]: 1 [1]: ? [2]: 1 [3]: : [4]: [0, '?', 1, ':', 0] ['B', 'B', 'C', 'A', 'D'] ['B'] ['bcdfghjklmnpqrstvwxyz'] Raised expected exception: ValueError: cannot specify a minimum length < 1; use Opt(CharsNotIn()) if zero-length char group is permitted ['bcdfg'] ['bcdfghjklm'] Raised expected exception: ParseException: Expected !W:(AEIOU), found end of text (at char 21), (line:1, col:22) ATCATCGAATGGA ['ATCATCGAATGGA'] - mismatches: [] - original: 'ATCATCGAATGGA' XTCATCGAATGGX ['XTCATCGAATGGX'] - mismatches: [0, 12] - original: 'ATCATCGAATGGA' ATCATCGAAXGGA ['ATCATCGAAXGGA'] - mismatches: [9] - original: 'ATCATCGAATGGA' ATCAXXGAATGGA ['ATCAXXGAATGGA'] - mismatches: [4, 5] - original: 'ATCATCGAATGGA' ATCAXXGAATGXA ATCAXXGAATGXA ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ATCAXXGAATGG ATCAXXGAATGG ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ATCATCGAATGGA match XTCATCGAATGGX match ATCATCGAAXGGA match ATCAXXGAATGGA match ATCAXXGAATGXA exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) ATCAXXGAATGG exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) atcatcgaatgga ['atcatcgaatgga'] - mismatches: [] - original: 'ATCATCGAATGGA' xtcatcgaatggx ['xtcatcgaatggx'] - mismatches: [0, 12] - original: 'ATCATCGAATGGA' atcatcgaaxgga ['atcatcgaaxgga'] - mismatches: [9] - original: 'ATCATCGAATGGA' atcaxxgaatgga ['atcaxxgaatgga'] - mismatches: [4, 5] - original: 'ATCATCGAATGGA' atcaxxgaatgxa atcaxxgaatgxa ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) atcaxxgaatgg atcaxxgaatgg ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) atcatcgaatgga match xtcatcgaatggx match atcatcgaaxgga match atcaxxgaatgga match atcaxxgaatgxa exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) atcaxxgaatgg exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) ['*', '*', '*', '*'] [' ', 'test'] - indent: ' ' - word: 'test' [' ', 'test'] - word: 'test' verify processing of C and HTML comments AA:BB:CC:DD:EE:FF ['AA:BB:CC:DD:EE:FF'] AA.BB.CC.DD.EE.FF ['AA.BB.CC.DD.EE.FF'] AA-BB-CC-DD-EE-FF ['AA-BB-CC-DD-EE-FF'] # mixed delimiters AA.BB:CC:DD:EE:FF AA.BB:CC:DD:EE:FF ^ ParseException: Expected MAC address, found 'AA' (at char 0), (line:1, col:1) pyparsing.core.Regex - MAC address FAIL: Expected MAC address, found 'AA' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 0.0.0.0 ['0.0.0.0'] 1.1.1.1 ['1.1.1.1'] 127.0.0.1 ['127.0.0.1'] 1.10.100.199 ['1.10.100.199'] 255.255.255.255 ['255.255.255.255'] . # out of range value 256.255.255.255 256.255.255.255 ^ ParseException: Expected IPv4 address, found '256' (at char 0), (line:1, col:1) pyparsing.core.Regex - IPv4 address FAIL: Expected IPv4 address, found '256' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 2001:0db8:85a3:0000:0000:8a2e:0370:7334 ['2001:0db8:85a3:0000:0000:8a2e:0370:7334'] 2134::1234:4567:2468:1236:2444:2106 ['2134::1234:4567:2468:1236:2444:2106'] 0:0:0:0:0:0:A00:1 ['0:0:0:0:0:0:A00:1'] 1080::8:800:200C:417A ['1080::8:800:200C:417A'] ::A00:1 ['::A00:1'] # loopback address ::1 ['::1'] # the null address :: ['::'] # ipv4 compatibility form ::ffff:192.168.0.1 ['::ffff:192.168.0.1'] # too few values 1080:0:0:0:8:800:200C 1080:0:0:0:8:800:200C ^ ParseException: Expected IPv6 address, found end of text (at char 21), (line:1, col:22) pyparsing.core.Combine - IPv6 address pyparsing.core.MatchFirst - IPv6 address pyparsing.core.And - full IPv6 address pyparsing.core.And - {':' hex_integer} pyparsing.core._SingleCharLiteral - ':' FAIL: Expected IPv6 address, found end of text (at char 21), (line:1, col:22) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4375, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4136, in parseImpl raise maxException File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4114, in parseImpl return e._parse( ^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 819, in _parseNoCache raise ParseException(instring, len_instring, self.errmsg, self) # too many ::'s, only 1 allowed 2134::1234:4567::2444:2106 2134::1234:4567::2444:2106 ^ ParseException: Expected end of text, found ':' (at char 15), (line:1, col:16) pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd FAIL: Expected end of text, found ':' (at char 15), (line:1, col:16) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1135, in parse_string se._parse(instring, loc) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3534, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 100 [100] -100 [-100] +100 [100] 3.14159 [3.14159] 6.02e23 [6.02e+23] 1e-12 [1e-12] 1e12 [1000000000000.0] -1e12 [-1000000000000.0] 3.14159 [3.14159] 6.02e23 [6.02e+23] 100 [100.0] -100 [-100.0] +100 [100.0] 3.14159 [3.14159] 6.02e23 [6.02e+23] 1e-12 [1e-12] 1997 ['1997'] - day: None - month: None - year: '1997' 1997-07 ['1997-07'] - day: None - month: '07' - year: '1997' 1997-07-16 ['1997-07-16'] - day: '16' - month: '07' - year: '1997' 1997-07-16 [datetime.date(1997, 7, 16)] 1997-07-16T19:20+01:00 ['1997-07-16T19:20+01:00'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: None - tz: '+01:00' - year: '1997' 1997-07-16T19:20:30+01:00 ['1997-07-16T19:20:30+01:00'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30' - tz: '+01:00' - year: '1997' 1997-07-16T19:20:30.45Z ['1997-07-16T19:20:30.45Z'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30.45' - tz: 'Z' - year: '1997' 1997-07-16 19:20:30.45 ['1997-07-16 19:20:30.45'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30.45' - tz: None - year: '1997' 1997-07-16T19:20:30.45 [datetime.datetime(1997, 7, 16, 19, 20, 30, 450000)] 123e4567-e89b-12d3-a456-426655440000 ['123e4567-e89b-12d3-a456-426655440000'] 1/2 [0.5] -15/16 [-0.9375] -3/-4 [0.75] 1/2 [0.5] -15/16 [-0.9375] -3/-4 [0.75] 1 1/2 [1.5] 2 -15/16 [2.9375] 0 -3/-4 [-0.75] 12 [12] 100 [100] -3 [-3] 1.732 [1.732] -3.14159 [-3.14159] 6.02e23 [6.02e+23] http://foo.com/blah_blah ['http://foo.com/blah_blah'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah/ ['http://foo.com/blah_blah/'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah/' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah_(wikipedia) ['http://foo.com/blah_blah_(wikipedia)'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah_(wikipedia)' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah_(wikipedia)_(again) ['http://foo.com/blah_blah_(wikipedia)_(again)'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah_(wikipedia)_(again)' - port: None - query: None - scheme: 'http' http://www.example.com/wpstyle/?p=364 ['http://www.example.com/wpstyle/?p=364'] - auth: None - fragment: None - host: 'www.example.com' - path: '/wpstyle/' - port: None - query: 'p=364' - scheme: 'http' https://www.example.com/foo/?bar=baz&inga=42&quux ['https://www.example.com/foo/?bar=baz&inga=42&quux'] - auth: None - fragment: None - host: 'www.example.com' - path: '/foo/' - port: None - query: 'bar=baz&inga=42&quux' - scheme: 'https' http://✪df.ws/123 ['http://✪df.ws/123'] - auth: None - fragment: None - host: '✪df.ws' - path: '/123' - port: None - query: None - scheme: 'http' http://userid:password@example.com:8080 ['http://userid:password@example.com:8080'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: None - port: '8080' - query: None - scheme: 'http' http://userid:password@example.com:8080/ ['http://userid:password@example.com:8080/'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: '/' - port: '8080' - query: None - scheme: 'http' http://userid@example.com ['http://userid@example.com'] - auth: 'userid' - fragment: None - host: 'example.com' - path: None - port: None - query: None - scheme: 'http' http://userid@example.com/ ['http://userid@example.com/'] - auth: 'userid' - fragment: None - host: 'example.com' - path: '/' - port: None - query: None - scheme: 'http' http://userid@example.com:8080 ['http://userid@example.com:8080'] - auth: 'userid' - fragment: None - host: 'example.com' - path: None - port: '8080' - query: None - scheme: 'http' http://userid@example.com:8080/ ['http://userid@example.com:8080/'] - auth: 'userid' - fragment: None - host: 'example.com' - path: '/' - port: '8080' - query: None - scheme: 'http' http://userid:password@example.com ['http://userid:password@example.com'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: None - port: None - query: None - scheme: 'http' http://userid:password@example.com/ ['http://userid:password@example.com/'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: '/' - port: None - query: None - scheme: 'http' http://142.42.1.1/ ['http://142.42.1.1/'] - auth: None - fragment: None - host: '142.42.1.1' - path: '/' - port: None - query: None - scheme: 'http' http://142.42.1.1:8080/ ['http://142.42.1.1:8080/'] - auth: None - fragment: None - host: '142.42.1.1' - path: '/' - port: '8080' - query: None - scheme: 'http' http://➡.ws/䨹 ['http://➡.ws/䨹'] - auth: None - fragment: None - host: '➡.ws' - path: '/䨹' - port: None - query: None - scheme: 'http' http://⌘.ws ['http://⌘.ws'] - auth: None - fragment: None - host: '⌘.ws' - path: None - port: None - query: None - scheme: 'http' http://⌘.ws/ ['http://⌘.ws/'] - auth: None - fragment: None - host: '⌘.ws' - path: '/' - port: None - query: None - scheme: 'http' http://foo.com/blah_(wikipedia)#cite-1 ['http://foo.com/blah_(wikipedia)#cite-1'] - auth: None - fragment: 'cite-1' - host: 'foo.com' - path: '/blah_(wikipedia)' - port: None - query: None - scheme: 'http' http://foo.com/blah_(wikipedia)_blah#cite-1 ['http://foo.com/blah_(wikipedia)_blah#cite-1'] - auth: None - fragment: 'cite-1' - host: 'foo.com' - path: '/blah_(wikipedia)_blah' - port: None - query: None - scheme: 'http' http://foo.com/unicode_(✪)_in_parens ['http://foo.com/unicode_(✪)_in_parens'] - auth: None - fragment: None - host: 'foo.com' - path: '/unicode_(✪)_in_parens' - port: None - query: None - scheme: 'http' http://foo.com/(something)?after=parens ['http://foo.com/(something)?after=parens'] - auth: None - fragment: None - host: 'foo.com' - path: '/(something)' - port: None - query: 'after=parens' - scheme: 'http' http://☺.damowmow.com/ ['http://☺.damowmow.com/'] - auth: None - fragment: None - host: '☺.damowmow.com' - path: '/' - port: None - query: None - scheme: 'http' http://code.google.com/events/#&product=browser ['http://code.google.com/events/#&product=browser'] - auth: None - fragment: '&product=browser' - host: 'code.google.com' - path: '/events/' - port: None - query: None - scheme: 'http' http://j.mp ['http://j.mp'] - auth: None - fragment: None - host: 'j.mp' - path: None - port: None - query: None - scheme: 'http' ftp://foo.bar/baz ['ftp://foo.bar/baz'] - auth: None - fragment: None - host: 'foo.bar' - path: '/baz' - port: None - query: None - scheme: 'ftp' http://foo.bar/?q=Test%20URL-encoded%20stuff ['http://foo.bar/?q=Test%20URL-encoded%20stuff'] - auth: None - fragment: None - host: 'foo.bar' - path: '/' - port: None - query: 'q=Test%20URL-encoded%20stuff' - scheme: 'http' http://مثال.إختبار ['http://مثال.إختبار'] - auth: None - fragment: None - host: 'مثال.إختبار' - path: None - port: None - query: None - scheme: 'http' http:// http:// ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://. http://. ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://.. http://.. ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://../ http://../ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://? http://? ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://?? http://?? ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://??/ http://??/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://# http://# ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://## http://## ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://##/ http://##/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) # skip: http://foo.bar?q=Spaces should be encoded // // ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) //a //a ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ///a ///a ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) /// /// ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http:///a http:///a ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) foo.com foo.com ^ ParseException: Expected url, found 'foo' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'foo' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) rdar://1234 rdar://1234 ^ ParseException: Expected url, found 'rdar' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'rdar' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) h://test h://test ^ ParseException: Expected url, found 'h' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'h' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http:// shouldfail.com http:// shouldfail.com ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) :// should fail :// should fail ^ ParseException: Expected url, found ':' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found ':' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://foo.bar/foo(bar)baz quux http://foo.bar/foo(bar)baz quux ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ftps://foo.bar/ ftps://foo.bar/ ^ ParseException: Expected url, found 'ftps' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'ftps' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://-error-.invalid/ http://-error-.invalid/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) # skip: http://a.b--c.de/ http://-a.b.co http://-a.b.co ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://a.b-.co http://a.b-.co ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://0.0.0.0 http://0.0.0.0 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://10.1.1.0 http://10.1.1.0 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ..... http://10.1.1.255 http://10.1.1.255 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://224.1.1.1 http://224.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://1.1.1.1.1 http://1.1.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://123.123.123 http://123.123.123 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://3628126748 http://3628126748 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://.www.foo.bar/ http://.www.foo.bar/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) # skip: http://www.foo.bar./ http://.www.foo.bar./ http://.www.foo.bar./ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://10.1.1.1 http://10.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ['https://bob:secret@www.example.com:8080/path/to/resource?filter=int#book-mark'] - auth: 'bob:secret' - fragment: 'book-mark' - host: 'www.example.com' - path: '/path/to/resource' - port: '8080' - query: 'filter=int' - scheme: 'https' Raised expected exception: ParseException: time data '1997-07-error' does not match format '%Y-%m-%d', found '1997' (at char 0), (line:1, col:1) Raised expected exception: ParseException: time data '1997-07-error' does not match format '%Y-%m-%dT%H:%M:%S.%f', found '1997' (at char 0), (line:1, col:1) 2 5 7 6 0 1 2 3 4 5 0 3 5 4 3 [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] 2 5 7 6 0 1 2 3 4 5 0 3 5 4 3.............. [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] B 5 7 F 0 1 2 3 4 5 _ C 5 4 3 [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] 5 string input item1 item2 item3 item4 item5 0 int user 2 int file 3 8 [['item1', 'item2', 'item3', 'item4', 'item5'], [], ['3', '8']] [0]: ['item1', 'item2', 'item3', 'item4', 'item5'] - count: 5 - items: ['item1', 'item2', 'item3', 'item4', 'item5'] - source: 'input' - type: 'string' [1]: [] - count: 0 - items: [] - source: 'user' - type: 'int' [2]: ['3', '8'] - count: 2 - items: ['3', '8'] - source: 'file' - type: 'int' type = '' source = '' ['True', 'True', 'False'] - items: ['True', 'True', 'False'] - type: 'bool' verify non-fatal usage of Literal("") Raised expected exception: ValueError: null string passed to Literal; use Empty() instead sdlfjs :sdf\:jls::djf: sl:kfsjf sdlfjs -sdf\:jls::--djf: sl-kfsjf sdlfjs -sdf\:::jls::--djf: sl:::-kfsjf sdlfjs ^sdf\:jls^^--djf^ sl-kfsjf sdlfjs ^^^==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf^^^ colonQuotes :(?:(?:::)|(?:\\.)|(?:[^:\n\r\\]))*: [['sdf:jls:djf'], ['jls:--djf'], [':jls:--djf'], [''], ['j=lz:--djf'], ['j=ls:--djf']] sdf:jls:djf sdf:jls:djf dashQuotes \-(?:(?:\-\-)|(?:\\.)|(?:[^\-\n\r\\]))*\- [['sdf:jls::-djf: sl'], ['sdf:::jls::-djf: sl:::'], [''], [''], ['']] sdf:jls::-djf: sl sdf:jls::-djf: sl hatQuotes \^(?:(?:\\.)|(?:[^\^\n\r\\]))*\^ [['sdf:jls'], ['--djf'], [''], ['==sdf:j=lz::--djf: sl='], ['']] sdf:jls sdf:jls hatQuotes1 \^(?:(?:\^\^)|(?:\\.)|(?:[^\^\n\r\\]))*\^ [['sdf:jls^--djf'], ['^==sdf:j=lz::--djf: sl='], ['']] sdf:jls^--djf sdf:jls^--djf dblEqQuotes ==(?:(?:\\.)|(?:(?:=(?!=)))|(?:[^=\n\r\\]))*== [['sdf:j=ls::--djf: sl']] sdf:j=ls::--djf: sl sdf:j=ls::--djf: sl ::: quotes :::(?:(?:(?:::(?!:))|(?::(?!::)))|(?:[^:\n\r]))*::: [['jls::--djf: sl']] jls::--djf: sl jls::--djf: sl ==-- quotes ==(?:(?:(?:\-(?!\-)))|(?:[^\-\n\r]))*\-\- [['sdf\\:j=lz::'], ['sdf\\:j=ls::']] sdf\:j=lz:: sdf\:j=lz:: ^^^ multiline quotes \^\^\^(?:(?:(?:\^\^(?!\^))|(?:\^(?!\^\^)))|(?:[^\^]))*\^\^\^ [['==sdf\\:j=lz::--djf: sl=^^=kfsjf\n sdlfjs ==sdf\\:j=ls::--djf: sl==kfsjf']] ==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf ==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf Raised expected exception: ValueError: quote_char cannot be the empty string \.\[(?:(?:(?:\](?!\.)))|(?:[^\]\n\r]))*\]\. ['...'] [''] [']'] [']]'] \+\*(?:(?:(?:\*(?!\+)))|(?:[^*\n\r]))*\*\+ ['...'] [''] ['*'] ['**'] \*/(?:(?:(?:/(?!\*)))|(?:[^/\n\r]))*/\* ['...'] [''] ['/'] ['//'] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately followed by keyword character, found '1000' (at char 5), (line:1, col:6) Raised expected exception: ParseException: Expected CaselessKeyword 'START', was immediately followed by keyword character, found '1000' (at char 5), (line:1, col:6) Raised expected exception: ValueError: min must be greater than 0 Raised expected exception: ValueError: max must be greater than, or equal to min Raised expected exception: ParseException: Expected ',', found end of text (at char 12), (line:1, col:13) 'ABC' [, 'ABC']... ['ABC', 'ABC'] 'ABC' [, 'ABC']... ['ABC', 'ABC', 'ABC'] {'True' | 'true' | 'False' | 'false'} [, {'True' | 'true' | 'False' | 'false'}]... bool bool bool bool bool [, bool]... 'ABC' [, 'ABC']... ['ABC', 'ABC', 'ABC'] ['bar', 'foo'] - one: 'foo' - two: 'bar' options(100) step(A) options(100) step(A) ^ ParseSyntaxException: Expected integer, found 'A' (at char 18), (line:1, col:19) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected integer, found 'A' (at char 18), (line:1, col:19) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal step(A) options(100) step(A) options(100) ^ ParseSyntaxException: Expected integer, found 'A' (at char 5), (line:1, col:6) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected integer, found 'A' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal options(100) step(100A) options(100) step(100A) ^ ParseSyntaxException: Expected 'Z', found 'A' (at char 21), (line:1, col:22) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected 'Z', found 'A' (at char 21), (line:1, col:22) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal options(100) step(22) step(100ZA) options(100) step(22) step(100ZA) ^ ParseSyntaxException: Expected ')', found 'A' (at char 31), (line:1, col:32) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected ')', found 'A' (at char 31), (line:1, col:32) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {{word}... num} pyparsing.core.OneOrMore - {word}... pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4790, in parseImpl loc, tokens = self_expr_parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 dd 123 ^ ParseException: Expected word, found '123' (at char 3), (line:1, col:4) pyparsing.core.And - {word word [word]... num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {word word [word]... num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 aa bb cc dd 123 ^ ParseException: Expected num, found 'dd' (at char 9), (line:1, col:10) pyparsing.core.And - {[word [word [word]]] num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'dd' (at char 9), (line:1, col:10) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) cc dd 123 ['cc', 'dd', '123'] aa bb cc dd 123 aa bb cc dd 123 ^ ParseException: Expected num, found 'cc' (at char 6), (line:1, col:7) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'cc' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ...... bb cc dd 123 bb cc dd 123 ^ ParseException: Expected num, found 'dd' (at char 6), (line:1, col:7) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'dd' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) dd 123 dd 123 ^ ParseException: Expected word, found '123' (at char 3), (line:1, col:4) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) a 1 ['a', 1] - label: 'a' - values: [1] b 1 2 3 ['b', 1, 2, 3] - label: 'b' - values: [1, 2, 3] c ['c'] - label: 'c' - values: [] a 1 ['a', 1] - label: 'a' - values: [1] b 1 2 3 ['b', 1, 2, 3] - label: 'b' - values: [1, 2, 3] c ['c'] - label: 'c' - values: [] a 1,1 ['a', [1, 1]] - label: 'a' - points: [[1, 1]] [0]: [1, 1] - x: 1 - y: 1 [0]: a [1]: [1, 1] - x: 1 - y: 1 b 1,1 2,2 3,3 ['b', [1, 1], [2, 2], [3, 3]] - label: 'b' - points: [[1, 1], [2, 2], [3, 3]] [0]: [1, 1] - x: 1 - y: 1 [1]: [2, 2] - x: 2 - y: 2 [2]: [3, 3] - x: 3 - y: 3 [0]: b [1]: [1, 1] - x: 1 - y: 1 [2]: [2, 2] - x: 2 - y: 2 [3]: [3, 3] - x: 3 - y: 3 c ['c'] - label: 'c' - points: [] [['a', '10'], ['b', '20']] - a: '10' - b: '20' [0]: ['a', '10'] [1]: ['b', '20'] ^ ParseException: Expected W:(A-Za-z) (at char 0), (line:1, col:1) tests.test_unit.Test09_WithLeftRecursionParsing pyparsing.core.Dict - Dict:({Group:({W:(A-Za-z) Suppress:('=') W:(0-9)})}...) pyparsing.core.OneOrMore - {Group:({W:(A-Za-z) Suppress:('=') W:(0-9)})}... pyparsing.core.Group - Group:({W:(A-Za-z) Suppress:('=') W:(0-9)}) pyparsing.core.And - {W:(A-Za-z) Suppress:('=') W:(0-9)} pyparsing.core._WordRegex - W:(A-Za-z) testing empty And testing empty Or testing empty MatchFirst testing empty Each Match [{integer | W:(0-9A-Za-z)}]... at loc 0(1,1) 123 A100 ^ Match integer at loc 0(1,1) 123 A100 ^ Matched integer -> [123] Match integer at loc 4(1,5) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found 'A100' (at char 4), (line:1, col:5) Match W:(0-9A-Za-z) at loc 4(1,5) 123 A100 ^ Matched W:(0-9A-Za-z) -> ['A100'] Match integer at loc 8(1,9) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 8), (line:1, col:9) Match W:(0-9A-Za-z) at loc 8(1,9) 123 A100 ^ Match W:(0-9A-Za-z) failed, ParseException raised: Expected W:(0-9A-Za-z), found end of text (at char 8), (line:1, col:9) Matched [{integer | W:(0-9A-Za-z)}]... -> [123, 'A100'] Match integer at loc 0(1,1) 123 A100 ^ Matched integer -> [123] Match integer at loc 4(1,5) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found 'A100' (at char 4), (line:1, col:5) Match W:(0-9A-Za-z) at loc 4(1,5) 123 A100 ^ Matched W:(0-9A-Za-z) -> ['A100'] Match integer at loc 8(1,9) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 8), (line:1, col:9) Match W:(0-9A-Za-z) at loc 8(1,9) 123 A100 ^ Match W:(0-9A-Za-z) failed, ParseException raised: Expected W:(0-9A-Za-z), found end of text (at char 8), (line:1, col:9) Match integer at loc 0(1,1) 1 2 3 ^ Matched integer -> ['1'] Match integer at loc 2(1,3) 1 2 3 ^ Matched integer -> ['2'] Match integer at loc 4(1,5) 1 2 3 ^ Matched integer -> ['3'] Match integer at loc 5(1,6) 1 2 3 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 5), (line:1, col:6) Packrat status: disabled ..............Match Z at loc 0(1,1) aba ^ Match Z failed, ParseException raised: Expected Z, found 'aba' (at char 0), (line:1, col:1) Match leading_a at loc 0(1,1) aba ^ Match A at loc 0(1,1) aba ^ Matched A -> ['a'] Match Z at loc 1(1,2) aba ^ Match Z failed, ParseException raised: Expected Z, found 'ba' (at char 1), (line:1, col:2) Match A at loc 1(1,2) aba ^ Match A failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) Match B at loc 1(1,2) aba ^ Matched B -> ['b'] Matched leading_a -> ['a'] Match Z at loc 1(1,2) aba ^ Match Z failed, ParseException raised: Expected Z, found 'ba' (at char 1), (line:1, col:2) Match leading_a at loc 1(1,2) aba ^ Match A at loc 1(1,2) aba ^ Match A failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) Match leading_a failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) Match B at loc 1(1,2) aba ^ Matched B -> ['b'] Match Z at loc 2(1,3) aba ^ Match Z failed, ParseException raised: Expected Z, found 'a' (at char 2), (line:1, col:3) Match leading_a at loc 2(1,3) aba ^ Match A at loc 2(1,3) aba ^ Matched A -> ['a'] Match Z at loc 3(1,4) aba ^ Match Z failed, ParseException raised: Expected Z, found end of text (at char 3), (line:1, col:4) Match A at loc 3(1,4) aba ^ Match A failed, ParseException raised: Expected A, found end of text (at char 3), (line:1, col:4) Match B at loc 3(1,4) aba ^ Match B failed, ParseException raised: Expected B, found end of text (at char 3), (line:1, col:4) Match leading_a failed, ParseException raised: Expected {Z | A | B}, found end of text (at char 3), (line:1, col:4) Match B at loc 2(1,3) aba ^ Match B failed, ParseException raised: Expected B, found 'a' (at char 2), (line:1, col:3) {'enable_debug_on_named_expressions': False, 'warn_multiple_tokens_in_named_alternation': False, 'warn_name_set_on_empty_Forward': False, 'warn_on_assignment_to_Forward': False, 'warn_on_match_first_with_lshift_operator': False, 'warn_on_multiple_string_args_to_oneof': False, 'warn_on_parse_using_empty_Forward': False, 'warn_ungrouped_named_tokens_in_collection': False} {'enable_debug_on_named_expressions': False, 'warn_multiple_tokens_in_named_alternation': True, 'warn_name_set_on_empty_Forward': True, 'warn_on_assignment_to_Forward': True, 'warn_on_match_first_with_lshift_operator': True, 'warn_on_multiple_string_args_to_oneof': True, 'warn_on_parse_using_empty_Forward': True, 'warn_ungrouped_named_tokens_in_collection': True} TypeError: descriptor 'upper' for 'str' objects doesn't apply to a 'int' object tests.test_unit.Test09_WithLeftRecursionParsing pyparsing.core._WordRegex - integer tests.test_unit.Modifier pyparsing.results.ParseResults 123 355 ^ ParseException: Expected word, found '355' (at char 4), (line:1, col:5) 123 355 (test using ErrorStop) ^ ParseSyntaxException: Expected word, found '355' (at char 4), (line:1, col:5) tests.test_unit.Test09_WithLeftRecursionParsing pyparsing.core.And - {int - word} A ^ ParseException: Expected int, found 'A' (at char 0), (line:1, col:1) tests.test_unit.Test09_WithLeftRecursionParsing pyparsing.core.And - {int int} divide_args pyparsing.core._WordRegex - int test does local memoization enable/disable during test [' this_semi_does_nothing()', ''], [' neither_does_this_but_there_are_spaces_afterward()', ''], [' a = "a;b"', 'return a # this is a comment; it has a semicolon!'], [' z=1000', 'b("; in quotes")', 'c=200', 'return z'], [" return ';'"], [" '''a docstring; with a semicolon'''"], [' a = 10', 'b = 11', 'c = 12'], [' # this comment; has several; semicolons'], [' x = 12', 'return x # so; does; this; one'], [' x = 15', '', '', 'y += x', 'return y'], [' this_semi_does_nothing()', ';', ''], [' neither_does_this_but_there_are_spaces_afterward()', ';', ''], [' a = "a;b"', ';', 'return a # this is a comment; it has a semicolon!'], [' z=1000', ';', 'b("; in quotes")', ';', 'c=200', ';', 'return z'], [" return ';'"], [" '''a docstring; with a semicolon'''"], [' a = 10', ';', 'b = 11', ';', 'c = 12'], [' # this comment; has several; semicolons'], [' x = 12', ';', 'return x # so; does; this; one'], [' x = 15', ';', '', ';', '', ';', 'y += x', ';', 'return y'], [''], [' def main():'], [' this_semi_does_nothing()', ''], [' neither_does_this_but_there_are_spaces_afterward()', ''], [' a = "a;b"', 'return a # this is a comment; it has a semicolon!'], [''], [' def b():'], [' if False:'], [' z=1000', 'b("; in quotes"); c=200;return z'], [" return ';'"], [''], [' class Foo(object):'], [' def bar(self):'], [" '''a docstring; with a semicolon'''"], [' a = 10', 'b = 11; c = 12'], [''], [' # this comment; has several; semicolons'], [' if self.spam:'], [' x = 12', 'return x # so; does; this; one'], [' x = 15', ';; y += x; return y'], [''], [' def baz(self):'], [' return self.bar'], [' '], W:(0-9) W:(0-9){3} W:(0-9){2,...} W:(0-9){1,3} W:(0-9){2,3} (0-9) ['balloon'] - item: 'balloon' - qty: 99 verify behavior of getName() ['XXX', ['b'], ['bb'], ['a'], ['bbb'], ['bbbb'], ['aa'], ['bbbbb'], [':', 'c'], ['bbbbbb'], ['aaa']] [0]: XXX [1]: ['b'] - B: 'b' [2]: ['bb'] - B: 'bb' [3]: ['a'] - A: 'a' [4]: ['bbb'] - B: 'bbb' [5]: ['bbbb'] - B: 'bbbb' [6]: ['aa'] - A: 'aa' [7]: ['bbbbb'] - B: 'bbbbb' [8]: [':', 'c'] - C: 'c' [9]: ['bbbbbb'] - B: 'bbbbbb' [10]: ['aaa'] - A: 'aaa' XXX 'XXX' ['b'] ParseResults(['b'], {'B': 'b'}) ['bb'] ParseResults(['bb'], {'B': 'bb'}) ['a'] ParseResults(['a'], {'A': 'a'}) ['bbb'] ParseResults(['bbb'], {'B': 'bbb'}) ['bbbb'] ParseResults(['bbbb'], {'B': 'bbbb'}) ['aa'] ParseResults(['aa'], {'A': 'aa'}) ['bbbbb'] ParseResults(['bbbbb'], {'B': 'bbbbb'}) [':', 'c'] ParseResults([':', 'c'], {'C': 'c'}) ['bbbbbb'] ParseResults(['bbbbbb'], {'B': 'bbbbbb'}) ['aaa'] ParseResults(['aaa'], {'A': 'aaa'}) XXX b bb a bbb bbbb aa bbbbb :c bbbbbb aaa [None, 'B', 'B', 'A', 'B', 'B', 'A', 'B', None, 'B', 'A'] ['lsjd'] non-key ['sldkjf'] non-key ['IF'] non-key ['Saslkj'] non-key ['AND'] non-key ['lsdjf'] non-key verify behavior of ParseResults.get() ['b', 'bb', 'a', 'bbb', 'bbbb', 'aa', 'bbbbb', ':', 'c', 'bbbbbb', 'aaa'] - A: 'aaa' - B: 'bbbbbb' - C: 'c' aaa !D ['11.11.13', 'useless . useless,21 useless 2 | ', 14.21, ' | asmdakldm'] ['21.12.12', 'fmpaosmfpoamsp 4 | ', 41, ' | ajfa9si90'] Raised expected exception: ParseException: Expected number, found 'useless' (at char 32), (line:1, col:33) Raised expected exception: ParseException: Expected number, found 'fmpaosmfpoamsp' (at char 32), (line:1, col:33) [["'string1'", "'string2'"]] [['string1', 'strin""g2']] [['"string1"', '"strin""g2"'], ["'string1'", "'string2'"]] [['string1', 'strin"g2']] [['string1', 'string2']] [['string1', 'string2']] [['string1', 'string2']] ["'ms1'", '1', '0', "'2009-12-22'", "'2009-12-22 10:41:22'"] This & that 2 > 1 0 < 1 Don't get excited! I said "Don't get excited!" Copyright © 2021 Dot ⟶ ˙ ['I', 'totally', 'love', 'pickles'] a = 100 b = 101 c = c1 = 200 c2 = c21 = 999 c3 = 'A horse, a horse, my kingdom for a horse' d = 505 ......[['a', 100], ['b', 101], ['c', ['c1', 200], ['c2', ['c21', 999]], ['c3', 'A horse, a horse, my kingdom for a horse']], ['d', 505]] - a: 100 - b: 101 - c: [['c1', 200], ['c2', ['c21', 999]], ['c3', 'A horse, a horse, my kingdom for a horse']] - c1: 200 - c2: [['c21', 999]] - c21: 999 [0]: ['c21', 999] - c3: 'A horse, a horse, my kingdom for a horse' [0]: ['c1', 200] [1]: ['c2', ['c21', 999]] - c21: 999 [0]: c2 [1]: ['c21', 999] [2]: ['c3', 'A horse, a horse, my kingdom for a horse'] - d: 505 [0]: ['a', 100] [1]: ['b', 101] [2]: ['c', ['c1', 200], ['c2', ['c21', 999]], ['c3', 'A horse, a horse, my kingdom for a horse']] - c1: 200 - c2: [['c21', 999]] - c21: 999 [0]: ['c21', 999] - c3: 'A horse, a horse, my kingdom for a horse' [0]: c [1]: ['c1', 200] [2]: ['c2', ['c21', 999]] - c21: 999 [0]: c2 [1]: ['c21', 999] [3]: ['c3', 'A horse, a horse, my kingdom for a horse'] [3]: ['d', 505] [['A', [100, 101, 102]], ['B', [200, 201]], ['C', [300]]] [['A', [100, 101, 102]], ['B', [200, 201]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [200, 201]] [0]: B [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] 1 2 12345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] 1 2 12345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] 1 2 3 123456789012345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] using searchString [[['A', [100, 101, 102]]], [['B', [['b', [200, 201]]]]], [['C', [300]]]] [['A', [100, 101, 102]], ['B', [['b', [200, 201]]]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [['b', [200, 201]]]] [0]: B [1]: [['b', [200, 201]]] [0]: ['b', [200, 201]] [0]: b [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] using parseString [['A', [100, 101, 102]], ['B', [['b', [200, 201]]]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [['b', [200, 201]]]] [0]: B [1]: [['b', [200, 201]]] [0]: ['b', [200, 201]] [0]: b [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] test good indentation 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.1.2| 5: 2.| [['1.', ['1.1', ['1.1.1', '1.1.2']], '2.']] test bad indentation 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.2| 5: 2.| Raised expected exception: ParseException: Expected end of text, found '1' (at char 78), (line:4, col:18) 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.2| 5: 2.| Raised expected exception: ParseException: Expected end of text, found '1' (at char 76), (line:4, col:16) [['def', 'A', ['(', 'z', ')'], ':', [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']]], 'B', ['def', 'BB', ['(', 'a', 'b', 'c', ')'], ':', [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]]], 'C', 'D', ['def', 'spam', ['(', 'x', 'y', ')'], ':', [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]]]] [0]: ['def', 'A', ['(', 'z', ')'], ':', [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']]] [0]: def [1]: A [2]: ['(', 'z', ')'] [3]: : [4]: [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']] [0]: ['A1'] [1]: [['B', '=', '100']] [0]: ['B', '=', '100'] [2]: [['G', '=', 'A2']] [0]: ['G', '=', 'A2'] [3]: ['A2'] [4]: ['A3'] [1]: B [2]: ['def', 'BB', ['(', 'a', 'b', 'c', ')'], ':', [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]]] [0]: def [1]: BB [2]: ['(', 'a', 'b', 'c', ')'] [3]: : [4]: [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]] [0]: ['BB1'] [1]: [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]] [0]: ['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]] [0]: def [1]: BBA [2]: ['(', ')'] [3]: : [4]: [['bba1'], ['bba2'], ['bba3']] [0]: ['bba1'] [1]: ['bba2'] [2]: ['bba3'] [3]: C [4]: D [5]: ['def', 'spam', ['(', 'x', 'y', ')'], ':', [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]]] [0]: def [1]: spam [2]: ['(', 'x', 'y', ')'] [3]: : [4]: [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]] [0]: [['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]] [0]: ['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]] [0]: def [1]: eggs [2]: ['(', 'z', ')'] [3]: : [4]: [['pass']] [0]: ['pass'] Parsing 'one0'... Parsing 'four0'... Parsing 'extra'... Parsing 'one1'... Parsing 'four1'... extra: [test] one0: two (three) four0: five (seven) extra: [test] one1: two (three) four1: five (seven) ['extra', [['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]]], 'extra', [['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]]]] [0]: extra [1]: [['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]]] [0]: ['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]] [0]: test [1]: [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]] [0]: ['one0', [['two', 'three']]] [0]: one0 [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four0', [['five', 'seven']]] [0]: four0 [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: extra [3]: [['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]]] [0]: ['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]] [0]: test [1]: [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]] [0]: ['one1', [['two', 'three']]] [0]: one1 [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four1', [['five', 'seven']]] [0]: four1 [1]: [['five', 'seven']] [0]: ['five', 'seven'] Parsing 'one'... Parsing 'four'... Parsing 'extra'... Parsing 'one'... Parsing 'four'... Parsing 'one'... Parsing 'four'... Parsing 'eight'... Parsing 'eleven'... Parsing 'fourteen'... Parsing 'seventeen'... .......... extra: [test] one: two (three) four: five (seven) extra: [test] one: two (three) four: five (seven) [test] one: two (three) four: five (seven) [test] eight: nine (ten) eleven: twelve (thirteen) fourteen: fifteen (sixteen) seventeen: eighteen (nineteen) ['extra', [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]]], 'extra', [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]]]] [0]: extra [1]: [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]]] [0]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: extra [3]: [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]]] [0]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [1]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]] [0]: test [1]: [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]] [0]: ['eight', [['nine', 'ten']]] [0]: eight [1]: [['nine', 'ten']] [0]: ['nine', 'ten'] [1]: ['eleven', [['twelve', 'thirteen']]] [0]: eleven [1]: [['twelve', 'thirteen']] [0]: ['twelve', 'thirteen'] [2]: ['fourteen', [['fifteen', 'sixteen']]] [0]: fourteen [1]: [['fifteen', 'sixteen']] [0]: ['fifteen', 'sixteen'] [3]: ['seventeen', [['eighteen', 'nineteen']]] [0]: seventeen [1]: [['eighteen', 'nineteen']] [0]: ['eighteen', 'nineteen'] [[9, '+', 2, '+', 3]] [0]: [9, '+', 2, '+', 3] [[9, '+', [2, '*', 3]]] [0]: [9, '+', [2, '*', 3]] [0]: 9 [1]: + [2]: [2, '*', 3] [[[9, '+', 2], '*', 3]] [0]: [[9, '+', 2], '*', 3] [0]: [9, '+', 2] [1]: * [2]: 3 [[[9, '+', ['-', 2]], '*', 3]] [0]: [[9, '+', ['-', 2]], '*', 3] [0]: [9, '+', ['-', 2]] [0]: 9 [1]: + [2]: ['-', 2] [1]: * [2]: 3 [[[9, '+', ['-', ['-', 2]]], '*', 3]] [0]: [[9, '+', ['-', ['-', 2]]], '*', 3] [0]: [9, '+', ['-', ['-', 2]]] [0]: 9 [1]: + [2]: ['-', ['-', 2]] [0]: - [1]: ['-', 2] [1]: * [2]: 3 [[[9, '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]]] [0]: [[9, '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]] [0]: [9, '+', ['-', 2]] [0]: 9 [1]: + [2]: ['-', 2] [1]: * [2]: [3, '^', [2, '^', 2]] [0]: 3 [1]: ^ [2]: [2, '^', 2] [[[[9, '!'], '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]]] [0]: [[[9, '!'], '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]] [0]: [[9, '!'], '+', ['-', 2]] [0]: [9, '!'] [1]: + [2]: ['-', 2] [1]: * [2]: [3, '^', [2, '^', 2]] [0]: 3 [1]: ^ [2]: [2, '^', 2] [[['M', '*', 'X'], '+', 'B']] [0]: [['M', '*', 'X'], '+', 'B'] [0]: ['M', '*', 'X'] [1]: + [2]: B [['M', '*', ['X', '+', 'B']]] [0]: ['M', '*', ['X', '+', 'B']] [0]: M [1]: * [2]: ['X', '+', 'B'] [[1, '+', [2, '*', ['-', [3, '^', 4]], '*', 5], '+', ['-', ['+', ['-', 6]]]]] [0]: [1, '+', [2, '*', ['-', [3, '^', 4]], '*', 5], '+', ['-', ['+', ['-', 6]]]] [0]: 1 [1]: + [2]: [2, '*', ['-', [3, '^', 4]], '*', 5] [0]: 2 [1]: * [2]: ['-', [3, '^', 4]] [0]: - [1]: [3, '^', 4] [3]: * [4]: 5 [3]: + [4]: ['-', ['+', ['-', 6]]] [0]: - [1]: ['+', ['-', 6]] [0]: + [1]: ['-', 6] [[3, '!', '!']] [0]: [3, '!', '!'] p = True q = False r = True p and not q (p & ~q) = True not not p ~~p = True not(p and q) ~(p & q) = True q or not p and r (q | (~p & r)) = False q or not p or not r (q | ~p | ~r) = False q or not (p and r) (q | ~(p & r)) = False p or q or r (p | q | r) = True p or q or r and False (p | q | (r & False)) = True (p or q or r) and False ((p | q | r) & False) = False Raised expected exception: ValueError: if numterms=3, opExpr must be a tuple or list of two expressions Raised expected exception: ValueError: if numterms=3, opExpr must be a tuple or list of two expressions Raised expected exception: ValueError: operator must be unary (1), binary (2), or ternary (3) Raised expected exception: ValueError: operator must be unary (1), binary (2), or ternary (3) Raised expected exception: ValueError: operator must indicate right or left associativity evaluate_int 9 '9' => [9] (count=1) [[[3, '+', 2], '?', 12, ':', 13]] [0]: [[3, '+', 2], '?', 12, ':', 13] [0]: [3, '+', 2] [1]: ? [2]: 12 [3]: : [4]: 13 [[[3, '+', 2], '?', 12, ':', 13]] [0]: [[3, '+', 2], '?', 12, ':', 13] [0]: [3, '+', 2] [1]: ? [2]: 12 [3]: : [4]: 13 [[3, '+', [2, '+', 11]]] [0]: [3, '+', [2, '+', 11]] [0]: 3 [1]: + [2]: [2, '+', 11] [[3, '+', [2, '+', 11]]] [0]: [3, '+', [2, '+', 11]] [0]: 3 [1]: + [2]: [2, '+', 11] [[3, '+', ['<', [2, '+', 11], '>']]] [0]: [3, '+', ['<', [2, '+', 11], '>']] [0]: 3 [1]: + [2]: ['<', [2, '+', 11], '>'] [0]: < [1]: [2, '+', 11] [2]: > [[3, '+', ['<<', [2, '+', 11], '>>']]] [0]: [3, '+', ['<<', [2, '+', 11], '>>']] [0]: 3 [1]: + [2]: ['<<', [2, '+', 11], '>>'] [0]: << [1]: [2, '+', 11] [2]: >> [[[3, 'x'], '+', 2]] [0]: [[3, 'x'], '+', 2] [0]: [3, 'x'] [1]: + [2]: 2 [[[3, 'x'], '+', 2]] [0]: [[3, 'x'], '+', 2] [0]: [3, 'x'] [1]: + [2]: 2 bar = foo [['bar', '=', 'foo']] bar = foo & baz = fee ['&', [['bar', '=', 'foo'], ['baz', '=', 'fee']]] ['SELECT', 'color', 'FROM', 'colors'] ['SELECT', 'color', 'FROM', 'colors'] .....['1999', '/', '12', '/', '31'] - day: '31' - month: '12' - year: '1999' ['1999', '12', '31'] - day: '31' - month: '12' - year: '1999' Raised expected exception: ValueError: no such diagnostic 'xyzzy' ['testA', 'testB', 'testC'] =? ['testA', 'testB', 'testC'] ['testC'] =? ['testC'] 'testB\ntestC\n' =? 'testB\ntestC\n' ['testD', 'testE', 'testF'] =? ['testD', 'testE', 'testF'] ['testF'] =? ['testF'] 'testE\ntestF' =? 'testE\ntestF' ['a'] =? ['a'] ['a'] =? ['a'] '' =? '' 0 'aaa' 1 '\naaa' Raised expected exception: ParseException: Expected Re:('a+'), found '\' (at char 0), (line:1, col:1) 2 'a\naa' Raised expected exception: ParseException: Expected end of text, found '\' (at char 1), (line:1, col:2) 3 'aaa\n' Raised expected exception: ParseException: Expected end of text, found '\' (at char 3), (line:1, col:4) verify correct line() behavior when first line is empty string {W:(A) - LineStart W:(B)} AAA BBB ['AAA', 'BBB'] AAA BBB ['AAA', 'BBB'] AAA BBB BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) no \n in default whitespace chars {W:(A) - LineStart W:(B)} AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 3), (line:1, col:4) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 6), (line:1, col:7) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 6), (line:1, col:7) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} AAA BBB ['AAA', 'BBB'] AAA BBB ['AAA', 'BBB'] AAA BBB BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) pyparsing.core.And - {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} FAIL: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) .................. AAA BBB AAA BBB ^ ParseSyntaxException: Expected end of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} FAIL: Expected end of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) 1 1234567890 1:AAA 1| 2:AAA 2| 3:| 4: AAA| 5:| 6:B AAA| 7:| normal parsing 0 3 1 AAA 1 ParseResults(['AAA'], {}) 6 9 2 AAA 2 ParseResults(['AAA'], {}) 12 18 3 ParseResults(['AAA'], {}) parsing without \n in whitespace chars 0 3 1 AAA 1 'A' 6 9 2 AAA 2 'A' 13 18 4 AAA ' ' 1 1234567890 1:| 2:a| 3: b| 4: c| 5:d| 6:e| 7: f| 8: g| [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [[['a']], [['b']], [['c']], [['d']], [['e']], [['f']], [['g']]] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] Literal Expected 'xyz', found end of text (at char 1), (line:1, col:2) CaselessLiteral Expected 'XYZ', found end of text (at char 1), (line:1, col:2) Keyword Expected Keyword 'xyz', found end of text (at char 1), (line:1, col:2) CaselessKeyword Expected CaselessKeyword 'xyz', found end of text (at char 1), (line:1, col:2) Word Expected W:(xyz), found end of text (at char 1), (line:1, col:2) Regex Expected Re:('xyz'), found end of text (at char 1), (line:1, col:2) 1 start 2 {integer 'start' integer} [1, 'start', 2] {integer 'start' integer} [1, 'start', 2] {integer 'START' integer} [1, 'START', 2] {integer word integer} [1, 'start', 2] 3 start4 {integer 'start' integer} [3, 'start', 4] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately followed by keyword character, found '4' (at char 7), (line:1, col:8) Raised expected exception: ParseException: Expected CaselessKeyword 'START', was immediately followed by keyword character, found '4' (at char 7), (line:1, col:8) Raised expected exception: ParseException: Expected word, found 'start4' (at char 2), (line:1, col:3) 5start 6 [5, 'start', 6] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately preceded by keyword character, found '5start' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected CaselessKeyword 'START', keyword was immediately preceded by keyword character, found '5start' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected word, found 'start' (at char 1), (line:1, col:2) [28, 'ID', 'PARI12345678', 43] - id: 'PARI12345678' - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 [[28, ['ID', 'PARI12345678'], 43]] - loc: [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 [0]: [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 [0, ['ljsdf'], 5] ['ljsdf'] [8, ['lksdjjf'], 15] ['lksdjjf'] [18, ['lkkjj'], 23] ['lkkjj'] ['body', False, 'Hello', ''] - contents: 'Hello' - empty: False - endBody: '' - startBody: ['body', False] - empty: False - tag: 'body' - tag: 'body' DOB >!<100-10-2010;more garbage verify MatchFirst iterates properly ['A', 'A', '3', 'A'] Raised expected exception: ParseException: matched token not at column 1, found '3' (at char 4), (line:1, col:5) ABC ^ ParseException: Expected W:(0-9), found 'ABC' (at char 0), (line:1, col:1) tests.test_unit.Test09_WithLeftRecursionParsing pyparsing.core._WordRegex - W:(0-9) ['A'] - Achar: 'A' Raised expected exception: ValueError: cannot multiply ParserElement by negative value {'username': 'goat', 'errors': {'username': ['already taken', 'too short']}, 'empty_field': ''} Test defaults: [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Non-default opener [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Non-default closer [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Literal expressions for opener and closer [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Use ignore expression (1) [['let', [['greeting', '"Hello,', 'world!"']], ';;(foo bar', ['display', 'greeting']]] [0]: ['let', [['greeting', '"Hello,', 'world!"']], ';;(foo bar', ['display', 'greeting']] [0]: let [1]: [['greeting', '"Hello,', 'world!"']] [0]: ['greeting', '"Hello,', 'world!"'] [2]: ;;(foo bar [3]: ['display', 'greeting'] Use ignore expression (2) [['let', [['greeting', '"Hello, )world!"']], ';;', '(foo bar', ['display', 'greeting']]] [0]: ['let', [['greeting', '"Hello, )world!"']], ';;', '(foo bar', ['display', 'greeting']] [0]: let [1]: [['greeting', '"Hello, )world!"']] [0]: ['greeting', '"Hello, )world!"'] [2]: ;; [3]: (foo bar [4]: ['display', 'greeting'] Raised expected exception: ValueError: opening and closing strings cannot be the same Raised expected exception: ValueError: opening and closing arguments must be strings if no content expression is given ['aName', ['outer', ["'inner with opener {{ and closer }} in quoted string'"]]] [0]: aName [1]: ['outer', ["'inner with opener {{ and closer }} in quoted string'"]] [0]: outer [1]: ["'inner with opener {{ and closer }} in quoted string'"] ['aName', ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]]] [0]: aName [1]: ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]] [0]: outer [1]: ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"] [0]: 'inner [1]: with [2]: opener [3]: ['and', 'closer'] [4]: in [5]: quoted [6]: string' ['aName', ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]]] [0]: aName [1]: ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]] [0]: outer [1]: ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"] [0]: 'inner [1]: with [2]: opener [3]: ['and', 'closer'] [4]: in [5]: quoted [6]: string' 9413 tests produced real number PASS valid tests (321) real number with scientific notation PASS valid tests (2319) signed integer PASS valid tests (153) real number PASS invalid tests (2213) real number with scientific notation PASS invalid tests (6587) .........................signed integer PASS invalid tests (9260) # literal oneOf tests a b c ['a', 'b', 'c'] a a a ['a', 'a', 'a'] abc ['a', 'b', 'c'] # keyword oneOf tests a b c ['a', 'b', 'c'] a a a ['a', 'a', 'a'] # keyword oneOf failure tests abc abc ^ ParseException: Expected end of text, found 'abc' (at char 0), (line:1, col:1) pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd FAIL: Expected end of text, found 'abc' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1135, in parse_string se._parse(instring, loc) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3534, in parseImpl raise ParseException(instring, loc, self.errmsg, self) verify oneOf handles duplicate symbols verify oneOf handles generator input verify oneOf handles list input verify oneOf handles set input Raised expected exception: TypeError: Invalid argument to one_of, expected string or iterable ['XXX Y/123', '1,234.567890'] - data: '1,234.567890' - id: 'XXX Y/123' ['0', '123', '321', 444] Raised expected exception: ParseException: OnlyOnce obj called multiple times w/out reset, found '1' (at char 0), (line:1, col:1) ['100', '200', '300', 600] verify handling of Optional's beyond the end of string Tal Weiss Major Tal Major Weiss Major Major Major Tal Major Weiss Major Tal Weiss ['foo'] - foo: ['foo'] ['bar', 'foo', 'bar', 'foo', 'bar', 'foo'] - bar: ['bar', 'bar', 'bar'] - foo: ['foo', 'foo', 'foo'] Raised expected exception: ParseException: Missing one or more required elements ('foo'), found 'bar' (at char 1), (line:1, col:2) 1999-12-31 100 2001-01-01 [['1999-12-31'], 100, ['2001-01-01']] - date: [['1999-12-31'], ['2001-01-01']] [0]: ['1999-12-31'] - day: '31' - month: '12' - year: '1999' [1]: ['2001-01-01'] - day: '01' - month: '01' - year: '2001' - id: 100 [0]: ['1999-12-31'] - day: '31' - month: '12' - year: '1999' [1]: 100 [2]: ['2001-01-01'] - day: '01' - month: '01' - year: '2001' 42 [42] - id: 42 verify Optional's do not cause match failure if have results name _images/cal.png:77_ ['alt', 'empty', 'height', 'src', 'startImg', 'tag', 'width'] ['int', 'f', '(', ')', '{}'] ['DO', ['Z']] [244, 23, 13, 2343] - int_values: [244, 23, 13, 2343] - total: 2623 ### before parse action is added ### result1.dump(): [['Mauney', '46.5']] - Rider: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [0]: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' ### after parse action was added ### result1.dump(): [['Mauney', '46.5']] - Rider: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [0]: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [['x1', AnnotatedToken('val', ['1']), 'x2', AnnotatedToken('val', ['2'])]] [0]: ['x1', AnnotatedToken('val', ['1']), 'x2', AnnotatedToken('val', ['2'])] 'AAAAA' parseAll=False (shouldSucceed=True) 'AAAAA' parseAll=True (shouldSucceed=True) 'AAABB' parseAll=False (shouldSucceed=True) 'AAABB' parseAll=True (shouldSucceed=False) AAABB ^ ParseException: Expected end of text, found 'BB' (at char 3), (line:1, col:4) tests.test_unit.Test09_WithLeftRecursionParsing pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd 'AAAAA //blah' parseAll=False (shouldSucceed=True) 'AAAAA //blah' parseAll=True (shouldSucceed=True) 'AAABB //blah' parseAll=False (shouldSucceed=True) 'AAABB //blah' parseAll=True (shouldSucceed=False) AAABB //blah ^ ParseException: Expected end of text, found 'BB' (at char 3), (line:1, col:4) tests.test_unit.Test09_WithLeftRecursionParsing pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd '00aab' parseAll=False (shouldSucceed=True) '00aab' parseAll=True (shouldSucceed=True) '00aaf' parseAll=False (shouldSucceed=True) '00aaf' parseAll=True (shouldSucceed=False) 00aaf ^ ParseException: Expected end of text, found 'f' (at char 4), (line:1, col:5) tests.test_unit.Test09_WithLeftRecursionParsing pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd Parsing: 'a,b,c,100.2,,3' -> ['a', 'b', 'c', '100.2', '', '3'] Parsing: 'd, e, j k , m ' -> ['d', 'e', 'j k', 'm'] Parsing: "'Hello, World', f, g , , 5.1,x" -> ["'Hello, World'", 'f', 'g', '', '5.1', 'x'] Parsing: 'John Doe, 123 Main St., Cleveland, Ohio' -> ['John Doe', '123 Main St.', 'Cleveland', 'Ohio'] Parsing: 'Jane Doe, 456 St. James St., Los Angeles , California ' -> ['Jane Doe', '456 St. James St.', 'Los Angeles', 'California'] Parsing tests/karthik.ini ... 23 ['users'] users.K 8 8 users.mod_scheme 'QPSK' 'QPSK' users.Na K+2 K+2 OK Parsing examples/Setup.ini ... 125 ['Startup', 'Languages', 'test'] Startup.audioinf M3i M3i Languages.key1 0x0003 0x0003 test.foo bar bar OK Constructing EBNF parser with pyparsing... Parsing EBNF grammar with EBNF parser... - terminal_string - meta_identifier - integer - syntax - syntax_rule - definitions_list - single_definition - syntactic_term - syntactic_factor - syntactic_primary - optional_sequence - repeated_sequence - grouped_sequence Parsing EBNF grammar with generated EBNF parser... [['syntax', '=', '(', 'syntax_rule', ')', ',', '{', '(', 'syntax_rule', ')', '}', ';'], ['syntax_rule', '=', 'meta_identifier', ',', "'='", ',', 'definitions_list', ',', "';'", ';'], ['definitions_list', '=', 'single_definition', ',', '{', "'|'", ',', 'single_definition', '}', ';'], ['single_definition', '=', 'syntactic_term', ',', '{', "','", ',', 'syntactic_term', '}', ';'], ['syntactic_term', '=', 'syntactic_factor', ',', '[', "'-'", ',', 'syntactic_factor', ']', ';'], ['syntactic_factor', '=', '[', 'integer', ',', "'*'", ']', ',', 'syntactic_primary', ';'], ['syntactic_primary', '=', 'optional_sequence', '|', 'repeated_sequence', '|', 'grouped_sequence', '|', 'meta_identifier', '|', 'terminal_string', ';'], ['optional_sequence', '=', "'['", ',', 'definitions_list', ',', "']'", ';'], ['repeated_sequence', '=', "'{'", ',', 'definitions_list', ',', "'}'", ';'], ['grouped_sequence', '=', "'('", ',', 'definitions_list', ',', "')'", ';']] [['xavier', 'yeti'], ['alpha', 'beta', 'charlie'], ['will', 'beaver']] ['xavier', 'yeti'] ['alpha', 'beta', 'charlie'] ['will', 'beaver'] ['1', '0x2', '3', '0x4', 'aaa'] - base10: ['1', '3'] - hex: ['0x2', '0x4'] - word: ['aaa'] [[['Q', ['x', 'y', 'z']]], ':-', ['Bloo', ['x', 'Mitsis', 'y']], ['Foo', ['y', 'z', '1243']], ['y', '>', '28'], ['x', '<', '12'], ['x', '>', '3']] - Bloo: ['x', 'Mitsis', 'y'] - Foo: ['y', 'z', '1243'] - head: [['Q', ['x', 'y', 'z']]] - Q: ['x', 'y', 'z'] [0]: ['Q', ['x', 'y', 'z']] [0]: Q [1]: ['x', 'y', 'z'] - pred: [['y', '>', '28'], ['x', '<', '12'], ['x', '>', '3']] [0]: ['y', '>', '28'] [1]: ['x', '<', '12'] [2]: ['x', '>', '3'] [0]: [['Q', ['x', 'y', 'z']]] - Q: ['x', 'y', 'z'] [0]: ['Q', ['x', 'y', 'z']] [0]: Q [1]: ['x', 'y', 'z'] [1]: :- [2]: ['Bloo', ['x', 'Mitsis', 'y']] [0]: Bloo [1]: ['x', 'Mitsis', 'y'] [3]: ['Foo', ['y', 'z', '1243']] [0]: Foo [1]: ['y', 'z', '1243'] [4]: ['y', '>', '28'] [5]: ['x', '<', '12'] [6]: ['x', '>', '3'] Re:('[a-z]+') ['abc'] Re:('[a-z]+') ['abc'] Re:('[a-z]+') ['abc'] Re:('[a-z]+') ................ ['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] {Re:('[a-z]+') | Re:('[a-z]+')} ['abc'] {Re:('[a-z]+') ^ Re:('[a-z]+')} ['abc'] {Re:('[a-z]*') | Re:('[a-z]*')} ['abc'] {Re:('[a-z]*') ^ Re:('[a-z]*')} ['abc'] Raised expected exception: ParseSyntaxException: Expected W:(0-9), found 'bad' (at char 4), (line:1, col:5) Raised expected exception: ParseSyntaxException: should raise here (at char 0), (line:1, col:1) Raised expected exception: ParseSyntaxException: Expected identifier, found end of text (at char 1), (line:1, col:2) [123, 456, 789] [123, 456, 789] 9 -> 9 -9 -> -9 --9 -> 9 -E -> -2.718281828459045 9 + 3 + 5 -> 17 9 + 3 / 11 -> 9.272727272727273 (9 + 3) -> 12 (9+3) / 11 -> 1.0909090909090908 9 - 12 - 6 -> -9 9 - (12 - 6) -> 3 2*3.14159 -> 6.28318 3.1415926535*3.1415926535 / 10 -> 0.9869604400525172 PI * PI / 10 -> 0.9869604401089358 PI*PI/10 -> 0.9869604401089358 PI^2 -> 9.869604401089358 round(PI^2) -> 10 6.02E23 * 8.048 -> 4.844896e+24 e / 3 -> 0.9060939428196817 sin(PI/2) -> 1.0 10+sin(PI/4)^2 -> 10.5 trunc(E) -> 2 trunc(-E) -> -2 round(E) -> 3 round(-E) -> -3 E^PI -> 23.140692632779263 exp(0) -> 1.0 exp(1) -> 2.718281828459045 2^3^2 -> 512 (2^3)^2 -> 64 2^3+2 -> 10 2^3+5 -> 13 2^9 -> 512 sgn(-2) -> -1 sgn(0) -> 0 sgn(0.1) -> 1 round(E, 3) -> 2.718 round(PI^2, 3) -> 9.87 sgn(cos(PI/4)) -> 1 sgn(cos(PI/2)) -> 0 sgn(cos(PI*3/4)) -> -1 +(sgn(cos(PI/4))) -> 1 -(sgn(cos(PI/4))) -> -1 -> ['BODY', False] ['BODY', False] - empty: False - startBody: ['BODY', False] - empty: False - tag: 'BODY' - tag: 'BODY' -> ['BODY', ['bgcolor', '#00FFCC'], False] ['BODY', ['bgcolor', '#00FFCC'], False] - bgcolor: '#00FFCC' - empty: False - startBody: ['BODY', ['bgcolor', '#00FFCC'], False] - bgcolor: '#00FFCC' - empty: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFCC'] [2]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFCC'] [2]: False -> ['BODY', ['bgcolor', '#00FFAA'], True] ['BODY', ['bgcolor', '#00FFAA'], True] - bgcolor: '#00FFAA' - empty: True - startBody: ['BODY', ['bgcolor', '#00FFAA'], True] - bgcolor: '#00FFAA' - empty: True - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFAA'] [2]: True - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFAA'] [2]: True -> ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False -> ['BODY', True] ['BODY', True] - empty: True - startBody: ['BODY', True] - empty: True - tag: 'BODY' - tag: 'BODY' -> [''] [''] - endBody: '' end tag /* * a block comment * */ typedef string[10] tenStrings; typedef sequence stringSeq; typedef sequence< sequence > stringSeqSeq; interface QoSAdmin { stringSeq method1(in string arg1, inout long arg2); stringSeqSeq method2(in string arg1, inout long arg2, inout long arg3); string method3(); }; tokens = [['typedef', 'string', '[', '10', ']', 'tenStrings', ';'], ['typedef', ['sequence', '<', 'string', '>'], 'stringSeq', ';'], ['typedef', ['sequence', '<', ['sequence', '<', 'string', '>'], '>'], 'stringSeqSeq', ';'], ['interface', 'QoSAdmin', '{', 'stringSeq', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', 'stringSeqSeq', 'method2', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ['inout', 'long', 'arg3'], ')', ';', 'string', 'method3', '(', ')', ';', '}', ';']] 59 /* * a block comment * */ typedef string[10] tenStrings; typedef /** ** *** **** * * a block comment * */ sequence /*comment inside an And */ stringSeq; /* */ /**/ /***/ /****/ typedef sequence< sequence > stringSeqSeq; interface QoSAdmin { stringSeq method1(in string arg1, inout long arg2); stringSeqSeq method2(in string arg1, inout long arg2, inout long arg3); string method3(); }; tokens = [['typedef', 'string', '[', '10', ']', 'tenStrings', ';'], ['typedef', ['sequence', '<', 'string', '>'], 'stringSeq', ';'], ['typedef', ['sequence', '<', ['sequence', '<', 'string', '>'], '>'], 'stringSeqSeq', ';'], ['interface', 'QoSAdmin', '{', 'stringSeq', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', 'stringSeqSeq', 'method2', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ['inout', 'long', 'arg3'], ')', ';', 'string', 'method3', '(', ')', ';', '}', ';']] 59 const string test="Test String\n"; const long a = 0; const long b = -100; const float c = 3.14159; const long d = 0x007f7f7f; exception TestException { string msg; sequence dataStrings; }; interface TestInterface { void method1(in string arg1, inout long arg2); }; tokens = [['const', 'string', 'test', '=', '"Test String\\n"', ';'], ['const', 'long', 'a', '=', '0', ';'], ['const', 'long', 'b', '=', '-100', ';'], ['const', 'float', 'c', '=', '3.14159', ';'], ['const', 'long', 'd', '=', '0x007f7f7f', ';'], 'exception', 'TestException', '{', ['string', 'msg', ';'], [['sequence', '<', 'string', '>'], 'dataStrings', ';'], '}', ';', ['interface', 'TestInterface', '{', 'void', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', '}', ';']] 60 module Test1 { exception TestException { string msg; ]; interface TestInterface { void method1(in string arg1, inout long arg2) raises (TestException); }; }; exception TestException ^ Expected {moduleDef | {moduleItem}...}, found 'exception' (at char 56), (line:4, col:15) module Test1 { exception TestException { string msg; }; }; tokens = ['module', 'Test1', '{', 'exception', 'TestException', '{', ['string', 'msg', ';'], '}', ';', '}', ';'] 13 Test ifOnlyIfOnly Match Literal ['if'] Match Keyword failed Test if(OnlyIfOnly) Match Literal ['if'] Match Keyword ['if'] Test if (OnlyIf Only) Match Literal ['if'] Match Keyword ['if'] Test IFOnlyIfOnly Match Literal failed Match Keyword failed Test If(OnlyIfOnly) Match Literal failed Match Keyword ['if'] Test iF (OnlyIf Only) Match Literal failed Match Keyword ['if'] Raised expected exception: ValueError: null string passed to Keyword; use Empty() instead ['0', '123', '321', 444] ['spam', 'eggs'] - first: 'spam' - second: 'eggs' [] ['123', '456', 'ABC', 'DEF'] - ints: ['123', '456'] - words: ['ABC', 'DEF'] ['123', 'ABC', 'DEF'] - ints: ['123', '456'] ...........['List', '__add__', '__annotations__', '__bool__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattr__', '__getattribute__', '__getitem__', '__getnewargs__', '__getstate__', '__gt__', '__hash__', '__iadd__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__module__', '__ne__', '__new__', '__radd__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__setattr__', '__setitem__', '__setstate__', '__sizeof__', '__slots__', '__str__', '__subclasshook__', '__weakref__', '_all_names', '_asStringList', '_modal', '_name', '_null_values', '_parent', '_tokdict', '_toklist', 'append', 'asDict', 'asList', 'as_dict', 'as_list', 'clear', 'copy', 'dump', 'extend', 'from_dict', 'get', 'getName', 'get_name', 'haskeys', 'insert', 'items', 'keys', 'pop', 'pprint', 'trios', 'values'] ['spam', 'eggs', 'foo', 'bar'] ['abc', 'def', 'ghi', 'ihg', 'fed', 'cba'] [['123', 456, ['789', 789]]] - trios: ['123', 456, ['789', 789]] - first: '123' - second: 456 - third: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: 123 [1]: 456 [2]: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: ['123', 456, ['789', 789]] - first: '123' - second: 456 - third: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: 123 [1]: 456 [2]: ['789', 789] - threeInt: 789 - threeStr: '789' ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'] ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'] ['c', 'j', 'A', 'i', 'B', 'a', 'h', 'f', 'C', 'D', 'E', 'F', 'G', 'H', 'e', 'g', 'I', 'b', 'd', 'J'] ['c', 'j', 'A', 'i', 'B', 'a', 'h', 'f', 'C', 'D', 'E', 'F', 'G', 'H', 'e', 'g', 'I', 'b', 'd', 'J'] Pre-insert [[1, 2, 3], 'dice', ['rolled', 'first', 'try']] - additional: ['rolled', 'first', 'try'] - label: 'dice' - nums: [1, 2, 3] [0]: [1, 2, 3] [1]: dice [2]: ['rolled', 'first', 'try'] Post-insert [[1, 2, 3], 6, 'dice', ['rolled', 'first', 'try']] - additional: ['rolled', 'first', 'try'] - label: 'dice' - nums: [1, 2, 3] [0]: [1, 2, 3] [1]: 6 [2]: dice [3]: ['rolled', 'first', 'try'] [ 1,2,3,4,5,6 ] [['[', '1', '2', '3', '4', '5', '6', ']']] - LIST: ['[', '1', '2', '3', '4', '5', '6', ']'] - END_LIST: ']' - LIST_VALUES: ['1', '2', '3', '4', '5', '6'] - LIT_NUM: ['1', '2', '3', '4', '5', '6'] - START_LIST: '[' [0]: ['[', '1', '2', '3', '4', '5', '6', ']'] - END_LIST: ']' - LIST_VALUES: ['1', '2', '3', '4', '5', '6'] - LIT_NUM: ['1', '2', '3', '4', '5', '6'] - START_LIST: '[' "Golden Gate Bridge" 37.819722 -122.478611 height=746 span=4200 ['Golden Gate Bridge', [37.819722, -122.478611, ['height', 746], ['span', 4200]]] - data: [37.819722, -122.478611, ['height', 746], ['span', 4200]] - height: 746 - lat: 37.819722 - long: -122.478611 - span: 4200 [0]: 37.819722 [1]: -122.478611 [2]: ['height', 746] [3]: ['span', 4200] - name: 'Golden Gate Bridge' [0]: Golden Gate Bridge [1]: [37.819722, -122.478611, ['height', 746], ['span', 4200]] - height: 746 - lat: 37.819722 - long: -122.478611 - span: 4200 [0]: 37.819722 [1]: -122.478611 [2]: ['height', 746] [3]: ['span', 4200] ['a', ['href', 'blah'], False] - empty: False - href: 'blah' - startA: ['a', ['href', 'blah'], False] - empty: False - href: 'blah' - tag: 'a' [0]: a [1]: ['href', 'blah'] [2]: False - tag: 'a' [0]: a [1]: ['href', 'blah'] [2]: False [] [] [1, 2, 3, 4, 5] ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 0 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 1 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 2 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 3 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 4 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 5 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 0 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 1 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 2 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 3 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 4 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 5 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 0 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 1 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 2 [['BABBAB']] [0]: ['BABBAB'] ............................Test pickle dump protocol 3 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 4 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 5 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 0 ['BABBAB'] Test pickle dump protocol 1 ['BABBAB'] Test pickle dump protocol 2 ['BABBAB'] Test pickle dump protocol 3 ['BABBAB'] Test pickle dump protocol 4 ['BABBAB'] Test pickle dump protocol 5 ['BABBAB'] Test pickle dump protocol 0 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 1 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 2 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 3 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 4 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 5 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 0 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 1 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 2 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 3 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 4 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 5 ['BABBAB'] - name: ['BABBAB'] ParseResults(['test', 'blub'], {'word': 'blub'}) blub {'word': 'blub'} ParseResults(['test', 'blub'], {'word': ['test', 'blub']}) ['test', 'blub'] {'word': ['test', 'blub']} ['abc'] - A: 'abc' Raised expected exception: AttributeError: __xyz__ ['5', '4', '3', '2', '1'] {'eggs', 'spam'} not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] ParseResults([('A', 'Z')], {'Achar': ('A', 'Z')}) ('A', 'Z') ['/', [['respectaccents']]] ('/respectaccents/ignoreaccents', 0) ['/', [['ignoreaccents']]] ('/respectaccents/ignoreaccents', 15) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 1)}, '_info_': ('/respectaccents/ignoreaccents', 1)}, '/': '', ParseResults(['respectaccents'], {'_info_': ('/respectaccents/ignoreaccents', 1)}): '', '_info_': ('/respectaccents/ignoreaccents', 0)} ('/respectaccents/ignoreaccents', 0) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 16)}, '_info_': ('/respectaccents/ignoreaccents', 16)}, '/': '', ParseResults(['ignoreaccents'], {'_info_': ('/respectaccents/ignoreaccents', 16)}): '', '_info_': ('/respectaccents/ignoreaccents', 15)} ('/respectaccents/ignoreaccents', 15) ['/', [['respectaccents']]] ('/respectaccents/ignoreaccents', 0) ['/', [['ignoreaccents']]] ('/respectaccents/ignoreaccents', 15) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 1)}, '_info_': ('/respectaccents/ignoreaccents', 1)}, '/': '', ParseResults(['respectaccents'], {'_info_': ('/respectaccents/ignoreaccents', 1)}): '', '_info_': ('/respectaccents/ignoreaccents', 0)} ('/respectaccents/ignoreaccents', 0) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 16)}, '_info_': ('/respectaccents/ignoreaccents', 16)}, '/': '', ParseResults(['ignoreaccents'], {'_info_': ('/respectaccents/ignoreaccents', 16)}): '', '_info_': ('/respectaccents/ignoreaccents', 15)} ('/respectaccents/ignoreaccents', 15) Re:('[-+][0-9]+') correctly failed to match '1234 foo' Re:('[-+][0-9]+') correctly failed to match ' +foo' Re:('[0-9]+') correctly failed to match 'abc' Re:('[0-9]+') correctly failed to match '+123 foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match 'foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match '"foo bar\'' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match '\'foo bar"' Re:('[-+][0-9]+') correctly matched ' +123' Re:('[-+][0-9]+') correctly matched '+123' Re:('[-+][0-9]+') correctly matched '+123 foo' Re:('[-+][0-9]+') correctly matched '-0 foo' Re:('[0-9]+') correctly matched '123 foo' Re:('[0-9]+') correctly matched '0 foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly matched '"foo"' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly matched "'foo bar' baz" Re:('[A-Z]+') correctly failed to match 'blah' Re:('[A-Z]+') correctly matched 'BLAH' Re:('("(?P[^\"]*)")') correctly matched '"foo bar" baz' ['"zork"'] [('content', 'zork')] zork lets try an invalid RE successfully rejected an invalid RE: invalid pattern ('("[^"]*")|(\'[^\']*\'') passed to Regex Raised expected exception: ValueError: null string passed to Regex; use Empty() instead ['spam', 'eggs', 'suf'] ['pre', 'spam', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: ParseException: Missing one or more required elements ('and'), found ' ' (at char 4), (line:1, col:5) ['spam', 'and', 'eggs'] - first: 'spam' - second: 'eggs' Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement ['spam', 'eggs'] ['pre', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement ['abd', 'def', 'ghi', 'jkl'] ['abd', 'def', 'ghi', 'jkl'] Raised expected exception: TypeError: cannot multiply ParserElement and str objects Raised expected exception: TypeError: cannot multiply ParserElement and str objects ['spam', '11', '22'] - first: 'spam' - second: ['11', '22'] ['spam', '111', '222'] - first: 'spam' - second: ['111', '222'] ['spam'] - first: 'spam' ['spam', '12', '23', '34'] - first: 'spam' - second: ['12', '23', '34'] ['spam', '45'] - first: 'spam' - second: ['45'] ['spam', '100'] - first: 'spam' - second: ['100'] ['spam', '100', '200', '300'] - first: 'spam' - second: ['100', '200', '300'] ['spam', '1', '2'] - first: 'spam' - second: ['1', '2'] ['spam', '1', '2', '3'] - first: 'spam' - second: ['1', '2', '3'] Raised expected exception: ValueError: second tuple value must be greater or equal to first tuple value Raised expected exception: TypeError: cannot multiply ParserElement and (str,str) objects Raised expected exception: TypeError: cannot multiply ParserElement and (str,NoneType) objects Raised expected exception: TypeError: only 1 or 2 index arguments supported ((2, 3, 4)) ['spam', 'eggs', 'suf'] ['pre', 'spam', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement {{word {{word_1 word} ^ word}} ^ {word word word}} foo bar temp -> ['foo', 'bar', 'temp'] EXP: AAA ['123', '456', '789', '234'] GOT: AAA ['123', '456', '789', '234'] AAA ['123', '456', '789', '234'] EXP: 234 ['123', '456', '789'] GOT: 234 ['123', '456', '789'] 234 ['123', '456', '789'] EXP: AAA ['123', '456', '789'] GOT: AAA ['123', '456', '789'] AAA ['123', '456', '789'] EXP: 789 ['123', '456'] GOT: 789 ['123', '456'] 789 ['123', '456'] noname ['123', '456'] ['AAA', '123', '456', '789', '234'] - name: 'AAA' Raised expected exception: TypeError: pop() got an unexpected keyword argument 'notDefault' c384 b8324 _9293874 _293 404 $%^$^%$2939 [384, 8324] - prefix: ['c', 'b'] [9293874, 293] [404] [2939] - prefix: ['^%$'] [2939] [404] [['working']] [0]: ['working'] - main: ['working'] - negs_lb: 'not' got maximum excursion limit exception ['like "SQL"'] ['aaayaaa'] ..............................>>entering convert_to_int(line: '132', 0, ParseResults(['132'], {})) <>entering (line: '132', 0, ParseResults([132], {})) < (ret: 1320) >>entering Z(line: '132', 0, ParseResults([1320], {})) <] ('123', '456', 'lsdfkj') [('123', '456', 'lsdfkj')] Raised expected exception: TypeError: Regex may only be constructed with a string or a compiled RE object test sub with string This is the title: 'Richard III' test sub with re string

This is the main heading

This is the sub-heading

test sub with re string (Regex returns re.match)

This is the main heading

This is the sub-heading

test sub with callable that return str I want this in upcase: WHAT? WHAT? Raised expected exception: TypeError: cannot use sub() with a callable with Regex(asMatch=True) Raised expected exception: TypeError: cannot use sub() with Regex(asGroupList=True) Raised expected exception: TypeError: cannot use sub() with Regex(asGroupList=True) verify behavior with repeated tokens when packrat parsing is enabled skipping this test, not compatible with memoization skipping this test, not compatible with memoization skipping this test, not compatible with memoization skipping this test, not compatible with memoization skipping this test, not compatible with memoization ['bam', 'boo'] ['boo', 'bam'] BD -> Expected {'A' | {'B' 'C'} | 'E'}, found 'D' (at char 1), (line:1, col:2) [1, 2, 3, 4, 6, 8, 9, 10, 16] [1, 2, 3, 4, 6, 8, 9, 10, 16] [11] [11] 1/2 eval: 0.5 1/0 [1, '/', 0] - denominator: 0 - numerator: 1 eval_fraction failed: ZeroDivisionError: division by zero True ['129.6.15.28', '129.6.15.29', '132.163.4.101', '132.163.4.102', '132.163.4.103'] [(ParseResults([], {}), 5, 6)] Before parsing with setBreak: False After parsing with setBreak: True a | b | c d | e | f {a | b | c | d | e | f} Forward: + | - term + | - term Forward: ?: term ?: term Forward: {a | b | c [{d | e | f : ...}]...} int [, int]... (len) int... nested () expression (, ) (, ) common HTML entity lsdjkf &'"&xyzzy; Raised expected exception: TypeError: parse actions must be callable ['A'] - Achar: 'A' verify behavior of setResultsName with OneOrMore and ZeroOrMore ['test', 'test'] ['test', 'test'] ['test', 'test'] ['test', 'test'] ['test', 'test'] Received expected exception: just one arg (at char 0), (line:1, col:1) ['some text /* comment with ; in */', ';', 'working'] ['some text /* comment with ; in */some other stuff', ';', 'working'] ['some text /* comment with ; in */', ';', 'working'] Raised expected exception: ParseException: Expected ';', found ' ' (at char 37), (line:1, col:38) Raised expected exception: Exception: use of `...` expression without following SkipTo target expression verify proper streamline logic {{{'A' 'B'} 'C'} 'D'} {'A' 'B' 'C' 'D'} ['123'] ['123'] ['123'] ['123'] ['123'] ['123'] Raised expected exception: ParseException: Expected W:(0-9), found ' ' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected '123', found ' ' (at char 0), (line:1, col:1) {StringStart W:(a-e) StringEnd} 'aaa' ['aaa'] {LineStart W:(a-e) StringEnd} 'aaa' ['aaa'] {LineStart W:(a-e) StringEnd} '\naaa' ['aaa'] {LineStart W:(a-e) StringEnd} ' aaa' ['aaa'] {LineStart W:(a-e) StringEnd} '\n aaa' ['aaa'] {AtLineStart:(W:(a-e)) StringEnd} ' aaa' Raised expected exception: ParseException: not found at line start, found 'aaa' (at char 3), (line:1, col:4) {AtLineStart:(W:(a-e)) StringEnd} '\n aaa' Raised expected exception: ParseException: not found at line start, found 'aaa' (at char 4), (line:2, col:4) garbage;DOB 10-10-2010;more garbage ID PARI12345678;more garbage ID:PARI12345678 DOB:10-10-2010 INFO: ID:PARI12345678 DOB:10-10-2010 INFO: ['DOB', '10-10-2010'] - dob: '10-10-2010' ['ID', 'PARI12345678'] - id: 'PARI12345678' garbage;ID PARI12345678;more garbage DOB 10-10-2010;more garbage ID:PARI12345678 DOB:10-10-2010 INFO: ID:PARI12345678 DOB:10-10-2010 INFO: ['ID', 'PARI12345678'] - id: 'PARI12345678' ['DOB', '10-10-2010'] - dob: '10-10-2010' garbage;DOB 10-10-2010 ID: DOB:10-10-2010 INFO: ID: DOB:10-10-2010 INFO: ['DOB', '10-10-2010'] - dob: '10-10-2010' garbage;ID PARI12345678;more garbage- I am cool ID:PARI12345678 DOB: INFO: I am cool ID:PARI12345678 DOB: INFO: I am cool ['ID', 'PARI12345678'] - id: 'PARI12345678' ['-', ' I am cool'] - info: ' I am cool' 00 11 22 aa FF 0a 0d 1a [0, 17, 34, 170, 255, 10, 13, 26] I wish to buy 12345 shares of Acme Industries (as a gift to my (ex)wife) I 12,345 Acme Industries asagifttomyexwife 1 1234567890 1:| 2:| 3:check aaa| 1 1234567890 1:| 2:| 3:CHECK aaa| 1 2 12345678901234567890 1: check aaa| 1 2 12345678901234567890 1: CHECK aaa| [['rint'], ['a100']] 1 1234567890 1: check| 1 1234567890 1: CHECK| Original: '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' Should match: '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' aaa 333 ['aaa', '333'] b 1 ['b', '1'] ababab 32123 ['ababab', '32123'] 123 [123] 456 [456] abc abc ^ ParseException: Expected {{integer}}, found 'abc' (at char 0), (line:1, col:1) pyparsing.core.Or - {{integer}} FAIL: Expected {{integer}}, found 'abc' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4025, in parseImpl raise maxException 101222 101222 ['Καλημέρα', ',', 'κόσμε', '!'] [['şehir', 'İzmir'], ['ülke', 'Türkiye'], ['nüfus', 4279677]] - nüfus: 4279677 - ülke: 'Türkiye' - şehir: 'İzmir' [0]: ['şehir', 'İzmir'] [1]: ['ülke', 'Türkiye'] [2]: ['nüfus', 4279677] 塷îήהּॳㅨå快ꙹژ๒糒ĩἚ֘ॼ잨µ曘иݎฦ殘Įυﬢब췀t鈠ԣܕฑ獛®Σ֥ः또p剕ꚑۗว审Ĕᵨיּ३꿓H琡Ԧؕเ惰ö῎֑꣼뤈¯䦆ⷰک฿灧ĉᾛזּग꺙Æ愙ฺⷯ۠尪Ĝᾋׂ꣮윊ï䟑꙱ڸช� ['塷îήהּॳㅨå快ꙹژ๒糒ĩἚ֘ॼ잨µ曘иݎฦ殘Įυﬢब췀t鈠ԣܕฑ獛®Σ֥ः또p剕ꚑۗว审Ĕᵨיּ३꿓H琡Ԧؕเ惰ö῎֑꣼뤈¯䦆ⷰک฿灧ĉᾛזּग꺙Æ愙ฺⷯ۠尪Ĝᾋׂ꣮윊ï䟑꙱ڸช�'] [[10, 'print', 123, ';'], [20, 'print', 234, ';', 567, ';'], [30, 'print', 890]] [0]: [10, 'print', 123, ';'] [1]: [20, 'print', 234, ';', 567, ';'] [2]: [30, 'print', 890] ..................[['abc', 'abc', 'abc']] [0]: ['abc', 'abc', 'abc'] [["'def'", "'def'", "'def'"]] [0]: ["'def'", "'def'", "'def'"] [[123, 123, 123]] [0]: [123, 123, 123] [[4.56, 4.56, 4.56]] [0]: [4.56, 4.56, 4.56] [['a_bc', 'a_bc', 'a_bc']] [0]: ['a_bc', 'a_bc', 'a_bc'] [['abc', '\n'], ['abc', '\n'], ['abc']] [0]: ['abc', '\n'] [1]: ['abc', '\n'] [2]: ['abc'] [["'def'", '\n'], ["'def'", '\n'], ["'def'"]] [0]: ["'def'", '\n'] [1]: ["'def'", '\n'] [2]: ["'def'"] [[123, '\n'], [123, '\n'], [123]] [0]: [123, '\n'] [1]: [123, '\n'] [2]: [123] [[4.56, '\n'], [4.56, '\n'], [4.56]] [0]: [4.56, '\n'] [1]: [4.56, '\n'] [2]: [4.56] [['a_bc', '\n'], ['a_bc', '\n'], ['a_bc']] [0]: ['a_bc', '\n'] [1]: ['a_bc', '\n'] [2]: ['a_bc'] [['abc', 'abc', 'abc']] [0]: ['abc', 'abc', 'abc'] [["'def'", "'def'", "'def'"]] [0]: ["'def'", "'def'", "'def'"] [[123, 123, 123]] [0]: [123, 123, 123] [[4.56, 4.56, 4.56]] [0]: [4.56, 4.56, 4.56] [['a_bc', 'a_bc', 'a_bc']] [0]: ['a_bc', 'a_bc', 'a_bc'] verify behavior of validate() Forward: Group:({'A' | : ...}) RecursiveGrammarException: [Forward: Group:({'A' | : ...}), Group:({'A' | : ...}), {'A' | Forward: Group:({'A' | : ...})}, Forward: Group:({'A' | : ...})] Forward: {['A'] : ...} RecursiveGrammarException: [Forward: {['A'] : ...}, {['A'] Forward: {['A'] : ...}}, Forward: {['A'] : ...}] ('VUTSRQPONMLKJIHGFEDCBA', 5, ParseResults(['Q'], {})) ['V', 'U', 'T', 'S', 'R', 'Q', 'P', 'O', 'N', 'M', 'L', 'K', 'J', 'I', 'H', 'G', 'F', 'E', 'D', 'C', 'B', 'A'] ('VUTSRQPONMLKJIHGFEDCBA', 5, ParseResults(['Q'], {})) make a ClassAsPAStarNew ('VUTSRQPONMLKJIHGFEDCBA', 17, ParseResults(['E'], {})) making a ClassAsPA1 ['V', 'U', 'T', 'S', 'R', 'Q', 'P', 'O', 'N', 'M', 'L', 'K', 'J', 'I', 'H', 'G', 'F', 'E', 'D', 'C', 'B', 'A'] verify that using '<<' operator with a Forward raises a warning if there is a dangling '|' operator unsafe << and |, but diag not enabled, should not warn unsafe << and |, should warn unsafe << and |, should warn safe <<= and |, should not warn safe << and (|), should not warn [['a', ['b', 'x'], False, '2', ''], ['a', ['b', 'x'], False, '3', '']] [0]: ['a', ['b', 'x'], False, '2', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '2' [0]: a [1]: ['b', 'x'] [2]: False [3]: 2 [4]: [1]: ['a', ['b', 'x'], False, '3', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '3' [0]: a [1]: ['b', 'x'] [2]: False [3]: 3 [4]: [['a', ['b', 'x'], False, '2', ''], ['a', ['b', 'x'], False, '3', '']] [0]: ['a', ['b', 'x'], False, '2', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '2' [0]: a [1]: ['b', 'x'] [2]: False [3]: 2 [4]: [1]: ['a', ['b', 'x'], False, '3', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '3' [0]: a [1]: ['b', 'x'] [2]: False [3]: 3 [4]: [['a', ['class', 'boo'], False, '8', '']] [0]: ['a', ['class', 'boo'], False, '8', ''] - class: 'boo' - empty: False - endA: '' - tag: 'a' - value: '8' [0]: a [1]: ['class', 'boo'] [2]: False [3]: 8 [4]: ABC DEF GHI [['D', 'G'], ['A'], ['C', 'F'], ['I'], ['E'], ['A', 'I']] JKL MNO PQR [['J', 'M', 'P'], [], ['L', 'R'], ['O'], [], ['O']] STU VWX YZ [['S', 'V'], ['Y'], ['X', 'Z'], ['U'], [], ['U', 'Y']] ABC DEF GHI JKL MNO PQR STU VWX YZ [['D', 'G', 'J', 'M', 'P', 'S', 'V'], ['A', 'Y'], ['C', 'F', 'L', 'R', 'X', 'Z'], ['I', 'O', 'U'], ['E'], ['A', 'I', 'O', 'U', 'Y']] [['Hello'], ['Mr'], ['Ed'], ["it's"], ['Wilbur']] ['ABCDEMNXYZABCDEMNXYZABCDEMNXYZ'] Testing escape char: \ -> W:(\]) re: '[\\\]]+') Match '\]\]]]\]\\]\]\\\' -> True Testing escape char: \ -> W:([\) re: '[\[\\]+') Match '[\[[[\[[[[[\\[[[' -> True Testing escape char: \ -> W:(\]) re: '[\\\]]+') Match ']\]\]]]]]\]]]]]\' -> True Testing escape char: \ -> W:(\, A-Z) re: '\\[A-Z]*') Match '\ODMMQKCZGCDVPCXT' -> True Testing escape char: \ -> W:(\, A-Z) re: '\\[A-Z]*') Match '\HTDEYLUJBZFPLVAN' -> True Testing escape char: ^ -> W:(^_) re: '[\^_]+') Match '_^__^^__^_^_^^_^' -> True Testing escape char: ^ -> W:(]^) re: '[\]\^]+') Match ']]]]^^^]]]^]]]^^' -> True Testing escape char: ^ -> W:(^_) re: '[\^_]+') Match '^______^^___^___' -> True Testing escape char: ^ -> W:(^, A-Z) re: '\^[A-Z]*') Match '^ABHGSNKEKEGTGJWO' -> True Testing escape char: ^ -> W:(^, A-Z) re: '\^[A-Z]*') Match '^QJNUPDEZLKYUEYWS' -> True Testing escape char: - -> W:(-.) re: '[\-.]+') Match '-..-..--.--.---.' -> True Testing escape char: - -> W:(,-) re: '[,\-]+') Match ',--,--,-,-,,--,-' -> True Testing escape char: - -> W:(-.) re: '[\-.]+') Match '----..--.-----.-' -> True Testing escape char: - -> W:(-, A-Z) re: '\-[A-Z]*') Match '-IDGWMJVGLKTDRWVM' -> True Testing escape char: - -> W:(-, A-Z) re: '\-[A-Z]*') Match '-WIVVDAFPJITHBURY' -> True Testing escape char: ] -> W:(]^) re: '[\]\^]+') Match ']]^]]]]^^^]]^]]]' -> True Testing escape char: ] -> W:(\]) re: '[\\\]]+') Match '\\\]]\]]\]]\]\]\' -> True Testing escape char: ] -> W:(]^) re: '[\]\^]+') Match ']^^^]^^]^^^]^^^]' -> True Testing escape char: ] -> W:(], A-Z) re: '\][A-Z]*') Match ']MNDCFMNGONUOVBEW' -> True Testing escape char: ] -> W:(], A-Z) re: '\][A-Z]*') Match ']YSIGPZRRCKUPDKOM' -> True Testing escape char: [ -> W:([\) re: '[\[\\]+') Match '[[\[\[[\\\\[[[\[' -> True Testing escape char: [ -> W:(Z[) re: '[Z\[]+') Match 'Z[[ZZ[Z[[[[ZZZZZ' -> True Testing escape char: [ -> W:([\) re: '[\[\\]+') Match '[\[\\[[\[[\[\\[[' -> True Testing escape char: [ -> W:([, A-Z) re: '\[[A-Z]*') Match '[QRTLFZMAXCPIULOS' -> True Testing escape char: [ -> W:([, A-Z) re: '\[[A-Z]*') Match '[NARENVCRKCVOAQVE' -> True Testing escape char: * -> W:(*+) re: '[*+]+') Match '***++*+***++**++' -> True Testing escape char: * -> W:()*) re: '[)*]+') Match '****)*)))**)***)' -> True Testing escape char: * -> W:(*+) re: '[*+]+') Match '*+++***+++*++**+' -> True Testing escape char: * -> W:(*, A-Z) re: '\*[A-Z]*') Match '*DVXMLINXVZYRWCFY' -> True Testing escape char: * -> W:(*, A-Z) re: '\*[A-Z]*') Match '*GIQXXRGDODONJOAE' -> True Testing escape char: + -> W:(+,) re: '[+,]+') Match '+,,++++,,,,+,+,+' -> True Testing escape char: + -> W:(*+) re: '[*+]+') Match '+***+*+*++**++*+' -> True Testing escape char: + -> W:(+,) re: '[+,]+') Match ',++,+++,,,,+,,,+' -> True Testing escape char: + -> W:(+, A-Z) re: '\+[A-Z]*') Match '+WFGPEBNMQOYGFUGT' -> True Testing escape char: + -> W:(+, A-Z) re: '\+[A-Z]*') Match '+GCLMMHWTTSSJYYRO' -> True Testing escape char: . -> W:(./) re: '[./]+') Match '/././././//././.' -> True Testing escape char: . -> W:(-.) re: '[\-.]+') Match '-----.-..--...-.' -> True Testing escape char: . -> W:(./) re: '[./]+') Match '././././//.././/' -> True Testing escape char: . -> W:(., A-Z) re: '\.[A-Z]*') Match '.JMKITWPYLCOQGXKB' -> True Testing escape char: . -> W:(., A-Z) re: '\.[A-Z]*') Match '.ADRIWOPGPKDUEOYS' -> True Testing escape char: ? -> W:(?@) re: '[?@]+') Match '???@?@??@?@@????' -> True Testing escape char: ? -> W:(>?) re: '[>?]+') Match '???>?>>?>??>?>>?' -> True Testing escape char: ? -> W:(?@) re: '[?@]+') Match '?@@??@@@?@@@????' -> True Testing escape char: ? -> W:(?, A-Z) re: '\?[A-Z]*') Match '?CNHRMTJELFCLPATE' -> True Testing escape char: ? -> W:(?, A-Z) re: '\?[A-Z]*') Match '?QVUXZWUHNBGWBIJN' -> True ['p', 'q', 'r', 'False'] Raised expected exception: ParseException: Expected {(A-Za-z) | True | False}, found 'abc' (at char 0), (line:1, col:1) {'A' W:(0-9)} ... {'A' W:(0-9)} ... {'A' W:(0-9){1,6}} ... {'A' W:(0-9){1,6}} ... {'A' W:(0-9)} ... {'A' W:(0-9){2,...}} ... {'A' W:(0-9){2,6}} ... W:(A, 0-9) A[0-9]* W:(A, 0-9) A[0-9]* W:(A, 0-9){1,6} A[0-9]{0,5} W:(A, 0-9){1,6} A[0-9]{0,5} W:(A, 0-9) A[0-9]* W:(A, 0-9){2,...} ... W:(A, 0-9){2,6} ... W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9){1,6} [A-Za-z][0-9]{0,5} W:(A-Za-z, 0-9){1,6} [A-Za-z][0-9]{0,5} W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9){2,...} ... W:(A-Za-z, 0-9){2,6} ... .................... Raised expected exception: ValueError: cannot specify a minimum length < 1; use Opt(Word()) if zero-length word is permitted Left-Recursion enabled: True [[7], [9]] [[1, 4], [2, 4], [4, 3]] [[1, 4], [2, 4]] detected fatal condition ['balloon', '25'] - item: 'balloon' - qty: '25' ['rucksack', 49] - item: 'rucksack' - qty: 49 ['AAA', ' this line'] ['AAA', ' and this line'] [] [] d | aA | a | b | c d | Aa | a | b | c ['aA', 'aA', 'aA', 'aA'] ['Aa', 'Aa', 'Aa', 'Aa'] [[1, '?', 1, ':', 0, '?', 1, ':', 0]] [0]: [1, '?', 1, ':', 0, '?', 1, ':', 0] [[1, '?', 1, ':', [0, '?', 1, ':', 0]]] [0]: [1, '?', 1, ':', [0, '?', 1, ':', 0]] [0]: 1 [1]: ? [2]: 1 [3]: : [4]: [0, '?', 1, ':', 0] ['B', 'B', 'C', 'A', 'D'] ['B'] ['bcdfghjklmnpqrstvwxyz'] Raised expected exception: ValueError: cannot specify a minimum length < 1; use Opt(CharsNotIn()) if zero-length char group is permitted ['bcdfg'] ['bcdfghjklm'] Raised expected exception: ParseException: Expected !W:(AEIOU), found end of text (at char 21), (line:1, col:22) ATCATCGAATGGA ['ATCATCGAATGGA'] - mismatches: [] - original: 'ATCATCGAATGGA' XTCATCGAATGGX ['XTCATCGAATGGX'] - mismatches: [0, 12] - original: 'ATCATCGAATGGA' ATCATCGAAXGGA ['ATCATCGAAXGGA'] - mismatches: [9] - original: 'ATCATCGAATGGA' ATCAXXGAATGGA ['ATCAXXGAATGGA'] - mismatches: [4, 5] - original: 'ATCATCGAATGGA' ATCAXXGAATGXA ATCAXXGAATGXA ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ATCAXXGAATGG ATCAXXGAATGG ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ATCATCGAATGGA match XTCATCGAATGGX match ATCATCGAAXGGA match ATCAXXGAATGGA match ATCAXXGAATGXA exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGXA' (at char 0), (line:1, col:1) ATCAXXGAATGG exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'ATCAXXGAATGG' (at char 0), (line:1, col:1) atcatcgaatgga ['atcatcgaatgga'] - mismatches: [] - original: 'ATCATCGAATGGA' xtcatcgaatggx ['xtcatcgaatggx'] - mismatches: [0, 12] - original: 'ATCATCGAATGGA' atcatcgaaxgga ['atcatcgaaxgga'] - mismatches: [9] - original: 'ATCATCGAATGGA' atcaxxgaatgga ['atcaxxgaatgga'] - mismatches: [4, 5] - original: 'ATCATCGAATGGA' atcaxxgaatgxa atcaxxgaatgxa ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) atcaxxgaatgg atcaxxgaatgg ^ ParseException: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) pyparsing.core.CloseMatch - CloseMatch:'ATCATCGAATGGA' FAIL: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2610, in parseImpl raise ParseException(instring, loc, self.errmsg, self) atcatcgaatgga match xtcatcgaatggx match atcatcgaaxgga match atcaxxgaatgga match atcaxxgaatgxa exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgxa' (at char 0), (line:1, col:1) atcaxxgaatgg exc: Expected 'ATCATCGAATGGA' (with up to 2 mismatches), found 'atcaxxgaatgg' (at char 0), (line:1, col:1) ['*', '*', '*', '*'] [' ', 'test'] - indent: ' ' - word: 'test' [' ', 'test'] - word: 'test' verify processing of C and HTML comments AA:BB:CC:DD:EE:FF ['AA:BB:CC:DD:EE:FF'] AA.BB.CC.DD.EE.FF ['AA.BB.CC.DD.EE.FF'] AA-BB-CC-DD-EE-FF ['AA-BB-CC-DD-EE-FF'] # mixed delimiters AA.BB:CC:DD:EE:FF AA.BB:CC:DD:EE:FF ^ ParseException: Expected MAC address, found 'AA' (at char 0), (line:1, col:1) pyparsing.core.Regex - MAC address FAIL: Expected MAC address, found 'AA' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 0.0.0.0 ['0.0.0.0'] 1.1.1.1 ['1.1.1.1'] 127.0.0.1 ['127.0.0.1'] 1.10.100.199 ['1.10.100.199'] 255.255.255.255 ['255.255.255.255'] . # out of range value 256.255.255.255 256.255.255.255 ^ ParseException: Expected IPv4 address, found '256' (at char 0), (line:1, col:1) pyparsing.core.Regex - IPv4 address FAIL: Expected IPv4 address, found '256' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 2001:0db8:85a3:0000:0000:8a2e:0370:7334 ['2001:0db8:85a3:0000:0000:8a2e:0370:7334'] 2134::1234:4567:2468:1236:2444:2106 ['2134::1234:4567:2468:1236:2444:2106'] 0:0:0:0:0:0:A00:1 ['0:0:0:0:0:0:A00:1'] 1080::8:800:200C:417A ['1080::8:800:200C:417A'] ::A00:1 ['::A00:1'] # loopback address ::1 ['::1'] # the null address :: ['::'] # ipv4 compatibility form ::ffff:192.168.0.1 ['::ffff:192.168.0.1'] # too few values 1080:0:0:0:8:800:200C 1080:0:0:0:8:800:200C ^ ParseException: Expected IPv6 address, found end of text (at char 21), (line:1, col:22) pyparsing.core.Combine - IPv6 address pyparsing.core.MatchFirst - IPv6 address pyparsing.core.And - full IPv6 address pyparsing.core.And - {':' hex_integer} pyparsing.core._SingleCharLiteral - ':' FAIL: Expected IPv6 address, found end of text (at char 21), (line:1, col:22) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4375, in parseImpl return self.expr._parse(instring, loc, doActions, callPreParse=False) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4136, in parseImpl raise maxException File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4114, in parseImpl return e._parse( ^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 819, in _parseNoCache raise ParseException(instring, len_instring, self.errmsg, self) # too many ::'s, only 1 allowed 2134::1234:4567::2444:2106 2134::1234:4567::2444:2106 ^ ParseException: Expected end of text, found ':' (at char 15), (line:1, col:16) pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd FAIL: Expected end of text, found ':' (at char 15), (line:1, col:16) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1135, in parse_string se._parse(instring, loc) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3534, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 100 [100] -100 [-100] +100 [100] 3.14159 [3.14159] 6.02e23 [6.02e+23] 1e-12 [1e-12] 1e12 [1000000000000.0] -1e12 [-1000000000000.0] 3.14159 [3.14159] 6.02e23 [6.02e+23] 100 [100.0] -100 [-100.0] +100 [100.0] 3.14159 [3.14159] 6.02e23 [6.02e+23] 1e-12 [1e-12] 1997 ['1997'] - day: None - month: None - year: '1997' 1997-07 ['1997-07'] - day: None - month: '07' - year: '1997' 1997-07-16 ['1997-07-16'] - day: '16' - month: '07' - year: '1997' 1997-07-16 [datetime.date(1997, 7, 16)] 1997-07-16T19:20+01:00 ['1997-07-16T19:20+01:00'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: None - tz: '+01:00' - year: '1997' 1997-07-16T19:20:30+01:00 ['1997-07-16T19:20:30+01:00'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30' - tz: '+01:00' - year: '1997' 1997-07-16T19:20:30.45Z ['1997-07-16T19:20:30.45Z'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30.45' - tz: 'Z' - year: '1997' 1997-07-16 19:20:30.45 ['1997-07-16 19:20:30.45'] - day: '16' - hour: '19' - minute: '20' - month: '07' - second: '30.45' - tz: None - year: '1997' 1997-07-16T19:20:30.45 [datetime.datetime(1997, 7, 16, 19, 20, 30, 450000)] 123e4567-e89b-12d3-a456-426655440000 ['123e4567-e89b-12d3-a456-426655440000'] 1/2 [0.5] -15/16 [-0.9375] -3/-4 [0.75] 1/2 [0.5] -15/16 [-0.9375] -3/-4 [0.75] 1 1/2 [1.5] 2 -15/16 [2.9375] 0 -3/-4 [-0.75] 12 [12] 100 [100] -3 [-3] 1.732 [1.732] -3.14159 [-3.14159] 6.02e23 [6.02e+23] http://foo.com/blah_blah ['http://foo.com/blah_blah'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah/ ['http://foo.com/blah_blah/'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah/' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah_(wikipedia) ['http://foo.com/blah_blah_(wikipedia)'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah_(wikipedia)' - port: None - query: None - scheme: 'http' http://foo.com/blah_blah_(wikipedia)_(again) ['http://foo.com/blah_blah_(wikipedia)_(again)'] - auth: None - fragment: None - host: 'foo.com' - path: '/blah_blah_(wikipedia)_(again)' - port: None - query: None - scheme: 'http' http://www.example.com/wpstyle/?p=364 ['http://www.example.com/wpstyle/?p=364'] - auth: None - fragment: None - host: 'www.example.com' - path: '/wpstyle/' - port: None - query: 'p=364' - scheme: 'http' https://www.example.com/foo/?bar=baz&inga=42&quux ['https://www.example.com/foo/?bar=baz&inga=42&quux'] - auth: None - fragment: None - host: 'www.example.com' - path: '/foo/' - port: None - query: 'bar=baz&inga=42&quux' - scheme: 'https' http://✪df.ws/123 ['http://✪df.ws/123'] - auth: None - fragment: None - host: '✪df.ws' - path: '/123' - port: None - query: None - scheme: 'http' http://userid:password@example.com:8080 ['http://userid:password@example.com:8080'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: None - port: '8080' - query: None - scheme: 'http' http://userid:password@example.com:8080/ ['http://userid:password@example.com:8080/'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: '/' - port: '8080' - query: None - scheme: 'http' http://userid@example.com ['http://userid@example.com'] - auth: 'userid' - fragment: None - host: 'example.com' - path: None - port: None - query: None - scheme: 'http' http://userid@example.com/ ['http://userid@example.com/'] - auth: 'userid' - fragment: None - host: 'example.com' - path: '/' - port: None - query: None - scheme: 'http' http://userid@example.com:8080 ['http://userid@example.com:8080'] - auth: 'userid' - fragment: None - host: 'example.com' - path: None - port: '8080' - query: None - scheme: 'http' http://userid@example.com:8080/ ['http://userid@example.com:8080/'] - auth: 'userid' - fragment: None - host: 'example.com' - path: '/' - port: '8080' - query: None - scheme: 'http' http://userid:password@example.com ['http://userid:password@example.com'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: None - port: None - query: None - scheme: 'http' http://userid:password@example.com/ ['http://userid:password@example.com/'] - auth: 'userid:password' - fragment: None - host: 'example.com' - path: '/' - port: None - query: None - scheme: 'http' http://142.42.1.1/ ['http://142.42.1.1/'] - auth: None - fragment: None - host: '142.42.1.1' - path: '/' - port: None - query: None - scheme: 'http' http://142.42.1.1:8080/ ['http://142.42.1.1:8080/'] - auth: None - fragment: None - host: '142.42.1.1' - path: '/' - port: '8080' - query: None - scheme: 'http' http://➡.ws/䨹 ['http://➡.ws/䨹'] - auth: None - fragment: None - host: '➡.ws' - path: '/䨹' - port: None - query: None - scheme: 'http' http://⌘.ws ['http://⌘.ws'] - auth: None - fragment: None - host: '⌘.ws' - path: None - port: None - query: None - scheme: 'http' http://⌘.ws/ ['http://⌘.ws/'] - auth: None - fragment: None - host: '⌘.ws' - path: '/' - port: None - query: None - scheme: 'http' http://foo.com/blah_(wikipedia)#cite-1 ['http://foo.com/blah_(wikipedia)#cite-1'] - auth: None - fragment: 'cite-1' - host: 'foo.com' - path: '/blah_(wikipedia)' - port: None - query: None - scheme: 'http' http://foo.com/blah_(wikipedia)_blah#cite-1 ['http://foo.com/blah_(wikipedia)_blah#cite-1'] - auth: None - fragment: 'cite-1' - host: 'foo.com' - path: '/blah_(wikipedia)_blah' - port: None - query: None - scheme: 'http' http://foo.com/unicode_(✪)_in_parens ['http://foo.com/unicode_(✪)_in_parens'] - auth: None - fragment: None - host: 'foo.com' - path: '/unicode_(✪)_in_parens' - port: None - query: None - scheme: 'http' http://foo.com/(something)?after=parens ['http://foo.com/(something)?after=parens'] - auth: None - fragment: None - host: 'foo.com' - path: '/(something)' - port: None - query: 'after=parens' - scheme: 'http' http://☺.damowmow.com/ ['http://☺.damowmow.com/'] - auth: None - fragment: None - host: '☺.damowmow.com' - path: '/' - port: None - query: None - scheme: 'http' http://code.google.com/events/#&product=browser ['http://code.google.com/events/#&product=browser'] - auth: None - fragment: '&product=browser' - host: 'code.google.com' - path: '/events/' - port: None - query: None - scheme: 'http' http://j.mp ['http://j.mp'] - auth: None - fragment: None - host: 'j.mp' - path: None - port: None - query: None - scheme: 'http' ftp://foo.bar/baz ['ftp://foo.bar/baz'] - auth: None - fragment: None - host: 'foo.bar' - path: '/baz' - port: None - query: None - scheme: 'ftp' http://foo.bar/?q=Test%20URL-encoded%20stuff ['http://foo.bar/?q=Test%20URL-encoded%20stuff'] - auth: None - fragment: None - host: 'foo.bar' - path: '/' - port: None - query: 'q=Test%20URL-encoded%20stuff' - scheme: 'http' http://مثال.إختبار ['http://مثال.إختبار'] - auth: None - fragment: None - host: 'مثال.إختبار' - path: None - port: None - query: None - scheme: 'http' http:// http:// ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://. http://. ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://.. http://.. ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://../ http://../ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://? http://? ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://?? http://?? ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://??/ http://??/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://# http://# ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://## http://## ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://##/ http://##/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) # skip: http://foo.bar?q=Spaces should be encoded // // ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) //a //a ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ///a ///a ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) /// /// ^ ParseException: Expected url, found '/' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found '/' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http:///a http:///a ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) foo.com foo.com ^ ParseException: Expected url, found 'foo' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'foo' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) rdar://1234 rdar://1234 ^ ParseException: Expected url, found 'rdar' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'rdar' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) h://test h://test ^ ParseException: Expected url, found 'h' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'h' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http:// shouldfail.com http:// shouldfail.com ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) :// should fail :// should fail ^ ParseException: Expected url, found ':' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found ':' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://foo.bar/foo(bar)baz quux http://foo.bar/foo(bar)baz quux ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ftps://foo.bar/ ftps://foo.bar/ ^ ParseException: Expected url, found 'ftps' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'ftps' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://-error-.invalid/ http://-error-.invalid/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) # skip: http://a.b--c.de/ http://-a.b.co http://-a.b.co ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://a.b-.co http://a.b-.co ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://0.0.0.0 http://0.0.0.0 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://10.1.1.0 http://10.1.1.0 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ..... http://10.1.1.255 http://10.1.1.255 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://224.1.1.1 http://224.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://1.1.1.1.1 http://1.1.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://123.123.123 http://123.123.123 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://3628126748 http://3628126748 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://.www.foo.bar/ http://.www.foo.bar/ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) # skip: http://www.foo.bar./ http://.www.foo.bar./ http://.www.foo.bar./ ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) http://10.1.1.1 http://10.1.1.1 ^ ParseException: Expected url, found 'http' (at char 0), (line:1, col:1) pyparsing.core.Regex - url FAIL: Expected url, found 'http' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2987, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ['https://bob:secret@www.example.com:8080/path/to/resource?filter=int#book-mark'] - auth: 'bob:secret' - fragment: 'book-mark' - host: 'www.example.com' - path: '/path/to/resource' - port: '8080' - query: 'filter=int' - scheme: 'https' Raised expected exception: ParseException: time data '1997-07-error' does not match format '%Y-%m-%d', found '1997' (at char 0), (line:1, col:1) Raised expected exception: ParseException: time data '1997-07-error' does not match format '%Y-%m-%dT%H:%M:%S.%f', found '1997' (at char 0), (line:1, col:1) 2 5 7 6 0 1 2 3 4 5 0 3 5 4 3 [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] 2 5 7 6 0 1 2 3 4 5 0 3 5 4 3.............. [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] B 5 7 F 0 1 2 3 4 5 _ C 5 4 3 [[5, 7], [0, 1, 2, 3, 4, 5], [], [5, 4, 3]] 5 string input item1 item2 item3 item4 item5 0 int user 2 int file 3 8 [['item1', 'item2', 'item3', 'item4', 'item5'], [], ['3', '8']] [0]: ['item1', 'item2', 'item3', 'item4', 'item5'] - count: 5 - items: ['item1', 'item2', 'item3', 'item4', 'item5'] - source: 'input' - type: 'string' [1]: [] - count: 0 - items: [] - source: 'user' - type: 'int' [2]: ['3', '8'] - count: 2 - items: ['3', '8'] - source: 'file' - type: 'int' type = '' source = '' ['True', 'True', 'False'] - items: ['True', 'True', 'False'] - type: 'bool' verify non-fatal usage of Literal("") Raised expected exception: ValueError: null string passed to Literal; use Empty() instead sdlfjs :sdf\:jls::djf: sl:kfsjf sdlfjs -sdf\:jls::--djf: sl-kfsjf sdlfjs -sdf\:::jls::--djf: sl:::-kfsjf sdlfjs ^sdf\:jls^^--djf^ sl-kfsjf sdlfjs ^^^==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf^^^ colonQuotes :(?:(?:::)|(?:\\.)|(?:[^:\n\r\\]))*: [['sdf:jls:djf'], ['jls:--djf'], [':jls:--djf'], [''], ['j=lz:--djf'], ['j=ls:--djf']] sdf:jls:djf sdf:jls:djf dashQuotes \-(?:(?:\-\-)|(?:\\.)|(?:[^\-\n\r\\]))*\- [['sdf:jls::-djf: sl'], ['sdf:::jls::-djf: sl:::'], [''], [''], ['']] sdf:jls::-djf: sl sdf:jls::-djf: sl hatQuotes \^(?:(?:\\.)|(?:[^\^\n\r\\]))*\^ [['sdf:jls'], ['--djf'], [''], ['==sdf:j=lz::--djf: sl='], ['']] sdf:jls sdf:jls hatQuotes1 \^(?:(?:\^\^)|(?:\\.)|(?:[^\^\n\r\\]))*\^ [['sdf:jls^--djf'], ['^==sdf:j=lz::--djf: sl='], ['']] sdf:jls^--djf sdf:jls^--djf dblEqQuotes ==(?:(?:\\.)|(?:(?:=(?!=)))|(?:[^=\n\r\\]))*== [['sdf:j=ls::--djf: sl']] sdf:j=ls::--djf: sl sdf:j=ls::--djf: sl ::: quotes :::(?:(?:(?:::(?!:))|(?::(?!::)))|(?:[^:\n\r]))*::: [['jls::--djf: sl']] jls::--djf: sl jls::--djf: sl ==-- quotes ==(?:(?:(?:\-(?!\-)))|(?:[^\-\n\r]))*\-\- [['sdf\\:j=lz::'], ['sdf\\:j=ls::']] sdf\:j=lz:: sdf\:j=lz:: ^^^ multiline quotes \^\^\^(?:(?:(?:\^\^(?!\^))|(?:\^(?!\^\^)))|(?:[^\^]))*\^\^\^ [['==sdf\\:j=lz::--djf: sl=^^=kfsjf\n sdlfjs ==sdf\\:j=ls::--djf: sl==kfsjf']] ==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf ==sdf\:j=lz::--djf: sl=^^=kfsjf sdlfjs ==sdf\:j=ls::--djf: sl==kfsjf Raised expected exception: ValueError: quote_char cannot be the empty string \.\[(?:(?:(?:\](?!\.)))|(?:[^\]\n\r]))*\]\. ['...'] [''] [']'] [']]'] \+\*(?:(?:(?:\*(?!\+)))|(?:[^*\n\r]))*\*\+ ['...'] [''] ['*'] ['**'] \*/(?:(?:(?:/(?!\*)))|(?:[^/\n\r]))*/\* ['...'] [''] ['/'] ['//'] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately followed by keyword character, found '1000' (at char 5), (line:1, col:6) Raised expected exception: ParseException: Expected CaselessKeyword 'START', was immediately followed by keyword character, found '1000' (at char 5), (line:1, col:6) Raised expected exception: ValueError: min must be greater than 0 Raised expected exception: ValueError: max must be greater than, or equal to min Raised expected exception: ParseException: Expected ',', found end of text (at char 12), (line:1, col:13) 'ABC' [, 'ABC']... ['ABC', 'ABC'] 'ABC' [, 'ABC']... ['ABC', 'ABC', 'ABC'] {'True' | 'true' | 'False' | 'false'} [, {'True' | 'true' | 'False' | 'false'}]... bool bool bool bool bool [, bool]... 'ABC' [, 'ABC']... ['ABC', 'ABC', 'ABC'] ['bar', 'foo'] - one: 'foo' - two: 'bar' options(100) step(A) options(100) step(A) ^ ParseSyntaxException: Expected integer, found 'A' (at char 18), (line:1, col:19) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected integer, found 'A' (at char 18), (line:1, col:19) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal step(A) options(100) step(A) options(100) ^ ParseSyntaxException: Expected integer, found 'A' (at char 5), (line:1, col:6) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected integer, found 'A' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal options(100) step(100A) options(100) step(100A) ^ ParseSyntaxException: Expected 'Z', found 'A' (at char 21), (line:1, col:22) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected 'Z', found 'A' (at char 21), (line:1, col:22) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal options(100) step(22) step(100ZA) options(100) step(22) step(100ZA) ^ ParseSyntaxException: Expected ')', found 'A' (at char 31), (line:1, col:32) pyparsing.core.Each - {{'options' - '(' integer ')'} & [{{'step' - '(' integer ')'} ^ {'step' - '(' integer 'Z' ')'}}]...} FAIL: Expected ')', found 'A' (at char 31), (line:1, col:32) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4320, in parseImpl raise max_fatal aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {{word}... num} pyparsing.core.OneOrMore - {word}... pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4790, in parseImpl loc, tokens = self_expr_parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) aa bb cc dd 123 ['aa', 'bb', 'cc', 'dd', '123'] bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 dd 123 ^ ParseException: Expected word, found '123' (at char 3), (line:1, col:4) pyparsing.core.And - {word word [word]... num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {word word [word]... num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) bb cc dd 123 ['bb', 'cc', 'dd', '123'] cc dd 123 ['cc', 'dd', '123'] dd 123 ['dd', '123'] 123 ['123'] aa bb cc dd 123 aa bb cc dd 123 ^ ParseException: Expected num, found 'dd' (at char 9), (line:1, col:10) pyparsing.core.And - {[word [word [word]]] num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'dd' (at char 9), (line:1, col:10) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) cc dd 123 ['cc', 'dd', '123'] aa bb cc dd 123 aa bb cc dd 123 ^ ParseException: Expected num, found 'cc' (at char 6), (line:1, col:7) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'cc' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) ...... bb cc dd 123 bb cc dd 123 ^ ParseException: Expected num, found 'dd' (at char 6), (line:1, col:7) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - num FAIL: Expected num, found 'dd' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) dd 123 dd 123 ^ ParseException: Expected word, found '123' (at char 3), (line:1, col:4) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) 123 123 ^ ParseException: Expected word, found '123' (at char 0), (line:1, col:1) pyparsing.core.And - {word word num} pyparsing.core._WordRegex - word FAIL: Expected word, found '123' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3864, in parseImpl loc, resultlist = self.exprs[0]._parse( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2857, in parseImpl raise ParseException(instring, loc, self.errmsg, self) a 1 ['a', 1] - label: 'a' - values: [1] b 1 2 3 ['b', 1, 2, 3] - label: 'b' - values: [1, 2, 3] c ['c'] - label: 'c' - values: [] a 1 ['a', 1] - label: 'a' - values: [1] b 1 2 3 ['b', 1, 2, 3] - label: 'b' - values: [1, 2, 3] c ['c'] - label: 'c' - values: [] a 1,1 ['a', [1, 1]] - label: 'a' - points: [[1, 1]] [0]: [1, 1] - x: 1 - y: 1 [0]: a [1]: [1, 1] - x: 1 - y: 1 b 1,1 2,2 3,3 ['b', [1, 1], [2, 2], [3, 3]] - label: 'b' - points: [[1, 1], [2, 2], [3, 3]] [0]: [1, 1] - x: 1 - y: 1 [1]: [2, 2] - x: 2 - y: 2 [2]: [3, 3] - x: 3 - y: 3 [0]: b [1]: [1, 1] - x: 1 - y: 1 [2]: [2, 2] - x: 2 - y: 2 [3]: [3, 3] - x: 3 - y: 3 c ['c'] - label: 'c' - points: [] [['a', '10'], ['b', '20']] - a: '10' - b: '20' [0]: ['a', '10'] [1]: ['b', '20'] ^ ParseException: Expected W:(A-Za-z) (at char 0), (line:1, col:1) tests.test_unit.Test10_WithLeftRecursionParsingBoundedMemo pyparsing.core.Dict - Dict:({Group:({W:(A-Za-z) Suppress:('=') W:(0-9)})}...) pyparsing.core.OneOrMore - {Group:({W:(A-Za-z) Suppress:('=') W:(0-9)})}... pyparsing.core.Group - Group:({W:(A-Za-z) Suppress:('=') W:(0-9)}) pyparsing.core.And - {W:(A-Za-z) Suppress:('=') W:(0-9)} pyparsing.core._WordRegex - W:(A-Za-z) testing empty And testing empty Or testing empty MatchFirst testing empty Each Match [{integer | W:(0-9A-Za-z)}]... at loc 0(1,1) 123 A100 ^ Match integer at loc 0(1,1) 123 A100 ^ Matched integer -> [123] Match integer at loc 4(1,5) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found 'A100' (at char 4), (line:1, col:5) Match W:(0-9A-Za-z) at loc 4(1,5) 123 A100 ^ Matched W:(0-9A-Za-z) -> ['A100'] Match integer at loc 8(1,9) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 8), (line:1, col:9) Match W:(0-9A-Za-z) at loc 8(1,9) 123 A100 ^ Match W:(0-9A-Za-z) failed, ParseException raised: Expected W:(0-9A-Za-z), found end of text (at char 8), (line:1, col:9) Matched [{integer | W:(0-9A-Za-z)}]... -> [123, 'A100'] Match integer at loc 0(1,1) 123 A100 ^ Matched integer -> [123] Match integer at loc 4(1,5) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found 'A100' (at char 4), (line:1, col:5) Match W:(0-9A-Za-z) at loc 4(1,5) 123 A100 ^ Matched W:(0-9A-Za-z) -> ['A100'] Match integer at loc 8(1,9) 123 A100 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 8), (line:1, col:9) Match W:(0-9A-Za-z) at loc 8(1,9) 123 A100 ^ Match W:(0-9A-Za-z) failed, ParseException raised: Expected W:(0-9A-Za-z), found end of text (at char 8), (line:1, col:9) Match integer at loc 0(1,1) 1 2 3 ^ Matched integer -> ['1'] Match integer at loc 2(1,3) 1 2 3 ^ Matched integer -> ['2'] Match integer at loc 4(1,5) 1 2 3 ^ Matched integer -> ['3'] Match integer at loc 5(1,6) 1 2 3 ^ Match integer failed, ParseException raised: Expected integer, found end of text (at char 5), (line:1, col:6) Packrat status: disabled ..............Match Z at loc 0(1,1) aba ^ Match Z failed, ParseException raised: Expected Z, found 'aba' (at char 0), (line:1, col:1) Match leading_a at loc 0(1,1) aba ^ Match A at loc 0(1,1) aba ^ Matched A -> ['a'] Match Z at loc 1(1,2) aba ^ Match Z failed, ParseException raised: Expected Z, found 'ba' (at char 1), (line:1, col:2) Match A at loc 1(1,2) aba ^ Match A failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) Match B at loc 1(1,2) aba ^ Matched B -> ['b'] Matched leading_a -> ['a'] Match Z at loc 1(1,2) aba ^ Match Z failed, ParseException raised: Expected Z, found 'ba' (at char 1), (line:1, col:2) Match leading_a at loc 1(1,2) aba ^ Match A at loc 1(1,2) aba ^ Match A failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) Match leading_a failed, ParseException raised: Expected A, found 'ba' (at char 1), (line:1, col:2) Match B at loc 1(1,2) aba ^ Matched B -> ['b'] Match Z at loc 2(1,3) aba ^ Match Z failed, ParseException raised: Expected Z, found 'a' (at char 2), (line:1, col:3) Match leading_a at loc 2(1,3) aba ^ Match A at loc 2(1,3) aba ^ Matched A -> ['a'] Match Z at loc 3(1,4) aba ^ Match Z failed, ParseException raised: Expected Z, found end of text (at char 3), (line:1, col:4) Match A at loc 3(1,4) aba ^ Match A failed, ParseException raised: Expected A, found end of text (at char 3), (line:1, col:4) Match B at loc 3(1,4) aba ^ Match B failed, ParseException raised: Expected B, found end of text (at char 3), (line:1, col:4) Match leading_a failed, ParseException raised: Expected {Z | A | B}, found end of text (at char 3), (line:1, col:4) Match B at loc 2(1,3) aba ^ Match B failed, ParseException raised: Expected B, found 'a' (at char 2), (line:1, col:3) {'enable_debug_on_named_expressions': False, 'warn_multiple_tokens_in_named_alternation': False, 'warn_name_set_on_empty_Forward': False, 'warn_on_assignment_to_Forward': False, 'warn_on_match_first_with_lshift_operator': False, 'warn_on_multiple_string_args_to_oneof': False, 'warn_on_parse_using_empty_Forward': False, 'warn_ungrouped_named_tokens_in_collection': False} {'enable_debug_on_named_expressions': False, 'warn_multiple_tokens_in_named_alternation': True, 'warn_name_set_on_empty_Forward': True, 'warn_on_assignment_to_Forward': True, 'warn_on_match_first_with_lshift_operator': True, 'warn_on_multiple_string_args_to_oneof': True, 'warn_on_parse_using_empty_Forward': True, 'warn_ungrouped_named_tokens_in_collection': True} TypeError: descriptor 'upper' for 'str' objects doesn't apply to a 'int' object tests.test_unit.Test10_WithLeftRecursionParsingBoundedMemo pyparsing.core._WordRegex - integer tests.test_unit.Modifier pyparsing.results.ParseResults 123 355 ^ ParseException: Expected word, found '355' (at char 4), (line:1, col:5) 123 355 (test using ErrorStop) ^ ParseSyntaxException: Expected word, found '355' (at char 4), (line:1, col:5) tests.test_unit.Test10_WithLeftRecursionParsingBoundedMemo pyparsing.core.And - {int - word} A ^ ParseException: Expected int, found 'A' (at char 0), (line:1, col:1) tests.test_unit.Test10_WithLeftRecursionParsingBoundedMemo pyparsing.core.And - {int int} divide_args pyparsing.core._WordRegex - int test does local memoization enable/disable during test [' this_semi_does_nothing()', ''], [' neither_does_this_but_there_are_spaces_afterward()', ''], [' a = "a;b"', 'return a # this is a comment; it has a semicolon!'], [' z=1000', 'b("; in quotes")', 'c=200', 'return z'], [" return ';'"], [" '''a docstring; with a semicolon'''"], [' a = 10', 'b = 11', 'c = 12'], [' # this comment; has several; semicolons'], [' x = 12', 'return x # so; does; this; one'], [' x = 15', '', '', 'y += x', 'return y'], [' this_semi_does_nothing()', ';', ''], [' neither_does_this_but_there_are_spaces_afterward()', ';', ''], [' a = "a;b"', ';', 'return a # this is a comment; it has a semicolon!'], [' z=1000', ';', 'b("; in quotes")', ';', 'c=200', ';', 'return z'], [" return ';'"], [" '''a docstring; with a semicolon'''"], [' a = 10', ';', 'b = 11', ';', 'c = 12'], [' # this comment; has several; semicolons'], [' x = 12', ';', 'return x # so; does; this; one'], [' x = 15', ';', '', ';', '', ';', 'y += x', ';', 'return y'], [''], [' def main():'], [' this_semi_does_nothing()', ''], [' neither_does_this_but_there_are_spaces_afterward()', ''], [' a = "a;b"', 'return a # this is a comment; it has a semicolon!'], [''], [' def b():'], [' if False:'], [' z=1000', 'b("; in quotes"); c=200;return z'], [" return ';'"], [''], [' class Foo(object):'], [' def bar(self):'], [" '''a docstring; with a semicolon'''"], [' a = 10', 'b = 11; c = 12'], [''], [' # this comment; has several; semicolons'], [' if self.spam:'], [' x = 12', 'return x # so; does; this; one'], [' x = 15', ';; y += x; return y'], [''], [' def baz(self):'], [' return self.bar'], [' '], W:(0-9) W:(0-9){3} W:(0-9){2,...} W:(0-9){1,3} W:(0-9){2,3} (0-9) ['balloon'] - item: 'balloon' - qty: 99 verify behavior of getName() ['XXX', ['b'], ['bb'], ['a'], ['bbb'], ['bbbb'], ['aa'], ['bbbbb'], [':', 'c'], ['bbbbbb'], ['aaa']] [0]: XXX [1]: ['b'] - B: 'b' [2]: ['bb'] - B: 'bb' [3]: ['a'] - A: 'a' [4]: ['bbb'] - B: 'bbb' [5]: ['bbbb'] - B: 'bbbb' [6]: ['aa'] - A: 'aa' [7]: ['bbbbb'] - B: 'bbbbb' [8]: [':', 'c'] - C: 'c' [9]: ['bbbbbb'] - B: 'bbbbbb' [10]: ['aaa'] - A: 'aaa' XXX 'XXX' ['b'] ParseResults(['b'], {'B': 'b'}) ['bb'] ParseResults(['bb'], {'B': 'bb'}) ['a'] ParseResults(['a'], {'A': 'a'}) ['bbb'] ParseResults(['bbb'], {'B': 'bbb'}) ['bbbb'] ParseResults(['bbbb'], {'B': 'bbbb'}) ['aa'] ParseResults(['aa'], {'A': 'aa'}) ['bbbbb'] ParseResults(['bbbbb'], {'B': 'bbbbb'}) [':', 'c'] ParseResults([':', 'c'], {'C': 'c'}) ['bbbbbb'] ParseResults(['bbbbbb'], {'B': 'bbbbbb'}) ['aaa'] ParseResults(['aaa'], {'A': 'aaa'}) XXX b bb a bbb bbbb aa bbbbb :c bbbbbb aaa [None, 'B', 'B', 'A', 'B', 'B', 'A', 'B', None, 'B', 'A'] ['lsjd'] non-key ['sldkjf'] non-key ['IF'] non-key ['Saslkj'] non-key ['AND'] non-key ['lsdjf'] non-key verify behavior of ParseResults.get() ['b', 'bb', 'a', 'bbb', 'bbbb', 'aa', 'bbbbb', ':', 'c', 'bbbbbb', 'aaa'] - A: 'aaa' - B: 'bbbbbb' - C: 'c' aaa !D ['11.11.13', 'useless . useless,21 useless 2 | ', 14.21, ' | asmdakldm'] ['21.12.12', 'fmpaosmfpoamsp 4 | ', 41, ' | ajfa9si90'] Raised expected exception: ParseException: Expected number, found 'useless' (at char 32), (line:1, col:33) Raised expected exception: ParseException: Expected number, found 'fmpaosmfpoamsp' (at char 32), (line:1, col:33) [["'string1'", "'string2'"]] [['string1', 'strin""g2']] [['"string1"', '"strin""g2"'], ["'string1'", "'string2'"]] [['string1', 'strin"g2']] [['string1', 'string2']] [['string1', 'string2']] [['string1', 'string2']] ["'ms1'", '1', '0', "'2009-12-22'", "'2009-12-22 10:41:22'"] This & that 2 > 1 0 < 1 Don't get excited! I said "Don't get excited!" Copyright © 2021 Dot ⟶ ˙ ['I', 'totally', 'love', 'pickles'] a = 100 b = 101 c = c1 = 200 c2 = c21 = 999 c3 = 'A horse, a horse, my kingdom for a horse' d = 505 ......[['a', 100], ['b', 101], ['c', ['c1', 200], ['c2', ['c21', 999]], ['c3', 'A horse, a horse, my kingdom for a horse']], ['d', 505]] - a: 100 - b: 101 - c: [['c1', 200], ['c2', ['c21', 999]], ['c3', 'A horse, a horse, my kingdom for a horse']] - c1: 200 - c2: [['c21', 999]] - c21: 999 [0]: ['c21', 999] - c3: 'A horse, a horse, my kingdom for a horse' [0]: ['c1', 200] [1]: ['c2', ['c21', 999]] - c21: 999 [0]: c2 [1]: ['c21', 999] [2]: ['c3', 'A horse, a horse, my kingdom for a horse'] - d: 505 [0]: ['a', 100] [1]: ['b', 101] [2]: ['c', ['c1', 200], ['c2', ['c21', 999]], ['c3', 'A horse, a horse, my kingdom for a horse']] - c1: 200 - c2: [['c21', 999]] - c21: 999 [0]: ['c21', 999] - c3: 'A horse, a horse, my kingdom for a horse' [0]: c [1]: ['c1', 200] [2]: ['c2', ['c21', 999]] - c21: 999 [0]: c2 [1]: ['c21', 999] [3]: ['c3', 'A horse, a horse, my kingdom for a horse'] [3]: ['d', 505] [['A', [100, 101, 102]], ['B', [200, 201]], ['C', [300]]] [['A', [100, 101, 102]], ['B', [200, 201]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [200, 201]] [0]: B [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] 1 2 12345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] 1 2 12345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] 1 2 3 123456789012345678901234567890 1: A| 2: 100| 3: B| 4: 200| 5: 201| 6: | [['A', [100]], ['B', [200]]] [['A', [100]], ['B', [200]]] using searchString [[['A', [100, 101, 102]]], [['B', [['b', [200, 201]]]]], [['C', [300]]]] [['A', [100, 101, 102]], ['B', [['b', [200, 201]]]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [['b', [200, 201]]]] [0]: B [1]: [['b', [200, 201]]] [0]: ['b', [200, 201]] [0]: b [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] using parseString [['A', [100, 101, 102]], ['B', [['b', [200, 201]]]], ['C', [300]]] [0]: ['A', [100, 101, 102]] [0]: A [1]: [100, 101, 102] [1]: ['B', [['b', [200, 201]]]] [0]: B [1]: [['b', [200, 201]]] [0]: ['b', [200, 201]] [0]: b [1]: [200, 201] [2]: ['C', [300]] [0]: C [1]: [300] test good indentation 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.1.2| 5: 2.| [['1.', ['1.1', ['1.1.1', '1.1.2']], '2.']] test bad indentation 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.2| 5: 2.| Raised expected exception: ParseException: Expected end of text, found '1' (at char 78), (line:4, col:18) 1 2 3 123456789012345678901234567890 1: 1.| 2: 1.1| 3: 1.1.1| 4: 1.2| 5: 2.| Raised expected exception: ParseException: Expected end of text, found '1' (at char 76), (line:4, col:16) [['def', 'A', ['(', 'z', ')'], ':', [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']]], 'B', ['def', 'BB', ['(', 'a', 'b', 'c', ')'], ':', [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]]], 'C', 'D', ['def', 'spam', ['(', 'x', 'y', ')'], ':', [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]]]] [0]: ['def', 'A', ['(', 'z', ')'], ':', [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']]] [0]: def [1]: A [2]: ['(', 'z', ')'] [3]: : [4]: [['A1'], [['B', '=', '100']], [['G', '=', 'A2']], ['A2'], ['A3']] [0]: ['A1'] [1]: [['B', '=', '100']] [0]: ['B', '=', '100'] [2]: [['G', '=', 'A2']] [0]: ['G', '=', 'A2'] [3]: ['A2'] [4]: ['A3'] [1]: B [2]: ['def', 'BB', ['(', 'a', 'b', 'c', ')'], ':', [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]]] [0]: def [1]: BB [2]: ['(', 'a', 'b', 'c', ')'] [3]: : [4]: [['BB1'], [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]]] [0]: ['BB1'] [1]: [['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]]] [0]: ['def', 'BBA', ['(', ')'], ':', [['bba1'], ['bba2'], ['bba3']]] [0]: def [1]: BBA [2]: ['(', ')'] [3]: : [4]: [['bba1'], ['bba2'], ['bba3']] [0]: ['bba1'] [1]: ['bba2'] [2]: ['bba3'] [3]: C [4]: D [5]: ['def', 'spam', ['(', 'x', 'y', ')'], ':', [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]]] [0]: def [1]: spam [2]: ['(', 'x', 'y', ')'] [3]: : [4]: [[['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]]] [0]: [['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]]] [0]: ['def', 'eggs', ['(', 'z', ')'], ':', [['pass']]] [0]: def [1]: eggs [2]: ['(', 'z', ')'] [3]: : [4]: [['pass']] [0]: ['pass'] Parsing 'one0'... Parsing 'four0'... Parsing 'extra'... Parsing 'one1'... Parsing 'four1'... extra: [test] one0: two (three) four0: five (seven) extra: [test] one1: two (three) four1: five (seven) ['extra', [['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]]], 'extra', [['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]]]] [0]: extra [1]: [['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]]] [0]: ['test', [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]]] [0]: test [1]: [['one0', [['two', 'three']]], ['four0', [['five', 'seven']]]] [0]: ['one0', [['two', 'three']]] [0]: one0 [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four0', [['five', 'seven']]] [0]: four0 [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: extra [3]: [['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]]] [0]: ['test', [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]]] [0]: test [1]: [['one1', [['two', 'three']]], ['four1', [['five', 'seven']]]] [0]: ['one1', [['two', 'three']]] [0]: one1 [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four1', [['five', 'seven']]] [0]: four1 [1]: [['five', 'seven']] [0]: ['five', 'seven'] Parsing 'one'... Parsing 'four'... Parsing 'extra'... Parsing 'one'... Parsing 'four'... Parsing 'one'... Parsing 'four'... Parsing 'eight'... Parsing 'eleven'... Parsing 'fourteen'... Parsing 'seventeen'... .......... extra: [test] one: two (three) four: five (seven) extra: [test] one: two (three) four: five (seven) [test] one: two (three) four: five (seven) [test] eight: nine (ten) eleven: twelve (thirteen) fourteen: fifteen (sixteen) seventeen: eighteen (nineteen) ['extra', [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]]], 'extra', [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]]]] [0]: extra [1]: [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]]] [0]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: extra [3]: [['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]], ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]]] [0]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [1]: ['test', [['one', [['two', 'three']]], ['four', [['five', 'seven']]]]] [0]: test [1]: [['one', [['two', 'three']]], ['four', [['five', 'seven']]]] [0]: ['one', [['two', 'three']]] [0]: one [1]: [['two', 'three']] [0]: ['two', 'three'] [1]: ['four', [['five', 'seven']]] [0]: four [1]: [['five', 'seven']] [0]: ['five', 'seven'] [2]: ['test', [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]]] [0]: test [1]: [['eight', [['nine', 'ten']]], ['eleven', [['twelve', 'thirteen']]], ['fourteen', [['fifteen', 'sixteen']]], ['seventeen', [['eighteen', 'nineteen']]]] [0]: ['eight', [['nine', 'ten']]] [0]: eight [1]: [['nine', 'ten']] [0]: ['nine', 'ten'] [1]: ['eleven', [['twelve', 'thirteen']]] [0]: eleven [1]: [['twelve', 'thirteen']] [0]: ['twelve', 'thirteen'] [2]: ['fourteen', [['fifteen', 'sixteen']]] [0]: fourteen [1]: [['fifteen', 'sixteen']] [0]: ['fifteen', 'sixteen'] [3]: ['seventeen', [['eighteen', 'nineteen']]] [0]: seventeen [1]: [['eighteen', 'nineteen']] [0]: ['eighteen', 'nineteen'] [[9, '+', 2, '+', 3]] [0]: [9, '+', 2, '+', 3] [[9, '+', [2, '*', 3]]] [0]: [9, '+', [2, '*', 3]] [0]: 9 [1]: + [2]: [2, '*', 3] [[[9, '+', 2], '*', 3]] [0]: [[9, '+', 2], '*', 3] [0]: [9, '+', 2] [1]: * [2]: 3 [[[9, '+', ['-', 2]], '*', 3]] [0]: [[9, '+', ['-', 2]], '*', 3] [0]: [9, '+', ['-', 2]] [0]: 9 [1]: + [2]: ['-', 2] [1]: * [2]: 3 [[[9, '+', ['-', ['-', 2]]], '*', 3]] [0]: [[9, '+', ['-', ['-', 2]]], '*', 3] [0]: [9, '+', ['-', ['-', 2]]] [0]: 9 [1]: + [2]: ['-', ['-', 2]] [0]: - [1]: ['-', 2] [1]: * [2]: 3 [[[9, '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]]] [0]: [[9, '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]] [0]: [9, '+', ['-', 2]] [0]: 9 [1]: + [2]: ['-', 2] [1]: * [2]: [3, '^', [2, '^', 2]] [0]: 3 [1]: ^ [2]: [2, '^', 2] [[[[9, '!'], '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]]] [0]: [[[9, '!'], '+', ['-', 2]], '*', [3, '^', [2, '^', 2]]] [0]: [[9, '!'], '+', ['-', 2]] [0]: [9, '!'] [1]: + [2]: ['-', 2] [1]: * [2]: [3, '^', [2, '^', 2]] [0]: 3 [1]: ^ [2]: [2, '^', 2] [[['M', '*', 'X'], '+', 'B']] [0]: [['M', '*', 'X'], '+', 'B'] [0]: ['M', '*', 'X'] [1]: + [2]: B [['M', '*', ['X', '+', 'B']]] [0]: ['M', '*', ['X', '+', 'B']] [0]: M [1]: * [2]: ['X', '+', 'B'] [[1, '+', [2, '*', ['-', [3, '^', 4]], '*', 5], '+', ['-', ['+', ['-', 6]]]]] [0]: [1, '+', [2, '*', ['-', [3, '^', 4]], '*', 5], '+', ['-', ['+', ['-', 6]]]] [0]: 1 [1]: + [2]: [2, '*', ['-', [3, '^', 4]], '*', 5] [0]: 2 [1]: * [2]: ['-', [3, '^', 4]] [0]: - [1]: [3, '^', 4] [3]: * [4]: 5 [3]: + [4]: ['-', ['+', ['-', 6]]] [0]: - [1]: ['+', ['-', 6]] [0]: + [1]: ['-', 6] [[3, '!', '!']] [0]: [3, '!', '!'] p = True q = False r = True p and not q (p & ~q) = True not not p ~~p = True not(p and q) ~(p & q) = True q or not p and r (q | (~p & r)) = False q or not p or not r (q | ~p | ~r) = False q or not (p and r) (q | ~(p & r)) = False p or q or r (p | q | r) = True p or q or r and False (p | q | (r & False)) = True (p or q or r) and False ((p | q | r) & False) = False Raised expected exception: ValueError: if numterms=3, opExpr must be a tuple or list of two expressions Raised expected exception: ValueError: if numterms=3, opExpr must be a tuple or list of two expressions Raised expected exception: ValueError: operator must be unary (1), binary (2), or ternary (3) Raised expected exception: ValueError: operator must be unary (1), binary (2), or ternary (3) Raised expected exception: ValueError: operator must indicate right or left associativity evaluate_int 9 '9' => [9] (count=1) [[[3, '+', 2], '?', 12, ':', 13]] [0]: [[3, '+', 2], '?', 12, ':', 13] [0]: [3, '+', 2] [1]: ? [2]: 12 [3]: : [4]: 13 [[[3, '+', 2], '?', 12, ':', 13]] [0]: [[3, '+', 2], '?', 12, ':', 13] [0]: [3, '+', 2] [1]: ? [2]: 12 [3]: : [4]: 13 [[3, '+', [2, '+', 11]]] [0]: [3, '+', [2, '+', 11]] [0]: 3 [1]: + [2]: [2, '+', 11] [[3, '+', [2, '+', 11]]] [0]: [3, '+', [2, '+', 11]] [0]: 3 [1]: + [2]: [2, '+', 11] [[3, '+', ['<', [2, '+', 11], '>']]] [0]: [3, '+', ['<', [2, '+', 11], '>']] [0]: 3 [1]: + [2]: ['<', [2, '+', 11], '>'] [0]: < [1]: [2, '+', 11] [2]: > [[3, '+', ['<<', [2, '+', 11], '>>']]] [0]: [3, '+', ['<<', [2, '+', 11], '>>']] [0]: 3 [1]: + [2]: ['<<', [2, '+', 11], '>>'] [0]: << [1]: [2, '+', 11] [2]: >> [[[3, 'x'], '+', 2]] [0]: [[3, 'x'], '+', 2] [0]: [3, 'x'] [1]: + [2]: 2 [[[3, 'x'], '+', 2]] [0]: [[3, 'x'], '+', 2] [0]: [3, 'x'] [1]: + [2]: 2 bar = foo [['bar', '=', 'foo']] bar = foo & baz = fee ['&', [['bar', '=', 'foo'], ['baz', '=', 'fee']]] ['SELECT', 'color', 'FROM', 'colors'] ['SELECT', 'color', 'FROM', 'colors'] .....['1999', '/', '12', '/', '31'] - day: '31' - month: '12' - year: '1999' ['1999', '12', '31'] - day: '31' - month: '12' - year: '1999' Raised expected exception: ValueError: no such diagnostic 'xyzzy' ['testA', 'testB', 'testC'] =? ['testA', 'testB', 'testC'] ['testC'] =? ['testC'] 'testB\ntestC\n' =? 'testB\ntestC\n' ['testD', 'testE', 'testF'] =? ['testD', 'testE', 'testF'] ['testF'] =? ['testF'] 'testE\ntestF' =? 'testE\ntestF' ['a'] =? ['a'] ['a'] =? ['a'] '' =? '' 0 'aaa' 1 '\naaa' Raised expected exception: ParseException: Expected Re:('a+'), found '\' (at char 0), (line:1, col:1) 2 'a\naa' Raised expected exception: ParseException: Expected end of text, found '\' (at char 1), (line:1, col:2) 3 'aaa\n' Raised expected exception: ParseException: Expected end of text, found '\' (at char 3), (line:1, col:4) verify correct line() behavior when first line is empty string {W:(A) - LineStart W:(B)} AAA BBB ['AAA', 'BBB'] AAA BBB ['AAA', 'BBB'] AAA BBB BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) no \n in default whitespace chars {W:(A) - LineStart W:(B)} AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 3), (line:1, col:4) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 3), (line:1, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 6), (line:1, col:7) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA ^ ParseSyntaxException: Expected start of line, found '\n' (at char 6), (line:1, col:7) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found '\n' (at char 6), (line:1, col:7) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) AAA BBB AAA BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - LineStart W:(B)} FAIL: Expected start of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} AAA BBB ['AAA', 'BBB'] AAA BBB ['AAA', 'BBB'] AAA BBB BBB ^ ParseSyntaxException: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) pyparsing.core.And - {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} FAIL: Expected start of line, found 'BBB' (at char 10), (line:2, col:4) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) .................. AAA BBB AAA BBB ^ ParseSyntaxException: Expected end of line, found 'BBB' (at char 5), (line:1, col:6) pyparsing.core.And - {W:(A) - Suppress:(LineEnd) LineStart W:(B) Suppress:(LineEnd)} FAIL: Expected end of line, found 'BBB' (at char 5), (line:1, col:6) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3880, in parseImpl raise ParseSyntaxException._from_exception(pe) 1 1234567890 1:AAA 1| 2:AAA 2| 3:| 4: AAA| 5:| 6:B AAA| 7:| normal parsing 0 3 1 AAA 1 ParseResults(['AAA'], {}) 6 9 2 AAA 2 ParseResults(['AAA'], {}) 12 18 3 ParseResults(['AAA'], {}) parsing without \n in whitespace chars 0 3 1 AAA 1 'A' 6 9 2 AAA 2 'A' 13 18 4 AAA ' ' 1 1234567890 1:| 2:a| 3: b| 4: c| 5:d| 6:e| 7: f| 8: g| [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [[['a']], [['b']], [['c']], [['d']], [['e']], [['f']], [['g']]] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] [['a'], ['b'], ['c'], ['d'], ['e'], ['f'], ['g']] Literal Expected 'xyz', found end of text (at char 1), (line:1, col:2) CaselessLiteral Expected 'XYZ', found end of text (at char 1), (line:1, col:2) Keyword Expected Keyword 'xyz', found end of text (at char 1), (line:1, col:2) CaselessKeyword Expected CaselessKeyword 'xyz', found end of text (at char 1), (line:1, col:2) Word Expected W:(xyz), found end of text (at char 1), (line:1, col:2) Regex Expected Re:('xyz'), found end of text (at char 1), (line:1, col:2) 1 start 2 {integer 'start' integer} [1, 'start', 2] {integer 'start' integer} [1, 'start', 2] {integer 'START' integer} [1, 'START', 2] {integer word integer} [1, 'start', 2] 3 start4 {integer 'start' integer} [3, 'start', 4] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately followed by keyword character, found '4' (at char 7), (line:1, col:8) Raised expected exception: ParseException: Expected CaselessKeyword 'START', was immediately followed by keyword character, found '4' (at char 7), (line:1, col:8) Raised expected exception: ParseException: Expected word, found 'start4' (at char 2), (line:1, col:3) 5start 6 [5, 'start', 6] Raised expected exception: ParseException: Expected Keyword 'start', keyword was immediately preceded by keyword character, found '5start' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected CaselessKeyword 'START', keyword was immediately preceded by keyword character, found '5start' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected word, found 'start' (at char 1), (line:1, col:2) [28, 'ID', 'PARI12345678', 43] - id: 'PARI12345678' - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 [[28, ['ID', 'PARI12345678'], 43]] - loc: [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 [0]: [28, ['ID', 'PARI12345678'], 43] - locn_end: 43 - locn_start: 28 - value: ['ID', 'PARI12345678'] - id: 'PARI12345678' [0]: 28 [1]: ['ID', 'PARI12345678'] - id: 'PARI12345678' [2]: 43 [0, ['ljsdf'], 5] ['ljsdf'] [8, ['lksdjjf'], 15] ['lksdjjf'] [18, ['lkkjj'], 23] ['lkkjj'] ['body', False, 'Hello', ''] - contents: 'Hello' - empty: False - endBody: '' - startBody: ['body', False] - empty: False - tag: 'body' - tag: 'body' DOB >!<100-10-2010;more garbage verify MatchFirst iterates properly ['A', 'A', '3', 'A'] Raised expected exception: ParseException: matched token not at column 1, found '3' (at char 4), (line:1, col:5) ABC ^ ParseException: Expected W:(0-9), found 'ABC' (at char 0), (line:1, col:1) tests.test_unit.Test10_WithLeftRecursionParsingBoundedMemo pyparsing.core._WordRegex - W:(0-9) ['A'] - Achar: 'A' Raised expected exception: ValueError: cannot multiply ParserElement by negative value {'username': 'goat', 'errors': {'username': ['already taken', 'too short']}, 'empty_field': ''} Test defaults: [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Non-default opener [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Non-default closer [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Literal expressions for opener and closer [[['ax', '+', 'by'], '*C']] [0]: [['ax', '+', 'by'], '*C'] [0]: ['ax', '+', 'by'] [1]: *C Use ignore expression (1) [['let', [['greeting', '"Hello,', 'world!"']], ';;(foo bar', ['display', 'greeting']]] [0]: ['let', [['greeting', '"Hello,', 'world!"']], ';;(foo bar', ['display', 'greeting']] [0]: let [1]: [['greeting', '"Hello,', 'world!"']] [0]: ['greeting', '"Hello,', 'world!"'] [2]: ;;(foo bar [3]: ['display', 'greeting'] Use ignore expression (2) [['let', [['greeting', '"Hello, )world!"']], ';;', '(foo bar', ['display', 'greeting']]] [0]: ['let', [['greeting', '"Hello, )world!"']], ';;', '(foo bar', ['display', 'greeting']] [0]: let [1]: [['greeting', '"Hello, )world!"']] [0]: ['greeting', '"Hello, )world!"'] [2]: ;; [3]: (foo bar [4]: ['display', 'greeting'] Raised expected exception: ValueError: opening and closing strings cannot be the same Raised expected exception: ValueError: opening and closing arguments must be strings if no content expression is given ['aName', ['outer', ["'inner with opener {{ and closer }} in quoted string'"]]] [0]: aName [1]: ['outer', ["'inner with opener {{ and closer }} in quoted string'"]] [0]: outer [1]: ["'inner with opener {{ and closer }} in quoted string'"] ['aName', ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]]] [0]: aName [1]: ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]] [0]: outer [1]: ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"] [0]: 'inner [1]: with [2]: opener [3]: ['and', 'closer'] [4]: in [5]: quoted [6]: string' ['aName', ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]]] [0]: aName [1]: ['outer', ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"]] [0]: outer [1]: ["'inner", 'with', 'opener', ['and', 'closer'], 'in', 'quoted', "string'"] [0]: 'inner [1]: with [2]: opener [3]: ['and', 'closer'] [4]: in [5]: quoted [6]: string' 9413 tests produced real number PASS valid tests (321) real number with scientific notation PASS valid tests (2319) signed integer PASS valid tests (153) real number PASS invalid tests (2213) real number with scientific notation PASS .........................invalid tests (6587) signed integer PASS invalid tests (9260) # literal oneOf tests a b c ['a', 'b', 'c'] a a a ['a', 'a', 'a'] abc ['a', 'b', 'c'] # keyword oneOf tests a b c ['a', 'b', 'c'] a a a ['a', 'a', 'a'] # keyword oneOf failure tests abc abc ^ ParseException: Expected end of text, found 'abc' (at char 0), (line:1, col:1) pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd FAIL: Expected end of text, found 'abc' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1135, in parse_string se._parse(instring, loc) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3886, in parseImpl loc, exprtokens = e._parse(instring, loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 821, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 3534, in parseImpl raise ParseException(instring, loc, self.errmsg, self) verify oneOf handles duplicate symbols verify oneOf handles generator input verify oneOf handles list input verify oneOf handles set input Raised expected exception: TypeError: Invalid argument to one_of, expected string or iterable ['XXX Y/123', '1,234.567890'] - data: '1,234.567890' - id: 'XXX Y/123' ['0', '123', '321', 444] Raised expected exception: ParseException: OnlyOnce obj called multiple times w/out reset, found '1' (at char 0), (line:1, col:1) ['100', '200', '300', 600] verify handling of Optional's beyond the end of string Tal Weiss Major Tal Major Weiss Major Major Major Tal Major Weiss Major Tal Weiss ['foo'] - foo: ['foo'] ['bar', 'foo', 'bar', 'foo', 'bar', 'foo'] - bar: ['bar', 'bar', 'bar'] - foo: ['foo', 'foo', 'foo'] Raised expected exception: ParseException: Missing one or more required elements ('foo'), found 'bar' (at char 1), (line:1, col:2) 1999-12-31 100 2001-01-01 [['1999-12-31'], 100, ['2001-01-01']] - date: [['1999-12-31'], ['2001-01-01']] [0]: ['1999-12-31'] - day: '31' - month: '12' - year: '1999' [1]: ['2001-01-01'] - day: '01' - month: '01' - year: '2001' - id: 100 [0]: ['1999-12-31'] - day: '31' - month: '12' - year: '1999' [1]: 100 [2]: ['2001-01-01'] - day: '01' - month: '01' - year: '2001' 42 [42] - id: 42 verify Optional's do not cause match failure if have results name _images/cal.png:77_ ['alt', 'empty', 'height', 'src', 'startImg', 'tag', 'width'] ['int', 'f', '(', ')', '{}'] ['DO', ['Z']] [244, 23, 13, 2343] - int_values: [244, 23, 13, 2343] - total: 2623 ### before parse action is added ### result1.dump(): [['Mauney', '46.5']] - Rider: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [0]: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' ### after parse action was added ### result1.dump(): [['Mauney', '46.5']] - Rider: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [0]: ['Mauney', '46.5'] - name: 'Mauney' - score: '46.5' [['x1', AnnotatedToken('val', ['1']), 'x2', AnnotatedToken('val', ['2'])]] [0]: ['x1', AnnotatedToken('val', ['1']), 'x2', AnnotatedToken('val', ['2'])] 'AAAAA' parseAll=False (shouldSucceed=True) 'AAAAA' parseAll=True (shouldSucceed=True) 'AAABB' parseAll=False (shouldSucceed=True) 'AAABB' parseAll=True (shouldSucceed=False) AAABB ^ ParseException: Expected end of text, found 'BB' (at char 3), (line:1, col:4) tests.test_unit.Test10_WithLeftRecursionParsingBoundedMemo pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd 'AAAAA //blah' parseAll=False (shouldSucceed=True) 'AAAAA //blah' parseAll=True (shouldSucceed=True) 'AAABB //blah' parseAll=False (shouldSucceed=True) 'AAABB //blah' parseAll=True (shouldSucceed=False) AAABB //blah ^ ParseException: Expected end of text, found 'BB' (at char 3), (line:1, col:4) tests.test_unit.Test10_WithLeftRecursionParsingBoundedMemo pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd '00aab' parseAll=False (shouldSucceed=True) '00aab' parseAll=True (shouldSucceed=True) '00aaf' parseAll=False (shouldSucceed=True) '00aaf' parseAll=True (shouldSucceed=False) 00aaf ^ ParseException: Expected end of text, found 'f' (at char 4), (line:1, col:5) tests.test_unit.Test10_WithLeftRecursionParsingBoundedMemo pyparsing.core.And - {Empty StringEnd} pyparsing.core.StringEnd - StringEnd Parsing: 'a,b,c,100.2,,3' -> ['a', 'b', 'c', '100.2', '', '3'] Parsing: 'd, e, j k , m ' -> ['d', 'e', 'j k', 'm'] Parsing: "'Hello, World', f, g , , 5.1,x" -> ["'Hello, World'", 'f', 'g', '', '5.1', 'x'] Parsing: 'John Doe, 123 Main St., Cleveland, Ohio' -> ['John Doe', '123 Main St.', 'Cleveland', 'Ohio'] Parsing: 'Jane Doe, 456 St. James St., Los Angeles , California ' -> ['Jane Doe', '456 St. James St.', 'Los Angeles', 'California'] Parsing tests/karthik.ini ... 23 ['users'] users.K 8 8 users.mod_scheme 'QPSK' 'QPSK' users.Na K+2 K+2 OK Parsing examples/Setup.ini ... 125 ['Startup', 'Languages', 'test'] Startup.audioinf M3i M3i Languages.key1 0x0003 0x0003 test.foo bar bar OK Constructing EBNF parser with pyparsing... Parsing EBNF grammar with EBNF parser... - terminal_string - meta_identifier - integer - syntax - syntax_rule - definitions_list - single_definition - syntactic_term - syntactic_factor - syntactic_primary - optional_sequence - repeated_sequence - grouped_sequence Parsing EBNF grammar with generated EBNF parser... [['syntax', '=', '(', 'syntax_rule', ')', ',', '{', '(', 'syntax_rule', ')', '}', ';'], ['syntax_rule', '=', 'meta_identifier', ',', "'='", ',', 'definitions_list', ',', "';'", ';'], ['definitions_list', '=', 'single_definition', ',', '{', "'|'", ',', 'single_definition', '}', ';'], ['single_definition', '=', 'syntactic_term', ',', '{', "','", ',', 'syntactic_term', '}', ';'], ['syntactic_term', '=', 'syntactic_factor', ',', '[', "'-'", ',', 'syntactic_factor', ']', ';'], ['syntactic_factor', '=', '[', 'integer', ',', "'*'", ']', ',', 'syntactic_primary', ';'], ['syntactic_primary', '=', 'optional_sequence', '|', 'repeated_sequence', '|', 'grouped_sequence', '|', 'meta_identifier', '|', 'terminal_string', ';'], ['optional_sequence', '=', "'['", ',', 'definitions_list', ',', "']'", ';'], ['repeated_sequence', '=', "'{'", ',', 'definitions_list', ',', "'}'", ';'], ['grouped_sequence', '=', "'('", ',', 'definitions_list', ',', "')'", ';']] [['xavier', 'yeti'], ['alpha', 'beta', 'charlie'], ['will', 'beaver']] ['xavier', 'yeti'] ['alpha', 'beta', 'charlie'] ['will', 'beaver'] ['1', '0x2', '3', '0x4', 'aaa'] - base10: ['1', '3'] - hex: ['0x2', '0x4'] - word: ['aaa'] [[['Q', ['x', 'y', 'z']]], ':-', ['Bloo', ['x', 'Mitsis', 'y']], ['Foo', ['y', 'z', '1243']], ['y', '>', '28'], ['x', '<', '12'], ['x', '>', '3']] - Bloo: ['x', 'Mitsis', 'y'] - Foo: ['y', 'z', '1243'] - head: [['Q', ['x', 'y', 'z']]] - Q: ['x', 'y', 'z'] [0]: ['Q', ['x', 'y', 'z']] [0]: Q [1]: ['x', 'y', 'z'] - pred: [['y', '>', '28'], ['x', '<', '12'], ['x', '>', '3']] [0]: ['y', '>', '28'] [1]: ['x', '<', '12'] [2]: ['x', '>', '3'] [0]: [['Q', ['x', 'y', 'z']]] - Q: ['x', 'y', 'z'] [0]: ['Q', ['x', 'y', 'z']] [0]: Q [1]: ['x', 'y', 'z'] [1]: :- [2]: ['Bloo', ['x', 'Mitsis', 'y']] [0]: Bloo [1]: ['x', 'Mitsis', 'y'] [3]: ['Foo', ['y', 'z', '1243']] [0]: Foo [1]: ['y', 'z', '1243'] [4]: ['y', '>', '28'] [5]: ['x', '<', '12'] [6]: ['x', '>', '3'] Re:('[a-z]+') ['abc'] Re:('[a-z]+') ['abc'] Re:('[a-z]+') ................ ['abc'] Re:('[a-z]+') ['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] Re:('[a-z]*') ['abc'] {Re:('[a-z]+') | Re:('[a-z]+')} ['abc'] {Re:('[a-z]+') ^ Re:('[a-z]+')} ['abc'] {Re:('[a-z]*') | Re:('[a-z]*')} ['abc'] {Re:('[a-z]*') ^ Re:('[a-z]*')} ['abc'] Raised expected exception: ParseSyntaxException: Expected W:(0-9), found 'bad' (at char 4), (line:1, col:5) Raised expected exception: ParseSyntaxException: should raise here (at char 0), (line:1, col:1) Raised expected exception: ParseSyntaxException: Expected identifier, found end of text (at char 1), (line:1, col:2) [123, 456, 789] [123, 456, 789] 9 -> 9 -9 -> -9 --9 -> 9 -E -> -2.718281828459045 9 + 3 + 5 -> 17 9 + 3 / 11 -> 9.272727272727273 (9 + 3) -> 12 (9+3) / 11 -> 1.0909090909090908 9 - 12 - 6 -> -9 9 - (12 - 6) -> 3 2*3.14159 -> 6.28318 3.1415926535*3.1415926535 / 10 -> 0.9869604400525172 PI * PI / 10 -> 0.9869604401089358 PI*PI/10 -> 0.9869604401089358 PI^2 -> 9.869604401089358 round(PI^2) -> 10 6.02E23 * 8.048 -> 4.844896e+24 e / 3 -> 0.9060939428196817 sin(PI/2) -> 1.0 10+sin(PI/4)^2 -> 10.5 trunc(E) -> 2 trunc(-E) -> -2 round(E) -> 3 round(-E) -> -3 E^PI -> 23.140692632779263 exp(0) -> 1.0 exp(1) -> 2.718281828459045 2^3^2 -> 512 (2^3)^2 -> 64 2^3+2 -> 10 2^3+5 -> 13 2^9 -> 512 sgn(-2) -> -1 sgn(0) -> 0 sgn(0.1) -> 1 round(E, 3) -> 2.718 round(PI^2, 3) -> 9.87 sgn(cos(PI/4)) -> 1 sgn(cos(PI/2)) -> 0 sgn(cos(PI*3/4)) -> -1 +(sgn(cos(PI/4))) -> 1 -(sgn(cos(PI/4))) -> -1 -> ['BODY', False] ['BODY', False] - empty: False - startBody: ['BODY', False] - empty: False - tag: 'BODY' - tag: 'BODY' -> ['BODY', ['bgcolor', '#00FFCC'], False] ['BODY', ['bgcolor', '#00FFCC'], False] - bgcolor: '#00FFCC' - empty: False - startBody: ['BODY', ['bgcolor', '#00FFCC'], False] - bgcolor: '#00FFCC' - empty: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFCC'] [2]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFCC'] [2]: False -> ['BODY', ['bgcolor', '#00FFAA'], True] ['BODY', ['bgcolor', '#00FFAA'], True] - bgcolor: '#00FFAA' - empty: True - startBody: ['BODY', ['bgcolor', '#00FFAA'], True] - bgcolor: '#00FFAA' - empty: True - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFAA'] [2]: True - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFAA'] [2]: True -> ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False -> ['BODY', True] ['BODY', True] - empty: True - startBody: ['BODY', True] - empty: True - tag: 'BODY' - tag: 'BODY' -> [''] [''] - endBody: '' end tag /* * a block comment * */ typedef string[10] tenStrings; typedef sequence stringSeq; typedef sequence< sequence > stringSeqSeq; interface QoSAdmin { stringSeq method1(in string arg1, inout long arg2); stringSeqSeq method2(in string arg1, inout long arg2, inout long arg3); string method3(); }; tokens = [['typedef', 'string', '[', '10', ']', 'tenStrings', ';'], ['typedef', ['sequence', '<', 'string', '>'], 'stringSeq', ';'], ['typedef', ['sequence', '<', ['sequence', '<', 'string', '>'], '>'], 'stringSeqSeq', ';'], ['interface', 'QoSAdmin', '{', 'stringSeq', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', 'stringSeqSeq', 'method2', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ['inout', 'long', 'arg3'], ')', ';', 'string', 'method3', '(', ')', ';', '}', ';']] 59 /* * a block comment * */ typedef string[10] tenStrings; typedef /** ** *** **** * * a block comment * */ sequence /*comment inside an And */ stringSeq; /* */ /**/ /***/ /****/ typedef sequence< sequence > stringSeqSeq; interface QoSAdmin { stringSeq method1(in string arg1, inout long arg2); stringSeqSeq method2(in string arg1, inout long arg2, inout long arg3); string method3(); }; tokens = [['typedef', 'string', '[', '10', ']', 'tenStrings', ';'], ['typedef', ['sequence', '<', 'string', '>'], 'stringSeq', ';'], ['typedef', ['sequence', '<', ['sequence', '<', 'string', '>'], '>'], 'stringSeqSeq', ';'], ['interface', 'QoSAdmin', '{', 'stringSeq', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', 'stringSeqSeq', 'method2', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ['inout', 'long', 'arg3'], ')', ';', 'string', 'method3', '(', ')', ';', '}', ';']] 59 const string test="Test String\n"; const long a = 0; const long b = -100; const float c = 3.14159; const long d = 0x007f7f7f; exception TestException { string msg; sequence dataStrings; }; interface TestInterface { void method1(in string arg1, inout long arg2); }; tokens = [['const', 'string', 'test', '=', '"Test String\\n"', ';'], ['const', 'long', 'a', '=', '0', ';'], ['const', 'long', 'b', '=', '-100', ';'], ['const', 'float', 'c', '=', '3.14159', ';'], ['const', 'long', 'd', '=', '0x007f7f7f', ';'], 'exception', 'TestException', '{', ['string', 'msg', ';'], [['sequence', '<', 'string', '>'], 'dataStrings', ';'], '}', ';', ['interface', 'TestInterface', '{', 'void', 'method1', '(', ['in', 'string', 'arg1'], ['inout', 'long', 'arg2'], ')', ';', '}', ';']] 60 module Test1 { exception TestException { string msg; ]; interface TestInterface { void method1(in string arg1, inout long arg2) raises (TestException); }; }; exception TestException ^ Expected {moduleDef | {moduleItem}...}, found 'exception' (at char 56), (line:4, col:15) module Test1 { exception TestException { string msg; }; }; tokens = ['module', 'Test1', '{', 'exception', 'TestException', '{', ['string', 'msg', ';'], '}', ';', '}', ';'] 13 Test ifOnlyIfOnly Match Literal ['if'] Match Keyword failed Test if(OnlyIfOnly) Match Literal ['if'] Match Keyword ['if'] Test if (OnlyIf Only) Match Literal ['if'] Match Keyword ['if'] Test IFOnlyIfOnly Match Literal failed Match Keyword failed Test If(OnlyIfOnly) Match Literal failed Match Keyword ['if'] Test iF (OnlyIf Only) Match Literal failed Match Keyword ['if'] Raised expected exception: ValueError: null string passed to Keyword; use Empty() instead ['0', '123', '321', 444] ['spam', 'eggs'] - first: 'spam' - second: 'eggs' [] ['123', '456', 'ABC', 'DEF'] - ints: ['123', '456'] - words: ['ABC', 'DEF'] ['123', 'ABC', 'DEF'] - ints: ['123', '456'] ...........['List', '__add__', '__annotations__', '__bool__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattr__', '__getattribute__', '__getitem__', '__getnewargs__', '__getstate__', '__gt__', '__hash__', '__iadd__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__module__', '__ne__', '__new__', '__radd__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__setattr__', '__setitem__', '__setstate__', '__sizeof__', '__slots__', '__str__', '__subclasshook__', '__weakref__', '_all_names', '_asStringList', '_modal', '_name', '_null_values', '_parent', '_tokdict', '_toklist', 'append', 'asDict', 'asList', 'as_dict', 'as_list', 'clear', 'copy', 'dump', 'extend', 'from_dict', 'get', 'getName', 'get_name', 'haskeys', 'insert', 'items', 'keys', 'pop', 'pprint', 'trios', 'values'] ['spam', 'eggs', 'foo', 'bar'] ['abc', 'def', 'ghi', 'ihg', 'fed', 'cba'] [['123', 456, ['789', 789]]] - trios: ['123', 456, ['789', 789]] - first: '123' - second: 456 - third: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: 123 [1]: 456 [2]: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: ['123', 456, ['789', 789]] - first: '123' - second: 456 - third: ['789', 789] - threeInt: 789 - threeStr: '789' [0]: 123 [1]: 456 [2]: ['789', 789] - threeInt: 789 - threeStr: '789' ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'] ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'] ['d', 'c', 'A', 'B', 'C', 'f', 'b', 'a', 'D', 'E', 'F', 'e', 'G', 'i', 'g', 'h', 'j', 'H', 'I', 'J'] ['d', 'c', 'A', 'B', 'C', 'f', 'b', 'a', 'D', 'E', 'F', 'e', 'G', 'i', 'g', 'h', 'j', 'H', 'I', 'J'] Pre-insert [[1, 2, 3], 'dice', ['rolled', 'first', 'try']] - additional: ['rolled', 'first', 'try'] - label: 'dice' - nums: [1, 2, 3] [0]: [1, 2, 3] [1]: dice [2]: ['rolled', 'first', 'try'] Post-insert [[1, 2, 3], 6, 'dice', ['rolled', 'first', 'try']] - additional: ['rolled', 'first', 'try'] - label: 'dice' - nums: [1, 2, 3] [0]: [1, 2, 3] [1]: 6 [2]: dice [3]: ['rolled', 'first', 'try'] [ 1,2,3,4,5,6 ] [['[', '1', '2', '3', '4', '5', '6', ']']] - LIST: ['[', '1', '2', '3', '4', '5', '6', ']'] - END_LIST: ']' - LIST_VALUES: ['1', '2', '3', '4', '5', '6'] - LIT_NUM: ['1', '2', '3', '4', '5', '6'] - START_LIST: '[' [0]: ['[', '1', '2', '3', '4', '5', '6', ']'] - END_LIST: ']' - LIST_VALUES: ['1', '2', '3', '4', '5', '6'] - LIT_NUM: ['1', '2', '3', '4', '5', '6'] - START_LIST: '[' "Golden Gate Bridge" 37.819722 -122.478611 height=746 span=4200 ['Golden Gate Bridge', [37.819722, -122.478611, ['height', 746], ['span', 4200]]] - data: [37.819722, -122.478611, ['height', 746], ['span', 4200]] - height: 746 - lat: 37.819722 - long: -122.478611 - span: 4200 [0]: 37.819722 [1]: -122.478611 [2]: ['height', 746] [3]: ['span', 4200] - name: 'Golden Gate Bridge' [0]: Golden Gate Bridge [1]: [37.819722, -122.478611, ['height', 746], ['span', 4200]] - height: 746 - lat: 37.819722 - long: -122.478611 - span: 4200 [0]: 37.819722 [1]: -122.478611 [2]: ['height', 746] [3]: ['span', 4200] ['a', ['href', 'blah'], False] - empty: False - href: 'blah' - startA: ['a', ['href', 'blah'], False] - empty: False - href: 'blah' - tag: 'a' [0]: a [1]: ['href', 'blah'] [2]: False - tag: 'a' [0]: a [1]: ['href', 'blah'] [2]: False [] [] [1, 2, 3, 4, 5] ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 0 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 1 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 2 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 3 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 4 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False Test pickle dump protocol 5 ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - startBody: ['BODY', ['bgcolor', '#00FFBB'], ['fgcolor', 'black'], False] - bgcolor: '#00FFBB' - empty: False - fgcolor: 'black' - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False - tag: 'BODY' [0]: BODY [1]: ['bgcolor', '#00FFBB'] [2]: ['fgcolor', 'black'] [3]: False ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 0 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 1 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 2 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 3 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 4 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 5 ['Good', 'morning', 'Miss', 'Crabtree', '!'] - greetee: ['Miss', 'Crabtree'] - greeting: ['Good', 'morning'] - punc: ['!'] Test pickle dump protocol 0 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 1 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 2 [['BABBAB']] [0]: ['BABBAB'] ............................Test pickle dump protocol 3 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 4 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 5 [['BABBAB']] [0]: ['BABBAB'] Test pickle dump protocol 0 ['BABBAB'] Test pickle dump protocol 1 ['BABBAB'] Test pickle dump protocol 2 ['BABBAB'] Test pickle dump protocol 3 ['BABBAB'] Test pickle dump protocol 4 ['BABBAB'] Test pickle dump protocol 5 ['BABBAB'] Test pickle dump protocol 0 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 1 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 2 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 3 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 4 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 5 ['BABBAB'] - name: 'BABBAB' Test pickle dump protocol 0 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 1 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 2 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 3 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 4 ['BABBAB'] - name: ['BABBAB'] Test pickle dump protocol 5 ['BABBAB'] - name: ['BABBAB'] ParseResults(['test', 'blub'], {'word': 'blub'}) blub {'word': 'blub'} ParseResults(['test', 'blub'], {'word': ['test', 'blub']}) ['test', 'blub'] {'word': ['test', 'blub']} ['abc'] - A: 'abc' Raised expected exception: AttributeError: __xyz__ ['5', '4', '3', '2', '1'] {'eggs', 'spam'} not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] not the bird ['not', 'the', 'bird'] - rexp: ['not', 'the', 'bird'] the bird ['the', 'bird'] - rexp: ['the', 'bird'] ParseResults([('A', 'Z')], {'Achar': ('A', 'Z')}) ('A', 'Z') ['/', [['respectaccents']]] ('/respectaccents/ignoreaccents', 0) ['/', [['ignoreaccents']]] ('/respectaccents/ignoreaccents', 15) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 1)}, '_info_': ('/respectaccents/ignoreaccents', 1)}, '/': '', ParseResults(['respectaccents'], {'_info_': ('/respectaccents/ignoreaccents', 1)}): '', '_info_': ('/respectaccents/ignoreaccents', 0)} ('/respectaccents/ignoreaccents', 0) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 16)}, '_info_': ('/respectaccents/ignoreaccents', 16)}, '/': '', ParseResults(['ignoreaccents'], {'_info_': ('/respectaccents/ignoreaccents', 16)}): '', '_info_': ('/respectaccents/ignoreaccents', 15)} ('/respectaccents/ignoreaccents', 15) ['/', [['respectaccents']]] ('/respectaccents/ignoreaccents', 0) ['/', [['ignoreaccents']]] ('/respectaccents/ignoreaccents', 15) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 1)}, '_info_': ('/respectaccents/ignoreaccents', 1)}, '/': '', ParseResults(['respectaccents'], {'_info_': ('/respectaccents/ignoreaccents', 1)}): '', '_info_': ('/respectaccents/ignoreaccents', 0)} ('/respectaccents/ignoreaccents', 0) {'name': {'default': {'_info_': ('/respectaccents/ignoreaccents', 16)}, '_info_': ('/respectaccents/ignoreaccents', 16)}, '/': '', ParseResults(['ignoreaccents'], {'_info_': ('/respectaccents/ignoreaccents', 16)}): '', '_info_': ('/respectaccents/ignoreaccents', 15)} ('/respectaccents/ignoreaccents', 15) Re:('[-+][0-9]+') correctly failed to match '1234 foo' Re:('[-+][0-9]+') correctly failed to match ' +foo' Re:('[0-9]+') correctly failed to match 'abc' Re:('[0-9]+') correctly failed to match '+123 foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match 'foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match '"foo bar\'' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly failed to match '\'foo bar"' Re:('[-+][0-9]+') correctly matched ' +123' Re:('[-+][0-9]+') correctly matched '+123' Re:('[-+][0-9]+') correctly matched '+123 foo' Re:('[-+][0-9]+') correctly matched '-0 foo' Re:('[0-9]+') correctly matched '123 foo' Re:('[0-9]+') correctly matched '0 foo' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly matched '"foo"' Re:('("[^\"]*")|(\\'[^\\']*\\')') correctly matched "'foo bar' baz" Re:('[A-Z]+') correctly failed to match 'blah' Re:('[A-Z]+') correctly matched 'BLAH' Re:('("(?P[^\"]*)")') correctly matched '"foo bar" baz' ['"zork"'] [('content', 'zork')] zork lets try an invalid RE successfully rejected an invalid RE: invalid pattern ('("[^"]*")|(\'[^\']*\'') passed to Regex Raised expected exception: ValueError: null string passed to Regex; use Empty() instead ['spam', 'eggs', 'suf'] ['pre', 'spam', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: ParseException: Missing one or more required elements ('and'), found ' ' (at char 4), (line:1, col:5) ['spam', 'and', 'eggs'] - first: 'spam' - second: 'eggs' Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement ['spam', 'eggs'] ['pre', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement ['abd', 'def', 'ghi', 'jkl'] ['abd', 'def', 'ghi', 'jkl'] Raised expected exception: TypeError: cannot multiply ParserElement and str objects Raised expected exception: TypeError: cannot multiply ParserElement and str objects ['spam', '11', '22'] - first: 'spam' - second: ['11', '22'] ['spam', '111', '222'] - first: 'spam' - second: ['111', '222'] ['spam'] - first: 'spam' ['spam', '12', '23', '34'] - first: 'spam' - second: ['12', '23', '34'] ['spam', '45'] - first: 'spam' - second: ['45'] ['spam', '100'] - first: 'spam' - second: ['100'] ['spam', '100', '200', '300'] - first: 'spam' - second: ['100', '200', '300'] ['spam', '1', '2'] - first: 'spam' - second: ['1', '2'] ['spam', '1', '2', '3'] - first: 'spam' - second: ['1', '2', '3'] Raised expected exception: ValueError: second tuple value must be greater or equal to first tuple value Raised expected exception: TypeError: cannot multiply ParserElement and (str,str) objects Raised expected exception: TypeError: cannot multiply ParserElement and (str,NoneType) objects Raised expected exception: TypeError: only 1 or 2 index arguments supported ((2, 3, 4)) ['spam', 'eggs', 'suf'] ['pre', 'spam', 'eggs'] Raised expected exception: TypeError: Cannot combine element of type int with ParserElement Raised expected exception: TypeError: Cannot combine element of type int with ParserElement {{word {{word_1 word} ^ word}} ^ {word word word}} foo bar temp -> ['foo', 'bar', 'temp'] EXP: AAA ['123', '456', '789', '234'] GOT: AAA ['123', '456', '789', '234'] AAA ['123', '456', '789', '234'] EXP: 234 ['123', '456', '789'] GOT: 234 ['123', '456', '789'] 234 ['123', '456', '789'] EXP: AAA ['123', '456', '789'] GOT: AAA ['123', '456', '789'] AAA ['123', '456', '789'] EXP: 789 ['123', '456'] GOT: 789 ['123', '456'] 789 ['123', '456'] noname ['123', '456'] ['AAA', '123', '456', '789', '234'] - name: 'AAA' Raised expected exception: TypeError: pop() got an unexpected keyword argument 'notDefault' c384 b8324 _9293874 _293 404 $%^$^%$2939 [384, 8324] - prefix: ['c', 'b'] [9293874, 293] [404] [2939] - prefix: ['^%$'] [2939] [404] [['working']] [0]: ['working'] - main: ['working'] - negs_lb: 'not' got maximum excursion limit exception ['like "SQL"'] ['aaayaaa'] ..............................>>entering convert_to_int(line: '132', 0, ParseResults(['132'], {})) <>entering (line: '132', 0, ParseResults([132], {})) < (ret: 1320) >>entering Z(line: '132', 0, ParseResults([1320], {})) <] ('123', '456', 'lsdfkj') [('123', '456', 'lsdfkj')] Raised expected exception: TypeError: Regex may only be constructed with a string or a compiled RE object test sub with string This is the title: 'Richard III' test sub with re string

This is the main heading

This is the sub-heading

test sub with re string (Regex returns re.match)

This is the main heading

This is the sub-heading

test sub with callable that return str I want this in upcase: WHAT? WHAT? Raised expected exception: TypeError: cannot use sub() with a callable with Regex(asMatch=True) Raised expected exception: TypeError: cannot use sub() with Regex(asGroupList=True) Raised expected exception: TypeError: cannot use sub() with Regex(asGroupList=True) verify behavior with repeated tokens when packrat parsing is enabled skipping this test, not compatible with memoization skipping this test, not compatible with memoization skipping this test, not compatible with memoization skipping this test, not compatible with memoization skipping this test, not compatible with memoization ['bam', 'boo'] ['boo', 'bam'] BD -> Expected {'A' | {'B' 'C'} | 'E'}, found 'D' (at char 1), (line:1, col:2) [1, 2, 3, 4, 6, 8, 9, 10, 16] [1, 2, 3, 4, 6, 8, 9, 10, 16] [11] [11] 1/2 eval: 0.5 1/0 [1, '/', 0] - denominator: 0 - numerator: 1 eval_fraction failed: ZeroDivisionError: division by zero True ['129.6.15.28', '129.6.15.29', '132.163.4.101', '132.163.4.102', '132.163.4.103'] [(ParseResults([], {}), 5, 6)] Before parsing with setBreak: False After parsing with setBreak: True a | b | c d | e | f {a | b | c | d | e | f} Forward: + | - term + | - term Forward: ?: term ?: term Forward: {a | b | c [{d | e | f : ...}]...} int [, int]... (len) int... nested () expression (, ) (, ) common HTML entity lsdjkf &'"&xyzzy; Raised expected exception: TypeError: parse actions must be callable ['A'] - Achar: 'A' verify behavior of setResultsName with OneOrMore and ZeroOrMore ['test', 'test'] ['test', 'test'] ['test', 'test'] ['test', 'test'] ['test', 'test'] Received expected exception: just one arg (at char 0), (line:1, col:1) ['some text /* comment with ; in */', ';', 'working'] ['some text /* comment with ; in */some other stuff', ';', 'working'] ['some text /* comment with ; in */', ';', 'working'] Raised expected exception: ParseException: Expected ';', found ' ' (at char 37), (line:1, col:38) Raised expected exception: Exception: use of `...` expression without following SkipTo target expression verify proper streamline logic {{{'A' 'B'} 'C'} 'D'} {'A' 'B' 'C' 'D'} ['123'] ['123'] ['123'] ['123'] ['123'] ['123'] Raised expected exception: ParseException: Expected W:(0-9), found ' ' (at char 0), (line:1, col:1) Raised expected exception: ParseException: Expected '123', found ' ' (at char 0), (line:1, col:1) {StringStart W:(a-e) StringEnd} 'aaa' ['aaa'] {LineStart W:(a-e) StringEnd} 'aaa' ['aaa'] {LineStart W:(a-e) StringEnd} '\naaa' ['aaa'] {LineStart W:(a-e) StringEnd} ' aaa' ['aaa'] {LineStart W:(a-e) StringEnd} '\n aaa' ['aaa'] {AtLineStart:(W:(a-e)) StringEnd} ' aaa' Raised expected exception: ParseException: not found at line start, found 'aaa' (at char 3), (line:1, col:4) {AtLineStart:(W:(a-e)) StringEnd} '\n aaa' Raised expected exception: ParseException: not found at line start, found 'aaa' (at char 4), (line:2, col:4) garbage;DOB 10-10-2010;more garbage ID PARI12345678;more garbage ID:PARI12345678 DOB:10-10-2010 INFO: ID:PARI12345678 DOB:10-10-2010 INFO: ['DOB', '10-10-2010'] - dob: '10-10-2010' ['ID', 'PARI12345678'] - id: 'PARI12345678' garbage;ID PARI12345678;more garbage DOB 10-10-2010;more garbage ID:PARI12345678 DOB:10-10-2010 INFO: ID:PARI12345678 DOB:10-10-2010 INFO: ['ID', 'PARI12345678'] - id: 'PARI12345678' ['DOB', '10-10-2010'] - dob: '10-10-2010' garbage;DOB 10-10-2010 ID: DOB:10-10-2010 INFO: ID: DOB:10-10-2010 INFO: ['DOB', '10-10-2010'] - dob: '10-10-2010' garbage;ID PARI12345678;more garbage- I am cool ID:PARI12345678 DOB: INFO: I am cool ID:PARI12345678 DOB: INFO: I am cool ['ID', 'PARI12345678'] - id: 'PARI12345678' ['-', ' I am cool'] - info: ' I am cool' 00 11 22 aa FF 0a 0d 1a [0, 17, 34, 170, 255, 10, 13, 26] I wish to buy 12345 shares of Acme Industries (as a gift to my (ex)wife) I 12,345 Acme Industries asagifttomyexwife 1 1234567890 1:| 2:| 3:check aaa| 1 1234567890 1:| 2:| 3:CHECK aaa| 1 2 12345678901234567890 1: check aaa| 1 2 12345678901234567890 1: CHECK aaa| [['rint'], ['a100']] 1 1234567890 1: check| 1 1234567890 1: CHECK| Original: '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' Should match: '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' '\r\nSTRINGTABLE\r\nBEGIN\r\n// Comment\r\nIDS_1 "Copied"\r\nEND\r\n' aaa 333 ['aaa', '333'] b 1 ['b', '1'] ababab 32123 ['ababab', '32123'] 123 [123] 456 [456] abc abc ^ ParseException: Expected {{integer}}, found 'abc' (at char 0), (line:1, col:1) pyparsing.core.Or - {{integer}} FAIL: Expected {{integer}}, found 'abc' (at char 0), (line:1, col:1) File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 2100, in run_tests result = self.parse_string(t, parse_all=parseAll) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 1131, in parse_string loc, tokens = self._parse(instring, 0) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 817, in _parseNoCache loc, tokens = self.parseImpl(instring, pre_loc, doActions) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/RPM/BUILD/pyparsing-3.0.9/pyparsing/core.py", line 4025, in parseImpl raise maxException 101222 101222 ['Καλημέρα', ',', 'κόσμε', '!'] [['şehir', 'İzmir'], ['ülke', 'Türkiye'], ['nüfus', 4279677]] - nüfus: 4279677 - ülke: 'Türkiye' - şehir: 'İzmir' [0]: ['şehir', 'İzmir'] [1]: ['ülke', 'Türkiye'] [2]: ['nüfus', 4279677] 斛Ļΰ֧॓썌)翋қڙภ啵»ῄﭏय뻭f㩧Ӎܗำ袺ijᾓגꣵ뢢Ð旒ꙏ܏ร荰ŻΆִड़겭2㻷ӟܜต鑟eἁרॗ주?姁ԋڼั黫BΤדּय़잱E怒ⷼسำ絷{Όטा쭲Ø迆үݼๅ皿ČἌא꣰ᆪÌ姸Ꚕݻ๎� ['斛Ļΰ֧॓썌)翋қڙภ啵»ῄﭏय뻭f㩧Ӎܗำ袺ijᾓגꣵ뢢Ð旒ꙏ\u070fร荰ŻΆִड़겭2㻷ӟܜต鑟eἁרॗ주?姁ԋڼั黫BΤדּय़잱E怒ⷼسำ絷{Όטा쭲Ø迆үݼๅ皿ČἌא꣰ᆪÌ姸Ꚕݻ๎�'] [[10, 'print', 123, ';'], [20, 'print', 234, ';', 567, ';'], [30, 'print', 890]] [0]: [10, 'print', 123, ';'] [1]: [20, 'print', 234, ';', 567, ';'] [2]: [30, 'print', 890] ..................[['abc', 'abc', 'abc']] [0]: ['abc', 'abc', 'abc'] [["'def'", "'def'", "'def'"]] [0]: ["'def'", "'def'", "'def'"] [[123, 123, 123]] [0]: [123, 123, 123] [[4.56, 4.56, 4.56]] [0]: [4.56, 4.56, 4.56] [['a_bc', 'a_bc', 'a_bc']] [0]: ['a_bc', 'a_bc', 'a_bc'] [['abc', '\n'], ['abc', '\n'], ['abc']] [0]: ['abc', '\n'] [1]: ['abc', '\n'] [2]: ['abc'] [["'def'", '\n'], ["'def'", '\n'], ["'def'"]] [0]: ["'def'", '\n'] [1]: ["'def'", '\n'] [2]: ["'def'"] [[123, '\n'], [123, '\n'], [123]] [0]: [123, '\n'] [1]: [123, '\n'] [2]: [123] [[4.56, '\n'], [4.56, '\n'], [4.56]] [0]: [4.56, '\n'] [1]: [4.56, '\n'] [2]: [4.56] [['a_bc', '\n'], ['a_bc', '\n'], ['a_bc']] [0]: ['a_bc', '\n'] [1]: ['a_bc', '\n'] [2]: ['a_bc'] [['abc', 'abc', 'abc']] [0]: ['abc', 'abc', 'abc'] [["'def'", "'def'", "'def'"]] [0]: ["'def'", "'def'", "'def'"] [[123, 123, 123]] [0]: [123, 123, 123] [[4.56, 4.56, 4.56]] [0]: [4.56, 4.56, 4.56] [['a_bc', 'a_bc', 'a_bc']] [0]: ['a_bc', 'a_bc', 'a_bc'] verify behavior of validate() Forward: Group:({'A' | : ...}) RecursiveGrammarException: [Forward: Group:({'A' | : ...}), Group:({'A' | : ...}), {'A' | Forward: Group:({'A' | : ...})}, Forward: Group:({'A' | : ...})] Forward: {['A'] : ...} RecursiveGrammarException: [Forward: {['A'] : ...}, {['A'] Forward: {['A'] : ...}}, Forward: {['A'] : ...}] ('VUTSRQPONMLKJIHGFEDCBA', 5, ParseResults(['Q'], {})) ['V', 'U', 'T', 'S', 'R', 'Q', 'P', 'O', 'N', 'M', 'L', 'K', 'J', 'I', 'H', 'G', 'F', 'E', 'D', 'C', 'B', 'A'] ('VUTSRQPONMLKJIHGFEDCBA', 5, ParseResults(['Q'], {})) make a ClassAsPAStarNew ('VUTSRQPONMLKJIHGFEDCBA', 17, ParseResults(['E'], {})) making a ClassAsPA1 ['V', 'U', 'T', 'S', 'R', 'Q', 'P', 'O', 'N', 'M', 'L', 'K', 'J', 'I', 'H', 'G', 'F', 'E', 'D', 'C', 'B', 'A'] verify that using '<<' operator with a Forward raises a warning if there is a dangling '|' operator unsafe << and |, but diag not enabled, should not warn unsafe << and |, should warn unsafe << and |, should warn safe <<= and |, should not warn safe << and (|), should not warn [['a', ['b', 'x'], False, '2', ''], ['a', ['b', 'x'], False, '3', '']] [0]: ['a', ['b', 'x'], False, '2', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '2' [0]: a [1]: ['b', 'x'] [2]: False [3]: 2 [4]: [1]: ['a', ['b', 'x'], False, '3', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '3' [0]: a [1]: ['b', 'x'] [2]: False [3]: 3 [4]: [['a', ['b', 'x'], False, '2', ''], ['a', ['b', 'x'], False, '3', '']] [0]: ['a', ['b', 'x'], False, '2', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '2' [0]: a [1]: ['b', 'x'] [2]: False [3]: 2 [4]: [1]: ['a', ['b', 'x'], False, '3', ''] - b: 'x' - empty: False - endA: '' - tag: 'a' - value: '3' [0]: a [1]: ['b', 'x'] [2]: False [3]: 3 [4]: [['a', ['class', 'boo'], False, '8', '']] [0]: ['a', ['class', 'boo'], False, '8', ''] - class: 'boo' - empty: False - endA: '' - tag: 'a' - value: '8' [0]: a [1]: ['class', 'boo'] [2]: False [3]: 8 [4]: ABC DEF GHI [['D', 'G'], ['A'], ['C', 'F'], ['I'], ['E'], ['A', 'I']] JKL MNO PQR [['J', 'M', 'P'], [], ['L', 'R'], ['O'], [], ['O']] STU VWX YZ [['S', 'V'], ['Y'], ['X', 'Z'], ['U'], [], ['U', 'Y']] ABC DEF GHI JKL MNO PQR STU VWX YZ [['D', 'G', 'J', 'M', 'P', 'S', 'V'], ['A', 'Y'], ['C', 'F', 'L', 'R', 'X', 'Z'], ['I', 'O', 'U'], ['E'], ['A', 'I', 'O', 'U', 'Y']] [['Hello'], ['Mr'], ['Ed'], ["it's"], ['Wilbur']] ['ABCDEMNXYZABCDEMNXYZABCDEMNXYZ'] Testing escape char: \ -> W:(\]) re: '[\\\]]+') Match ']]]]]]]\\\]]]]]\' -> True Testing escape char: \ -> W:([\) re: '[\[\\]+') Match '\[\\\[\\\[[\[[[[' -> True Testing escape char: \ -> W:(\]) re: '[\\\]]+') Match '\\\]\\]\\]\\\\]\' -> True Testing escape char: \ -> W:(\, A-Z) re: '\\[A-Z]*') Match '\DXAJDSUMKJRSKYBB' -> True Testing escape char: \ -> W:(\, A-Z) re: '\\[A-Z]*') Match '\GJAMOCPCPRHZSMRA' -> True Testing escape char: ^ -> W:(^_) re: '[\^_]+') Match '^^___^_^_^^___^_' -> True Testing escape char: ^ -> W:(]^) re: '[\]\^]+') Match ']]^^]^^^]]]^^]]]' -> True Testing escape char: ^ -> W:(^_) re: '[\^_]+') Match '^^^^^^^__^^__^^_' -> True Testing escape char: ^ -> W:(^, A-Z) re: '\^[A-Z]*') Match '^BCCXXVDJRYEEJIMY' -> True Testing escape char: ^ -> W:(^, A-Z) re: '\^[A-Z]*') Match '^IOWMYAILTECPLIKY' -> True Testing escape char: - -> W:(-.) re: '[\-.]+') Match '-.-.-......-..--' -> True Testing escape char: - -> W:(,-) re: '[,\-]+') Match ',,,,,,---,-,,,-,' -> True Testing escape char: - -> W:(-.) re: '[\-.]+') Match '-.-..-..--..-...' -> True Testing escape char: - -> W:(-, A-Z) re: '\-[A-Z]*') Match '-MTEJBUYCNVALPALG' -> True Testing escape char: - -> W:(-, A-Z) re: '\-[A-Z]*') Match '-OTWQJZQFYZYHWCIU' -> True Testing escape char: ] -> W:(]^) re: '[\]\^]+') Match '^^]^^]]]]^]]]]]^' -> True Testing escape char: ] -> W:(\]) re: '[\\\]]+') Match '\]\\\\]\\\\]]]]\' -> True Testing escape char: ] -> W:(]^) re: '[\]\^]+') Match ']^]]]^^^^^^]]^^]' -> True Testing escape char: ] -> W:(], A-Z) re: '\][A-Z]*') Match ']XQPNWNRKVELYTVVH' -> True Testing escape char: ] -> W:(], A-Z) re: '\][A-Z]*') Match ']BRLSKXWHAOJYBSFP' -> True Testing escape char: [ -> W:([\) re: '[\[\\]+') Match '\[\[\\\\\\[\\[[[' -> True Testing escape char: [ -> W:(Z[) re: '[Z\[]+') Match 'ZZZ[[[[ZZZ[[ZZZ[' -> True Testing escape char: [ -> W:([\) re: '[\[\\]+') Match '\[\[\\[[[\\[\[\\' -> True Testing escape char: [ -> W:([, A-Z) re: '\[[A-Z]*') Match '[JEZMRTHYUQOFGGIK' -> True Testing escape char: [ -> W:([, A-Z) re: '\[[A-Z]*') Match '[TXXGXJHTDVVAMQPU' -> True Testing escape char: * -> W:(*+) re: '[*+]+') Match '+++**+***++++*++' -> True Testing escape char: * -> W:()*) re: '[)*]+') Match ')))*****))))*)**' -> True Testing escape char: * -> W:(*+) re: '[*+]+') Match '++**+++**++**++*' -> True Testing escape char: * -> W:(*, A-Z) re: '\*[A-Z]*') Match '*HPONITJURWHPTFSU' -> True Testing escape char: * -> W:(*, A-Z) re: '\*[A-Z]*') Match '*LKVNWAWDBKPLQYIO' -> True Testing escape char: + -> W:(+,) re: '[+,]+') Match '++,+++,,,+,,++,,' -> True Testing escape char: + -> W:(*+) re: '[*+]+') Match '+***+***+++*****' -> True Testing escape char: + -> W:(+,) re: '[+,]+') Match ',+,,+,+,,++,,+++' -> True Testing escape char: + -> W:(+, A-Z) re: '\+[A-Z]*') Match '+YFDJXMSFINKSRSYW' -> True Testing escape char: + -> W:(+, A-Z) re: '\+[A-Z]*') Match '+AFHYFEFDYFVNYVWF' -> True Testing escape char: . -> W:(./) re: '[./]+') Match './..////.///....' -> True Testing escape char: . -> W:(-.) re: '[\-.]+') Match '.-.--....--....-' -> True Testing escape char: . -> W:(./) re: '[./]+') Match '..../..../////..' -> True Testing escape char: . -> W:(., A-Z) re: '\.[A-Z]*') Match '.ODGBDVDUFJIUJEJW' -> True Testing escape char: . -> W:(., A-Z) re: '\.[A-Z]*') Match '.HKOBKZLXMMDRGAPC' -> True Testing escape char: ? -> W:(?@) re: '[?@]+') Match '??@@@@?@???@@@@?' -> True Testing escape char: ? -> W:(>?) re: '[>?]+') Match '>??????>>?>>??>>' -> True Testing escape char: ? -> W:(?@) re: '[?@]+') Match '???@@?@@@?@@???@' -> True Testing escape char: ? -> W:(?, A-Z) re: '\?[A-Z]*') Match '?DQFYPQFZBFFTEQQU' -> True Testing escape char: ? -> W:(?, A-Z) re: '\?[A-Z]*') Match '?IUGWZHJYZGKQATZV' -> True ['p', 'q', 'r', 'False'] Raised expected exception: ParseException: Expected {(A-Za-z) | True | False}, found 'abc' (at char 0), (line:1, col:1) {'A' W:(0-9)} ... {'A' W:(0-9)} ... {'A' W:(0-9){1,6}} ... {'A' W:(0-9){1,6}} ... {'A' W:(0-9)} ... {'A' W:(0-9){2,...}} ... {'A' W:(0-9){2,6}} ... W:(A, 0-9) A[0-9]* W:(A, 0-9) A[0-9]* W:(A, 0-9){1,6} A[0-9]{0,5} W:(A, 0-9){1,6} A[0-9]{0,5} W:(A, 0-9) A[0-9]* W:(A, 0-9){2,...} ... W:(A, 0-9){2,6} ... W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9){1,6} [A-Za-z][0-9]{0,5} W:(A-Za-z, 0-9){1,6} [A-Za-z][0-9]{0,5} W:(A-Za-z, 0-9) [A-Za-z][0-9]* W:(A-Za-z, 0-9){2,...} ... W:(A-Za-z, 0-9){2,6} ... ........... ---------------------------------------------------------------------- Ran 1496 tests in 48.253s OK Raised expected exception: ValueError: cannot specify a minimum length < 1; use Opt(Word()) if zero-length word is permitted py3 finish: run-test after 48.91 seconds py3 start: run-test-post py3 finish: run-test-post after 0.00 seconds ___________________________________ summary ____________________________________ py3: commands succeeded congratulations :) cleanup /usr/src/RPM/BUILD/pyparsing-3.0.9/.tox/.tmp/package/1/pyparsing-3.0.9-py3-none-any.whl + exit 0 Processing files: python3-module-pyparsing-3.0.9-alt2 Executing(%doc): /bin/sh -e /usr/src/tmp/rpm-tmp.44662 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd pyparsing-3.0.9 + DOCDIR=/usr/src/tmp/python3-module-pyparsing-buildroot/usr/share/doc/python3-module-pyparsing-3.0.9 + export DOCDIR + rm -rf /usr/src/tmp/python3-module-pyparsing-buildroot/usr/share/doc/python3-module-pyparsing-3.0.9 + /bin/mkdir -p /usr/src/tmp/python3-module-pyparsing-buildroot/usr/share/doc/python3-module-pyparsing-3.0.9 + cp -prL CHANGES README.rst /usr/src/tmp/python3-module-pyparsing-buildroot/usr/share/doc/python3-module-pyparsing-3.0.9 + chmod -R go-w /usr/src/tmp/python3-module-pyparsing-buildroot/usr/share/doc/python3-module-pyparsing-3.0.9 + chmod -R a+rX /usr/src/tmp/python3-module-pyparsing-buildroot/usr/share/doc/python3-module-pyparsing-3.0.9 + exit 0 Finding Provides (using /usr/lib/rpm/find-provides) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.z1pEWq find-provides: running scripts (alternatives,debuginfo,lib,pam,perl,pkgconfig,python,python3,shell) Finding Requires (using /usr/lib/rpm/find-requires) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.oTZtMx find-requires: running scripts (cpp,debuginfo,files,lib,pam,perl,pkgconfig,pkgconfiglib,python,python3,rpmlib,shebang,shell,static,symlinks,systemd-services) /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/__init__.py: pyparsing.actions is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/__init__.py: pyparsing.common is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/__init__.py: pyparsing.core is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/__init__.py: pyparsing.exceptions is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/__init__.py: pyparsing.helpers is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/__init__.py: pyparsing.results is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/__init__.py: pyparsing.testing is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/__init__.py: pyparsing.unicode is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/__init__.py: pyparsing.util is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/actions.py: pyparsing.core is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/actions.py: pyparsing.exceptions is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/actions.py: pyparsing.util is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/common.py: pyparsing.core is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/common.py: pyparsing.helpers is possibly a self-providing dependency, skip it /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/core.py: Ignore for REQ=slight module=pdb python3.req: /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/core.py: skipping sys /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/core.py: pyparsing.actions is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/core.py: pyparsing.diagram is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/core.py: pyparsing.exceptions is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/core.py: pyparsing.results is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/core.py: pyparsing.testing is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/core.py: pyparsing.unicode is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/core.py: pyparsing.util is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/diagram/__init__.py: pyparsing is possibly a self-providing dependency, skip it /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/exceptions.py: Ignore for REQ=slight module=inspect python3.req: /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/exceptions.py: skipping sys /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/exceptions.py: pyparsing.core is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/exceptions.py: pyparsing.unicode is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/exceptions.py: pyparsing.util is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/helpers.py: pyparsing is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/helpers.py: pyparsing.core is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/helpers.py: pyparsing.util is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/testing.py: pyparsing.core is possibly a self-providing dependency, skip it python3.req: /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/unicode.py: skipping itertools python3.req: /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/unicode.py: skipping sys python3.req: /usr/src/tmp/python3-module-pyparsing-buildroot/usr/lib/python3/site-packages/pyparsing/util.py: skipping itertools Provides: python3(pyparsing), python3(pyparsing.actions), python3(pyparsing.common), python3(pyparsing.core), python3(pyparsing.diagram), python3(pyparsing.exceptions), python3(pyparsing.helpers), python3(pyparsing.results), python3(pyparsing.testing), python3(pyparsing.unicode), python3(pyparsing.util) Requires: /usr/lib/python3/site-packages, python3(abc) < 0, python3(collections) < 0, python3(collections.abc) < 0, python3(contextlib) < 0, python3(copy) < 0, python3(datetime) < 0, python3(enum) < 0, python3(functools) < 0, python3(html.entities) < 0, python3(inspect) < 0, python3(io) < 0, python3(jinja2) < 0, python3(operator) < 0, python3(os) < 0, python3(pathlib) < 0, python3(pprint) < 0, python3(railroad) < 0, python3(re) < 0, python3(string) < 0, python3(threading) < 0, python3(traceback) < 0, python3(types) < 0, python3(typing) < 0, python3(warnings) < 0, python3(weakref) < 0 Wrote: /usr/src/RPM/RPMS/noarch/python3-module-pyparsing-3.0.9-alt2.noarch.rpm (w2.lzdio) 51.01user 2.61system 0:58.66elapsed 91%CPU (0avgtext+0avgdata 234548maxresident)k 0inputs+0outputs (0major+408825minor)pagefaults 0swaps 7.93user 3.48system 1:26.64elapsed 13%CPU (0avgtext+0avgdata 125576maxresident)k 0inputs+0outputs (0major+324884minor)pagefaults 0swaps --- python3-module-pyparsing-3.0.9-alt2.noarch.rpm.repo 2022-11-10 15:50:37.246162633 +0000 +++ python3-module-pyparsing-3.0.9-alt2.noarch.rpm.hasher 2023-07-06 15:58:34.583694172 +0000 @@ -5,32 +5,32 @@ /usr/lib/python3/site-packages/pyparsing/__pycache__ 40755 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/__init__.cpython-310.opt-1.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/__init__.cpython-310.opt-2.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/__init__.cpython-310.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/actions.cpython-310.opt-1.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/actions.cpython-310.opt-2.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/actions.cpython-310.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/common.cpython-310.opt-1.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/common.cpython-310.opt-2.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/common.cpython-310.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/core.cpython-310.opt-1.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/core.cpython-310.opt-2.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/core.cpython-310.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/exceptions.cpython-310.opt-1.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/exceptions.cpython-310.opt-2.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/exceptions.cpython-310.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/helpers.cpython-310.opt-1.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/helpers.cpython-310.opt-2.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/helpers.cpython-310.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/results.cpython-310.opt-1.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/results.cpython-310.opt-2.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/results.cpython-310.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/testing.cpython-310.opt-1.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/testing.cpython-310.opt-2.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/testing.cpython-310.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/unicode.cpython-310.opt-1.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/unicode.cpython-310.opt-2.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/unicode.cpython-310.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/util.cpython-310.opt-1.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/util.cpython-310.opt-2.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/__pycache__/util.cpython-310.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/__init__.cpython-311.opt-1.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/__init__.cpython-311.opt-2.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/__init__.cpython-311.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/actions.cpython-311.opt-1.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/actions.cpython-311.opt-2.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/actions.cpython-311.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/common.cpython-311.opt-1.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/common.cpython-311.opt-2.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/common.cpython-311.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/core.cpython-311.opt-1.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/core.cpython-311.opt-2.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/core.cpython-311.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/exceptions.cpython-311.opt-1.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/exceptions.cpython-311.opt-2.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/exceptions.cpython-311.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/helpers.cpython-311.opt-1.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/helpers.cpython-311.opt-2.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/helpers.cpython-311.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/results.cpython-311.opt-1.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/results.cpython-311.opt-2.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/results.cpython-311.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/testing.cpython-311.opt-1.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/testing.cpython-311.opt-2.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/testing.cpython-311.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/unicode.cpython-311.opt-1.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/unicode.cpython-311.opt-2.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/unicode.cpython-311.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/util.cpython-311.opt-1.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/util.cpython-311.opt-2.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/__pycache__/util.cpython-311.pyc 100644 root:root /usr/lib/python3/site-packages/pyparsing/actions.py 100644 root:root @@ -41,5 +41,5 @@ /usr/lib/python3/site-packages/pyparsing/diagram/__pycache__ 40755 root:root -/usr/lib/python3/site-packages/pyparsing/diagram/__pycache__/__init__.cpython-310.opt-1.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/diagram/__pycache__/__init__.cpython-310.opt-2.pyc 100644 root:root -/usr/lib/python3/site-packages/pyparsing/diagram/__pycache__/__init__.cpython-310.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/diagram/__pycache__/__init__.cpython-311.opt-1.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/diagram/__pycache__/__init__.cpython-311.opt-2.pyc 100644 root:root +/usr/lib/python3/site-packages/pyparsing/diagram/__pycache__/__init__.cpython-311.pyc 100644 root:root /usr/lib/python3/site-packages/pyparsing/exceptions.py 100644 root:root @@ -98,32 +98,32 @@ File: /usr/lib/python3/site-packages/pyparsing/__pycache__ 40755 root:root -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/__init__.cpython-310.opt-1.pyc 100644 root:root e66ec001fe84c8f2b46078defdb2610f -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/__init__.cpython-310.opt-2.pyc 100644 root:root e66ec001fe84c8f2b46078defdb2610f -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/__init__.cpython-310.pyc 100644 root:root e66ec001fe84c8f2b46078defdb2610f -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/actions.cpython-310.opt-1.pyc 100644 root:root df33eec60a0f16a13295fa2c5630831d -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/actions.cpython-310.opt-2.pyc 100644 root:root b8d707d7f592609a650ead0a50a8c6cc -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/actions.cpython-310.pyc 100644 root:root df33eec60a0f16a13295fa2c5630831d -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/common.cpython-310.opt-1.pyc 100644 root:root d5dd9a184ddc01ed200e5b44297893bd -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/common.cpython-310.opt-2.pyc 100644 root:root e65a7c295fd34309c9f2aa8890a9c6b5 -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/common.cpython-310.pyc 100644 root:root d5dd9a184ddc01ed200e5b44297893bd -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/core.cpython-310.opt-1.pyc 100644 root:root 70a0cf358779096c4dc04d5a174fc108 -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/core.cpython-310.opt-2.pyc 100644 root:root a748b6c693a935d22ff591acaa00865e -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/core.cpython-310.pyc 100644 root:root 70a0cf358779096c4dc04d5a174fc108 -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/exceptions.cpython-310.opt-1.pyc 100644 root:root fc8d577cace08b15fa49285edad690cf -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/exceptions.cpython-310.opt-2.pyc 100644 root:root d0e4c92de226187094b7d03a68e3916f -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/exceptions.cpython-310.pyc 100644 root:root fc8d577cace08b15fa49285edad690cf -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/helpers.cpython-310.opt-1.pyc 100644 root:root c1a328d622f1f0980bad435071a576a4 -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/helpers.cpython-310.opt-2.pyc 100644 root:root b1fd113c066575c34cc59b444abfaa96 -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/helpers.cpython-310.pyc 100644 root:root c1a328d622f1f0980bad435071a576a4 -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/results.cpython-310.opt-1.pyc 100644 root:root 4046db09d22e3bb4b60063203ed4c61c -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/results.cpython-310.opt-2.pyc 100644 root:root 217fed064fe517a2f9c9cdf63adb18c7 -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/results.cpython-310.pyc 100644 root:root 4046db09d22e3bb4b60063203ed4c61c -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/testing.cpython-310.opt-1.pyc 100644 root:root bbaf8f886ac3f9c90eb3a27a1327adb1 -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/testing.cpython-310.opt-2.pyc 100644 root:root b4a04b35619facec1a9fcaaea73dbd7c -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/testing.cpython-310.pyc 100644 root:root bbaf8f886ac3f9c90eb3a27a1327adb1 -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/unicode.cpython-310.opt-1.pyc 100644 root:root 1faadb55d27b9c1a79b0bffc2e96ea07 -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/unicode.cpython-310.opt-2.pyc 100644 root:root 608d45247249a9d3884b9fc8da96a71b -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/unicode.cpython-310.pyc 100644 root:root 1faadb55d27b9c1a79b0bffc2e96ea07 -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/util.cpython-310.opt-1.pyc 100644 root:root 41c386079a8efb0553fd650e017c2c9c -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/util.cpython-310.opt-2.pyc 100644 root:root 9fc9ce829cc4f7a208b6520e366a2923 -File: /usr/lib/python3/site-packages/pyparsing/__pycache__/util.cpython-310.pyc 100644 root:root 41c386079a8efb0553fd650e017c2c9c +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/__init__.cpython-311.opt-1.pyc 100644 root:root c2e7626c231ba6776cfe4c9bacd4f6c6 +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/__init__.cpython-311.opt-2.pyc 100644 root:root c2e7626c231ba6776cfe4c9bacd4f6c6 +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/__init__.cpython-311.pyc 100644 root:root c2e7626c231ba6776cfe4c9bacd4f6c6 +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/actions.cpython-311.opt-1.pyc 100644 root:root 4515d45de0ab8f58d4532f64293d188a +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/actions.cpython-311.opt-2.pyc 100644 root:root 0a0ea2fa4cb366fc675d0189364a718a +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/actions.cpython-311.pyc 100644 root:root 4515d45de0ab8f58d4532f64293d188a +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/common.cpython-311.opt-1.pyc 100644 root:root 5f35c77c9d68106636f57c0da43ac0be +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/common.cpython-311.opt-2.pyc 100644 root:root 80bc92521e490f1bed25110f8c897575 +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/common.cpython-311.pyc 100644 root:root 5f35c77c9d68106636f57c0da43ac0be +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/core.cpython-311.opt-1.pyc 100644 root:root 574600578321ec70dbcf1e94a4fa68ae +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/core.cpython-311.opt-2.pyc 100644 root:root 7cda22f64cf848547801e3ea0d93b4e2 +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/core.cpython-311.pyc 100644 root:root 574600578321ec70dbcf1e94a4fa68ae +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/exceptions.cpython-311.opt-1.pyc 100644 root:root b72ed96ebb20f560c8cec111872428ac +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/exceptions.cpython-311.opt-2.pyc 100644 root:root f6fbd0b58903235957af25effa5a5754 +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/exceptions.cpython-311.pyc 100644 root:root b72ed96ebb20f560c8cec111872428ac +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/helpers.cpython-311.opt-1.pyc 100644 root:root c31726b80d4ce0ea53c4531630a22ad8 +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/helpers.cpython-311.opt-2.pyc 100644 root:root e07ad4d9e82f15e467b5f1c32d429000 +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/helpers.cpython-311.pyc 100644 root:root c31726b80d4ce0ea53c4531630a22ad8 +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/results.cpython-311.opt-1.pyc 100644 root:root 6ea0277f3e0f4d674f0b37832a66d0a4 +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/results.cpython-311.opt-2.pyc 100644 root:root 6b279654d8fc831a3fca44ce454f11a2 +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/results.cpython-311.pyc 100644 root:root 6ea0277f3e0f4d674f0b37832a66d0a4 +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/testing.cpython-311.opt-1.pyc 100644 root:root 78b4a440bbc55d24baa6049052e4eb5f +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/testing.cpython-311.opt-2.pyc 100644 root:root 166af22586e77b02030e4f80be9c7b5e +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/testing.cpython-311.pyc 100644 root:root 78b4a440bbc55d24baa6049052e4eb5f +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/unicode.cpython-311.opt-1.pyc 100644 root:root e21819d59b4f5723c597f6f06456654d +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/unicode.cpython-311.opt-2.pyc 100644 root:root 50bc6720a3a4256d578a0422d20cea5f +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/unicode.cpython-311.pyc 100644 root:root e21819d59b4f5723c597f6f06456654d +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/util.cpython-311.opt-1.pyc 100644 root:root beeceb7ab56ed6d334fe4b88481f1cb2 +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/util.cpython-311.opt-2.pyc 100644 root:root f3179ae23cb118590e3cfd3d9419415b +File: /usr/lib/python3/site-packages/pyparsing/__pycache__/util.cpython-311.pyc 100644 root:root beeceb7ab56ed6d334fe4b88481f1cb2 File: /usr/lib/python3/site-packages/pyparsing/actions.py 100644 root:root 146786b5a4aada43d8288351dc8ef13e @@ -134,5 +134,5 @@ File: /usr/lib/python3/site-packages/pyparsing/diagram/__pycache__ 40755 root:root -File: /usr/lib/python3/site-packages/pyparsing/diagram/__pycache__/__init__.cpython-310.opt-1.pyc 100644 root:root 7a82299ca7907d8e30a7fd57b4b15f1a -File: /usr/lib/python3/site-packages/pyparsing/diagram/__pycache__/__init__.cpython-310.opt-2.pyc 100644 root:root abdaa3f8117c3f57c0b3c0cc19265de1 -File: /usr/lib/python3/site-packages/pyparsing/diagram/__pycache__/__init__.cpython-310.pyc 100644 root:root 7a82299ca7907d8e30a7fd57b4b15f1a +File: /usr/lib/python3/site-packages/pyparsing/diagram/__pycache__/__init__.cpython-311.opt-1.pyc 100644 root:root 22a7353f68f0d45389ee1844c7baf1bf +File: /usr/lib/python3/site-packages/pyparsing/diagram/__pycache__/__init__.cpython-311.opt-2.pyc 100644 root:root 71a5c825e71120f598df401b5daf55b8 +File: /usr/lib/python3/site-packages/pyparsing/diagram/__pycache__/__init__.cpython-311.pyc 100644 root:root 22a7353f68f0d45389ee1844c7baf1bf File: /usr/lib/python3/site-packages/pyparsing/exceptions.py 100644 root:root f1f31bb05d818ebbc7cad0eac3c6364c @@ -147,2 +147,2 @@ File: /usr/share/doc/python3-module-pyparsing-3.0.9/README.rst 100644 root:root 928254b28fde6e8e4c5e366aa753f632 -RPMIdentity: c6f1ba4863ace5d4a689f3052ef317b969361a7614ab38a9a5fbefd1117bd044e1048f6e1a00977245fae4d54c74adf1ee42784248f7da468eeb1e82fee3fefe +RPMIdentity: ee09769661b74c00ef2f19c1336c3e554f2e30cee6ffe16a954862156d21ae1080b4e99775a005d552be5ffb10dc0b4e8f29341cfd629a5d721fb053400c4fba