0s autopkgtest: DBG: testbed init 0s autopkgtest [13:06:00]: starting date and time: 2025-02-19 13:06:00+0000 0s autopkgtest [13:06:00]: git checkout: 325255d2 Merge branch 'pin-any-arch' into 'ubuntu/production' 0s autopkgtest [13:06:00]: host juju-7f2275-prod-proposed-migration-environment-15; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.dij5uc5o/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:sphinx --apt-upgrade translate-toolkit --debug --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=sphinx/8.1.3-5 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest-s390x --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-15@bos03-s390x-30.secgroup --name adt-plucky-s390x-translate-toolkit-20250219-130559-juju-7f2275-prod-proposed-migration-environment-15-4931c363-acb1-4eaf-b327-5997055cfa58 --image adt/ubuntu-plucky-s390x-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-15 --net-id=net_prod-proposed-migration-s390x -e TERM=linux -e ''"'"'http_proxy=http://squid.internal:3128'"'"'' -e ''"'"'https_proxy=http://squid.internal:3128'"'"'' -e ''"'"'no_proxy=127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,ports.ubuntu.com,security.ubuntu.com,ddebs.ubuntu.com,changelogs.ubuntu.com,keyserver.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,10.24.0.0/24,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com,radosgw.ps5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 0s autopkgtest: DBG: got reply from testbed: ok 0s autopkgtest: DBG: testbed open, scratch=None 0s autopkgtest: DBG: sending command to testbed: open 107s autopkgtest: DBG: got reply from testbed: ok /tmp/autopkgtest.9zB7bO 107s autopkgtest: DBG: sending command to testbed: print-execute-command 107s autopkgtest: DBG: got reply from testbed: ok /tmp/autopkgtest-ssh.82df28hz/runcmd 107s autopkgtest: DBG: sending command to testbed: capabilities 107s autopkgtest: DBG: got reply from testbed: ok revert suggested-normal-user=ubuntu revert-full-system isolation-machine reboot root-on-testbed 107s autopkgtest: DBG: testbed capabilities: ['revert', 'suggested-normal-user=ubuntu', 'revert-full-system', 'isolation-machine', 'reboot', 'root-on-testbed', 'has_internet'] 107s autopkgtest: DBG: testbed command ['mkdir', '-p', '/tmp/autopkgtest.9zB7bO'], kind short, sout raw, serr pipe, env [] 107s autopkgtest: DBG: testbed command exited with code 0 107s autopkgtest: DBG: sending command to testbed: copydown /home/ubuntu/autopkgtest/lib/in-testbed/wrapper.sh /tmp/autopkgtest.9zB7bO/wrapper.sh 108s autopkgtest: DBG: got reply from testbed: ok 108s autopkgtest: DBG: testbed command ['chmod', '-R', '0755', '--', '/tmp/autopkgtest.9zB7bO/wrapper.sh'], kind short, sout raw, serr pipe, env [] 108s autopkgtest: DBG: testbed command exited with code 0 108s autopkgtest: DBG: testbed command ['dpkg', '--print-architecture'], kind short, sout pipe, serr pipe, env [] 108s autopkgtest: DBG: testbed command exited with code 0 108s autopkgtest [13:07:48]: testbed dpkg architecture: s390x 108s autopkgtest: DBG: testbed command ['dpkg-query', '-W', '-f', '${Version}', 'apt'], kind short, sout pipe, serr pipe, env [] 108s autopkgtest: DBG: testbed command exited with code 0 108s autopkgtest [13:07:48]: testbed apt version: 2.9.30 108s autopkgtest: DBG: testbed command ['sh', '-ec', 'command -v eatmydata'], kind short, sout pipe, serr pipe, env [] 108s autopkgtest: DBG: testbed command exited with code 0 108s autopkgtest: DBG: testbed has eatmydata 108s autopkgtest: DBG: testbed command ['mkdir', '-p', '/etc/apt/preferences.d'], kind short, sout raw, serr pipe, env [] 108s autopkgtest: DBG: testbed command exited with code 0 108s autopkgtest [13:07:48]: @@@@@@@@@@@@@@@@@@@@ test bed setup 108s autopkgtest: DBG: testbed command ['sh', '-ec', '#!/bin/sh\n# Copyright © 2006-2018 Canonical Ltd.\n# Copyright © 2015-2017 Martin Pitt\n# Copyright © 2017 Steve Langasek\n# Copyright © 2017-2022 Paul Gevers\n# Copyright © 2018 Simon McVittie\n# SPDX-License-Identifier: GPL-2.0-or-later\n\n# This script returns the first suite found in apt sources. We can\'t just rely\n# on /etc/os-release because it doesn\'t allow to distinguish between Debian\n# unstable and testing.\n#\n# This release detection logic should be kept in sync with similar code in the\n# setup-testbed script.\n#\n# For more information on APT data sources see sources.list(5).\n\n# Usage $0\n\nset -eux\n\ndistro=UNKNOWN\nif [ -r /etc/os-release ]; then\n # shellcheck disable=SC1091\n distro=$(. /etc/os-release && echo "${ID:-$distro}")\nfi\n\n# Try guessing the default release from deb822-style format sources.\n#\n# While not mandatory, APT upstream expects distros to follow the\n# .sources naming pattern for the default deb822 sources.\napt_sources="/etc/apt/sources.list.d/$distro.sources"\nif [ -r "$apt_sources" ]; then\n release=$(sed -En \'s/^Suites:\\s*(\\w+).*/\\1/Ip\' "$apt_sources" | head -n1)\n [ -n "$release" ] && echo "$release" && exit\nfi\n\n# Try guessing the default release from one-line-style format sources.\napt_sources=/etc/apt/sources.list\nif [ -r "$apt_sources" ]; then\n release=$(sed -En \'/^(deb|deb-src) +(\\[.*\\] *)?(http|https|file):/ { s/\\[.*\\] +//; s/^[^ ]+ +[^ ]* +([^ ]+) +.*$/\\1/p }\' "$apt_sources" | head -n1)\n [ -n "$release" ] && echo "$release" && exit\nfi\n\n# Could not guess the default release\necho "Could not guess the default release from the APT sources." >&2\nexit 1\n'], kind short, sout pipe, serr pipe, env [] 109s autopkgtest: DBG: testbed command exited with code 0 109s autopkgtest [13:07:49]: testbed release detected to be: None 109s autopkgtest: DBG: testbed command ['sh', '-ec', '#!/bin/sh\n# SPDX-License-Identifier: GPL-2.0-or-later\n\n# This script returns the list of configured "deb" sources in one-line-style\n# source lists (/etc/apt/sources.list, /etc/apt/sources.list.d/*.list).\n# See sources.list(5) for more information on the APT source list formats.\n#\n# This script takes no arguments.\n\nset -eu\n\n# grep(1) returns 1 if no lines were selected from the input files, which\n# can happen if there are .list files, but they contain no "deb" entries.\n# We don\'t want to fail in this case, hence the "|| true", which we put\n# in a subshell because we want it to affect only the grep invocation.\n{\n if [ -f /etc/apt/sources.list ]; then\n printf \'%s\\0\' /etc/apt/sources.list\n fi\n if [ -d /etc/apt/sources.list.d ]; then\n find /etc/apt/sources.list.d -maxdepth 1 -type f -regex \'.*/[a-zA-Z0-9_.-]+\\.list\' -print0 \\\n | LC_ALL=C sort --zero-terminated\n fi\n} | xargs -0 --no-run-if-empty -- sh -c \'grep -h "^deb " "$@" || true\' "$(basename "$0")"\n'], kind short, sout pipe, serr pipe, env [] 109s autopkgtest: DBG: testbed command exited with code 0 109s autopkgtest: DBG: testbed command ['sh', '-ec', '#!/bin/sh\n# SPDX-License-Identifier: GPL-2.0-or-later\n\n# This script returns the list of configured sources in deb822-style source\n# lists (/etc/apt/sources.list.d/*.sources). Sources are not stripped out of\n# comments, extra blank lines or similar: the output of this script is meant to\n# be consumed by a deb822 parser that is able to correctly handle those.\n# See sources.list(5) for more information on the APT source list formats.\n#\n# This script takes no arguments.\n\nset -eu\n\n# Awk concatenates files making sure stanzas from separate files are separated\n# by a blank line, even if there are no newlines at EOF in the .sources files.\nif [ -d /etc/apt/sources.list.d ]; then\n find /etc/apt/sources.list.d -maxdepth 1 -type f -regex \'.*/[a-zA-Z0-9_.-]+\\.sources\' -print0 \\\n | LC_ALL=C sort --zero-terminated \\\n | xargs -0 --no-run-if-empty -- awk \'FNR == 1 && NR != 1 { print "" } { print }\'\nfi\n'], kind short, sout pipe, serr pipe, env [] 109s autopkgtest: DBG: testbed command exited with code 0 109s autopkgtest: DBG: adding APT source: Types: deb deb-src 109s URIs: http://ftpmaster.internal/ubuntu/ 109s Suites: plucky-proposed 109s Components: main restricted universe multiverse 109s Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg 109s autopkgtest: DBG: testbed command ['sh', '-ec', '"$@" >> "/etc/apt/sources.list.d/autopkgtest-add-apt-release-plucky-proposed.sources"', 'add_apt_source', 'printf', '%s\\n', 'Types: deb deb-src\nURIs: http://ftpmaster.internal/ubuntu/\nSuites: plucky-proposed\nComponents: main restricted universe multiverse\nSigned-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg\n'], kind short, sout raw, serr pipe, env [] 109s autopkgtest: DBG: testbed command exited with code 0 109s autopkgtest: DBG: adding APT preference to autopkgtest-zz-plucky-proposed-baseline.pref: 109s Package: * 109s Pin: release plucky-proposed 109s Pin-Priority: 500 109s autopkgtest: DBG: testbed command ['sh', '-ec', '"$@" > "/etc/apt/preferences.d/autopkgtest-zz-plucky-proposed-baseline.pref"', 'add_apt_preference', 'printf', '%s\\n', 'Package: *\nPin: release plucky-proposed\nPin-Priority: 500'], kind short, sout raw, serr pipe, env [] 109s autopkgtest: DBG: testbed command exited with code 0 109s autopkgtest [13:07:49]: updating testbed package index (apt update) 109s autopkgtest: DBG: testbed command ['/bin/sh', '-ec', '"$@" 3>&2 2>&1', 'run_apt_command', '/usr/bin/eatmydata', 'apt-get', '--quiet', '--assume-yes', '-o=APT::Status-Fd=3', '-o=APT::Install-Recommends=false', '-o=Dpkg::Options::=--force-confnew', '-o=Debug::pkgProblemResolver=true', 'update'], kind install, sout raw, serr pipe, env ['DEBIAN_FRONTEND=noninteractive', 'APT_LISTBUGS_FRONTEND=none', 'APT_LISTCHANGES_FRONTEND=none'] 110s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [110 kB] 110s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 110s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 110s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 110s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [744 kB] 110s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [3120 B] 110s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [76.1 kB] 110s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [13.9 kB] 110s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main s390x Packages [104 kB] 110s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/restricted s390x Packages [760 B] 110s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/universe s390x Packages [653 kB] 110s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse s390x Packages [4900 B] 110s Fetched 1711 kB in 1s (1829 kB/s) 111s Reading package lists... 111s autopkgtest: DBG: testbed command exited with code 0 111s autopkgtest: DBG: adding APT preference to autopkgtest-plucky-proposed.pref: 111s Package: * 111s Pin: release plucky-proposed 111s Pin-Priority: 100 111s 111s Package: src:sphinx:any 111s Pin: release plucky-proposed 111s Pin-Priority: 995 111s autopkgtest: DBG: testbed command ['sh', '-ec', '"$@" > "/etc/apt/preferences.d/autopkgtest-plucky-proposed.pref"', 'add_apt_preference', 'printf', '%s\\n', 'Package: *\nPin: release plucky-proposed\nPin-Priority: 100\n\nPackage: src:sphinx:any\nPin: release plucky-proposed\nPin-Priority: 995'], kind short, sout raw, serr pipe, env [] 111s autopkgtest: DBG: testbed command exited with code 0 111s autopkgtest: DBG: testbed command ['bash', '-ec', 'for d in /boot /boot/efi /boot/grub /etc/init /etc/init.d /etc/systemd/system /lib/systemd/system; do [ ! -d $d ] || touch -r $d /tmp/autopkgtest.9zB7bO/${d//\\//_}.stamp; done'], kind short, sout raw, serr pipe, env [] 111s autopkgtest: DBG: testbed command exited with code 0 111s autopkgtest: DBG: testbed command ['sh', '-ec', '#!/bin/sh\n# Canonical/Ubuntu specific testbed setup\n\nset -x\n\nRELEASE=$(lsb_release --codename --short 2>/dev/null)\n\n# Make the installed package versions match what is available from the configured\n# repositories, even if a downgrade is required.\n#\n# We may end up with images with packages newer than those available from the\n# repositories when opening a new release (images are created using the\n# previous release dailies as a base, which may include 0-day SRUs, or\n# Launchpad may fail to copy packages, see openssl 3.0.8-1ubuntu2), or when\n# package versions are pulled from the archive.\n#\n# Note: \'release a=\' matches the Suite field in the repository Release file.\ncat >/etc/apt/preferences.d/force-downgrade-to-release.pref <= Focal).\n#\n# Note: autoremove/--autoremove always runs on the entire set of installed\n# packages. Together with --autopurge/purge each removal becomes a purge.\n#\n# Removing \'?obsolete\' packages may remove the running kernel. This is not\n# expected to be an issue.\nif /usr/lib/apt/apt-helper analyze-pattern \'?true\' >/dev/null 2>&1; then\n # DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y purge --autoremove \'?obsolete\'\n # Avoid removing the running kernel\n running_kernel_pattern="^linux-.*$(uname -r | sed \'s/\\./\\\\./g\').*"\n obsolete_pkgs="$(apt list \'?obsolete\' 2>/dev/null \\\n | tail -n+2 \\\n | cut -d\'/\' -f1 \\\n | grep -v "${running_kernel_pattern}" || true)"\n DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y purge --autoremove ${obsolete_pkgs}\nelse\n # We\'re on an older release (analyze-pattern is not available).\n # Still do an autopurge to get rid of packages that got orphaned\n # by downgrades.\n eatmydata apt-get -y autoremove --purge\nfi\n\n# compatibility with old Jenkins testbeds for trusty\nif grep -q trusty /etc/lsb-release; then apt-get update || (sleep 10; apt-get update); apt-get install -y build-essential; fi\n\n# these packages really break tests, purge them if we use standard cloud images\n# (on lcy01)\nfor p in unattended-upgrades lxd lxd-client snapd; do\n [ ! -d /usr/share/doc/$p ] || $(which eatmydata || true) apt-get purge --auto-remove -y $p\ndone\n\nif type iptables >/dev/null 2>&1; then\n cat < /etc/rc.local\n#!/bin/sh\n\n# work around broken PTMU; LP: #1572026, RT#90771\niptables -w -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu || true\n\n# These addresses are used at least by rust-reqwest and should not be reachable\n# See https://bugs.launchpad.net/ubuntu/+source/rust-reqwest/+bug/2080346\niptables -A OUTPUT -d 10.255.255.1/32 -p tcp -j DROP || true\niptables -A OUTPUT -d 10.255.255.2/32 -p tcp -j DROP || true\nEOF\n chmod 755 /etc/rc.local\n # shellcheck disable=SC1091\n . /etc/rc.local\nfi\n\n# work around broken tty on ppc64el instances (LP: #1607075)\nif [ "$(uname -m)" = ppc64le ] && [ "$(systemctl is-active keyboard-setup.service 2>/dev/null|| true)" = failed ]; then\n systemctl reset-failed keyboard-setup.service\n systemctl mask keyboard-setup.service\nfi\n\n# work around late urandom pool initialization (LP: #1622893)\nif [ -d /run/systemd/system ] && systemd-detect-virt --quiet --vm; then\n mkdir -p /etc/systemd/system/systemd-random-seed.service.d/\n cat < /etc/systemd/system/systemd-random-seed.service.d/fakeentropy.conf\n[Service]\nExecStart=/usr/bin/perl -E \'open \\$\\$f, "/bin/bash" or die; open \\$\\$rnd, ">/dev/random" or die; for (\\$\\$i = 0; \\$\\$i < 10; ++\\$\\$i) {read \\$\\$f, \\$\\$d, 64; ioctl \\$\\$rnd, 0x40085203, pack("ii", 64*8, 64) . \\$\\$d}\'\nEOF\nfi\n\n# set compressor to lz4 where supported, we care about compression speed\nif grep -q lz4 /etc/initramfs-tools/initramfs.conf; then\n echo COMPRESS=lz4 > /etc/initramfs-tools/conf.d/lz4\nfi'], kind install, sout raw, serr raw, env ['AUTOPKGTEST_IS_SETUP_COMMAND=1', 'AUTOPKGTEST_NORMAL_USER=ubuntu', 'ADT_NORMAL_USER=ubuntu'] 111s + lsb_release --codename --short 112s + RELEASE=plucky 112s + cat 112s + [ plucky != trusty ] 112s + DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y --allow-downgrades -o Dpkg::Options::=--force-confnew dist-upgrade 112s Reading package lists... 112s Building dependency tree... 112s Reading state information... 112s Calculating upgrade... 112s The following packages were automatically installed and are no longer required: 112s libnsl2 libpython3.12-minimal libpython3.12-stdlib libpython3.12t64 112s linux-headers-6.11.0-8 linux-headers-6.11.0-8-generic 112s linux-modules-6.11.0-8-generic linux-tools-6.11.0-8 112s linux-tools-6.11.0-8-generic 112s Use 'sudo apt autoremove' to remove them. 112s The following packages will be upgraded: 112s iproute2 libgpgme11t64 liblsof0 libp11-kit0 lsof sysvinit-utils 112s 6 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 112s Need to get 1982 kB of archives. 112s After this operation, 22.5 kB of additional disk space will be used. 112s Get:1 http://ftpmaster.internal/ubuntu plucky/main s390x sysvinit-utils s390x 3.14-1ubuntu1 [36.0 kB] 112s Get:2 http://ftpmaster.internal/ubuntu plucky/main s390x iproute2 s390x 6.13.0-1ubuntu1 [1174 kB] 112s Get:3 http://ftpmaster.internal/ubuntu plucky/main s390x libp11-kit0 s390x 0.25.5-2ubuntu3 [316 kB] 112s Get:4 http://ftpmaster.internal/ubuntu plucky/main s390x lsof s390x 4.99.4+dfsg-1 [243 kB] 112s Get:5 http://ftpmaster.internal/ubuntu plucky/main s390x liblsof0 s390x 4.99.4+dfsg-1 [58.5 kB] 112s Get:6 http://ftpmaster.internal/ubuntu plucky/main s390x libgpgme11t64 s390x 1.24.2-1ubuntu1 [154 kB] 113s Preconfiguring packages ... 113s Fetched 1982 kB in 1s (3246 kB/s) 113s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 81030 files and directories currently installed.) 113s Preparing to unpack .../sysvinit-utils_3.14-1ubuntu1_s390x.deb ... 113s Unpacking sysvinit-utils (3.14-1ubuntu1) over (3.08-6ubuntu3) ... 113s Setting up sysvinit-utils (3.14-1ubuntu1) ... 113s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 81030 files and directories currently installed.) 113s Preparing to unpack .../iproute2_6.13.0-1ubuntu1_s390x.deb ... 113s Unpacking iproute2 (6.13.0-1ubuntu1) over (6.10.0-2ubuntu1) ... 113s Preparing to unpack .../libp11-kit0_0.25.5-2ubuntu3_s390x.deb ... 113s Unpacking libp11-kit0:s390x (0.25.5-2ubuntu3) over (0.25.5-2ubuntu2) ... 113s Preparing to unpack .../lsof_4.99.4+dfsg-1_s390x.deb ... 113s Unpacking lsof (4.99.4+dfsg-1) over (4.99.3+dfsg-2) ... 113s Preparing to unpack .../liblsof0_4.99.4+dfsg-1_s390x.deb ... 113s Unpacking liblsof0 (4.99.4+dfsg-1) over (4.99.3+dfsg-2) ... 113s Preparing to unpack .../libgpgme11t64_1.24.2-1ubuntu1_s390x.deb ... 113s Unpacking libgpgme11t64:s390x (1.24.2-1ubuntu1) over (1.24.1-4ubuntu1) ... 113s Setting up liblsof0 (4.99.4+dfsg-1) ... 113s Setting up iproute2 (6.13.0-1ubuntu1) ... 113s Setting up libp11-kit0:s390x (0.25.5-2ubuntu3) ... 113s Setting up lsof (4.99.4+dfsg-1) ... 113s Setting up libgpgme11t64:s390x (1.24.2-1ubuntu1) ... 113s Processing triggers for man-db (2.13.0-1) ... 114s Processing triggers for libc-bin (2.40-4ubuntu1) ... 114s + rm /etc/apt/preferences.d/force-downgrade-to-release.pref 114s + /usr/lib/apt/apt-helper analyze-pattern ?true 114s + uname -r 114s + sed s/\./\\./g 114s + running_kernel_pattern=^linux-.*6\.12\.0-15-generic.* 114s + apt list ?obsolete 114s + tail -n+2 114s + grep -v ^linux-.*6\.12\.0-15-generic.* 114s + cut -d/ -f1 114s + true 114s + obsolete_pkgs= 114s + DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y purge --autoremove 114s Reading package lists... 114s Building dependency tree... 114s Reading state information... 114s The following packages will be REMOVED: 114s libnsl2* libpython3.12-minimal* libpython3.12-stdlib* libpython3.12t64* 114s linux-headers-6.11.0-8* linux-headers-6.11.0-8-generic* 114s linux-modules-6.11.0-8-generic* linux-tools-6.11.0-8* 114s linux-tools-6.11.0-8-generic* 114s 0 upgraded, 0 newly installed, 9 to remove and 0 not upgraded. 114s After this operation, 167 MB disk space will be freed. 115s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 81031 files and directories currently installed.) 115s Removing linux-tools-6.11.0-8-generic (6.11.0-8.8) ... 115s Removing linux-tools-6.11.0-8 (6.11.0-8.8) ... 115s Removing libpython3.12t64:s390x (3.12.9-1) ... 115s Removing libpython3.12-stdlib:s390x (3.12.9-1) ... 115s Removing libnsl2:s390x (1.3.0-3build3) ... 115s Removing libpython3.12-minimal:s390x (3.12.9-1) ... 115s Removing linux-headers-6.11.0-8-generic (6.11.0-8.8) ... 115s Removing linux-headers-6.11.0-8 (6.11.0-8.8) ... 115s Removing linux-modules-6.11.0-8-generic (6.11.0-8.8) ... 115s Processing triggers for libc-bin (2.40-4ubuntu1) ... 116s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 55931 files and directories currently installed.) 116s Purging configuration files for libpython3.12-minimal:s390x (3.12.9-1) ... 116s Purging configuration files for linux-modules-6.11.0-8-generic (6.11.0-8.8) ... 116s + grep -q trusty /etc/lsb-release 116s + [ ! -d /usr/share/doc/unattended-upgrades ] 116s + [ ! -d /usr/share/doc/lxd ] 116s + [ ! -d /usr/share/doc/lxd-client ] 116s + [ ! -d /usr/share/doc/snapd ] 116s + type iptables 116s + cat 116s + chmod 755 /etc/rc.local 116s + . /etc/rc.local 116s + iptables -w -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu 116s + iptables -A OUTPUT -d 10.255.255.1/32 -p tcp -j DROP 116s + iptables -A OUTPUT -d 10.255.255.2/32 -p tcp -j DROP 116s + uname -m 116s + [ s390x = ppc64le ] 116s + [ -d /run/systemd/system ] 116s + systemd-detect-virt --quiet --vm 116s + mkdir -p /etc/systemd/system/systemd-random-seed.service.d/ 116s + cat 116s + grep -q lz4 /etc/initramfs-tools/initramfs.conf 116s + echo COMPRESS=lz4 116s autopkgtest: DBG: testbed command exited with code 0 116s autopkgtest [13:07:56]: upgrading testbed (apt dist-upgrade and autopurge) 116s autopkgtest: DBG: testbed command ['/bin/sh', '-ec', '"$@" 3>&2 2>&1', 'run_apt_command', '/usr/bin/eatmydata', 'apt-get', '--quiet', '--assume-yes', '-o=APT::Status-Fd=3', '-o=APT::Install-Recommends=false', '-o=Dpkg::Options::=--force-confnew', '-o=Debug::pkgProblemResolver=true', 'dist-upgrade'], kind install, sout raw, serr pipe, env ['DEBIAN_FRONTEND=noninteractive', 'APT_LISTBUGS_FRONTEND=none', 'APT_LISTCHANGES_FRONTEND=none'] 116s Reading package lists... 116s Building dependency tree... 116s Reading state information... 116s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 116s Starting 2 pkgProblemResolver with broken count: 0 116s Done 116s Entering ResolveByKeep 117s 117s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 117s autopkgtest: DBG: testbed command exited with code 0 117s autopkgtest: DBG: testbed command ['/bin/sh', '-ec', '"$@" 3>&2 2>&1', 'run_apt_command', '/usr/bin/eatmydata', 'apt-get', '--quiet', '--assume-yes', '-o=APT::Status-Fd=3', '-o=APT::Install-Recommends=false', '-o=Dpkg::Options::=--force-confnew', '-o=Debug::pkgProblemResolver=true', '--purge', 'autoremove'], kind install, sout raw, serr pipe, env ['DEBIAN_FRONTEND=noninteractive', 'APT_LISTBUGS_FRONTEND=none', 'APT_LISTCHANGES_FRONTEND=none'] 117s Reading package lists... 117s Building dependency tree... 117s Reading state information... 117s Starting pkgProblemResolver with broken count: 0 117s Starting 2 pkgProblemResolver with broken count: 0 117s Done 117s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 117s autopkgtest: DBG: testbed command exited with code 0 117s autopkgtest: DBG: testbed command ['bash', '-ec', '[ ! -e /run/autopkgtest_no_reboot.stamp ] || exit 0;for d in /boot /boot/efi /boot/grub /etc/init /etc/init.d /etc/systemd/system /lib/systemd/system; do s=/tmp/autopkgtest.9zB7bO/${d//\\//_}.stamp; [ ! -d $d ] || [ `stat -c %Y $d` = `stat -c %Y $s` ]; done'], kind short, sout raw, serr raw, env [] 117s autopkgtest: DBG: testbed command exited with code 1 117s autopkgtest [13:07:57]: rebooting testbed after setup commands that affected boot 117s autopkgtest: DBG: sending command to testbed: reboot 136s autopkgtest: DBG: got reply from testbed: ok 136s autopkgtest: DBG: testbed supports reboot, creating /tmp/autopkgtest-reboot 136s autopkgtest: DBG: testbed command ['mkdir', '-p', '/tmp/autopkgtest.9zB7bO'], kind short, sout raw, serr pipe, env [] 136s autopkgtest: DBG: testbed command exited with code 0 136s autopkgtest: DBG: sending command to testbed: copydown /home/ubuntu/autopkgtest/lib/in-testbed/reboot.sh /tmp/autopkgtest.9zB7bO/autopkgtest-reboot 136s autopkgtest: DBG: got reply from testbed: ok 136s autopkgtest: DBG: testbed command ['chmod', '-R', '0755', '--', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 136s autopkgtest: DBG: testbed command exited with code 0 136s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot', '/tmp/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 136s autopkgtest: DBG: testbed command exited with code 0 136s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot', '/sbin/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 136s autopkgtest: DBG: testbed command exited with code 0 136s autopkgtest: DBG: testbed command ['mkdir', '-p', '/tmp/autopkgtest.9zB7bO'], kind short, sout raw, serr pipe, env [] 137s autopkgtest: DBG: testbed command exited with code 0 137s autopkgtest: DBG: sending command to testbed: copydown /home/ubuntu/autopkgtest/lib/in-testbed/reboot-prepare.sh /tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare 137s autopkgtest: DBG: got reply from testbed: ok 137s autopkgtest: DBG: testbed command ['chmod', '-R', '0755', '--', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare'], kind short, sout raw, serr pipe, env [] 137s autopkgtest: DBG: testbed command exited with code 0 137s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare', '/tmp/autopkgtest-reboot-prepare'], kind short, sout raw, serr pipe, env [] 137s autopkgtest: DBG: testbed command exited with code 0 137s autopkgtest: DBG: testbed command ['uname', '-srv'], kind short, sout pipe, serr pipe, env [] 137s autopkgtest: DBG: testbed command exited with code 0 137s autopkgtest [13:08:17]: testbed running kernel: Linux 6.12.0-15-generic #15-Ubuntu SMP Tue Feb 4 15:05:57 UTC 2025 137s autopkgtest: DBG: testbed command ['sh', '-c', 'nproc; cat /proc/cpuinfo 2>/dev/null || true'], kind short, sout pipe, serr pipe, env [] 137s autopkgtest: DBG: testbed command exited with code 0 137s autopkgtest: DBG: testbed command ['sh', '-ec', "dpkg-query --show -f '${Package}\\t${Version}\\n' > /tmp/autopkgtest.9zB7bO/testbed-packages"], kind short, sout raw, serr pipe, env [] 138s autopkgtest: DBG: testbed command exited with code 0 138s autopkgtest: DBG: sending command to testbed: copyup /tmp/autopkgtest.9zB7bO/testbed-packages /tmp/autopkgtest-work.dij5uc5o/out/testbed-packages 138s autopkgtest: DBG: got reply from testbed: ok 138s autopkgtest: DBG: testbed supports reboot, creating /tmp/autopkgtest-reboot 138s autopkgtest: DBG: testbed command ['mkdir', '-p', '/tmp/autopkgtest.9zB7bO'], kind short, sout raw, serr pipe, env [] 138s autopkgtest: DBG: testbed command exited with code 0 138s autopkgtest: DBG: sending command to testbed: copydown /home/ubuntu/autopkgtest/lib/in-testbed/reboot.sh /tmp/autopkgtest.9zB7bO/autopkgtest-reboot 138s autopkgtest: DBG: got reply from testbed: ok 138s autopkgtest: DBG: testbed command ['chmod', '-R', '0755', '--', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 138s autopkgtest: DBG: testbed command exited with code 0 138s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot', '/tmp/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 138s autopkgtest: DBG: testbed command exited with code 0 138s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot', '/sbin/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 139s autopkgtest: DBG: testbed command exited with code 0 139s autopkgtest: DBG: testbed command ['mkdir', '-p', '/tmp/autopkgtest.9zB7bO'], kind short, sout raw, serr pipe, env [] 139s autopkgtest: DBG: testbed command exited with code 0 139s autopkgtest: DBG: sending command to testbed: copydown /home/ubuntu/autopkgtest/lib/in-testbed/reboot-prepare.sh /tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare 139s autopkgtest: DBG: got reply from testbed: ok 139s autopkgtest: DBG: testbed command ['chmod', '-R', '0755', '--', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare'], kind short, sout raw, serr pipe, env [] 139s autopkgtest: DBG: testbed command exited with code 0 139s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare', '/tmp/autopkgtest-reboot-prepare'], kind short, sout raw, serr pipe, env [] 139s autopkgtest: DBG: testbed command exited with code 0 139s autopkgtest: DBG: testbed command ['uname', '-srv'], kind short, sout pipe, serr pipe, env [] 139s autopkgtest: DBG: testbed command exited with code 0 139s autopkgtest: DBG: Binaries: initialising 139s autopkgtest [13:08:19]: @@@@@@@@@@@@@@@@@@@@ apt-source translate-toolkit 139s autopkgtest: DBG: blame += translate-toolkit 139s autopkgtest: DBG: testbed reset: modified=False, deps_installed=[], deps_new=[] 139s autopkgtest: DBG: testbed command ['apt-cache', 'showsrc', '--only-source', 'translate-toolkit'], kind short, sout pipe, serr pipe, env [] 140s autopkgtest: DBG: testbed command exited with code 0 140s autopkgtest: DBG: testbed command ['apt-cache', 'policy', '^translate-toolkit$'], kind short, sout pipe, serr raw, env [] 140s autopkgtest: DBG: testbed command exited with code 0 140s autopkgtest: DBG: testbed command ['apt-cache', 'show', 'translate-toolkit=3.14.7-1'], kind short, sout pipe, serr raw, env [] 140s autopkgtest: DBG: testbed command exited with code 0 140s autopkgtest: DBG: testbed command ['apt-cache', 'policy', '^python3-translate$'], kind short, sout pipe, serr raw, env [] 140s autopkgtest: DBG: testbed command exited with code 0 140s autopkgtest: DBG: testbed command ['apt-cache', 'show', 'python3-translate=3.14.7-1'], kind short, sout pipe, serr raw, env [] 141s autopkgtest: DBG: testbed command exited with code 0 141s autopkgtest: DBG: testbed command ['apt-cache', 'policy', '^translate-toolkit-doc$'], kind short, sout pipe, serr raw, env [] 141s autopkgtest: DBG: testbed command exited with code 0 141s autopkgtest: DBG: testbed command ['apt-cache', 'show', 'translate-toolkit-doc=3.14.7-1'], kind short, sout pipe, serr raw, env [] 141s autopkgtest: DBG: testbed command exited with code 0 141s autopkgtest: DBG: install_deps: deps_new=[] 141s autopkgtest: DBG: testbed command ['sh', '-ec', 'command -v dpkg-source'], kind short, sout pipe, serr pipe, env [] 141s autopkgtest: DBG: testbed command exited with code 0 141s autopkgtest: DBG: testbed command ['sh', '-ec', 'su --shell=/bin/sh ubuntu -c \'set -e; exec 3>&1 >&2; set -x; cd /; builddir=$(mktemp -d /tmp/autopkgtest.9zB7bO/build.XXX); cd $builddir; OUT=$(apt-get source -d -q --only-source translate-toolkit=3.14.7-1 2>&1) || RC=$?;if [ -n "$RC" ]; then if echo "$OUT" | grep -q "Unable to find a source package"; then exit 1; else exit $RC; fi;fi;echo "$OUT" | grep ^Get: || true;dpkg-source -x translate-toolkit_*.dsc src >/dev/null; chmod -R a+rX .; cd [a-z0-9]*/.; pwd >&3; sed -n "1 {s/).*//; s/ (/\\n/; p}" debian/changelog >&3\''], kind build, sout pipe, serr raw, env ['ADT_TEST_TRIGGERS=sphinx/8.1.3-5'] 141s + cd / 141s + mktemp -d /tmp/autopkgtest.9zB7bO/build.XXX 141s + builddir=/tmp/autopkgtest.9zB7bO/build.lrp 141s + cd /tmp/autopkgtest.9zB7bO/build.lrp 141s + apt-get source -d -q --only-source translate-toolkit=3.14.7-1 142s + OUT=Reading package lists... 142s NOTICE: 'translate-toolkit' packaging is maintained in the 'Git' version control system at: 142s https://salsa.debian.org/l10n-team/translate-toolkit.git 142s Please use: 142s git clone https://salsa.debian.org/l10n-team/translate-toolkit.git 142s to retrieve the latest (possibly unreleased) updates to the package. 142s Need to get 1204 kB of source archives. 142s Get:1 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.14.7-1 (dsc) [3193 B] 142s Get:2 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.14.7-1 (tar) [1176 kB] 142s Get:3 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.14.7-1 (diff) [24.3 kB] 142s Fetched 1204 kB in 1s (1754 kB/s) 142s Download complete and in download only mode 142s + [ -n ] 142s + echo Reading package lists... 142s NOTICE: 'translate-toolkit' packaging is maintained in the 'Git' version control system at: 142s https://salsa.debian.org/l10n-team/translate-toolkit.git 142s Please use: 142s git clone https://salsa.debian.org/l10n-team/translate-toolkit.git 142s to retrieve the latest (possibly unreleased) updates to the package. 142s Need to get 1204 kB of source archives. 142s Get:1 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.14.7-1 (dsc) [3193 B] 142s Get:2 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.14.7-1 (tar) [1176 kB] 142s Get:3 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.14.7-1 (diff) [24.3 kB] 142s Fetched 1204 kB in 1s (1754 kB/s) 142s Download complete and in download only mode 142s + grep ^Get: 142s Get:1 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.14.7-1 (dsc) [3193 B] 142s Get:2 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.14.7-1 (tar) [1176 kB] 142s Get:3 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.14.7-1 (diff) [24.3 kB] 142s + dpkg-source -x translate-toolkit_3.14.7-1.dsc src 142s gpgv: Signature made Mon Feb 10 10:23:38 2025 UTC 142s gpgv: using RSA key 90E2D2C1AD146A1B7EBB891DBBC17EBB1396F2F7 142s gpgv: Can't check signature: No public key 142s dpkg-source: warning: cannot verify inline signature for ./translate-toolkit_3.14.7-1.dsc: no acceptable signature found 142s + chmod -R a+rX . 142s + cd src/. 142s + pwd 142s + sed -n 1 {s/).*//; s/ (/\n/; p} debian/changelog 142s autopkgtest: DBG: testbed command exited with code 0 142s autopkgtest [13:08:22]: testing package translate-toolkit version 3.14.7-1 142s autopkgtest: DBG: sending command to testbed: copyup /tmp/autopkgtest.9zB7bO/build.lrp/src/debian/ /tmp/autopkgtest-work.dij5uc5o/out/pkg/debian/ 143s autopkgtest: DBG: got reply from testbed: ok 143s autopkgtest: DBG: processing dependency translate-toolkit 143s autopkgtest: DBG: marked alternatives ['translate-toolkit'] as a synthesised dependency 143s autopkgtest: DBG: processing dependency subversion 143s autopkgtest: DBG: processing dependency python3-aeidon (>> 1.15~) 143s autopkgtest: DBG: processing dependency python3-bs4 143s autopkgtest: DBG: processing dependency python3-charset-normalizer 143s autopkgtest: DBG: processing dependency python3-cheroot 143s autopkgtest: DBG: processing dependency python3-cwcwidth 143s autopkgtest: DBG: processing dependency python3-diff-match-patch 143s autopkgtest: DBG: processing dependency python3-enchant 143s autopkgtest: DBG: processing dependency python3-iniparse 143s autopkgtest: DBG: processing dependency python3-levenshtein 143s autopkgtest: DBG: processing dependency python3-lxml 143s autopkgtest: DBG: processing dependency python3-mistletoe (>> 1.1.0~) 143s autopkgtest: DBG: processing dependency python3-phply (>> 1.2.4) 143s autopkgtest: DBG: processing dependency python3-pycountry (>> 17.5.14) 143s autopkgtest: DBG: processing dependency python3-pyparsing (>> 3) 143s autopkgtest: DBG: processing dependency python3-ruamel.yaml 143s autopkgtest: DBG: processing dependency python3-vobject 143s autopkgtest: DBG: processing dependency python3-xapian 143s autopkgtest: DBG: Test defined: name translate-toolkit path debian/tests/translate-toolkit command "None" restrictions ['allow-stderr'] features [] depends ['translate-toolkit', 'subversion', 'python3-aeidon (>> 1.15~)', 'python3-bs4', 'python3-charset-normalizer', 'python3-cheroot', 'python3-cwcwidth', 'python3-diff-match-patch', 'python3-enchant', 'python3-iniparse', 'python3-levenshtein', 'python3-lxml', 'python3-mistletoe (>> 1.1.0~)', 'python3-phply (>> 1.2.4)', 'python3-pycountry (>> 17.5.14)', 'python3-pyparsing (>> 3)', 'python3-ruamel.yaml', 'python3-vobject', 'python3-xapian'] 143s autopkgtest: DBG: processing dependency python3-translate 143s autopkgtest: DBG: marked alternatives ['python3-translate'] as a synthesised dependency 143s autopkgtest: DBG: processing dependency python3-pytest 143s autopkgtest: DBG: processing dependency python3-all 143s autopkgtest: DBG: processing dependency subversion 143s autopkgtest: DBG: processing dependency python3-aeidon (>> 1.15~) 143s autopkgtest: DBG: processing dependency python3-bs4 143s autopkgtest: DBG: processing dependency python3-charset-normalizer 143s autopkgtest: DBG: processing dependency python3-cheroot 143s autopkgtest: DBG: processing dependency python3-cwcwidth 143s autopkgtest: DBG: processing dependency python3-diff-match-patch 143s autopkgtest: DBG: processing dependency python3-enchant 143s autopkgtest: DBG: processing dependency python3-iniparse 143s autopkgtest: DBG: processing dependency python3-levenshtein 143s autopkgtest: DBG: processing dependency python3-lxml 143s autopkgtest: DBG: processing dependency python3-mistletoe (>> 1.1.0~) 143s autopkgtest: DBG: processing dependency python3-phply (>> 1.2.4) 143s autopkgtest: DBG: processing dependency python3-pycountry (>> 17.5.14) 143s autopkgtest: DBG: processing dependency python3-pyparsing (>> 3) 143s autopkgtest: DBG: processing dependency python3-ruamel.yaml 143s autopkgtest: DBG: processing dependency python3-syrupy 143s autopkgtest: DBG: processing dependency python3-vobject 143s autopkgtest: DBG: processing dependency python3-xapian 143s autopkgtest: DBG: Test defined: name python3-translate path debian/tests/python3-translate command "None" restrictions ['allow-stderr'] features [] depends ['python3-translate', 'python3-pytest', 'python3-all', 'subversion', 'python3-aeidon (>> 1.15~)', 'python3-bs4', 'python3-charset-normalizer', 'python3-cheroot', 'python3-cwcwidth', 'python3-diff-match-patch', 'python3-enchant', 'python3-iniparse', 'python3-levenshtein', 'python3-lxml', 'python3-mistletoe (>> 1.1.0~)', 'python3-phply (>> 1.2.4)', 'python3-pycountry (>> 17.5.14)', 'python3-pyparsing (>> 3)', 'python3-ruamel.yaml', 'python3-syrupy', 'python3-vobject', 'python3-xapian'] 143s autopkgtest: DBG: processing dependency python3-translate 143s autopkgtest: DBG: marked alternatives ['python3-translate'] as a synthesised dependency 143s autopkgtest: DBG: processing dependency translate-toolkit 143s autopkgtest: DBG: marked alternatives ['translate-toolkit'] as a synthesised dependency 143s autopkgtest: DBG: processing dependency python3-pytest 143s autopkgtest: DBG: processing dependency python3-all 143s autopkgtest: DBG: processing dependency subversion 143s autopkgtest: DBG: processing dependency python3-aeidon 143s autopkgtest: DBG: processing dependency python3-bs4 143s autopkgtest: DBG: processing dependency python3-charset-normalizer 143s autopkgtest: DBG: processing dependency python3-cheroot 143s autopkgtest: DBG: processing dependency python3-diff-match-patch 143s autopkgtest: DBG: processing dependency python3-enchant 143s autopkgtest: DBG: processing dependency python3-iniparse 143s autopkgtest: DBG: processing dependency python3-levenshtein 143s autopkgtest: DBG: processing dependency python3-lxml 143s autopkgtest: DBG: processing dependency python3-mistletoe (>> 1.1.0~) 143s autopkgtest: DBG: processing dependency python3-phply (>> 1.2.4) 143s autopkgtest: DBG: processing dependency python3-pycountry (>> 17.5.14) 143s autopkgtest: DBG: processing dependency python3-pyparsing (>> 3) 143s autopkgtest: DBG: processing dependency python3-ruamel.yaml 143s autopkgtest: DBG: processing dependency python3-syrupy 143s autopkgtest: DBG: processing dependency python3-vobject 143s autopkgtest: DBG: processing dependency python3-wcwidth 143s autopkgtest: DBG: processing dependency python3-xapian 143s autopkgtest: DBG: Test defined: name python3-translate-commands path debian/tests/python3-translate-commands command "None" restrictions ['allow-stderr'] features [] depends ['python3-translate', 'translate-toolkit', 'python3-pytest', 'python3-all', 'subversion', 'python3-aeidon', 'python3-bs4', 'python3-charset-normalizer', 'python3-cheroot', 'python3-diff-match-patch', 'python3-enchant', 'python3-iniparse', 'python3-levenshtein', 'python3-lxml', 'python3-mistletoe (>> 1.1.0~)', 'python3-phply (>> 1.2.4)', 'python3-pycountry (>> 17.5.14)', 'python3-pyparsing (>> 3)', 'python3-ruamel.yaml', 'python3-syrupy', 'python3-vobject', 'python3-wcwidth', 'python3-xapian'] 143s autopkgtest [13:08:23]: build not needed 143s autopkgtest: DBG: sending command to testbed: copyup /tmp/autopkgtest.9zB7bO/build.lrp/src/ /tmp/autopkgtest-work.dij5uc5o/out/tests-tree/ 143s autopkgtest: DBG: got reply from testbed: ok 143s autopkgtest: DBG: processing dependency translate-toolkit 143s autopkgtest: DBG: marked alternatives ['translate-toolkit'] as a synthesised dependency 143s autopkgtest: DBG: processing dependency subversion 143s autopkgtest: DBG: processing dependency python3-aeidon (>> 1.15~) 143s autopkgtest: DBG: processing dependency python3-bs4 143s autopkgtest: DBG: processing dependency python3-charset-normalizer 143s autopkgtest: DBG: processing dependency python3-cheroot 143s autopkgtest: DBG: processing dependency python3-cwcwidth 143s autopkgtest: DBG: processing dependency python3-diff-match-patch 143s autopkgtest: DBG: processing dependency python3-enchant 143s autopkgtest: DBG: processing dependency python3-iniparse 143s autopkgtest: DBG: processing dependency python3-levenshtein 143s autopkgtest: DBG: processing dependency python3-lxml 143s autopkgtest: DBG: processing dependency python3-mistletoe (>> 1.1.0~) 143s autopkgtest: DBG: processing dependency python3-phply (>> 1.2.4) 143s autopkgtest: DBG: processing dependency python3-pycountry (>> 17.5.14) 143s autopkgtest: DBG: processing dependency python3-pyparsing (>> 3) 143s autopkgtest: DBG: processing dependency python3-ruamel.yaml 143s autopkgtest: DBG: processing dependency python3-vobject 143s autopkgtest: DBG: processing dependency python3-xapian 143s autopkgtest: DBG: Test defined: name translate-toolkit path debian/tests/translate-toolkit command "None" restrictions ['allow-stderr'] features [] depends ['translate-toolkit', 'subversion', 'python3-aeidon (>> 1.15~)', 'python3-bs4', 'python3-charset-normalizer', 'python3-cheroot', 'python3-cwcwidth', 'python3-diff-match-patch', 'python3-enchant', 'python3-iniparse', 'python3-levenshtein', 'python3-lxml', 'python3-mistletoe (>> 1.1.0~)', 'python3-phply (>> 1.2.4)', 'python3-pycountry (>> 17.5.14)', 'python3-pyparsing (>> 3)', 'python3-ruamel.yaml', 'python3-vobject', 'python3-xapian'] 143s autopkgtest: DBG: processing dependency python3-translate 143s autopkgtest: DBG: marked alternatives ['python3-translate'] as a synthesised dependency 143s autopkgtest: DBG: processing dependency python3-pytest 143s autopkgtest: DBG: processing dependency python3-all 143s autopkgtest: DBG: processing dependency subversion 143s autopkgtest: DBG: processing dependency python3-aeidon (>> 1.15~) 143s autopkgtest: DBG: processing dependency python3-bs4 143s autopkgtest: DBG: processing dependency python3-charset-normalizer 143s autopkgtest: DBG: processing dependency python3-cheroot 143s autopkgtest: DBG: processing dependency python3-cwcwidth 143s autopkgtest: DBG: processing dependency python3-diff-match-patch 143s autopkgtest: DBG: processing dependency python3-enchant 143s autopkgtest: DBG: processing dependency python3-iniparse 143s autopkgtest: DBG: processing dependency python3-levenshtein 143s autopkgtest: DBG: processing dependency python3-lxml 143s autopkgtest: DBG: processing dependency python3-mistletoe (>> 1.1.0~) 143s autopkgtest: DBG: processing dependency python3-phply (>> 1.2.4) 143s autopkgtest: DBG: processing dependency python3-pycountry (>> 17.5.14) 143s autopkgtest: DBG: processing dependency python3-pyparsing (>> 3) 143s autopkgtest: DBG: processing dependency python3-ruamel.yaml 143s autopkgtest: DBG: processing dependency python3-syrupy 143s autopkgtest: DBG: processing dependency python3-vobject 143s autopkgtest: DBG: processing dependency python3-xapian 143s autopkgtest: DBG: Test defined: name python3-translate path debian/tests/python3-translate command "None" restrictions ['allow-stderr'] features [] depends ['python3-translate', 'python3-pytest', 'python3-all', 'subversion', 'python3-aeidon (>> 1.15~)', 'python3-bs4', 'python3-charset-normalizer', 'python3-cheroot', 'python3-cwcwidth', 'python3-diff-match-patch', 'python3-enchant', 'python3-iniparse', 'python3-levenshtein', 'python3-lxml', 'python3-mistletoe (>> 1.1.0~)', 'python3-phply (>> 1.2.4)', 'python3-pycountry (>> 17.5.14)', 'python3-pyparsing (>> 3)', 'python3-ruamel.yaml', 'python3-syrupy', 'python3-vobject', 'python3-xapian'] 143s autopkgtest: DBG: processing dependency python3-translate 143s autopkgtest: DBG: marked alternatives ['python3-translate'] as a synthesised dependency 143s autopkgtest: DBG: processing dependency translate-toolkit 143s autopkgtest: DBG: marked alternatives ['translate-toolkit'] as a synthesised dependency 143s autopkgtest: DBG: processing dependency python3-pytest 143s autopkgtest: DBG: processing dependency python3-all 143s autopkgtest: DBG: processing dependency subversion 143s autopkgtest: DBG: processing dependency python3-aeidon 143s autopkgtest: DBG: processing dependency python3-bs4 143s autopkgtest: DBG: processing dependency python3-charset-normalizer 143s autopkgtest: DBG: processing dependency python3-cheroot 143s autopkgtest: DBG: processing dependency python3-diff-match-patch 143s autopkgtest: DBG: processing dependency python3-enchant 143s autopkgtest: DBG: processing dependency python3-iniparse 143s autopkgtest: DBG: processing dependency python3-levenshtein 143s autopkgtest: DBG: processing dependency python3-lxml 143s autopkgtest: DBG: processing dependency python3-mistletoe (>> 1.1.0~) 143s autopkgtest: DBG: processing dependency python3-phply (>> 1.2.4) 143s autopkgtest: DBG: processing dependency python3-pycountry (>> 17.5.14) 143s autopkgtest: DBG: processing dependency python3-pyparsing (>> 3) 143s autopkgtest: DBG: processing dependency python3-ruamel.yaml 143s autopkgtest: DBG: processing dependency python3-syrupy 143s autopkgtest: DBG: processing dependency python3-vobject 143s autopkgtest: DBG: processing dependency python3-wcwidth 143s autopkgtest: DBG: processing dependency python3-xapian 143s autopkgtest: DBG: Test defined: name python3-translate-commands path debian/tests/python3-translate-commands command "None" restrictions ['allow-stderr'] features [] depends ['python3-translate', 'translate-toolkit', 'python3-pytest', 'python3-all', 'subversion', 'python3-aeidon', 'python3-bs4', 'python3-charset-normalizer', 'python3-cheroot', 'python3-diff-match-patch', 'python3-enchant', 'python3-iniparse', 'python3-levenshtein', 'python3-lxml', 'python3-mistletoe (>> 1.1.0~)', 'python3-phply (>> 1.2.4)', 'python3-pycountry (>> 17.5.14)', 'python3-pyparsing (>> 3)', 'python3-ruamel.yaml', 'python3-syrupy', 'python3-vobject', 'python3-wcwidth', 'python3-xapian'] 143s autopkgtest [13:08:23]: test translate-toolkit: preparing testbed 143s autopkgtest: DBG: testbed reset: modified=False, deps_installed=[], deps_new=['translate-toolkit', 'subversion', 'python3-aeidon (>> 1.15~)', 'python3-bs4', 'python3-charset-normalizer', 'python3-cheroot', 'python3-cwcwidth', 'python3-diff-match-patch', 'python3-enchant', 'python3-iniparse', 'python3-levenshtein', 'python3-lxml', 'python3-mistletoe (>> 1.1.0~)', 'python3-phply (>> 1.2.4)', 'python3-pycountry (>> 17.5.14)', 'python3-pyparsing (>> 3)', 'python3-ruamel.yaml', 'python3-vobject', 'python3-xapian'] 143s autopkgtest: DBG: Binaries: no registered binaries, not publishing anything 143s autopkgtest: DBG: install_deps: deps_new=['translate-toolkit', 'subversion', 'python3-aeidon (>> 1.15~)', 'python3-bs4', 'python3-charset-normalizer', 'python3-cheroot', 'python3-cwcwidth', 'python3-diff-match-patch', 'python3-enchant', 'python3-iniparse', 'python3-levenshtein', 'python3-lxml', 'python3-mistletoe (>> 1.1.0~)', 'python3-phply (>> 1.2.4)', 'python3-pycountry (>> 17.5.14)', 'python3-pyparsing (>> 3)', 'python3-ruamel.yaml', 'python3-vobject', 'python3-xapian'] 143s autopkgtest: DBG: install-deps: satisfying translate-toolkit, subversion, python3-aeidon (>> 1.15~), python3-bs4, python3-charset-normalizer, python3-cheroot, python3-cwcwidth, python3-diff-match-patch, python3-enchant, python3-iniparse, python3-levenshtein, python3-lxml, python3-mistletoe (>> 1.1.0~), python3-phply (>> 1.2.4), python3-pycountry (>> 17.5.14), python3-pyparsing (>> 3), python3-ruamel.yaml, python3-vobject, python3-xapian 143s autopkgtest: DBG: can use apt-get on testbed: True 143s autopkgtest: DBG: testbed command ['/bin/sh', '-ec', '"$@" 3>&2 2>&1', 'run_apt_command', '/usr/bin/eatmydata', 'apt-get', '--quiet', '--assume-yes', '-o=APT::Status-Fd=3', '-o=APT::Install-Recommends=false', '-o=Dpkg::Options::=--force-confnew', '-o=Debug::pkgProblemResolver=true', 'satisfy', 'translate-toolkit, subversion, python3-aeidon (>> 1.15~), python3-bs4, python3-charset-normalizer, python3-cheroot, python3-cwcwidth, python3-diff-match-patch, python3-enchant, python3-iniparse, python3-levenshtein, python3-lxml, python3-mistletoe (>> 1.1.0~), python3-phply (>> 1.2.4), python3-pycountry (>> 17.5.14), python3-pyparsing (>> 3), python3-ruamel.yaml, python3-vobject, python3-xapian'], kind install, sout raw, serr pipe, env ['DEBIAN_FRONTEND=noninteractive', 'APT_LISTBUGS_FRONTEND=none', 'APT_LISTCHANGES_FRONTEND=none'] 143s Reading package lists... 144s Building dependency tree... 144s Reading state information... 144s Starting pkgProblemResolver with broken count: 0 144s Starting 2 pkgProblemResolver with broken count: 0 144s Done 144s The following NEW packages will be installed: 144s dictionaries-common emacsen-common gettext hunspell-en-us libapr1t64 144s libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data libgomp1 144s libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 libxslt1.1 144s python3-aeidon python3-bs4 python3-charset-normalizer python3-cheroot 144s python3-cwcwidth python3-dateutil python3-diff-match-patch python3-enchant 144s python3-iniparse python3-levenshtein python3-lxml python3-mistletoe 144s python3-phply python3-ply python3-pycountry python3-pytz python3-rapidfuzz 144s python3-ruamel.yaml python3-ruamel.yaml.clib python3-soupsieve 144s python3-translate python3-tz python3-vobject python3-xapian subversion 144s translate-toolkit 144s 0 upgraded, 42 newly installed, 0 to remove and 0 not upgraded. 144s Need to get 12.7 MB of archives. 144s After this operation, 64.1 MB of additional disk space will be used. 144s Get:1 http://ftpmaster.internal/ubuntu plucky/main s390x emacsen-common all 3.0.5 [12.1 kB] 144s Get:2 http://ftpmaster.internal/ubuntu plucky/main s390x dictionaries-common all 1.30.4 [176 kB] 144s Get:3 http://ftpmaster.internal/ubuntu plucky/main s390x libgomp1 s390x 15-20250213-1ubuntu1 [151 kB] 144s Get:4 http://ftpmaster.internal/ubuntu plucky/main s390x gettext s390x 0.23.1-1 [1065 kB] 145s Get:5 http://ftpmaster.internal/ubuntu plucky/main s390x hunspell-en-us all 1:2020.12.07-3 [586 kB] 145s Get:6 http://ftpmaster.internal/ubuntu plucky/main s390x libapr1t64 s390x 1.7.5-1 [114 kB] 145s Get:7 http://ftpmaster.internal/ubuntu plucky/main s390x libaprutil1t64 s390x 1.6.3-3ubuntu2 [98.4 kB] 145s Get:8 http://ftpmaster.internal/ubuntu plucky/main s390x libaspell15 s390x 0.60.8.1-4 [355 kB] 145s Get:9 http://ftpmaster.internal/ubuntu plucky/main s390x libhunspell-1.7-0 s390x 1.7.2+really1.7.2-10build3 [304 kB] 145s Get:10 http://ftpmaster.internal/ubuntu plucky/main s390x libenchant-2-2 s390x 2.8.2+dfsg1-3 [61.2 kB] 145s Get:11 http://ftpmaster.internal/ubuntu plucky/main s390x libexttextcat-data all 3.4.7-1build1 [193 kB] 145s Get:12 http://ftpmaster.internal/ubuntu plucky/universe s390x libserf-1-1 s390x 1.3.10-3ubuntu1 [49.8 kB] 145s Get:13 http://ftpmaster.internal/ubuntu plucky/universe s390x libutf8proc3 s390x 2.9.0-1build1 [71.1 kB] 145s Get:14 http://ftpmaster.internal/ubuntu plucky/universe s390x libsvn1 s390x 1.14.5-2 [1371 kB] 145s Get:15 http://ftpmaster.internal/ubuntu plucky/universe s390x libxapian30 s390x 1.4.25-2 [743 kB] 145s Get:16 http://ftpmaster.internal/ubuntu plucky/main s390x libxslt1.1 s390x 1.1.39-0exp1ubuntu2 [169 kB] 145s Get:17 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-aeidon all 1.15-2 [231 kB] 145s Get:18 http://ftpmaster.internal/ubuntu plucky/main s390x python3-soupsieve all 2.6-1 [33.0 kB] 145s Get:19 http://ftpmaster.internal/ubuntu plucky/main s390x python3-bs4 all 4.13.3-1 [136 kB] 145s Get:20 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-charset-normalizer s390x 3.4.1-1 [148 kB] 145s Get:21 http://ftpmaster.internal/ubuntu plucky/main s390x python3-cheroot all 10.0.1+ds1-3 [78.6 kB] 145s Get:22 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-cwcwidth s390x 0.1.10-1 [27.6 kB] 145s Get:23 http://ftpmaster.internal/ubuntu plucky/main s390x python3-dateutil all 2.9.0-3 [80.2 kB] 145s Get:24 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-diff-match-patch all 20241021-1 [33.6 kB] 145s Get:25 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-enchant all 3.3.0~rc1-1 [35.1 kB] 145s Get:26 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-rapidfuzz s390x 3.12.1+ds-1 [1843 kB] 145s Get:27 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-levenshtein s390x 0.27.0-1 [211 kB] 145s Get:28 http://ftpmaster.internal/ubuntu plucky/main s390x python3-lxml s390x 5.3.1-1 [1773 kB] 145s Get:29 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-mistletoe all 1.4.0-1 [38.2 kB] 145s Get:30 http://ftpmaster.internal/ubuntu plucky/main s390x python3-ply all 3.11-7 [45.4 kB] 145s Get:31 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-phply all 1.2.6-1 [50.5 kB] 145s Get:32 http://ftpmaster.internal/ubuntu plucky/main s390x python3-pytz all 2025.1-3 [162 kB] 145s Get:33 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-ruamel.yaml.clib s390x 0.2.12+ds-1 [201 kB] 145s Get:34 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-ruamel.yaml all 0.18.10+ds-1 [127 kB] 145s Get:35 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-translate all 3.14.7-1 [319 kB] 145s Get:36 http://ftpmaster.internal/ubuntu plucky/main s390x python3-tz all 2025.1-3 [1866 B] 145s Get:37 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-vobject all 0.9.8+dfsg-2 [41.3 kB] 145s Get:38 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-xapian s390x 1.4.25-1build4 [527 kB] 145s Get:39 http://ftpmaster.internal/ubuntu plucky/universe s390x subversion s390x 1.14.5-2 [910 kB] 145s Get:40 http://ftpmaster.internal/ubuntu plucky/universe s390x translate-toolkit all 3.14.7-1 [81.5 kB] 145s Get:41 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-iniparse all 0.5.1-1 [21.2 kB] 145s Get:42 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-pycountry all 24.6.1+ds1-1 [30.0 kB] 145s Preconfiguring packages ... 145s Fetched 12.7 MB in 1s (11.8 MB/s) 145s Selecting previously unselected package emacsen-common. 145s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 55929 files and directories currently installed.) 145s Preparing to unpack .../00-emacsen-common_3.0.5_all.deb ... 145s Unpacking emacsen-common (3.0.5) ... 145s Selecting previously unselected package dictionaries-common. 145s Preparing to unpack .../01-dictionaries-common_1.30.4_all.deb ... 145s Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common' 145s Unpacking dictionaries-common (1.30.4) ... 145s Selecting previously unselected package libgomp1:s390x. 145s Preparing to unpack .../02-libgomp1_15-20250213-1ubuntu1_s390x.deb ... 145s Unpacking libgomp1:s390x (15-20250213-1ubuntu1) ... 145s Selecting previously unselected package gettext. 145s Preparing to unpack .../03-gettext_0.23.1-1_s390x.deb ... 145s Unpacking gettext (0.23.1-1) ... 146s Selecting previously unselected package hunspell-en-us. 146s Preparing to unpack .../04-hunspell-en-us_1%3a2020.12.07-3_all.deb ... 146s Unpacking hunspell-en-us (1:2020.12.07-3) ... 146s Selecting previously unselected package libapr1t64:s390x. 146s Preparing to unpack .../05-libapr1t64_1.7.5-1_s390x.deb ... 146s Unpacking libapr1t64:s390x (1.7.5-1) ... 146s Selecting previously unselected package libaprutil1t64:s390x. 146s Preparing to unpack .../06-libaprutil1t64_1.6.3-3ubuntu2_s390x.deb ... 146s Unpacking libaprutil1t64:s390x (1.6.3-3ubuntu2) ... 146s Selecting previously unselected package libaspell15:s390x. 146s Preparing to unpack .../07-libaspell15_0.60.8.1-4_s390x.deb ... 146s Unpacking libaspell15:s390x (0.60.8.1-4) ... 146s Selecting previously unselected package libhunspell-1.7-0:s390x. 146s Preparing to unpack .../08-libhunspell-1.7-0_1.7.2+really1.7.2-10build3_s390x.deb ... 146s Unpacking libhunspell-1.7-0:s390x (1.7.2+really1.7.2-10build3) ... 146s Selecting previously unselected package libenchant-2-2:s390x. 146s Preparing to unpack .../09-libenchant-2-2_2.8.2+dfsg1-3_s390x.deb ... 146s Unpacking libenchant-2-2:s390x (2.8.2+dfsg1-3) ... 146s Selecting previously unselected package libexttextcat-data. 146s Preparing to unpack .../10-libexttextcat-data_3.4.7-1build1_all.deb ... 146s Unpacking libexttextcat-data (3.4.7-1build1) ... 146s Selecting previously unselected package libserf-1-1:s390x. 146s Preparing to unpack .../11-libserf-1-1_1.3.10-3ubuntu1_s390x.deb ... 146s Unpacking libserf-1-1:s390x (1.3.10-3ubuntu1) ... 146s Selecting previously unselected package libutf8proc3:s390x. 146s Preparing to unpack .../12-libutf8proc3_2.9.0-1build1_s390x.deb ... 146s Unpacking libutf8proc3:s390x (2.9.0-1build1) ... 146s Selecting previously unselected package libsvn1:s390x. 146s Preparing to unpack .../13-libsvn1_1.14.5-2_s390x.deb ... 146s Unpacking libsvn1:s390x (1.14.5-2) ... 146s Selecting previously unselected package libxapian30:s390x. 146s Preparing to unpack .../14-libxapian30_1.4.25-2_s390x.deb ... 146s Unpacking libxapian30:s390x (1.4.25-2) ... 146s Selecting previously unselected package libxslt1.1:s390x. 146s Preparing to unpack .../15-libxslt1.1_1.1.39-0exp1ubuntu2_s390x.deb ... 146s Unpacking libxslt1.1:s390x (1.1.39-0exp1ubuntu2) ... 146s Selecting previously unselected package python3-aeidon. 146s Preparing to unpack .../16-python3-aeidon_1.15-2_all.deb ... 146s Unpacking python3-aeidon (1.15-2) ... 146s Selecting previously unselected package python3-soupsieve. 146s Preparing to unpack .../17-python3-soupsieve_2.6-1_all.deb ... 146s Unpacking python3-soupsieve (2.6-1) ... 146s Selecting previously unselected package python3-bs4. 146s Preparing to unpack .../18-python3-bs4_4.13.3-1_all.deb ... 146s Unpacking python3-bs4 (4.13.3-1) ... 146s Selecting previously unselected package python3-charset-normalizer. 146s Preparing to unpack .../19-python3-charset-normalizer_3.4.1-1_s390x.deb ... 146s Unpacking python3-charset-normalizer (3.4.1-1) ... 146s Selecting previously unselected package python3-cheroot. 146s Preparing to unpack .../20-python3-cheroot_10.0.1+ds1-3_all.deb ... 146s Unpacking python3-cheroot (10.0.1+ds1-3) ... 146s Selecting previously unselected package python3-cwcwidth. 146s Preparing to unpack .../21-python3-cwcwidth_0.1.10-1_s390x.deb ... 146s Unpacking python3-cwcwidth (0.1.10-1) ... 146s Selecting previously unselected package python3-dateutil. 146s Preparing to unpack .../22-python3-dateutil_2.9.0-3_all.deb ... 146s Unpacking python3-dateutil (2.9.0-3) ... 146s Selecting previously unselected package python3-diff-match-patch. 146s Preparing to unpack .../23-python3-diff-match-patch_20241021-1_all.deb ... 146s Unpacking python3-diff-match-patch (20241021-1) ... 146s Selecting previously unselected package python3-enchant. 146s Preparing to unpack .../24-python3-enchant_3.3.0~rc1-1_all.deb ... 146s Unpacking python3-enchant (3.3.0~rc1-1) ... 146s Selecting previously unselected package python3-rapidfuzz. 146s Preparing to unpack .../25-python3-rapidfuzz_3.12.1+ds-1_s390x.deb ... 146s Unpacking python3-rapidfuzz (3.12.1+ds-1) ... 146s Selecting previously unselected package python3-levenshtein. 146s Preparing to unpack .../26-python3-levenshtein_0.27.0-1_s390x.deb ... 146s Unpacking python3-levenshtein (0.27.0-1) ... 146s Selecting previously unselected package python3-lxml:s390x. 146s Preparing to unpack .../27-python3-lxml_5.3.1-1_s390x.deb ... 146s Unpacking python3-lxml:s390x (5.3.1-1) ... 146s Selecting previously unselected package python3-mistletoe. 146s Preparing to unpack .../28-python3-mistletoe_1.4.0-1_all.deb ... 146s Unpacking python3-mistletoe (1.4.0-1) ... 146s Selecting previously unselected package python3-ply. 146s Preparing to unpack .../29-python3-ply_3.11-7_all.deb ... 146s Unpacking python3-ply (3.11-7) ... 146s Selecting previously unselected package python3-phply. 146s Preparing to unpack .../30-python3-phply_1.2.6-1_all.deb ... 146s Unpacking python3-phply (1.2.6-1) ... 146s Selecting previously unselected package python3-pytz. 146s Preparing to unpack .../31-python3-pytz_2025.1-3_all.deb ... 146s Unpacking python3-pytz (2025.1-3) ... 146s Selecting previously unselected package python3-ruamel.yaml.clib. 146s Preparing to unpack .../32-python3-ruamel.yaml.clib_0.2.12+ds-1_s390x.deb ... 146s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1) ... 146s Selecting previously unselected package python3-ruamel.yaml. 146s Preparing to unpack .../33-python3-ruamel.yaml_0.18.10+ds-1_all.deb ... 146s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ... 146s Selecting previously unselected package python3-translate. 146s Preparing to unpack .../34-python3-translate_3.14.7-1_all.deb ... 146s Unpacking python3-translate (3.14.7-1) ... 146s Selecting previously unselected package python3-tz. 146s Preparing to unpack .../35-python3-tz_2025.1-3_all.deb ... 146s Unpacking python3-tz (2025.1-3) ... 146s Selecting previously unselected package python3-vobject. 146s Preparing to unpack .../36-python3-vobject_0.9.8+dfsg-2_all.deb ... 146s Unpacking python3-vobject (0.9.8+dfsg-2) ... 146s Selecting previously unselected package python3-xapian. 146s Preparing to unpack .../37-python3-xapian_1.4.25-1build4_s390x.deb ... 146s Unpacking python3-xapian (1.4.25-1build4) ... 146s Selecting previously unselected package subversion. 146s Preparing to unpack .../38-subversion_1.14.5-2_s390x.deb ... 146s Unpacking subversion (1.14.5-2) ... 146s Selecting previously unselected package translate-toolkit. 146s Preparing to unpack .../39-translate-toolkit_3.14.7-1_all.deb ... 146s Unpacking translate-toolkit (3.14.7-1) ... 146s Selecting previously unselected package python3-iniparse. 146s Preparing to unpack .../40-python3-iniparse_0.5.1-1_all.deb ... 146s Unpacking python3-iniparse (0.5.1-1) ... 146s Selecting previously unselected package python3-pycountry. 146s Preparing to unpack .../41-python3-pycountry_24.6.1+ds1-1_all.deb ... 146s Unpacking python3-pycountry (24.6.1+ds1-1) ... 146s Setting up libxapian30:s390x (1.4.25-2) ... 146s Setting up python3-rapidfuzz (3.12.1+ds-1) ... 146s Setting up python3-diff-match-patch (20241021-1) ... 146s Setting up python3-aeidon (1.15-2) ... 146s Setting up libutf8proc3:s390x (2.9.0-1build1) ... 146s Setting up libaspell15:s390x (0.60.8.1-4) ... 146s Setting up python3-charset-normalizer (3.4.1-1) ... 147s Setting up python3-ply (3.11-7) ... 147s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1) ... 147s Setting up python3-pytz (2025.1-3) ... 147s Setting up libgomp1:s390x (15-20250213-1ubuntu1) ... 147s Setting up python3-tz (2025.1-3) ... 147s Setting up emacsen-common (3.0.5) ... 147s Setting up python3-cheroot (10.0.1+ds1-3) ... 147s Setting up python3-pycountry (24.6.1+ds1-1) ... 147s Setting up python3-xapian (1.4.25-1build4) ... 147s Setting up python3-cwcwidth (0.1.10-1) ... 147s Setting up python3-ruamel.yaml (0.18.10+ds-1) ... 147s Setting up python3-mistletoe (1.4.0-1) ... 147s Setting up libexttextcat-data (3.4.7-1build1) ... 147s Setting up libapr1t64:s390x (1.7.5-1) ... 147s Setting up libxslt1.1:s390x (1.1.39-0exp1ubuntu2) ... 147s Setting up python3-dateutil (2.9.0-3) ... 147s Setting up python3-levenshtein (0.27.0-1) ... 147s Setting up libhunspell-1.7-0:s390x (1.7.2+really1.7.2-10build3) ... 147s Setting up python3-soupsieve (2.6-1) ... 148s Setting up python3-iniparse (0.5.1-1) ... 148s Setting up libaprutil1t64:s390x (1.6.3-3ubuntu2) ... 148s Setting up python3-vobject (0.9.8+dfsg-2) ... 148s Setting up gettext (0.23.1-1) ... 148s Setting up python3-phply (1.2.6-1) ... 148s Setting up dictionaries-common (1.30.4) ... 148s Setting up libserf-1-1:s390x (1.3.10-3ubuntu1) ... 148s Setting up python3-bs4 (4.13.3-1) ... 148s Setting up python3-lxml:s390x (5.3.1-1) ... 148s Setting up hunspell-en-us (1:2020.12.07-3) ... 148s Setting up libsvn1:s390x (1.14.5-2) ... 148s Setting up libenchant-2-2:s390x (2.8.2+dfsg1-3) ... 148s Setting up subversion (1.14.5-2) ... 148s Setting up python3-enchant (3.3.0~rc1-1) ... 148s Setting up python3-translate (3.14.7-1) ... 149s Setting up translate-toolkit (3.14.7-1) ... 149s Processing triggers for libc-bin (2.40-4ubuntu1) ... 149s Processing triggers for man-db (2.13.0-1) ... 150s Processing triggers for install-info (7.1.1-1) ... 150s Processing triggers for dictionaries-common (1.30.4) ... 150s autopkgtest: DBG: testbed command exited with code 0 150s autopkgtest: DBG: testbed command ['dpkg-query', '--show', '-f', '${Status}', 'translate-toolkit'], kind short, sout pipe, serr pipe, env [] 150s autopkgtest: DBG: testbed command exited with code 0 150s autopkgtest: DBG: testbed command ['sh', '-ec', "dpkg-query --show -f '${Package}\\t${Version}\\n' > /tmp/autopkgtest.9zB7bO/translate-toolkit-packages.all"], kind short, sout raw, serr pipe, env [] 150s autopkgtest: DBG: testbed command exited with code 0 150s autopkgtest: DBG: sending command to testbed: copyup /tmp/autopkgtest.9zB7bO/translate-toolkit-packages.all /tmp/autopkgtest-work.dij5uc5o/out/translate-toolkit-packages.all 150s autopkgtest: DBG: got reply from testbed: ok 150s autopkgtest: DBG: testbed command ['test', '-e', '/tmp/autopkgtest.9zB7bO/build.lrp/src'], kind short, sout raw, serr raw, env [] 151s autopkgtest: DBG: testbed command exited with code 0 151s autopkgtest: DBG: copydown: tb path /tmp/autopkgtest.9zB7bO/build.lrp/src already exists 151s autopkgtest [13:08:31]: test translate-toolkit: [----------------------- 151s autopkgtest: DBG: testbed command ['su', '-s', '/bin/bash', 'ubuntu', '-c', 'set -e; exec /tmp/autopkgtest.9zB7bO/wrapper.sh --debug --artifacts=/tmp/autopkgtest.9zB7bO/translate-toolkit-artifacts --chdir=/tmp/autopkgtest.9zB7bO/build.lrp/src --env=AUTOPKGTEST_TESTBED_ARCH=s390x --env=AUTOPKGTEST_TEST_ARCH=s390x --env=DEB_BUILD_OPTIONS=parallel=2 --env=DEBIAN_FRONTEND=noninteractive --env=LANG=C.UTF-8 --unset-env=LANGUAGE --unset-env=LC_ADDRESS --unset-env=LC_ALL --unset-env=LC_COLLATE --unset-env=LC_CTYPE --unset-env=LC_IDENTIFICATION --unset-env=LC_MEASUREMENT --unset-env=LC_MESSAGES --unset-env=LC_MONETARY --unset-env=LC_NAME --unset-env=LC_NUMERIC --unset-env=LC_PAPER --unset-env=LC_TELEPHONE --unset-env=LC_TIME --script-pid-file=/tmp/autopkgtest_script_pid --source-profile --stderr=/tmp/autopkgtest.9zB7bO/translate-toolkit-stderr --stdout=/tmp/autopkgtest.9zB7bO/translate-toolkit-stdout --tmp=/tmp/autopkgtest.9zB7bO/autopkgtest_tmp --env=ADT_TEST_TRIGGERS=sphinx/8.1.3-5 --make-executable=/tmp/autopkgtest.9zB7bO/build.lrp/src/debian/tests/translate-toolkit -- /tmp/autopkgtest.9zB7bO/build.lrp/src/debian/tests/translate-toolkit'], kind test, sout raw, serr raw, env [] 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: creating AUTOPKGTEST_ARTIFACTS: /tmp/autopkgtest.9zB7bO/translate-toolkit-artifacts 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: changing to directory: /tmp/autopkgtest.9zB7bO/build.lrp/src 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: AUTOPKGTEST_TESTBED_ARCH=s390x 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: AUTOPKGTEST_TEST_ARCH=s390x 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: DEB_BUILD_OPTIONS=parallel=2 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: DEBIAN_FRONTEND=noninteractive 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: LANG=C.UTF-8 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LANGUAGE 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_ADDRESS 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_ALL 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_COLLATE 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_CTYPE 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_IDENTIFICATION 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_MEASUREMENT 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_MESSAGES 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_MONETARY 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_NAME 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_NUMERIC 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_PAPER 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_TELEPHONE 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_TIME 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: will create pid file: /tmp/autopkgtest_script_pid 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: pretending to be a login shell 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: will write standard error to /tmp/autopkgtest.9zB7bO/translate-toolkit-stderr 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: will write stdout to /tmp/autopkgtest.9zB7bO/translate-toolkit-stdout 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: creating AUTOPKGTEST_TMP: /tmp/autopkgtest.9zB7bO/autopkgtest_tmp 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: ADT_TEST_TRIGGERS=sphinx/8.1.3-5 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: marking as executable: /tmp/autopkgtest.9zB7bO/build.lrp/src/debian/tests/translate-toolkit 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: command to run: /tmp/autopkgtest.9zB7bO/build.lrp/src/debian/tests/translate-toolkit 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: copying /tmp/tmp.qcRa5xiikb/out to stdout and file: /tmp/autopkgtest.9zB7bO/translate-toolkit-stdout 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: copying /tmp/tmp.qcRa5xiikb/err to standard error and file: /tmp/autopkgtest.9zB7bO/translate-toolkit-stdout 151s /tmp/autopkgtest.9zB7bO/wrapper.sh: writing script pid 1980 to /tmp/autopkgtest_script_pid 151s ========= SMOKE TEST: /usr/bin/android2po =========== 151s Usage: android2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 151s 151s Convert Android string files to Gettext PO localization files. See: 151s http://docs.translatehouse.org/projects/translate- 151s toolkit/en/latest/commands/android2po.html for examples and usage 151s instructions. 151s 151s Options: 151s --version show program's version number and exit 151s -h, --help show this help message and exit 151s --manpage output a manpage based on the help 151s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 151s --errorlevel=ERRORLEVEL 151s show errorlevel as: none, message, exception, 151s traceback 151s -i INPUT, --input=INPUT 151s read from INPUT in xml format 151s -x EXCLUDE, --exclude=EXCLUDE 151s exclude names matching EXCLUDE from input paths 151s -o OUTPUT, --output=OUTPUT 151s write to OUTPUT in po, pot formats 151s -t TEMPLATE, --template=TEMPLATE 151s read from TEMPLATE in xml format 151s -S, --timestamp skip conversion if the output file has newer timestamp 151s --duplicates=DUPLICATESTYLE 151s what to do with duplicate strings (identical source 151s text): merge, msgctxt (default: 'msgctxt') 151s ========= SMOKE TEST: /usr/bin/build_tmdb =========== 151s usage: build_tmdb [-h] [-d TMDB_FILE] [-s SOURCE_LANG] -t TARGET_LANG 151s input files [input files ...] 151s 151s positional arguments: 151s input files 151s 151s options: 151s -h, --help show this help message and exit 151s -d, --tmdb TMDB_FILE translation memory database file (default: tm.db) 151s -s, --import-source-lang SOURCE_LANG 151s source language of translation files (default: en) 151s -t, --import-target-lang TARGET_LANG 151s target language of translation files 151s ========= SMOKE TEST: /usr/bin/csv2po =========== 151s Usage: csv2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] [-P|--pot] 151s 151s Convert Comma-Separated Value (.csv) files to Gettext PO localization files. 151s See: http://docs.translatehouse.org/projects/translate- 151s toolkit/en/latest/commands/csv2po.html for examples and usage instructions. 151s 151s Options: 151s --version show program's version number and exit 151s -h, --help show this help message and exit 151s --manpage output a manpage based on the help 151s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 151s --errorlevel=ERRORLEVEL 151s show errorlevel as: none, message, exception, 151s traceback 151s -i INPUT, --input=INPUT 151s read from INPUT in csv format 151s -x EXCLUDE, --exclude=EXCLUDE 151s exclude names matching EXCLUDE from input paths 151s -o OUTPUT, --output=OUTPUT 151s write to OUTPUT in po, pot formats 151s -t TEMPLATE, --template=TEMPLATE 151s read from TEMPLATE in po, pot, pot formats 151s -S, --timestamp skip conversion if the output file has newer timestamp 151s -P, --pot output PO Templates (.pot) rather than PO files (.po) 151s --charset=CHARSET set charset to decode from csv files 151s --columnorder=COLUMNORDER 151s specify the order and position of columns 151s (location,source,target,context) 151s --duplicates=DUPLICATESTYLE 151s what to do with duplicate strings (identical source 151s text): merge, msgctxt (default: 'msgctxt') 151s ========= SMOKE TEST: /usr/bin/csv2tbx =========== 151s Usage: csv2tbx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 151s 151s Convert Comma-Separated Value (.csv) files to a TermBase eXchange (.tbx) 151s glossary file. See: http://docs.translatehouse.org/projects/translate- 151s toolkit/en/latest/commands/csv2tbx.html for examples and usage instructions 151s 151s Options: 151s --version show program's version number and exit 151s -h, --help show this help message and exit 151s --manpage output a manpage based on the help 151s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 151s --errorlevel=ERRORLEVEL 151s show errorlevel as: none, message, exception, 151s traceback 151s -i INPUT, --input=INPUT 151s read from INPUT in csv format 151s -x EXCLUDE, --exclude=EXCLUDE 151s exclude names matching EXCLUDE from input paths 151s -o OUTPUT, --output=OUTPUT 151s write to OUTPUT in tbx format 151s -S, --timestamp skip conversion if the output file has newer timestamp 151s --charset=CHARSET set charset to decode from csv files 151s --columnorder=COLUMNORDER 151s specify the order and position of columns 151s (comment,source,target) 151s ========= SMOKE TEST: /usr/bin/dtd2po =========== 151s Usage: dtd2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] [-P|--pot] 151s 151s Convert a Mozilla .dtd UTF-8 localization format to a Gettext PO localization 151s file. Uses the po and dtd modules, and the dtd2po convertor class which is in 151s this module You can convert back to .dtd using po2dtd.py. 151s 151s Options: 151s --version show program's version number and exit 151s -h, --help show this help message and exit 151s --manpage output a manpage based on the help 151s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 151s --errorlevel=ERRORLEVEL 151s show errorlevel as: none, message, exception, 151s traceback 151s -i INPUT, --input=INPUT 151s read from INPUT in dtd format 151s -x EXCLUDE, --exclude=EXCLUDE 151s exclude names matching EXCLUDE from input paths 151s -o OUTPUT, --output=OUTPUT 151s write to OUTPUT in po, pot formats 151s -t TEMPLATE, --template=TEMPLATE 151s read from TEMPLATE in dtd format 151s -S, --timestamp skip conversion if the output file has newer timestamp 151s -P, --pot output PO Templates (.pot) rather than PO files (.po) 151s --duplicates=DUPLICATESTYLE 151s what to do with duplicate strings (identical source 151s text): merge, msgctxt (default: 'msgctxt') 151s ========= SMOKE TEST: /usr/bin/flatxml2po =========== 151s Usage: flatxml2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 151s 151s Convert flat XML files to Gettext PO localization files. See: 151s http://docs.translatehouse.org/projects/translate- 151s toolkit/en/latest/commands/flatxml2po.html for examples and usage 151s instructions. 151s 151s Options: 151s --version show program's version number and exit 151s -h, --help show this help message and exit 151s --manpage output a manpage based on the help 151s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 151s --errorlevel=ERRORLEVEL 151s show errorlevel as: none, message, exception, 151s traceback 151s -i INPUT, --input=INPUT 151s read from INPUT in xml format 151s -x EXCLUDE, --exclude=EXCLUDE 151s exclude names matching EXCLUDE from input paths 151s -o OUTPUT, --output=OUTPUT 151s write to OUTPUT in po, pot formats 151s -S, --timestamp skip conversion if the output file has newer timestamp 151s -r ROOT, --root=ROOT name of the XML root element (default: "root") 151s -v VALUE, --value=VALUE 151s name of the XML value element (default: "str") 151s -k KEY, --key=KEY name of the XML key attribute (default: "key") 151s -n NS, --namespace=NS 151s XML namespace uri (default: None) 151s ========= SMOKE TEST: /usr/bin/html2po =========== 152s Usage: html2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 152s 152s Convert HTML files to Gettext PO localization files. See: 152s http://docs.translatehouse.org/projects/translate- 152s toolkit/en/latest/commands/html2po.html for examples and usage instructions. 152s 152s Options: 152s --version show program's version number and exit 152s -h, --help show this help message and exit 152s --manpage output a manpage based on the help 152s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 152s --errorlevel=ERRORLEVEL 152s show errorlevel as: none, message, exception, 152s traceback 152s -i INPUT, --input=INPUT 152s read from INPUT in htm, html, xhtml formats 152s -x EXCLUDE, --exclude=EXCLUDE 152s exclude names matching EXCLUDE from input paths 152s -o OUTPUT, --output=OUTPUT 152s write to OUTPUT in po, pot formats 152s -S, --timestamp skip conversion if the output file has newer timestamp 152s -P, --pot output PO Templates (.pot) rather than PO files (.po) 152s --keepcomments preserve html comments as translation notes in the 152s output 152s --duplicates=DUPLICATESTYLE 152s what to do with duplicate strings (identical source 152s text): merge, msgctxt (default: 'msgctxt') 152s --multifile=MULTIFILESTYLE 152s how to split po/pot files (single, toplevel or 152s onefile) 152s ========= SMOKE TEST: /usr/bin/ical2po =========== 152s Usage: ical2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] [-P|--pot] 152s 152s Convert iCalendar files to Gettext PO localization files. See: 152s http://docs.translatehouse.org/projects/translate- 152s toolkit/en/latest/commands/ical2po.html for examples and usage instructions. 152s 152s Options: 152s --version show program's version number and exit 152s -h, --help show this help message and exit 152s --manpage output a manpage based on the help 152s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 152s --errorlevel=ERRORLEVEL 152s show errorlevel as: none, message, exception, 152s traceback 152s -i INPUT, --input=INPUT 152s read from INPUT in ics format 152s -x EXCLUDE, --exclude=EXCLUDE 152s exclude names matching EXCLUDE from input paths 152s -o OUTPUT, --output=OUTPUT 152s write to OUTPUT in po, pot formats 152s -t TEMPLATE, --template=TEMPLATE 152s read from TEMPLATE in ics format 152s -S, --timestamp skip conversion if the output file has newer timestamp 152s -P, --pot output PO Templates (.pot) rather than PO files (.po) 152s --duplicates=DUPLICATESTYLE 152s what to do with duplicate strings (identical source 152s text): merge, msgctxt (default: 'msgctxt') 152s ========= SMOKE TEST: /usr/bin/idml2po =========== 152s Usage: idml2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 152s 152s Convert IDML files to PO localization files. 152s 152s Options: 152s --version show program's version number and exit 152s -h, --help show this help message and exit 152s --manpage output a manpage based on the help 152s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 152s --errorlevel=ERRORLEVEL 152s show errorlevel as: none, message, exception, 152s traceback 152s -i INPUT, --input=INPUT 152s read from INPUT in idml format 152s -x EXCLUDE, --exclude=EXCLUDE 152s exclude names matching EXCLUDE from input paths 152s -o OUTPUT, --output=OUTPUT 152s write to OUTPUT in po, pot formats 152s -S, --timestamp skip conversion if the output file has newer timestamp 152s ========= SMOKE TEST: /usr/bin/ini2po =========== 152s Usage: ini2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] [-P|--pot] 152s 152s Convert .ini files to Gettext PO localization files. See: 152s http://docs.translatehouse.org/projects/translate- 152s toolkit/en/latest/commands/ini2po.html for examples and usage instructions. 152s 152s Options: 152s --version show program's version number and exit 152s -h, --help show this help message and exit 152s --manpage output a manpage based on the help 152s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 152s --errorlevel=ERRORLEVEL 152s show errorlevel as: none, message, exception, 152s traceback 152s -i INPUT, --input=INPUT 152s read from INPUT in ini, isl, iss formats 152s -x EXCLUDE, --exclude=EXCLUDE 152s exclude names matching EXCLUDE from input paths 152s -o OUTPUT, --output=OUTPUT 152s write to OUTPUT in po, pot formats 152s -t TEMPLATE, --template=TEMPLATE 152s read from TEMPLATE in ini, isl, iss formats 152s -S, --timestamp skip conversion if the output file has newer timestamp 152s -P, --pot output PO Templates (.pot) rather than PO files (.po) 152s --duplicates=DUPLICATESTYLE 152s what to do with duplicate strings (identical source 152s text): merge, msgctxt (default: 'msgctxt') 152s ========= SMOKE TEST: /usr/bin/json2po =========== 152s Usage: json2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] [-P|--pot] 152s 152s Convert JSON files to Gettext PO localization files. See: 152s http://docs.translatehouse.org/projects/translate- 152s toolkit/en/latest/commands/json2po.html for examples and usage instructions. 152s 152s Options: 152s --version show program's version number and exit 152s -h, --help show this help message and exit 152s --manpage output a manpage based on the help 152s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 152s --errorlevel=ERRORLEVEL 152s show errorlevel as: none, message, exception, 152s traceback 152s -i INPUT, --input=INPUT 152s read from INPUT in json format 152s -x EXCLUDE, --exclude=EXCLUDE 152s exclude names matching EXCLUDE from input paths 152s -o OUTPUT, --output=OUTPUT 152s write to OUTPUT in po, pot formats 152s -t TEMPLATE, --template=TEMPLATE 152s read from TEMPLATE in json format 152s -S, --timestamp skip conversion if the output file has newer timestamp 152s -P, --pot output PO Templates (.pot) rather than PO files (.po) 152s --filter=FILTER leaves to extract e.g. 'name,desc': (default: extract 152s everything) 152s --duplicates=DUPLICATESTYLE 152s what to do with duplicate strings (identical source 152s text): merge, msgctxt (default: 'msgctxt') 152s ========= SMOKE TEST: /usr/bin/md2po =========== 152s Usage: md2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 152s 152s Convert Markdown files to Gettext PO localization files. See: 152s http://docs.translatehouse.org/projects/translate- 152s toolkit/en/latest/commands/md2po.html for examples and usage instructions. 152s 152s Options: 152s --version show program's version number and exit 152s -h, --help show this help message and exit 152s --manpage output a manpage based on the help 152s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 152s --errorlevel=ERRORLEVEL 152s show errorlevel as: none, message, exception, 152s traceback 152s -i INPUT, --input=INPUT 152s read from INPUT in markdown, md, text, txt formats 152s -x EXCLUDE, --exclude=EXCLUDE 152s exclude names matching EXCLUDE from input paths 152s -o OUTPUT, --output=OUTPUT 152s write to OUTPUT in po, pot formats 152s -S, --timestamp skip conversion if the output file has newer timestamp 152s -P, --pot output PO Templates (.pot) rather than PO files (.po) 152s --duplicates=DUPLICATESTYLE 152s what to do with duplicate strings (identical source 152s text): merge, msgctxt (default: 'msgctxt') 152s --multifile=MULTIFILESTYLE 152s how to split po/pot files (single, toplevel or 152s onefile) 152s ========= SMOKE TEST: /usr/bin/moz2po =========== 152s Usage: moz2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] [-P|--pot] 152s 152s Convert Mozilla .dtd and .properties files to Gettext PO localization files. 152s See: http://docs.translatehouse.org/projects/translate- 152s toolkit/en/latest/commands/moz2po.html for examples and usage instructions. 152s 152s Options: 152s --version show program's version number and exit 152s -h, --help show this help message and exit 152s --manpage output a manpage based on the help 152s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 152s --errorlevel=ERRORLEVEL 152s show errorlevel as: none, message, exception, 152s traceback 152s -i INPUT, --input=INPUT 152s read from INPUT in *, dtd, inc, ini, it, js, lang, 152s manifest, properties, rdf formats 152s -x EXCLUDE, --exclude=EXCLUDE 152s exclude names matching EXCLUDE from input paths 152s -o OUTPUT, --output=OUTPUT 152s write to OUTPUT in *, dtd.po, dtd.pot, inc.po, 152s inc.pot, ini.po, ini.pot, it.po, it.pot, js, lang.po, 152s lang.pot, manifest, properties.po, properties.pot, rdf 152s formats 152s -t TEMPLATE, --template=TEMPLATE 152s read from TEMPLATE in *, dtd, inc, ini, it, js, lang, 152s manifest, properties, rdf formats 152s -S, --timestamp skip conversion if the output file has newer timestamp 152s -P, --pot output PO Templates (.pot) rather than PO files (.po) 152s --duplicates=DUPLICATESTYLE 152s what to do with duplicate strings (identical source 152s text): merge, msgctxt (default: 'msgctxt') 153s ========= SMOKE TEST: /usr/bin/mozlang2po =========== 153s Usage: mozlang2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 153s 153s Convert Mozilla .lang files to Gettext PO localization files. 153s 153s Options: 153s --version show program's version number and exit 153s -h, --help show this help message and exit 153s --manpage output a manpage based on the help 153s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 153s --errorlevel=ERRORLEVEL 153s show errorlevel as: none, message, exception, 153s traceback 153s -i INPUT, --input=INPUT 153s read from INPUT in lang format 153s -x EXCLUDE, --exclude=EXCLUDE 153s exclude names matching EXCLUDE from input paths 153s -o OUTPUT, --output=OUTPUT 153s write to OUTPUT in po, pot formats 153s -S, --timestamp skip conversion if the output file has newer timestamp 153s -P, --pot output PO Templates (.pot) rather than PO files (.po) 153s --encoding=ENCODING The encoding of the input file (default: UTF-8) 153s --duplicates=DUPLICATESTYLE 153s what to do with duplicate strings (identical source 153s text): merge, msgctxt (default: 'msgctxt') 153s ========= SMOKE TEST: /usr/bin/msghack =========== 153s Usage: /usr/bin/msghack [OPTION] file.po [ref.po] 153s This program can be used to alter .po files in ways no sane mind would think about. 153s -o result will be written to FILE 153s --invert invert a po file by switching msgid and msgstr 153s --master join any number of files in a master-formatted catalog 153s --empty empty the contents of the .po file, creating a .pot 153s --append append entries from ref.po that don't exist in file.po 153s 153s Note: It is just a replacement of msghack for backward support. 153s 153s ========= SMOKE TEST: /usr/bin/odf2xliff =========== 153s Usage: odf2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 153s 153s Convert OpenDocument (ODF) files to XLIFF localization files. See: 153s http://docs.translatehouse.org/projects/translate- 153s toolkit/en/latest/commands/odf2xliff.html for examples and usage instructions. 153s 153s Options: 153s --version show program's version number and exit 153s -h, --help show this help message and exit 153s --manpage output a manpage based on the help 153s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 153s --errorlevel=ERRORLEVEL 153s show errorlevel as: none, message, exception, 153s traceback 153s -i INPUT, --input=INPUT 153s read from INPUT in odc, odf, odg, odi, odm, odp, ods, 153s odt, otc, otf, otg, oth, oti, otp, ots, ott, sxw 153s formats 153s -x EXCLUDE, --exclude=EXCLUDE 153s exclude names matching EXCLUDE from input paths 153s -o OUTPUT, --output=OUTPUT 153s write to OUTPUT in xlf, xliff formats 153s -S, --timestamp skip conversion if the output file has newer timestamp 153s ========= SMOKE TEST: /usr/bin/oo2po =========== 153s Usage: oo2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 153s 153s Convert an OpenOffice.org (SDF) localization file to Gettext PO localization 153s files. See: http://docs.translatehouse.org/projects/translate- 153s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 153s 153s Options: 153s --version show program's version number and exit 153s -h, --help show this help message and exit 153s --manpage output a manpage based on the help 153s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 153s --errorlevel=ERRORLEVEL 153s show errorlevel as: none, message, exception, 153s traceback 153s -i INPUT, --input=INPUT 153s read from INPUT in oo, sdf formats 153s -x EXCLUDE, --exclude=EXCLUDE 153s exclude names matching EXCLUDE from input paths 153s -o OUTPUT, --output=OUTPUT 153s write to OUTPUT in po, pot formats 153s -S, --timestamp skip conversion if the output file has newer timestamp 153s -P, --pot output PO Templates (.pot) rather than PO files (.po) 153s -l LANG, --language=LANG 153s set target language to extract from oo file (e.g. af- 153s ZA) 153s --source-language=LANG 153s set source language code (default en-US) 153s --nonrecursiveinput don't treat the input oo as a recursive store 153s --duplicates=DUPLICATESTYLE 153s what to do with duplicate strings (identical source 153s text): merge, msgctxt (default: 'msgctxt') 153s --multifile=MULTIFILESTYLE 153s how to split po/pot files (single, toplevel or 153s onefile) 153s ========= SMOKE TEST: /usr/bin/oo2xliff =========== 153s Usage: oo2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 153s 153s Convert an OpenOffice.org (SDF) localization file to XLIFF localization 153s files. See: http://docs.translatehouse.org/projects/translate- 153s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 153s 153s Options: 153s --version show program's version number and exit 153s -h, --help show this help message and exit 153s --manpage output a manpage based on the help 153s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 153s --errorlevel=ERRORLEVEL 153s show errorlevel as: none, message, exception, 153s traceback 153s -i INPUT, --input=INPUT 153s read from INPUT in oo, sdf formats 153s -x EXCLUDE, --exclude=EXCLUDE 153s exclude names matching EXCLUDE from input paths 153s -o OUTPUT, --output=OUTPUT 153s write to OUTPUT in xlf, xliff formats 153s -S, --timestamp skip conversion if the output file has newer timestamp 153s -l LANG, --language=LANG 153s set target language to extract from oo file (e.g. af- 153s ZA) 153s --source-language=LANG 153s set source language code (default en-US) 153s --nonrecursiveinput don't treat the input oo as a recursive store 153s --duplicates=DUPLICATESTYLE 153s what to do with duplicate strings (identical source 153s text): merge, msgctxt (default: 'msgctxt') 153s --multifile=MULTIFILESTYLE 153s how to split po/pot files (single, toplevel or 153s onefile) 153s ========= SMOKE TEST: /usr/bin/php2po =========== 153s Usage: php2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] [-P|--pot] 153s 153s Convert PHP localization files to Gettext PO localization files. See: 153s http://docs.translatehouse.org/projects/translate- 153s toolkit/en/latest/commands/php2po.html for examples and usage instructions. 153s 153s Options: 153s --version show program's version number and exit 153s -h, --help show this help message and exit 153s --manpage output a manpage based on the help 153s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 153s --errorlevel=ERRORLEVEL 153s show errorlevel as: none, message, exception, 153s traceback 153s -i INPUT, --input=INPUT 153s read from INPUT in html, php formats 153s -x EXCLUDE, --exclude=EXCLUDE 153s exclude names matching EXCLUDE from input paths 153s -o OUTPUT, --output=OUTPUT 153s write to OUTPUT in po, pot formats 153s -t TEMPLATE, --template=TEMPLATE 153s read from TEMPLATE in html, php formats 153s -S, --timestamp skip conversion if the output file has newer timestamp 153s -P, --pot output PO Templates (.pot) rather than PO files (.po) 153s --duplicates=DUPLICATESTYLE 153s what to do with duplicate strings (identical source 153s text): merge, msgctxt (default: 'msgctxt') 153s ========= SMOKE TEST: /usr/bin/phppo2pypo =========== 153s Usage: phppo2pypo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 153s 153s Convert PHP format .po files to Python format .po files. 153s 153s Options: 153s --version show program's version number and exit 153s -h, --help show this help message and exit 153s --manpage output a manpage based on the help 153s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 153s --errorlevel=ERRORLEVEL 153s show errorlevel as: none, message, exception, 153s traceback 153s -i INPUT, --input=INPUT 153s read from INPUT in po, pot formats 153s -x EXCLUDE, --exclude=EXCLUDE 153s exclude names matching EXCLUDE from input paths 153s -o OUTPUT, --output=OUTPUT 153s write to OUTPUT in po, pot formats 153s -S, --timestamp skip conversion if the output file has newer timestamp 153s ========= SMOKE TEST: /usr/bin/po2csv =========== 153s Usage: po2csv [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 153s 153s Convert Gettext PO localization files to Comma-Separated Value (.csv) files. 153s See: http://docs.translatehouse.org/projects/translate- 153s toolkit/en/latest/commands/csv2po.html for examples and usage instructions. 153s 153s Options: 153s --version show program's version number and exit 153s -h, --help show this help message and exit 153s --manpage output a manpage based on the help 153s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 153s --errorlevel=ERRORLEVEL 153s show errorlevel as: none, message, exception, 153s traceback 153s -i INPUT, --input=INPUT 153s read from INPUT in po, pot formats 153s -x EXCLUDE, --exclude=EXCLUDE 153s exclude names matching EXCLUDE from input paths 153s -o OUTPUT, --output=OUTPUT 153s write to OUTPUT in csv format 153s -S, --timestamp skip conversion if the output file has newer timestamp 153s --columnorder=COLUMNORDER 153s specify the order and position of columns 153s (location,source,target,context) 153s ========= SMOKE TEST: /usr/bin/po2dtd =========== 153s Usage: po2dtd [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 153s 153s Converts a Gettext PO file to a UTF-8 encoded Mozilla .dtd file. .. note: 153s Conversion is either done using a template plus PO file or just using the 153s .po file. 153s 153s Options: 153s --version show program's version number and exit 153s -h, --help show this help message and exit 153s --manpage output a manpage based on the help 153s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 153s --errorlevel=ERRORLEVEL 153s show errorlevel as: none, message, exception, 153s traceback 153s -i INPUT, --input=INPUT 153s read from INPUT in po, pot formats 153s -x EXCLUDE, --exclude=EXCLUDE 153s exclude names matching EXCLUDE from input paths 153s -o OUTPUT, --output=OUTPUT 153s write to OUTPUT in dtd format 153s -t TEMPLATE, --template=TEMPLATE 153s read from TEMPLATE in dtd format 153s -S, --timestamp skip conversion if the output file has newer timestamp 153s --threshold=PERCENT only convert files where the translation completion is 153s above PERCENT 153s --fuzzy use translations marked fuzzy 153s --nofuzzy don't use translations marked fuzzy (default) 153s --removeuntranslated remove untranslated strings from output 153s ========= SMOKE TEST: /usr/bin/po2flatxml =========== 153s Usage: po2flatxml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 153s 153s Convert Gettext PO localization files to flat XML files. See: 153s http://docs.translatehouse.org/projects/translate- 153s toolkit/en/latest/commands/flatxml2po.html for examples and usage 153s instructions. 153s 153s Options: 153s --version show program's version number and exit 153s -h, --help show this help message and exit 153s --manpage output a manpage based on the help 153s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 153s --errorlevel=ERRORLEVEL 153s show errorlevel as: none, message, exception, 153s traceback 153s -i INPUT, --input=INPUT 153s read from INPUT in po, pot formats 153s -x EXCLUDE, --exclude=EXCLUDE 153s exclude names matching EXCLUDE from input paths 153s -o OUTPUT, --output=OUTPUT 153s write to OUTPUT in xml format 153s -t TEMPLATE, --template=TEMPLATE 153s read from TEMPLATE in xml format 153s -S, --timestamp skip conversion if the output file has newer timestamp 153s -r ROOT, --root=ROOT name of the XML root element (default: "root") 153s -v VALUE, --value=VALUE 153s name of the XML value element (default: "str") 153s -k KEY, --key=KEY name of the XML key attribute (default: "key") 153s -n NS, --namespace=NS 153s XML namespace uri (default: None) 153s -w INDENT, --indent=INDENT 153s indent width in spaces, 0 for no indent (default: 2) 154s ========= SMOKE TEST: /usr/bin/po2html =========== 154s Usage: po2html [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 154s 154s Translate HTML files using Gettext PO localization files. See: 154s http://docs.translatehouse.org/projects/translate- 154s toolkit/en/latest/commands/html2po.html for examples and usage instructions. 154s 154s Options: 154s --version show program's version number and exit 154s -h, --help show this help message and exit 154s --manpage output a manpage based on the help 154s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 154s --errorlevel=ERRORLEVEL 154s show errorlevel as: none, message, exception, 154s traceback 154s -i INPUT, --input=INPUT 154s read from INPUT in po, pot formats 154s -x EXCLUDE, --exclude=EXCLUDE 154s exclude names matching EXCLUDE from input paths 154s -o OUTPUT, --output=OUTPUT 154s write to OUTPUT in htm, html, xhtml formats 154s -t TEMPLATE, --template=TEMPLATE 154s read from TEMPLATE in htm, html, xhtml formats 154s -S, --timestamp skip conversion if the output file has newer timestamp 154s --threshold=PERCENT only convert files where the translation completion is 154s above PERCENT 154s --fuzzy use translations marked fuzzy 154s --nofuzzy don't use translations marked fuzzy (default) 154s ========= SMOKE TEST: /usr/bin/po2ical =========== 154s Usage: po2ical [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 154s 154s Convert Gettext PO localization files to iCalendar files. See: 154s http://docs.translatehouse.org/projects/translate- 154s toolkit/en/latest/commands/ical2po.html for examples and usage instructions. 154s 154s Options: 154s --version show program's version number and exit 154s -h, --help show this help message and exit 154s --manpage output a manpage based on the help 154s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 154s --errorlevel=ERRORLEVEL 154s show errorlevel as: none, message, exception, 154s traceback 154s -i INPUT, --input=INPUT 154s read from INPUT in po, pot formats 154s -x EXCLUDE, --exclude=EXCLUDE 154s exclude names matching EXCLUDE from input paths 154s -o OUTPUT, --output=OUTPUT 154s write to OUTPUT in ics format 154s -t TEMPLATE, --template=TEMPLATE 154s read from TEMPLATE in ics format 154s -S, --timestamp skip conversion if the output file has newer timestamp 154s --threshold=PERCENT only convert files where the translation completion is 154s above PERCENT 154s --fuzzy use translations marked fuzzy 154s --nofuzzy don't use translations marked fuzzy (default) 154s ========= SMOKE TEST: /usr/bin/po2idml =========== 154s Usage: po2idml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 154s 154s Takes an IDML template file and a PO file containing translations of strings 154s in the IDML template. It creates a new IDML file using the translations of the 154s PO file. 154s 154s Options: 154s --version show program's version number and exit 154s -h, --help show this help message and exit 154s --manpage output a manpage based on the help 154s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 154s --errorlevel=ERRORLEVEL 154s show errorlevel as: none, message, exception, 154s traceback 154s -i INPUT, --input=INPUT 154s read from INPUT in po, pot formats 154s -x EXCLUDE, --exclude=EXCLUDE 154s exclude names matching EXCLUDE from input paths 154s -o OUTPUT, --output=OUTPUT 154s write to OUTPUT in idml format 154s -t TEMPLATE, --template=TEMPLATE 154s read from TEMPLATE in idml format 154s -S, --timestamp skip conversion if the output file has newer timestamp 154s ========= SMOKE TEST: /usr/bin/po2ini =========== 154s Usage: po2ini [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 154s 154s Convert Gettext PO localization files to .ini files. See: 154s http://docs.translatehouse.org/projects/translate- 154s toolkit/en/latest/commands/ini2po.html for examples and usage instructions. 154s 154s Options: 154s --version show program's version number and exit 154s -h, --help show this help message and exit 154s --manpage output a manpage based on the help 154s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 154s --errorlevel=ERRORLEVEL 154s show errorlevel as: none, message, exception, 154s traceback 154s -i INPUT, --input=INPUT 154s read from INPUT in po, pot formats 154s -x EXCLUDE, --exclude=EXCLUDE 154s exclude names matching EXCLUDE from input paths 154s -o OUTPUT, --output=OUTPUT 154s write to OUTPUT in ini, isl formats 154s -t TEMPLATE, --template=TEMPLATE 154s read from TEMPLATE in ini, isl formats 154s -S, --timestamp skip conversion if the output file has newer timestamp 154s --threshold=PERCENT only convert files where the translation completion is 154s above PERCENT 154s --fuzzy use translations marked fuzzy 154s --nofuzzy don't use translations marked fuzzy (default) 154s ========= SMOKE TEST: /usr/bin/po2json =========== 154s Usage: po2json [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 154s 154s Convert Gettext PO localization files to JSON files. See: 154s http://docs.translatehouse.org/projects/translate- 154s toolkit/en/latest/commands/json2po.html for examples and usage instructions. 154s 154s Options: 154s --version show program's version number and exit 154s -h, --help show this help message and exit 154s --manpage output a manpage based on the help 154s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 154s --errorlevel=ERRORLEVEL 154s show errorlevel as: none, message, exception, 154s traceback 154s -i INPUT, --input=INPUT 154s read from INPUT in po, pot formats 154s -x EXCLUDE, --exclude=EXCLUDE 154s exclude names matching EXCLUDE from input paths 154s -o OUTPUT, --output=OUTPUT 154s write to OUTPUT in json format 154s -t TEMPLATE, --template=TEMPLATE 154s read from TEMPLATE in json format 154s -S, --timestamp skip conversion if the output file has newer timestamp 154s --threshold=PERCENT only convert files where the translation completion is 154s above PERCENT 154s --fuzzy use translations marked fuzzy 154s --nofuzzy don't use translations marked fuzzy (default) 154s --removeuntranslated remove untranslated strings from output 154s ========= SMOKE TEST: /usr/bin/po2md =========== 154s Usage: po2md [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 154s 154s Translate Markdown files using Gettext PO localization files. See: 154s http://docs.translatehouse.org/projects/translate- 154s toolkit/en/latest/commands/md2po.html for examples and usage instructions. 154s 154s Options: 154s --version show program's version number and exit 154s -h, --help show this help message and exit 154s --manpage output a manpage based on the help 154s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 154s --errorlevel=ERRORLEVEL 154s show errorlevel as: none, message, exception, 154s traceback 154s -i INPUT, --input=INPUT 154s read from INPUT in po, pot formats 154s -x EXCLUDE, --exclude=EXCLUDE 154s exclude names matching EXCLUDE from input paths 154s -o OUTPUT, --output=OUTPUT 154s write to OUTPUT in markdown, md, text, txt formats 154s -t TEMPLATE, --template=TEMPLATE 154s read from TEMPLATE in markdown, md, text, txt formats 154s -S, --timestamp skip conversion if the output file has newer timestamp 154s -m MAXLENGTH, --maxlinelength=MAXLENGTH 154s reflow (word wrap) the output to the given maximum 154s line length. set to 0 to disable 154s --threshold=PERCENT only convert files where the translation completion is 154s above PERCENT 154s --fuzzy use translations marked fuzzy 154s --nofuzzy don't use translations marked fuzzy (default) 154s ========= SMOKE TEST: /usr/bin/po2moz =========== 155s Usage: po2moz [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 155s 155s Convert Gettext PO localization files to Mozilla .dtd and .properties files. 155s See: http://docs.translatehouse.org/projects/translate- 155s toolkit/en/latest/commands/moz2po.html for examples and usage instructions. 155s 155s Options: 155s --version show program's version number and exit 155s -h, --help show this help message and exit 155s --manpage output a manpage based on the help 155s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 155s --errorlevel=ERRORLEVEL 155s show errorlevel as: none, message, exception, 155s traceback 155s -i INPUT, --input=INPUT 155s read from INPUT in *, dtd.po, dtd.pot, inc.po, 155s inc.pot, ini.po, ini.pot, it.po, it.pot, js, lang.po, 155s lang.pot, manifest, properties.po, properties.pot, rdf 155s formats 155s -x EXCLUDE, --exclude=EXCLUDE 155s exclude names matching EXCLUDE from input paths 155s -o OUTPUT, --output=OUTPUT 155s write to OUTPUT in *, dtd, inc, ini, it, js, lang, 155s manifest, properties, rdf formats 155s -t TEMPLATE, --template=TEMPLATE 155s read from TEMPLATE in *, dtd, inc, ini, it, js, lang, 155s manifest, properties, rdf formats 155s -S, --timestamp skip conversion if the output file has newer timestamp 155s -l LOCALE, --locale=LOCALE 155s set output locale (required as this sets the directory 155s names) 155s --threshold=PERCENT only convert files where the translation completion is 155s above PERCENT 155s --fuzzy use translations marked fuzzy 155s --nofuzzy don't use translations marked fuzzy (default) 155s --removeuntranslated remove untranslated strings from output 155s ========= SMOKE TEST: /usr/bin/po2mozlang =========== 155s Usage: po2mozlang [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 155s 155s Convert Gettext PO localization files to Mozilla .lang files. 155s 155s Options: 155s --version show program's version number and exit 155s -h, --help show this help message and exit 155s --manpage output a manpage based on the help 155s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 155s --errorlevel=ERRORLEVEL 155s show errorlevel as: none, message, exception, 155s traceback 155s -i INPUT, --input=INPUT 155s read from INPUT in po, pot formats 155s -x EXCLUDE, --exclude=EXCLUDE 155s exclude names matching EXCLUDE from input paths 155s -o OUTPUT, --output=OUTPUT 155s write to OUTPUT in lang format 155s -t TEMPLATE, --template=TEMPLATE 155s read from TEMPLATE in lang format 155s -S, --timestamp skip conversion if the output file has newer timestamp 155s --mark-active mark the file as active 155s --threshold=PERCENT only convert files where the translation completion is 155s above PERCENT 155s --fuzzy use translations marked fuzzy 155s --nofuzzy don't use translations marked fuzzy (default) 155s ========= SMOKE TEST: /usr/bin/po2oo =========== 155s Usage: po2oo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 155s 155s Convert Gettext PO localization files to an OpenOffice.org (SDF) localization 155s file. See: http://docs.translatehouse.org/projects/translate- 155s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 155s 155s Options: 155s --version show program's version number and exit 155s -h, --help show this help message and exit 155s --manpage output a manpage based on the help 155s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 155s --errorlevel=ERRORLEVEL 155s show errorlevel as: none, message, exception, 155s traceback 155s -i INPUT, --input=INPUT 155s read from INPUT in po, pot, xlf, xliff formats 155s -x EXCLUDE, --exclude=EXCLUDE 155s exclude names matching EXCLUDE from input paths 155s -o OUTPUT, --output=OUTPUT 155s write to OUTPUT in oo, sdf formats 155s -t TEMPLATE, --template=TEMPLATE 155s read from TEMPLATE in oo, sdf formats 155s -S, --timestamp skip conversion if the output file has newer timestamp 155s -l LANG, --language=LANG 155s set target language code (e.g. af-ZA) [required] 155s --source-language=LANG 155s set source language code (default en-US) 155s -T, --keeptimestamp don't change the timestamps of the strings 155s --nonrecursiveoutput don't treat the output oo as a recursive store 155s --nonrecursivetemplate 155s don't treat the template oo as a recursive store 155s --skipsource don't output the source language, but fallback to it 155s where needed 155s --filteraction=ACTION 155s action on pofilter failure: none (default), warn, 155s exclude-serious, exclude-all 155s --threshold=PERCENT only convert files where the translation completion is 155s above PERCENT 155s --fuzzy use translations marked fuzzy 155s --nofuzzy don't use translations marked fuzzy (default) 155s --multifile=MULTIFILESTYLE 155s how to split po/pot files (single, toplevel or 155s onefile) 155s ========= SMOKE TEST: /usr/bin/po2php =========== 155s Usage: po2php [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 155s 155s Convert Gettext PO localization files to PHP localization files. See: 155s http://docs.translatehouse.org/projects/translate- 155s toolkit/en/latest/commands/php2po.html for examples and usage instructions. 155s 155s Options: 155s --version show program's version number and exit 155s -h, --help show this help message and exit 155s --manpage output a manpage based on the help 155s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 155s --errorlevel=ERRORLEVEL 155s show errorlevel as: none, message, exception, 155s traceback 155s -i INPUT, --input=INPUT 155s read from INPUT in po, pot formats 155s -x EXCLUDE, --exclude=EXCLUDE 155s exclude names matching EXCLUDE from input paths 155s -o OUTPUT, --output=OUTPUT 155s write to OUTPUT in html, php formats 155s -t TEMPLATE, --template=TEMPLATE 155s read from TEMPLATE in html, php formats 155s -S, --timestamp skip conversion if the output file has newer timestamp 155s --threshold=PERCENT only convert files where the translation completion is 155s above PERCENT 155s --fuzzy use translations marked fuzzy 155s --nofuzzy don't use translations marked fuzzy (default) 155s ========= SMOKE TEST: /usr/bin/po2prop =========== 155s Usage: po2prop [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 155s 155s Convert Gettext PO localization files to Java/Mozilla .properties files. 155s See: http://docs.translatehouse.org/projects/translate- 155s toolkit/en/latest/commands/prop2po.html for examples and usage instructions. 155s 155s Options: 155s --version show program's version number and exit 155s -h, --help show this help message and exit 155s --manpage output a manpage based on the help 155s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 155s --errorlevel=ERRORLEVEL 155s show errorlevel as: none, message, exception, 155s traceback 155s -i INPUT, --input=INPUT 155s read from INPUT in po, pot formats 155s -x EXCLUDE, --exclude=EXCLUDE 155s exclude names matching EXCLUDE from input paths 155s -o OUTPUT, --output=OUTPUT 155s write to OUTPUT in lang, properties, strings formats 155s -t TEMPLATE, --template=TEMPLATE 155s read from TEMPLATE in lang, properties, strings 155s formats 155s -S, --timestamp skip conversion if the output file has newer timestamp 155s --personality=TYPE override the input file format: java, java-utf8, java- 155s utf16, xwiki, flex, mozilla, gaia, gwt, skype, 155s strings, strings-utf8, joomla (for .properties files, 155s default: java) 155s --encoding=ENCODING override the encoding set by the personality 155s --threshold=PERCENT only convert files where the translation completion is 155s above PERCENT 155s --fuzzy use translations marked fuzzy 155s --nofuzzy don't use translations marked fuzzy (default) 155s --removeuntranslated remove untranslated strings from output 155s ========= SMOKE TEST: /usr/bin/po2rc =========== 155s Usage: po2rc [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 155s 155s Convert Gettext PO localization files back to Windows Resource (.rc) files. 155s See: http://docs.translatehouse.org/projects/translate- 155s toolkit/en/latest/commands/rc2po.html for examples and usage instructions. 155s 155s Options: 155s --version show program's version number and exit 155s -h, --help show this help message and exit 155s --manpage output a manpage based on the help 155s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 155s --errorlevel=ERRORLEVEL 155s show errorlevel as: none, message, exception, 155s traceback 155s -i INPUT, --input=INPUT 155s read from INPUT in po, pot formats 155s -x EXCLUDE, --exclude=EXCLUDE 155s exclude names matching EXCLUDE from input paths 155s -o OUTPUT, --output=OUTPUT 155s write to OUTPUT in rc format 155s -t TEMPLATE, --template=TEMPLATE 155s read from TEMPLATE in rc format 155s -S, --timestamp skip conversion if the output file has newer timestamp 155s --charset=CHARSET charset to use to decode the template RC files 155s (default: utf-8) 155s --charset-output=CHARSET 155s charset to use to encode the RC file (default: auto) 155s -l LANG, --lang=LANG LANG entry 155s --sublang=SUBLANG SUBLANG entry (default: SUBLANG_DEFAULT) 155s --threshold=PERCENT only convert files where the translation completion is 155s above PERCENT 155s --fuzzy use translations marked fuzzy 155s --nofuzzy don't use translations marked fuzzy (default) 155s ========= SMOKE TEST: /usr/bin/po2resx =========== 155s Usage: po2resx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 155s 155s Convert Gettext PO localisation files to .Net Resource (.resx) files. See: 155s http://docs.translatehouse.org/projects/translate- 155s toolkit/en/latest/commands/resx2po.html for examples and usage instructions. 155s 155s Options: 155s --version show program's version number and exit 155s -h, --help show this help message and exit 155s --manpage output a manpage based on the help 155s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 155s --errorlevel=ERRORLEVEL 155s show errorlevel as: none, message, exception, 155s traceback 155s -i INPUT, --input=INPUT 155s read from INPUT in po, pot formats 155s -x EXCLUDE, --exclude=EXCLUDE 155s exclude names matching EXCLUDE from input paths 155s -o OUTPUT, --output=OUTPUT 155s write to OUTPUT in resx format 155s -t TEMPLATE, --template=TEMPLATE 155s read from TEMPLATE in resx format 155s -S, --timestamp skip conversion if the output file has newer timestamp 155s --fuzzy use translations marked fuzzy 155s --nofuzzy don't use translations marked fuzzy (default) 155s ========= SMOKE TEST: /usr/bin/po2sub =========== 155s Usage: po2sub [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 155s 155s Convert Gettext PO localization files to subtitle files. See: 155s http://docs.translatehouse.org/projects/translate- 155s toolkit/en/latest/commands/sub2po.html for examples and usage instructions. 155s 155s Options: 155s --version show program's version number and exit 155s -h, --help show this help message and exit 155s --manpage output a manpage based on the help 155s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 155s --errorlevel=ERRORLEVEL 155s show errorlevel as: none, message, exception, 155s traceback 155s -i INPUT, --input=INPUT 155s read from INPUT in po, pot formats 155s -x EXCLUDE, --exclude=EXCLUDE 155s exclude names matching EXCLUDE from input paths 155s -o OUTPUT, --output=OUTPUT 155s write to OUTPUT in ass, srt, ssa, sub formats 155s -t TEMPLATE, --template=TEMPLATE 155s read from TEMPLATE in ass, srt, ssa, sub formats 155s -S, --timestamp skip conversion if the output file has newer timestamp 155s --threshold=PERCENT only convert files where the translation completion is 155s above PERCENT 155s --fuzzy use translations marked fuzzy 155s --nofuzzy don't use translations marked fuzzy (default) 156s ========= SMOKE TEST: /usr/bin/po2symb =========== 156s Usage: po2symb [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 156s 156s Convert Gettext PO localization files to Symbian translation files. See: 156s http://docs.translatehouse.org/projects/translate- 156s toolkit/en/latest/commands/symb2po.html for examples and usage instructions. 156s 156s Options: 156s --version show program's version number and exit 156s -h, --help show this help message and exit 156s --manpage output a manpage based on the help 156s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 156s --errorlevel=ERRORLEVEL 156s show errorlevel as: none, message, exception, 156s traceback 156s -i INPUT, --input=INPUT 156s read from INPUT in po, pot formats 156s -x EXCLUDE, --exclude=EXCLUDE 156s exclude names matching EXCLUDE from input paths 156s -o OUTPUT, --output=OUTPUT 156s write to OUTPUT in r0 format 156s -t TEMPLATE, --template=TEMPLATE 156s read from TEMPLATE in 156s -S, --timestamp skip conversion if the output file has newer timestamp 156s --duplicates=DUPLICATESTYLE 156s what to do with duplicate strings (identical source 156s text): merge, msgctxt (default: 'msgctxt') 156s ========= SMOKE TEST: /usr/bin/po2tiki =========== 156s Usage: po2tiki [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 156s 156s Convert Gettext PO files to TikiWiki's language.php files. See: 156s http://docs.translatehouse.org/projects/translate- 156s toolkit/en/latest/commands/tiki2po.html for examples and usage instructions. 156s 156s Options: 156s --version show program's version number and exit 156s -h, --help show this help message and exit 156s --manpage output a manpage based on the help 156s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 156s --errorlevel=ERRORLEVEL 156s show errorlevel as: none, message, exception, 156s traceback 156s -i INPUT, --input=INPUT 156s read from INPUT in po, pot formats 156s -x EXCLUDE, --exclude=EXCLUDE 156s exclude names matching EXCLUDE from input paths 156s -o OUTPUT, --output=OUTPUT 156s write to OUTPUT in tiki format 156s -S, --timestamp skip conversion if the output file has newer timestamp 156s ========= SMOKE TEST: /usr/bin/po2tmx =========== 156s Usage: po2tmx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 156s 156s Convert Gettext PO localization files to a TMX (Translation Memory eXchange) 156s file. See: http://docs.translatehouse.org/projects/translate- 156s toolkit/en/latest/commands/po2tmx.html for examples and usage instructions. 156s 156s Options: 156s --version show program's version number and exit 156s -h, --help show this help message and exit 156s --manpage output a manpage based on the help 156s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 156s --errorlevel=ERRORLEVEL 156s show errorlevel as: none, message, exception, 156s traceback 156s -i INPUT, --input=INPUT 156s read from INPUT in po, pot formats 156s -x EXCLUDE, --exclude=EXCLUDE 156s exclude names matching EXCLUDE from input paths 156s -o OUTPUT, --output=OUTPUT 156s write to OUTPUT in tmx format 156s -S, --timestamp skip conversion if the output file has newer timestamp 156s -l LANG, --language=LANG 156s set target language code (e.g. af-ZA) [required] 156s --source-language=LANG 156s set source language code (default: en) 156s --comments=COMMENT set default comment import: none, source, type or 156s others (default: none) 156s ========= SMOKE TEST: /usr/bin/po2ts =========== 156s Usage: po2ts [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 156s 156s Convert Gettext PO localization files to Qt Linguist (.ts) files. See: 156s http://docs.translatehouse.org/projects/translate- 156s toolkit/en/latest/commands/ts2po.html for examples and usage instructions. 156s 156s Options: 156s --version show program's version number and exit 156s -h, --help show this help message and exit 156s --manpage output a manpage based on the help 156s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 156s --errorlevel=ERRORLEVEL 156s show errorlevel as: none, message, exception, 156s traceback 156s -i INPUT, --input=INPUT 156s read from INPUT in po, pot formats 156s -x EXCLUDE, --exclude=EXCLUDE 156s exclude names matching EXCLUDE from input paths 156s -o OUTPUT, --output=OUTPUT 156s write to OUTPUT in ts format 156s -t TEMPLATE, --template=TEMPLATE 156s read from TEMPLATE in ts format 156s -S, --timestamp skip conversion if the output file has newer timestamp 156s -c CONTEXT, --context=CONTEXT 156s use supplied context instead of the one in the .po 156s file comment 156s ========= SMOKE TEST: /usr/bin/po2txt =========== 156s Usage: po2txt [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 156s 156s Convert Gettext PO localization files to plain text (.txt) files. See: 156s http://docs.translatehouse.org/projects/translate- 156s toolkit/en/latest/commands/txt2po.html for examples and usage instructions. 156s 156s Options: 156s --version show program's version number and exit 156s -h, --help show this help message and exit 156s --manpage output a manpage based on the help 156s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 156s --errorlevel=ERRORLEVEL 156s show errorlevel as: none, message, exception, 156s traceback 156s -i INPUT, --input=INPUT 156s read from INPUT in po, pot, xlf, xliff formats 156s -x EXCLUDE, --exclude=EXCLUDE 156s exclude names matching EXCLUDE from input paths 156s -o OUTPUT, --output=OUTPUT 156s write to OUTPUT in txt format 156s -t TEMPLATE, --template=TEMPLATE 156s read from TEMPLATE in txt format 156s -S, --timestamp skip conversion if the output file has newer timestamp 156s --encoding=ENCODING The encoding of the template file (default: UTF-8) 156s -w WRAP, --wrap=WRAP set number of columns to wrap text at 156s --threshold=PERCENT only convert files where the translation completion is 156s above PERCENT 156s --fuzzy use translations marked fuzzy 156s --nofuzzy don't use translations marked fuzzy (default) 156s ========= SMOKE TEST: /usr/bin/po2web2py =========== 156s Usage: po2web2py [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 156s 156s Convert GNU/gettext PO files to web2py translation dictionaries (.py). See: 156s http://docs.translatehouse.org/projects/translate- 156s toolkit/en/latest/commands/web2py2po.html for examples and usage instructions. 156s 156s Options: 156s --version show program's version number and exit 156s -h, --help show this help message and exit 156s --manpage output a manpage based on the help 156s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 156s --errorlevel=ERRORLEVEL 156s show errorlevel as: none, message, exception, 156s traceback 156s -i INPUT, --input=INPUT 156s read from INPUT in po, pot formats 156s -x EXCLUDE, --exclude=EXCLUDE 156s exclude names matching EXCLUDE from input paths 156s -o OUTPUT, --output=OUTPUT 156s write to OUTPUT in py format 156s -S, --timestamp skip conversion if the output file has newer timestamp 156s --threshold=PERCENT only convert files where the translation completion is 156s above PERCENT 156s --fuzzy use translations marked fuzzy 156s --nofuzzy don't use translations marked fuzzy (default) 156s ========= SMOKE TEST: /usr/bin/po2wordfast =========== 156s Usage: po2wordfast [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 156s 156s Convert Gettext PO localization files to a Wordfast translation memory file. 156s See: http://docs.translatehouse.org/projects/translate- 156s toolkit/en/latest/commands/po2wordfast.html for examples and usage 156s instructions. 156s 156s Options: 156s --version show program's version number and exit 156s -h, --help show this help message and exit 156s --manpage output a manpage based on the help 156s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 156s --errorlevel=ERRORLEVEL 156s show errorlevel as: none, message, exception, 156s traceback 156s -i INPUT, --input=INPUT 156s read from INPUT in po, pot formats 156s -x EXCLUDE, --exclude=EXCLUDE 156s exclude names matching EXCLUDE from input paths 156s -o OUTPUT, --output=OUTPUT 156s write to OUTPUT in txt format 156s -S, --timestamp skip conversion if the output file has newer timestamp 156s -l LANG, --language=LANG 156s set target language code (e.g. af-ZA) [required] 156s --source-language=LANG 156s set source language code (default: en) 156s ========= SMOKE TEST: /usr/bin/po2xliff =========== 156s Usage: po2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 156s 156s Convert Gettext PO localization files to XLIFF localization files. See: 156s http://docs.translatehouse.org/projects/translate- 156s toolkit/en/latest/commands/xliff2po.html for examples and usage instructions. 156s 156s Options: 156s --version show program's version number and exit 156s -h, --help show this help message and exit 156s --manpage output a manpage based on the help 156s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 156s --errorlevel=ERRORLEVEL 156s show errorlevel as: none, message, exception, 156s traceback 156s -i INPUT, --input=INPUT 156s read from INPUT in po, pot formats 156s -x EXCLUDE, --exclude=EXCLUDE 156s exclude names matching EXCLUDE from input paths 156s -o OUTPUT, --output=OUTPUT 156s write to OUTPUT in xlf, xliff formats 156s -t TEMPLATE, --template=TEMPLATE 156s read from TEMPLATE in xlf, xliff formats 156s -S, --timestamp skip conversion if the output file has newer timestamp 156s ========= SMOKE TEST: /usr/bin/po2yaml =========== 156s Usage: po2yaml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 156s 156s Convert Gettext PO localization files to YAML files. See: 156s http://docs.translatehouse.org/projects/translate- 156s toolkit/en/latest/commands/yaml2po.html for examples and usage instructions. 156s 156s Options: 156s --version show program's version number and exit 156s -h, --help show this help message and exit 156s --manpage output a manpage based on the help 156s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 156s --errorlevel=ERRORLEVEL 156s show errorlevel as: none, message, exception, 156s traceback 156s -i INPUT, --input=INPUT 156s read from INPUT in po, pot formats 156s -x EXCLUDE, --exclude=EXCLUDE 156s exclude names matching EXCLUDE from input paths 156s -o OUTPUT, --output=OUTPUT 156s write to OUTPUT in yaml, yml formats 156s -t TEMPLATE, --template=TEMPLATE 156s read from TEMPLATE in yaml, yml formats 156s -S, --timestamp skip conversion if the output file has newer timestamp 156s --threshold=PERCENT only convert files where the translation completion is 156s above PERCENT 156s --fuzzy use translations marked fuzzy 156s --nofuzzy don't use translations marked fuzzy (default) 156s ========= SMOKE TEST: /usr/bin/poclean =========== 156s Usage: poclean [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 156s 156s Produces a clean file from an unclean file (Trados/Wordfast) by stripping out 156s the tw4win indicators. This does not convert an RTF file to PO/XLIFF, but 156s produces the target file with only the target text in from a text version of 156s the RTF. 156s 156s Options: 156s --version show program's version number and exit 156s -h, --help show this help message and exit 156s --manpage output a manpage based on the help 156s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 156s --errorlevel=ERRORLEVEL 156s show errorlevel as: none, message, exception, 156s traceback 156s -i INPUT, --input=INPUT 156s read from INPUT in po, pot, xlf, xliff formats 156s -x EXCLUDE, --exclude=EXCLUDE 156s exclude names matching EXCLUDE from input paths 156s -o OUTPUT, --output=OUTPUT 156s write to OUTPUT in po, pot, xlf, xliff formats 156s -S, --timestamp skip conversion if the output file has newer timestamp 157s ========= SMOKE TEST: /usr/bin/pocompendium =========== 157s Usage: pocompendium [options] output.po <-d directory(s)|file(s)> 157s The first parameter is the output file, standard output if the output file is '-'. 157s Any number of directories may be specified for input files. 157s Options: 157s --invert|v Creates an inverse compendium with msgid and msgstr swapped 157s --errors|e Only ouput msg bundles that have errors 157s --correct|c Only ouput msg bundles that are correctly translated 157s --ignore-case|i Drops all strings to lowercase 157s --strip-accel-tilde|-st Strip all tilde (~) accelerator characters 157s --strip-accel-amp|-sa Strip all ampersand (&) accelerator characters 157s --strip-accel-under|-su Strip all underscore (_) accelerator characters 157s ========= SMOKE TEST: /usr/bin/pocompile =========== 157s Usage: pocompile [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 157s 157s Compile XLIFF and Gettext PO localization files into Gettext MO (Machine 157s Object) files. See: http://docs.translatehouse.org/projects/translate- 157s toolkit/en/latest/commands/pocompile.html for examples and usage instructions. 157s 157s Options: 157s --version show program's version number and exit 157s -h, --help show this help message and exit 157s --manpage output a manpage based on the help 157s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 157s --errorlevel=ERRORLEVEL 157s show errorlevel as: none, message, exception, 157s traceback 157s -i INPUT, --input=INPUT 157s read from INPUT in po, pot, xlf, xliff formats 157s -x EXCLUDE, --exclude=EXCLUDE 157s exclude names matching EXCLUDE from input paths 157s -o OUTPUT, --output=OUTPUT 157s write to OUTPUT in mo format 157s -S, --timestamp skip conversion if the output file has newer timestamp 157s --fuzzy use translations marked fuzzy 157s --nofuzzy don't use translations marked fuzzy (default) 157s ========= SMOKE TEST: /usr/bin/poconflicts =========== 157s Usage: poconflicts [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-I|--ignore-case] [-v|--invert] [--accelerator ACCELERATORS] 157s input directory is searched for PO files, PO files with name of conflicting string are output in output directory 157s 157s Conflict finder for Gettext PO localization files. See: 157s http://docs.translatehouse.org/projects/translate- 157s toolkit/en/latest/commands/poconflicts.html for examples and usage 157s instructions. 157s 157s Options: 157s --version show program's version number and exit 157s -h, --help show this help message and exit 157s --manpage output a manpage based on the help 157s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 157s --errorlevel=ERRORLEVEL 157s show errorlevel as: none, message, exception, 157s traceback 157s -i INPUT, --input=INPUT 157s read from INPUT in po format 157s -x EXCLUDE, --exclude=EXCLUDE 157s exclude names matching EXCLUDE from input paths 157s -o OUTPUT, --output=OUTPUT 157s write to OUTPUT in po format 157s -I, --ignore-case ignore case distinctions 157s -v, --invert invert the conflicts thus extracting conflicting 157s destination words 157s --accelerator=ACCELERATORS 157s ignores the given accelerator characters when matching 157s ========= SMOKE TEST: /usr/bin/pocount =========== 157s usage: pocount [-h] [--incomplete] [--full | --csv | --short | 157s --short-strings | --short-words] [--no-color] 157s files [files ...] 157s 157s positional arguments: 157s files 157s 157s options: 157s -h, --help show this help message and exit 157s --incomplete skip 100% translated files. 157s 157s Output format: 157s --full (default) statistics in full, verbose format 157s --csv statistics in CSV format 157s --short same as --short-strings 157s --short-strings statistics of strings in short format - one line per file 157s --short-words statistics of words in short format - one line per file 157s --no-color show output without color 157s ========= SMOKE TEST: /usr/bin/podebug =========== 157s Usage: podebug [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 157s 157s Insert debug messages into XLIFF and Gettext PO localization files. See: 157s http://docs.translatehouse.org/projects/translate- 157s toolkit/en/latest/commands/podebug.html for examples and usage instructions. 157s 157s Options: 157s --version show program's version number and exit 157s -h, --help show this help message and exit 157s --manpage output a manpage based on the help 157s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 157s --errorlevel=ERRORLEVEL 157s show errorlevel as: none, message, exception, 157s traceback 157s -i INPUT, --input=INPUT 157s read from INPUT in po, pot, pot, tmx, xlf, xliff 157s formats 157s -x EXCLUDE, --exclude=EXCLUDE 157s exclude names matching EXCLUDE from input paths 157s -o OUTPUT, --output=OUTPUT 157s write to OUTPUT in po, pot, tmx, xlf, xliff formats 157s -S, --timestamp skip conversion if the output file has newer timestamp 157s -f FORMAT, --format=FORMAT 157s specify format string 157s --rewrite=STYLE the translation rewrite style: blank, bracket, chef, 157s classified, en, flipped, unicode, xxx 157s --ignore=APPLICATION apply tagging ignore rules for the given application: 157s gtk, kde, libreoffice, mozilla, openoffice 157s --preserveplaceholders 157s attempt to exclude characters that are part of 157s placeholders when performing character-level rewrites 157s so that consuming applications can still use the 157s placeholders to generate final output 157s ========= SMOKE TEST: /usr/bin/pofilter =========== 157s Usage: pofilter [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT 157s 157s Perform quality checks on Gettext PO, XLIFF and TMX localization files. 157s Snippet files are created whenever a test fails. These can be examined, 157s corrected and merged back into the originals using pomerge. See: 157s http://docs.translatehouse.org/projects/translate- 157s toolkit/en/latest/commands/pofilter.html for examples and usage instructions 157s and http://docs.translatehouse.org/projects/translate- 157s toolkit/en/latest/commands/pofilter_tests.html for full descriptions of all 157s tests. 157s 157s Options: 157s --version show program's version number and exit 157s -h, --help show this help message and exit 157s --manpage output a manpage based on the help 157s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 157s --errorlevel=ERRORLEVEL 157s show errorlevel as: none, message, exception, 157s traceback 157s -i INPUT, --input=INPUT 157s read from INPUT in po, pot, tmx, xlf, xliff formats 157s -x EXCLUDE, --exclude=EXCLUDE 157s exclude names matching EXCLUDE from input paths 157s -o OUTPUT, --output=OUTPUT 157s write to OUTPUT in po, pot, tmx, xlf, xliff formats 157s -l, --listfilters list filters available 157s --review include units marked for review (default) 157s --noreview exclude units marked for review 157s --fuzzy include units marked fuzzy (default) 157s --nofuzzy exclude units marked fuzzy 157s --nonotes don't add notes about the errors 157s --autocorrect output automatic corrections where possible rather 157s than describing issues 157s --language=LANG set target language code (e.g. af-ZA) [required for 157s spell check and recommended in general] 157s --openoffice use the standard checks for OpenOffice translations 157s --libreoffice use the standard checks for LibreOffice translations 157s --mozilla use the standard checks for Mozilla translations 157s --drupal use the standard checks for Drupal translations 157s --gnome use the standard checks for Gnome translations 157s --kde use the standard checks for KDE translations 157s --wx use the standard checks for wxWidgets translations 157s --excludefilter=FILTER 157s don't use FILTER when filtering 157s -t FILTER, --test=FILTER 157s only use test FILTERs specified with this option when 157s filtering 157s --notranslatefile=FILE 157s read list of untranslatable words from FILE (must not 157s be translated) 157s --musttranslatefile=FILE 157s read list of translatable words from FILE (must be 157s translated) 157s --validcharsfile=FILE 157s read list of all valid characters from FILE (must be 157s in UTF-8) 157s ========= SMOKE TEST: /usr/bin/pogrep =========== 157s Usage: pogrep searchstring [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [--search SEARCHPARTS] [-I|--ignore-case] [-e|--regexp] [-v|--invert-match] [--accelerator ACCELERATOR] [-k|--keep-translations] 157s 157s Grep XLIFF, Gettext PO and TMX localization files. Matches are output to 157s snippet files of the same type which can then be reviewed and later merged 157s using :doc:`pomerge `. See: 157s http://docs.translatehouse.org/projects/translate- 157s toolkit/en/latest/commands/pogrep.html for examples and usage instructions. 157s 157s Options: 157s --version show program's version number and exit 157s -h, --help show this help message and exit 157s --manpage output a manpage based on the help 157s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 157s --errorlevel=ERRORLEVEL 157s show errorlevel as: none, message, exception, 157s traceback 157s -i INPUT, --input=INPUT 157s read from INPUT in gmo, mo, po, pot, tmx, xlf, xlff, 157s xliff formats 157s -x EXCLUDE, --exclude=EXCLUDE 157s exclude names matching EXCLUDE from input paths 157s -o OUTPUT, --output=OUTPUT 157s write to OUTPUT in gmo, mo, po, pot, tmx, xlf, xlff, 157s xliff formats 157s --search=SEARCHPARTS searches the given parts (source, target, notes and 157s locations) 157s -I, --ignore-case ignore case distinctions 157s -e, --regexp use regular expression matching 157s -v, --invert-match select non-matching lines 157s --accelerator=ACCELERATOR 157s ignores the given accelerator when matching 157s -k, --keep-translations 157s always extract units with translations 157s ========= SMOKE TEST: /usr/bin/pomerge =========== 157s Usage: pomerge [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 157s 157s Merges XLIFF and Gettext PO localization files. Snippet file produced by 157s e.g. :doc:`pogrep ` and updated by a translator can be 157s merged back into the original files. See: 157s http://docs.translatehouse.org/projects/translate- 157s toolkit/en/latest/commands/pomerge.html for examples and usage instructions. 157s 157s Options: 157s --version show program's version number and exit 157s -h, --help show this help message and exit 157s --manpage output a manpage based on the help 157s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 157s --errorlevel=ERRORLEVEL 157s show errorlevel as: none, message, exception, 157s traceback 157s -i INPUT, --input=INPUT 157s read from INPUT in po, pot, pot, xlf, xliff formats 157s -x EXCLUDE, --exclude=EXCLUDE 157s exclude names matching EXCLUDE from input paths 157s -o OUTPUT, --output=OUTPUT 157s write to OUTPUT in po, pot, pot, xlf, xliff formats 157s -t TEMPLATE, --template=TEMPLATE 157s read from TEMPLATE in po, pot, pot, xlf, xliff formats 157s -S, --timestamp skip conversion if the output file has newer timestamp 157s --mergeblanks=MERGEBLANKS 157s whether to overwrite existing translations with blank 157s translations (yes/no). Default is yes. 157s --mergefuzzy=MERGEFUZZY 157s whether to consider fuzzy translations from input 157s (yes/no). Default is yes. 157s --mergecomments=MERGECOMMENTS 157s whether to merge comments as well as translations 157s (yes/no). Default is yes. 157s ========= SMOKE TEST: /usr/bin/pomigrate2 =========== 157s Usage pomigrate2 [options] 157s 157s Options: 157s -F|--use-fuzzy-matching - use fuzzy algorithms when merging to attempt to match strings 157s -C|--use-compendium - create and use a compendium built from the migrating files 157s -C|--use-compendium=some-compendium.po 157s - use an external compendium during the migration 157s --no-wrap - do not wrap long lines 157s --locale=lang - set locale for newly born files 157s -q|--quiet - suppress most output 157s -p|--pot2po - use pot2po instead of msgmerge to migrate 157s ========= SMOKE TEST: /usr/bin/popuretext =========== 157s Usage: popuretext ( -P pot-dir | po-dir ) file.txt [accelerator] 157s ========= SMOKE TEST: /usr/bin/poreencode =========== 157s Usage: poreencode 157s eg: poreencode UTF-8 af/ 157s ========= SMOKE TEST: /usr/bin/porestructure =========== 157s Usage: porestructure [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT 157s input directory is searched for PO files with (poconflicts) comments, all entries are written to files in a directory structure for pomerge 157s 157s Restructure Gettxt PO files produced by :doc:`poconflicts 157s ` into the original directory tree for merging using 157s :doc:`pomerge `. See: 157s http://docs.translatehouse.org/projects/translate- 157s toolkit/en/latest/commands/pomerge.html for examples and usage instructions. 157s 157s Options: 157s --version show program's version number and exit 157s -h, --help show this help message and exit 157s --manpage output a manpage based on the help 157s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 157s --errorlevel=ERRORLEVEL 157s show errorlevel as: none, message, exception, 157s traceback 157s -i INPUT, --input=INPUT 157s read from INPUT in po format 157s -x EXCLUDE, --exclude=EXCLUDE 157s exclude names matching EXCLUDE from input paths 157s -o OUTPUT, --output=OUTPUT 157s write to OUTPUT in po format 157s ========= SMOKE TEST: /usr/bin/posegment =========== 157s Usage: posegment [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 157s 157s Segment Gettext PO, XLIFF and TMX localization files at the sentence level. 157s See: http://docs.translatehouse.org/projects/translate- 157s toolkit/en/latest/commands/posegment.html for examples and usage instructions. 157s 157s Options: 157s --version show program's version number and exit 157s -h, --help show this help message and exit 157s --manpage output a manpage based on the help 157s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 157s --errorlevel=ERRORLEVEL 157s show errorlevel as: none, message, exception, 157s traceback 157s -i INPUT, --input=INPUT 157s read from INPUT in po, pot, tmx, xlf, xliff formats 157s -x EXCLUDE, --exclude=EXCLUDE 157s exclude names matching EXCLUDE from input paths 157s -o OUTPUT, --output=OUTPUT 157s write to OUTPUT in po, pot, tmx, xlf, xliff formats 157s -S, --timestamp skip conversion if the output file has newer timestamp 157s -P, --pot output PO Templates (.pot) rather than PO files (.po) 157s -l LANG, --language=LANG 157s the target language code 157s --source-language=LANG 157s the source language code (default 'en') 157s --keepspaces Disable automatic stripping of whitespace 157s --only-aligned Removes units where sentence number does not 157s correspond 157s ========= SMOKE TEST: /usr/bin/poswap =========== 157s Usage: poswap [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 157s 157s Builds a new translation file with the target of the input language as source 157s language. .. note:: Ensure that the two po files correspond 100% to the same 157s pot file before using this. To translate Kurdish (ku) through French:: 157s poswap -i fr/ -t ku -o fr-ku To convert the fr-ku files back to en-ku:: 157s poswap --reverse -i fr/ -t fr-ku -o en-ku See: 157s http://docs.translatehouse.org/projects/translate- 157s toolkit/en/latest/commands/poswap.html for examples and usage instructions. 157s 157s Options: 157s --version show program's version number and exit 157s -h, --help show this help message and exit 157s --manpage output a manpage based on the help 157s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 157s --errorlevel=ERRORLEVEL 157s show errorlevel as: none, message, exception, 157s traceback 157s -i INPUT, --input=INPUT 157s read from INPUT in po, pot formats 157s -x EXCLUDE, --exclude=EXCLUDE 157s exclude names matching EXCLUDE from input paths 157s -o OUTPUT, --output=OUTPUT 157s write to OUTPUT in po, pot formats 157s -t TEMPLATE, --template=TEMPLATE 157s read from TEMPLATE in po, pot, pot formats 157s -S, --timestamp skip conversion if the output file has newer timestamp 157s --reverse reverse the process of intermediate language 157s conversion 157s ========= SMOKE TEST: /usr/bin/pot2po =========== 157s Usage: pot2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] [-P|--pot] 157s 157s Convert template files (like .pot or template .xlf files) to translation 157s files, preserving existing translations. See: 157s http://docs.translatehouse.org/projects/translate- 157s toolkit/en/latest/commands/pot2po.html for examples and usage instructions. 157s 157s Options: 157s --version show program's version number and exit 157s -h, --help show this help message and exit 157s --manpage output a manpage based on the help 157s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 157s --errorlevel=ERRORLEVEL 157s show errorlevel as: none, message, exception, 157s traceback 157s -i INPUT, --input=INPUT 157s read from INPUT in catkeys, lang, pot, ts, xlf, xliff 157s formats 157s -x EXCLUDE, --exclude=EXCLUDE 157s exclude names matching EXCLUDE from input paths 157s -o OUTPUT, --output=OUTPUT 157s write to OUTPUT in catkeys, lang, po, pot, ts, xlf, 157s xliff formats 157s -t TEMPLATE, --template=TEMPLATE 157s read from TEMPLATE in catkeys, lang, po, pot, ts, xlf, 157s xliff formats 157s -S, --timestamp skip conversion if the output file has newer timestamp 157s -P, --pot output PO Templates (.pot) rather than PO files (.po) 157s --tm=TM The file to use as translation memory when fuzzy 157s matching 157s -s MIN_SIMILARITY, --similarity=MIN_SIMILARITY 157s The minimum similarity for inclusion (default: 75%) 157s --nofuzzymatching Disable fuzzy matching 157s ========= SMOKE TEST: /usr/bin/poterminology =========== 158s Usage: poterminology [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-u|--update UPDATEFILE] [-S|--stopword-list STOPFILE] [-F|--fold-titlecase] [-C|--preserve-case] [-I|--ignore-case] [--accelerator ACCELERATORS] [-t|--term-words LENGTH] [--nonstop-needed MIN] [--inputs-needed MIN] [--fullmsg-needed MIN] [--substr-needed MIN] [--locs-needed MIN] [--sort ORDER] [--source-language LANG] [-v|--invert] 158s input directory is searched for PO files, terminology PO file is output file 158s 158s Create a terminology file by reading a set of .po or .pot files to produce a 158s pootle-terminology.pot. See: 158s http://docs.translatehouse.org/projects/translate- 158s toolkit/en/latest/commands/poterminology.html for examples and usage 158s instructions. 158s 158s Options: 158s --version show program's version number and exit 158s -h, --help show this help message and exit 158s --manpage output a manpage based on the help 158s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 158s --errorlevel=ERRORLEVEL 158s show errorlevel as: none, message, exception, 158s traceback 158s -i INPUT, --input=INPUT 158s read from INPUT in po, pot formats 158s -x EXCLUDE, --exclude=EXCLUDE 158s exclude names matching EXCLUDE from input paths 158s -o OUTPUT, --output=OUTPUT 158s write to OUTPUT in po, pot formats 158s -u UPDATEFILE, --update=UPDATEFILE 158s update terminology in UPDATEFILE 158s -S STOPFILE, --stopword-list=STOPFILE 158s read stopword (term exclusion) list from STOPFILE 158s (default /usr/share/pyshared/translate/share/stoplist- 158s en) 158s -F, --fold-titlecase fold "Title Case" to lowercase (default) 158s -C, --preserve-case preserve all uppercase/lowercase 158s -I, --ignore-case make all terms lowercase 158s --accelerator=ACCELERATORS 158s ignore the given accelerator characters when matching 158s -t LENGTH, --term-words=LENGTH 158s generate terms of up to LENGTH words (default 3) 158s --nonstop-needed=MIN omit terms with less than MIN nonstop words (default 158s 1) 158s --inputs-needed=MIN omit terms appearing in less than MIN input files 158s (default 2, or 1 if only one input file) 158s --fullmsg-needed=MIN omit full message terms appearing in less than MIN 158s different messages (default 1) 158s --substr-needed=MIN omit substring-only terms appearing in less than MIN 158s different messages (default 2) 158s --locs-needed=MIN omit terms appearing in less than MIN different 158s original source files (default 2) 158s --sort=ORDER output sort order(s): frequency, dictionary, length 158s (may repeat option, default is all in above order) 158s --source-language=LANG 158s the source language code (default 'en') 158s -v, --invert invert the source and target languages for terminology 158s ========= SMOKE TEST: /usr/bin/pretranslate =========== 158s Usage: pretranslate [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 158s 158s Fill localization files with suggested translations based on translation 158s memory and existing translations. See: 158s http://docs.translatehouse.org/projects/translate- 158s toolkit/en/latest/commands/pretranslate.html for examples and usage 158s instructions. 158s 158s Options: 158s --version show program's version number and exit 158s -h, --help show this help message and exit 158s --manpage output a manpage based on the help 158s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 158s --errorlevel=ERRORLEVEL 158s show errorlevel as: none, message, exception, 158s traceback 158s -i INPUT, --input=INPUT 158s read from INPUT in po, pot, pot, xlf, xliff formats 158s -x EXCLUDE, --exclude=EXCLUDE 158s exclude names matching EXCLUDE from input paths 158s -o OUTPUT, --output=OUTPUT 158s write to OUTPUT in po, pot, xlf, xliff formats 158s -t TEMPLATE, --template=TEMPLATE 158s read from TEMPLATE in po, pot, xlf, xliff formats 158s -S, --timestamp skip conversion if the output file has newer timestamp 158s --tm=TM The file to use as translation memory when fuzzy 158s matching 158s -s MIN_SIMILARITY, --similarity=MIN_SIMILARITY 158s The minimum similarity for inclusion (default: 75%) 158s --nofuzzymatching Disable fuzzy matching 158s ========= SMOKE TEST: /usr/bin/prop2po =========== 158s Usage: prop2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] [-P|--pot] 158s 158s Convert Java/Mozilla .properties files to Gettext PO localization files. 158s See: http://docs.translatehouse.org/projects/translate- 158s toolkit/en/latest/commands/prop2po.html for examples and usage instructions. 158s 158s Options: 158s --version show program's version number and exit 158s -h, --help show this help message and exit 158s --manpage output a manpage based on the help 158s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 158s --errorlevel=ERRORLEVEL 158s show errorlevel as: none, message, exception, 158s traceback 158s -i INPUT, --input=INPUT 158s read from INPUT in lang, properties, strings formats 158s -x EXCLUDE, --exclude=EXCLUDE 158s exclude names matching EXCLUDE from input paths 158s -o OUTPUT, --output=OUTPUT 158s write to OUTPUT in po, pot formats 158s -t TEMPLATE, --template=TEMPLATE 158s read from TEMPLATE in lang, properties, strings 158s formats 158s -S, --timestamp skip conversion if the output file has newer timestamp 158s -P, --pot output PO Templates (.pot) rather than PO files (.po) 158s --personality=TYPE override the input file format: java, java-utf8, java- 158s utf16, xwiki, flex, mozilla, gaia, gwt, skype, 158s strings, strings-utf8, joomla (for .properties files, 158s default: java) 158s --encoding=ENCODING override the encoding set by the personality 158s --duplicates=DUPLICATESTYLE 158s what to do with duplicate strings (identical source 158s text): merge, msgctxt (default: 'msgctxt') 158s ========= SMOKE TEST: /usr/bin/pydiff =========== 158s usage: pydiff [-h] [-i] [-U NUM] [-r] [-N] [--unidirectional-new-file] [-s] 158s [-x PAT] [--fromcontains TEXT] [--tocontains TEXT] 158s [--contains TEXT] [-I] [--accelerator ACCELERATORS] 158s fromfile tofile 158s 158s positional arguments: 158s fromfile 158s tofile 158s 158s options: 158s -h, --help show this help message and exit 158s -i, --ignore-case Ignore case differences in file contents. 158s -U, --unified NUM Output NUM (default 3) lines of unified context 158s -r, --recursive Recursively compare any subdirectories found. 158s -N, --new-file Treat absent files as empty. 158s --unidirectional-new-file 158s Treat absent first files as empty. 158s -s, --report-identical-files 158s Report when two files are the same. 158s -x, --exclude PAT Exclude files that match PAT. 158s --fromcontains TEXT Only show changes where fromfile contains TEXT 158s --tocontains TEXT Only show changes where tofile contains TEXT 158s --contains TEXT Only show changes where fromfile or tofile contains 158s TEXT 158s -I, --ignore-case-contains 158s Ignore case differences when matching any of the 158s changes 158s --accelerator ACCELERATORS 158s ignores the given accelerator characters when matching 158s ========= SMOKE TEST: /usr/bin/pypo2phppo =========== 158s Usage: pypo2phppo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 158s 158s Convert Python format .po files to PHP format .po files. 158s 158s Options: 158s --version show program's version number and exit 158s -h, --help show this help message and exit 158s --manpage output a manpage based on the help 158s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 158s --errorlevel=ERRORLEVEL 158s show errorlevel as: none, message, exception, 158s traceback 158s -i INPUT, --input=INPUT 158s read from INPUT in po, pot formats 158s -x EXCLUDE, --exclude=EXCLUDE 158s exclude names matching EXCLUDE from input paths 158s -o OUTPUT, --output=OUTPUT 158s write to OUTPUT in po, pot formats 158s -S, --timestamp skip conversion if the output file has newer timestamp 158s ========= SMOKE TEST: /usr/bin/rc2po =========== 158s Usage: rc2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] [-P|--pot] 158s 158s Convert Windows RC files to Gettext PO localization files. See: 158s http://docs.translatehouse.org/projects/translate- 158s toolkit/en/latest/commands/rc2po.html for examples and usage instructions. 158s 158s Options: 158s --version show program's version number and exit 158s -h, --help show this help message and exit 158s --manpage output a manpage based on the help 158s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 158s --errorlevel=ERRORLEVEL 158s show errorlevel as: none, message, exception, 158s traceback 158s -i INPUT, --input=INPUT 158s read from INPUT in nls, rc formats 158s -x EXCLUDE, --exclude=EXCLUDE 158s exclude names matching EXCLUDE from input paths 158s -o OUTPUT, --output=OUTPUT 158s write to OUTPUT in po, pot formats 158s -t TEMPLATE, --template=TEMPLATE 158s read from TEMPLATE in nls, rc formats 158s -S, --timestamp skip conversion if the output file has newer timestamp 158s -P, --pot output PO Templates (.pot) rather than PO files (.po) 158s --charset=CHARSET charset to use to decode the RC files (autodetection 158s is used by default) 158s -l LANG, --lang=LANG LANG entry (default: None) 158s --sublang=SUBLANG SUBLANG entry (default: None) 158s --duplicates=DUPLICATESTYLE 158s what to do with duplicate strings (identical source 158s text): merge, msgctxt (default: 'msgctxt') 158s ========= SMOKE TEST: /usr/bin/resx2po =========== 158s Usage: resx2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] [-P|--pot] 158s 158s Convert .Net Resource (.resx) to Gettext PO localisation files. See: 158s http://docs.translatehouse.org/projects/translate- 158s toolkit/en/latest/commands/resx2po.html for examples and usage instructions. 158s 158s Options: 158s --version show program's version number and exit 158s -h, --help show this help message and exit 158s --manpage output a manpage based on the help 158s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 158s --errorlevel=ERRORLEVEL 158s show errorlevel as: none, message, exception, 158s traceback 158s -i INPUT, --input=INPUT 158s read from INPUT in resx format 158s -x EXCLUDE, --exclude=EXCLUDE 158s exclude names matching EXCLUDE from input paths 158s -o OUTPUT, --output=OUTPUT 158s write to OUTPUT in po, pot formats 158s -t TEMPLATE, --template=TEMPLATE 158s read from TEMPLATE in resx format 158s -S, --timestamp skip conversion if the output file has newer timestamp 158s -P, --pot output PO Templates (.pot) rather than PO files (.po) 158s --filter=FILTER leaves to extract e.g. 'name,desc': (default: extract 158s everything) 158s --duplicates=DUPLICATESTYLE 158s what to do with duplicate strings (identical source 158s text): merge, msgctxt (default: 'msgctxt') 158s ========= SMOKE TEST: /usr/bin/sub2po =========== 158s Usage: sub2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] [-P|--pot] 158s 158s Convert subtitle files to Gettext PO localization files. See: 158s http://docs.translatehouse.org/projects/translate- 158s toolkit/en/latest/commands/sub2po.html for examples and usage instructions. 158s 158s Options: 158s --version show program's version number and exit 158s -h, --help show this help message and exit 158s --manpage output a manpage based on the help 158s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 158s --errorlevel=ERRORLEVEL 158s show errorlevel as: none, message, exception, 158s traceback 158s -i INPUT, --input=INPUT 158s read from INPUT in ass, srt, ssa, sub formats 158s -x EXCLUDE, --exclude=EXCLUDE 158s exclude names matching EXCLUDE from input paths 158s -o OUTPUT, --output=OUTPUT 158s write to OUTPUT in po, pot formats 158s -t TEMPLATE, --template=TEMPLATE 158s read from TEMPLATE in ass, srt, ssa, sub formats 158s -S, --timestamp skip conversion if the output file has newer timestamp 158s -P, --pot output PO Templates (.pot) rather than PO files (.po) 158s --duplicates=DUPLICATESTYLE 158s what to do with duplicate strings (identical source 158s text): merge, msgctxt (default: 'msgctxt') 158s ========= SMOKE TEST: /usr/bin/symb2po =========== 158s Usage: symb2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] [-P|--pot] 158s 158s Convert Symbian localisation files to Gettext PO localization files. See: 158s http://docs.translatehouse.org/projects/translate- 158s toolkit/en/latest/commands/symb2po.html for examples and usage instructions. 158s 158s Options: 158s --version show program's version number and exit 158s -h, --help show this help message and exit 158s --manpage output a manpage based on the help 158s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 158s --errorlevel=ERRORLEVEL 158s show errorlevel as: none, message, exception, 158s traceback 158s -i INPUT, --input=INPUT 158s read from INPUT in r01 format 158s -x EXCLUDE, --exclude=EXCLUDE 158s exclude names matching EXCLUDE from input paths 158s -o OUTPUT, --output=OUTPUT 158s write to OUTPUT in po, pot formats 158s -t TEMPLATE, --template=TEMPLATE 158s read from TEMPLATE in 158s -S, --timestamp skip conversion if the output file has newer timestamp 158s -P, --pot output PO Templates (.pot) rather than PO files (.po) 158s --duplicates=DUPLICATESTYLE 158s what to do with duplicate strings (identical source 158s text): merge, msgctxt (default: 'msgctxt') 158s ========= SMOKE TEST: /usr/bin/tbx2po =========== 158s Usage: tbx2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 158s 158s Convert TermBase eXchange (.tbx) glossary file into a Gettext PO file. See: 158s http://docs.translatehouse.org/projects/translate- 158s toolkit/en/latest/commands/tbx2po.html for examples and usage instructions 158s 158s Options: 158s --version show program's version number and exit 158s -h, --help show this help message and exit 158s --manpage output a manpage based on the help 158s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 158s --errorlevel=ERRORLEVEL 158s show errorlevel as: none, message, exception, 158s traceback 158s -i INPUT, --input=INPUT 158s read from INPUT in tbx format 158s -x EXCLUDE, --exclude=EXCLUDE 158s exclude names matching EXCLUDE from input paths 158s -o OUTPUT, --output=OUTPUT 158s write to OUTPUT in po, pot formats 158s -S, --timestamp skip conversion if the output file has newer timestamp 159s ========= SMOKE TEST: /usr/bin/tiki2po =========== 159s Usage: tiki2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 159s 159s Convert TikiWiki's language.php files to Gettext PO localization files. See: 159s http://docs.translatehouse.org/projects/translate- 159s toolkit/en/latest/commands/tiki2po.html for examples and usage instructions. 159s 159s Options: 159s --version show program's version number and exit 159s -h, --help show this help message and exit 159s --manpage output a manpage based on the help 159s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 159s --errorlevel=ERRORLEVEL 159s show errorlevel as: none, message, exception, 159s traceback 159s -i INPUT, --input=INPUT 159s read from INPUT in php format 159s -x EXCLUDE, --exclude=EXCLUDE 159s exclude names matching EXCLUDE from input paths 159s -o OUTPUT, --output=OUTPUT 159s write to OUTPUT in po, pot formats 159s -S, --timestamp skip conversion if the output file has newer timestamp 159s --include-unused Include strings in the unused section 159s ========= SMOKE TEST: /usr/bin/tmserver =========== 159s usage: tmserver [-h] [-d TMDBFILE] [-f TMFILES] [-t TARGET_LANG] 159s [-s SOURCE_LANG] [-b BIND] [-p PORT] 159s [--max-candidates MAX_CANDIDATES] 159s [--min-similarity MIN_SIMILARITY] [--max-length MAX_LENGTH] 159s [--debug] 159s 159s options: 159s -h, --help show this help message and exit 159s -d, --tmdb TMDBFILE translation memory database file 159s -f, --import-translation-file TMFILES 159s translation file to import into the database 159s -t, --import-target-lang TARGET_LANG 159s target language of translation files 159s -s, --import-source-lang SOURCE_LANG 159s source language of translation files 159s -b, --bind BIND address to bind server to (default: localhost) 159s -p, --port PORT port to listen on (default: 8888) 159s --max-candidates MAX_CANDIDATES 159s Maximum number of candidates 159s --min-similarity MIN_SIMILARITY 159s minimum similarity 159s --max-length MAX_LENGTH 159s Maxmimum string length 159s --debug enable debugging features 159s ========= SMOKE TEST: /usr/bin/ts2po =========== 159s Usage: ts2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 159s 159s Convert Qt Linguist (.ts) files to Gettext PO localization files. See: 159s http://docs.translatehouse.org/projects/translate- 159s toolkit/en/latest/commands/ts2po.html for examples and usage instructions. 159s 159s Options: 159s --version show program's version number and exit 159s -h, --help show this help message and exit 159s --manpage output a manpage based on the help 159s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 159s --errorlevel=ERRORLEVEL 159s show errorlevel as: none, message, exception, 159s traceback 159s -i INPUT, --input=INPUT 159s read from INPUT in ts format 159s -x EXCLUDE, --exclude=EXCLUDE 159s exclude names matching EXCLUDE from input paths 159s -o OUTPUT, --output=OUTPUT 159s write to OUTPUT in po, pot formats 159s -S, --timestamp skip conversion if the output file has newer timestamp 159s -P, --pot output PO Templates (.pot) rather than PO files (.po) 159s --duplicates=DUPLICATESTYLE 159s what to do with duplicate strings (identical source 159s text): merge, msgctxt (default: 'msgctxt') 159s ========= SMOKE TEST: /usr/bin/txt2po =========== 159s Usage: txt2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 159s 159s Convert plain text (.txt) files to Gettext PO localization files. See: 159s http://docs.translatehouse.org/projects/translate- 159s toolkit/en/latest/commands/txt2po.html for examples and usage instructions. 159s 159s Options: 159s --version show program's version number and exit 159s -h, --help show this help message and exit 159s --manpage output a manpage based on the help 159s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 159s --errorlevel=ERRORLEVEL 159s show errorlevel as: none, message, exception, 159s traceback 159s -i INPUT, --input=INPUT 159s read from INPUT in *, txt formats 159s -x EXCLUDE, --exclude=EXCLUDE 159s exclude names matching EXCLUDE from input paths 159s -o OUTPUT, --output=OUTPUT 159s write to OUTPUT in po, pot formats 159s -S, --timestamp skip conversion if the output file has newer timestamp 159s -P, --pot output PO Templates (.pot) rather than PO files (.po) 159s --encoding=ENCODING The encoding of the input file (default: UTF-8) 159s --flavour=FLAVOUR The flavour of text file: plain (default), dokuwiki, 159s mediawiki 159s --no-segmentation Don't segment the file, treat it like a single message 159s --duplicates=DUPLICATESTYLE 159s what to do with duplicate strings (identical source 159s text): merge, msgctxt (default: 'msgctxt') 159s ========= SMOKE TEST: /usr/bin/web2py2po =========== 159s Usage: web2py2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 159s 159s Convert web2py translation dictionaries (.py) to GNU/gettext PO files. See: 159s http://docs.translatehouse.org/projects/translate- 159s toolkit/en/latest/commands/web2py2po.html for examples and usage instructions. 159s 159s Options: 159s --version show program's version number and exit 159s -h, --help show this help message and exit 159s --manpage output a manpage based on the help 159s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 159s --errorlevel=ERRORLEVEL 159s show errorlevel as: none, message, exception, 159s traceback 159s -i INPUT, --input=INPUT 159s read from INPUT in py format 159s -x EXCLUDE, --exclude=EXCLUDE 159s exclude names matching EXCLUDE from input paths 159s -o OUTPUT, --output=OUTPUT 159s write to OUTPUT in po, pot formats 159s -S, --timestamp skip conversion if the output file has newer timestamp 159s -P, --pot output PO Templates (.pot) rather than PO files (.po) 159s --duplicates=DUPLICATESTYLE 159s what to do with duplicate strings (identical source 159s text): merge, msgctxt (default: 'msgctxt') 159s ========= SMOKE TEST: /usr/bin/xliff2odf =========== 159s Usage: xliff2odf [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 159s 159s Convert XLIFF translation files to OpenDocument (ODF) files. See: 159s http://docs.translatehouse.org/projects/translate- 159s toolkit/en/latest/commands/odf2xliff.html for examples and usage instructions. 159s 159s Options: 159s --version show program's version number and exit 159s -h, --help show this help message and exit 159s --manpage output a manpage based on the help 159s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 159s --errorlevel=ERRORLEVEL 159s show errorlevel as: none, message, exception, 159s traceback 159s -i INPUT, --input=INPUT 159s read from INPUT in xlf format 159s -x EXCLUDE, --exclude=EXCLUDE 159s exclude names matching EXCLUDE from input paths 159s -o OUTPUT, --output=OUTPUT 159s write to OUTPUT in odc, odf, odg, odi, odm, odp, ods, 159s odt, otc, otf, otg, oth, oti, otp, ots, ott formats 159s -t TEMPLATE, --template=TEMPLATE 159s read from TEMPLATE in odc, odf, odg, odi, odm, odp, 159s ods, odt, otc, otf, otg, oth, oti, otp, ots, ott 159s formats 159s -S, --timestamp skip conversion if the output file has newer timestamp 159s ========= SMOKE TEST: /usr/bin/xliff2oo =========== 159s Usage: xliff2oo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 159s 159s Convert XLIFF localization files to an OpenOffice.org (SDF) localization 159s file. See: http://docs.translatehouse.org/projects/translate- 159s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 159s 159s Options: 159s --version show program's version number and exit 159s -h, --help show this help message and exit 159s --manpage output a manpage based on the help 159s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 159s --errorlevel=ERRORLEVEL 159s show errorlevel as: none, message, exception, 159s traceback 159s -i INPUT, --input=INPUT 159s read from INPUT in po, pot, xlf, xliff formats 159s -x EXCLUDE, --exclude=EXCLUDE 159s exclude names matching EXCLUDE from input paths 159s -o OUTPUT, --output=OUTPUT 159s write to OUTPUT in oo, sdf formats 159s -t TEMPLATE, --template=TEMPLATE 159s read from TEMPLATE in oo, sdf formats 159s -S, --timestamp skip conversion if the output file has newer timestamp 159s -l LANG, --language=LANG 159s set target language code (e.g. af-ZA) [required] 159s --source-language=LANG 159s set source language code (default en-US) 159s -T, --keeptimestamp don't change the timestamps of the strings 159s --nonrecursiveoutput don't treat the output oo as a recursive store 159s --nonrecursivetemplate 159s don't treat the template oo as a recursive store 159s --skipsource don't output the source language, but fallback to it 159s where needed 159s --filteraction=ACTION 159s action on pofilter failure: none (default), warn, 159s exclude-serious, exclude-all 159s --fuzzy use translations marked fuzzy 159s --nofuzzy don't use translations marked fuzzy (default) 159s --multifile=MULTIFILESTYLE 159s how to split po/pot files (single, toplevel or 159s onefile) 159s ========= SMOKE TEST: /usr/bin/xliff2po =========== 159s Usage: xliff2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 159s 159s Convert XLIFF localization files to Gettext PO localization files. See: 159s http://docs.translatehouse.org/projects/translate- 159s toolkit/en/latest/commands/xliff2po.html for examples and usage instructions. 159s 159s Options: 159s --version show program's version number and exit 159s -h, --help show this help message and exit 159s --manpage output a manpage based on the help 159s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 159s --errorlevel=ERRORLEVEL 159s show errorlevel as: none, message, exception, 159s traceback 159s -i INPUT, --input=INPUT 159s read from INPUT in xlf, xliff formats 159s -x EXCLUDE, --exclude=EXCLUDE 159s exclude names matching EXCLUDE from input paths 159s -o OUTPUT, --output=OUTPUT 159s write to OUTPUT in po, pot formats 159s -S, --timestamp skip conversion if the output file has newer timestamp 159s -P, --pot output PO Templates (.pot) rather than PO files (.po) 159s --duplicates=DUPLICATESTYLE 159s what to do with duplicate strings (identical source 159s text): merge, msgctxt (default: 'msgctxt') 159s ========= SMOKE TEST: /usr/bin/yaml2po =========== 159s Usage: yaml2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] [-P|--pot] 159s 159s Convert YAML files to Gettext PO localization files. See: 159s http://docs.translatehouse.org/projects/translate- 159s toolkit/en/latest/commands/yaml2po.html for examples and usage instructions. 159s 159s Options: 159s --version show program's version number and exit 159s -h, --help show this help message and exit 159s --manpage output a manpage based on the help 159s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 159s --errorlevel=ERRORLEVEL 159s show errorlevel as: none, message, exception, 159s traceback 159s -i INPUT, --input=INPUT 159s read from INPUT in yaml, yml formats 159s -x EXCLUDE, --exclude=EXCLUDE 159s exclude names matching EXCLUDE from input paths 159s -o OUTPUT, --output=OUTPUT 159s write to OUTPUT in po, pot formats 159s -t TEMPLATE, --template=TEMPLATE 159s read from TEMPLATE in yaml, yml formats 159s -S, --timestamp skip conversion if the output file has newer timestamp 159s -P, --pot output PO Templates (.pot) rather than PO files (.po) 159s --duplicates=DUPLICATESTYLE 159s what to do with duplicate strings (identical source 159s text): merge, msgctxt (default: 'msgctxt') 160s /tmp/autopkgtest.9zB7bO/wrapper.sh: checking for leaked background processes... 160s /tmp/autopkgtest.9zB7bO/wrapper.sh: waiting for tee/cat subprocesses... 160s /tmp/autopkgtest.9zB7bO/wrapper.sh: cleaning up... 160s /tmp/autopkgtest.9zB7bO/wrapper.sh: Exit status: 0 160s autopkgtest: DBG: testbed command exited with code 0 160s autopkgtest [13:08:40]: test translate-toolkit: -----------------------] 160s autopkgtest: DBG: testbed executing test finished with exit status 0 160s autopkgtest: DBG: sending command to testbed: copyup /tmp/autopkgtest.9zB7bO/translate-toolkit-stdout /tmp/autopkgtest-work.dij5uc5o/out/translate-toolkit-stdout 160s autopkgtest: DBG: got reply from testbed: ok 160s autopkgtest: DBG: sending command to testbed: copyup /tmp/autopkgtest.9zB7bO/translate-toolkit-stderr /tmp/autopkgtest-work.dij5uc5o/out/translate-toolkit-stderr 160s autopkgtest: DBG: got reply from testbed: ok 160s translate-toolkit PASS 160s autopkgtest [13:08:40]: test translate-toolkit: - - - - - - - - - - results - - - - - - - - - - 160s autopkgtest: DBG: sending command to testbed: copyup /tmp/autopkgtest.9zB7bO/translate-toolkit-artifacts/ /tmp/autopkgtest-work.dij5uc5o/out/artifacts/ 160s autopkgtest: DBG: got reply from testbed: ok 160s autopkgtest: DBG: testbed command ['rm', '-rf', '/tmp/autopkgtest.9zB7bO/translate-toolkit-artifacts', '/tmp/autopkgtest.9zB7bO/autopkgtest_tmp'], kind short, sout raw, serr pipe, env [] 161s autopkgtest: DBG: testbed command exited with code 0 161s autopkgtest [13:08:41]: test python3-translate: preparing testbed 161s autopkgtest: DBG: testbed reset: modified=False, deps_installed=['translate-toolkit', 'subversion', 'python3-aeidon (>> 1.15~)', 'python3-bs4', 'python3-charset-normalizer', 'python3-cheroot', 'python3-cwcwidth', 'python3-diff-match-patch', 'python3-enchant', 'python3-iniparse', 'python3-levenshtein', 'python3-lxml', 'python3-mistletoe (>> 1.1.0~)', 'python3-phply (>> 1.2.4)', 'python3-pycountry (>> 17.5.14)', 'python3-pyparsing (>> 3)', 'python3-ruamel.yaml', 'python3-vobject', 'python3-xapian'], deps_new=['python3-translate', 'python3-pytest', 'python3-all', 'subversion', 'python3-aeidon (>> 1.15~)', 'python3-bs4', 'python3-charset-normalizer', 'python3-cheroot', 'python3-cwcwidth', 'python3-diff-match-patch', 'python3-enchant', 'python3-iniparse', 'python3-levenshtein', 'python3-lxml', 'python3-mistletoe (>> 1.1.0~)', 'python3-phply (>> 1.2.4)', 'python3-pycountry (>> 17.5.14)', 'python3-pyparsing (>> 3)', 'python3-ruamel.yaml', 'python3-syrupy', 'python3-vobject', 'python3-xapian'] 161s autopkgtest: DBG: testbed reset 161s autopkgtest: DBG: sending command to testbed: revert 288s autopkgtest: DBG: got reply from testbed: ok /tmp/autopkgtest.9zB7bO 288s autopkgtest: DBG: sending command to testbed: print-execute-command 288s autopkgtest: DBG: got reply from testbed: ok /tmp/autopkgtest-ssh.82df28hz/runcmd 288s autopkgtest: DBG: sending command to testbed: capabilities 288s autopkgtest: DBG: got reply from testbed: ok revert ok suggested-normal-user=ubuntu root-on-testbed revert-full-system isolation-machine reboot 288s autopkgtest: DBG: testbed capabilities: ['revert', 'ok', 'suggested-normal-user=ubuntu', 'root-on-testbed', 'revert-full-system', 'isolation-machine', 'reboot', 'has_internet'] 288s autopkgtest: DBG: testbed command ['mkdir', '-p', '/tmp/autopkgtest.9zB7bO'], kind short, sout raw, serr pipe, env [] 288s autopkgtest: DBG: testbed command exited with code 0 288s autopkgtest: DBG: sending command to testbed: copydown /home/ubuntu/autopkgtest/lib/in-testbed/wrapper.sh /tmp/autopkgtest.9zB7bO/wrapper.sh 288s autopkgtest: DBG: got reply from testbed: ok 288s autopkgtest: DBG: testbed command ['chmod', '-R', '0755', '--', '/tmp/autopkgtest.9zB7bO/wrapper.sh'], kind short, sout raw, serr pipe, env [] 288s autopkgtest: DBG: testbed command exited with code 0 288s autopkgtest: DBG: testbed command ['dpkg', '--print-architecture'], kind short, sout pipe, serr pipe, env [] 288s autopkgtest: DBG: testbed command exited with code 0 288s autopkgtest [13:10:48]: testbed dpkg architecture: s390x 288s autopkgtest: DBG: testbed command ['dpkg-query', '-W', '-f', '${Version}', 'apt'], kind short, sout pipe, serr pipe, env [] 289s autopkgtest: DBG: testbed command exited with code 0 289s autopkgtest [13:10:49]: testbed apt version: 2.9.30 289s autopkgtest: DBG: testbed command ['sh', '-ec', 'command -v eatmydata'], kind short, sout pipe, serr pipe, env [] 289s autopkgtest: DBG: testbed command exited with code 0 289s autopkgtest: DBG: testbed has eatmydata 289s autopkgtest: DBG: testbed command ['mkdir', '-p', '/etc/apt/preferences.d'], kind short, sout raw, serr pipe, env [] 289s autopkgtest: DBG: testbed command exited with code 0 289s autopkgtest [13:10:49]: @@@@@@@@@@@@@@@@@@@@ test bed setup 289s autopkgtest: DBG: testbed command ['sh', '-ec', '#!/bin/sh\n# Copyright © 2006-2018 Canonical Ltd.\n# Copyright © 2015-2017 Martin Pitt\n# Copyright © 2017 Steve Langasek\n# Copyright © 2017-2022 Paul Gevers\n# Copyright © 2018 Simon McVittie\n# SPDX-License-Identifier: GPL-2.0-or-later\n\n# This script returns the first suite found in apt sources. We can\'t just rely\n# on /etc/os-release because it doesn\'t allow to distinguish between Debian\n# unstable and testing.\n#\n# This release detection logic should be kept in sync with similar code in the\n# setup-testbed script.\n#\n# For more information on APT data sources see sources.list(5).\n\n# Usage $0\n\nset -eux\n\ndistro=UNKNOWN\nif [ -r /etc/os-release ]; then\n # shellcheck disable=SC1091\n distro=$(. /etc/os-release && echo "${ID:-$distro}")\nfi\n\n# Try guessing the default release from deb822-style format sources.\n#\n# While not mandatory, APT upstream expects distros to follow the\n# .sources naming pattern for the default deb822 sources.\napt_sources="/etc/apt/sources.list.d/$distro.sources"\nif [ -r "$apt_sources" ]; then\n release=$(sed -En \'s/^Suites:\\s*(\\w+).*/\\1/Ip\' "$apt_sources" | head -n1)\n [ -n "$release" ] && echo "$release" && exit\nfi\n\n# Try guessing the default release from one-line-style format sources.\napt_sources=/etc/apt/sources.list\nif [ -r "$apt_sources" ]; then\n release=$(sed -En \'/^(deb|deb-src) +(\\[.*\\] *)?(http|https|file):/ { s/\\[.*\\] +//; s/^[^ ]+ +[^ ]* +([^ ]+) +.*$/\\1/p }\' "$apt_sources" | head -n1)\n [ -n "$release" ] && echo "$release" && exit\nfi\n\n# Could not guess the default release\necho "Could not guess the default release from the APT sources." >&2\nexit 1\n'], kind short, sout pipe, serr pipe, env [] 289s autopkgtest: DBG: testbed command exited with code 0 289s autopkgtest [13:10:49]: testbed release detected to be: plucky 289s autopkgtest: DBG: testbed command ['sh', '-ec', '#!/bin/sh\n# SPDX-License-Identifier: GPL-2.0-or-later\n\n# This script returns the list of configured "deb" sources in one-line-style\n# source lists (/etc/apt/sources.list, /etc/apt/sources.list.d/*.list).\n# See sources.list(5) for more information on the APT source list formats.\n#\n# This script takes no arguments.\n\nset -eu\n\n# grep(1) returns 1 if no lines were selected from the input files, which\n# can happen if there are .list files, but they contain no "deb" entries.\n# We don\'t want to fail in this case, hence the "|| true", which we put\n# in a subshell because we want it to affect only the grep invocation.\n{\n if [ -f /etc/apt/sources.list ]; then\n printf \'%s\\0\' /etc/apt/sources.list\n fi\n if [ -d /etc/apt/sources.list.d ]; then\n find /etc/apt/sources.list.d -maxdepth 1 -type f -regex \'.*/[a-zA-Z0-9_.-]+\\.list\' -print0 \\\n | LC_ALL=C sort --zero-terminated\n fi\n} | xargs -0 --no-run-if-empty -- sh -c \'grep -h "^deb " "$@" || true\' "$(basename "$0")"\n'], kind short, sout pipe, serr pipe, env [] 289s autopkgtest: DBG: testbed command exited with code 0 289s autopkgtest: DBG: testbed command ['sh', '-ec', '#!/bin/sh\n# SPDX-License-Identifier: GPL-2.0-or-later\n\n# This script returns the list of configured sources in deb822-style source\n# lists (/etc/apt/sources.list.d/*.sources). Sources are not stripped out of\n# comments, extra blank lines or similar: the output of this script is meant to\n# be consumed by a deb822 parser that is able to correctly handle those.\n# See sources.list(5) for more information on the APT source list formats.\n#\n# This script takes no arguments.\n\nset -eu\n\n# Awk concatenates files making sure stanzas from separate files are separated\n# by a blank line, even if there are no newlines at EOF in the .sources files.\nif [ -d /etc/apt/sources.list.d ]; then\n find /etc/apt/sources.list.d -maxdepth 1 -type f -regex \'.*/[a-zA-Z0-9_.-]+\\.sources\' -print0 \\\n | LC_ALL=C sort --zero-terminated \\\n | xargs -0 --no-run-if-empty -- awk \'FNR == 1 && NR != 1 { print "" } { print }\'\nfi\n'], kind short, sout pipe, serr pipe, env [] 289s autopkgtest: DBG: testbed command exited with code 0 289s autopkgtest: DBG: adding APT source: Types: deb deb-src 289s URIs: http://ftpmaster.internal/ubuntu/ 289s Suites: plucky-proposed 289s Components: main restricted universe multiverse 289s Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg 289s autopkgtest: DBG: testbed command ['sh', '-ec', '"$@" >> "/etc/apt/sources.list.d/autopkgtest-add-apt-release-plucky-proposed.sources"', 'add_apt_source', 'printf', '%s\\n', 'Types: deb deb-src\nURIs: http://ftpmaster.internal/ubuntu/\nSuites: plucky-proposed\nComponents: main restricted universe multiverse\nSigned-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg\n'], kind short, sout raw, serr pipe, env [] 290s autopkgtest: DBG: testbed command exited with code 0 290s autopkgtest: DBG: adding APT preference to autopkgtest-zz-plucky-proposed-baseline.pref: 290s Package: * 290s Pin: release plucky-proposed 290s Pin-Priority: 500 290s autopkgtest: DBG: testbed command ['sh', '-ec', '"$@" > "/etc/apt/preferences.d/autopkgtest-zz-plucky-proposed-baseline.pref"', 'add_apt_preference', 'printf', '%s\\n', 'Package: *\nPin: release plucky-proposed\nPin-Priority: 500'], kind short, sout raw, serr pipe, env [] 290s autopkgtest: DBG: testbed command exited with code 0 290s autopkgtest [13:10:50]: updating testbed package index (apt update) 290s autopkgtest: DBG: testbed command ['/bin/sh', '-ec', '"$@" 3>&2 2>&1', 'run_apt_command', '/usr/bin/eatmydata', 'apt-get', '--quiet', '--assume-yes', '-o=APT::Status-Fd=3', '-o=APT::Install-Recommends=false', '-o=Dpkg::Options::=--force-confnew', '-o=Debug::pkgProblemResolver=true', 'update'], kind install, sout raw, serr pipe, env ['DEBIAN_FRONTEND=noninteractive', 'APT_LISTBUGS_FRONTEND=none', 'APT_LISTCHANGES_FRONTEND=none'] 290s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [110 kB] 291s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 291s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 291s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 291s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [3120 B] 291s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [76.1 kB] 292s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [13.9 kB] 292s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [744 kB] 292s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main s390x Packages [104 kB] 292s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/restricted s390x Packages [760 B] 292s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/universe s390x Packages [653 kB] 292s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse s390x Packages [4900 B] 292s Fetched 1711 kB in 2s (830 kB/s) 293s Reading package lists... 293s autopkgtest: DBG: testbed command exited with code 0 293s autopkgtest: DBG: adding APT preference to autopkgtest-plucky-proposed.pref: 293s Package: * 293s Pin: release plucky-proposed 293s Pin-Priority: 100 293s 293s Package: src:sphinx:any 293s Pin: release plucky-proposed 293s Pin-Priority: 995 293s autopkgtest: DBG: testbed command ['sh', '-ec', '"$@" > "/etc/apt/preferences.d/autopkgtest-plucky-proposed.pref"', 'add_apt_preference', 'printf', '%s\\n', 'Package: *\nPin: release plucky-proposed\nPin-Priority: 100\n\nPackage: src:sphinx:any\nPin: release plucky-proposed\nPin-Priority: 995'], kind short, sout raw, serr pipe, env [] 293s autopkgtest: DBG: testbed command exited with code 0 293s autopkgtest: DBG: testbed command ['bash', '-ec', 'for d in /boot /boot/efi /boot/grub /etc/init /etc/init.d /etc/systemd/system /lib/systemd/system; do [ ! -d $d ] || touch -r $d /tmp/autopkgtest.9zB7bO/${d//\\//_}.stamp; done'], kind short, sout raw, serr pipe, env [] 293s autopkgtest: DBG: testbed command exited with code 0 293s autopkgtest: DBG: testbed command ['sh', '-ec', '#!/bin/sh\n# Canonical/Ubuntu specific testbed setup\n\nset -x\n\nRELEASE=$(lsb_release --codename --short 2>/dev/null)\n\n# Make the installed package versions match what is available from the configured\n# repositories, even if a downgrade is required.\n#\n# We may end up with images with packages newer than those available from the\n# repositories when opening a new release (images are created using the\n# previous release dailies as a base, which may include 0-day SRUs, or\n# Launchpad may fail to copy packages, see openssl 3.0.8-1ubuntu2), or when\n# package versions are pulled from the archive.\n#\n# Note: \'release a=\' matches the Suite field in the repository Release file.\ncat >/etc/apt/preferences.d/force-downgrade-to-release.pref <= Focal).\n#\n# Note: autoremove/--autoremove always runs on the entire set of installed\n# packages. Together with --autopurge/purge each removal becomes a purge.\n#\n# Removing \'?obsolete\' packages may remove the running kernel. This is not\n# expected to be an issue.\nif /usr/lib/apt/apt-helper analyze-pattern \'?true\' >/dev/null 2>&1; then\n # DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y purge --autoremove \'?obsolete\'\n # Avoid removing the running kernel\n running_kernel_pattern="^linux-.*$(uname -r | sed \'s/\\./\\\\./g\').*"\n obsolete_pkgs="$(apt list \'?obsolete\' 2>/dev/null \\\n | tail -n+2 \\\n | cut -d\'/\' -f1 \\\n | grep -v "${running_kernel_pattern}" || true)"\n DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y purge --autoremove ${obsolete_pkgs}\nelse\n # We\'re on an older release (analyze-pattern is not available).\n # Still do an autopurge to get rid of packages that got orphaned\n # by downgrades.\n eatmydata apt-get -y autoremove --purge\nfi\n\n# compatibility with old Jenkins testbeds for trusty\nif grep -q trusty /etc/lsb-release; then apt-get update || (sleep 10; apt-get update); apt-get install -y build-essential; fi\n\n# these packages really break tests, purge them if we use standard cloud images\n# (on lcy01)\nfor p in unattended-upgrades lxd lxd-client snapd; do\n [ ! -d /usr/share/doc/$p ] || $(which eatmydata || true) apt-get purge --auto-remove -y $p\ndone\n\nif type iptables >/dev/null 2>&1; then\n cat < /etc/rc.local\n#!/bin/sh\n\n# work around broken PTMU; LP: #1572026, RT#90771\niptables -w -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu || true\n\n# These addresses are used at least by rust-reqwest and should not be reachable\n# See https://bugs.launchpad.net/ubuntu/+source/rust-reqwest/+bug/2080346\niptables -A OUTPUT -d 10.255.255.1/32 -p tcp -j DROP || true\niptables -A OUTPUT -d 10.255.255.2/32 -p tcp -j DROP || true\nEOF\n chmod 755 /etc/rc.local\n # shellcheck disable=SC1091\n . /etc/rc.local\nfi\n\n# work around broken tty on ppc64el instances (LP: #1607075)\nif [ "$(uname -m)" = ppc64le ] && [ "$(systemctl is-active keyboard-setup.service 2>/dev/null|| true)" = failed ]; then\n systemctl reset-failed keyboard-setup.service\n systemctl mask keyboard-setup.service\nfi\n\n# work around late urandom pool initialization (LP: #1622893)\nif [ -d /run/systemd/system ] && systemd-detect-virt --quiet --vm; then\n mkdir -p /etc/systemd/system/systemd-random-seed.service.d/\n cat < /etc/systemd/system/systemd-random-seed.service.d/fakeentropy.conf\n[Service]\nExecStart=/usr/bin/perl -E \'open \\$\\$f, "/bin/bash" or die; open \\$\\$rnd, ">/dev/random" or die; for (\\$\\$i = 0; \\$\\$i < 10; ++\\$\\$i) {read \\$\\$f, \\$\\$d, 64; ioctl \\$\\$rnd, 0x40085203, pack("ii", 64*8, 64) . \\$\\$d}\'\nEOF\nfi\n\n# set compressor to lz4 where supported, we care about compression speed\nif grep -q lz4 /etc/initramfs-tools/initramfs.conf; then\n echo COMPRESS=lz4 > /etc/initramfs-tools/conf.d/lz4\nfi'], kind install, sout raw, serr raw, env ['AUTOPKGTEST_IS_SETUP_COMMAND=1', 'AUTOPKGTEST_NORMAL_USER=ubuntu', 'ADT_NORMAL_USER=ubuntu'] 293s + lsb_release --codename --short 293s + RELEASE=plucky 293s + cat 293s + [ plucky != trusty ] 293s + DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y --allow-downgrades -o Dpkg::Options::=--force-confnew dist-upgrade 293s Reading package lists... 293s Building dependency tree... 293s Reading state information... 293s Calculating upgrade... 294s The following packages were automatically installed and are no longer required: 294s libnsl2 libpython3.12-minimal libpython3.12-stdlib libpython3.12t64 294s linux-headers-6.11.0-8 linux-headers-6.11.0-8-generic 294s linux-modules-6.11.0-8-generic linux-tools-6.11.0-8 294s linux-tools-6.11.0-8-generic 294s Use 'sudo apt autoremove' to remove them. 294s The following packages will be upgraded: 294s iproute2 libgpgme11t64 liblsof0 libp11-kit0 lsof sysvinit-utils 294s 6 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 294s Need to get 1982 kB of archives. 294s After this operation, 22.5 kB of additional disk space will be used. 294s Get:1 http://ftpmaster.internal/ubuntu plucky/main s390x sysvinit-utils s390x 3.14-1ubuntu1 [36.0 kB] 294s Get:2 http://ftpmaster.internal/ubuntu plucky/main s390x iproute2 s390x 6.13.0-1ubuntu1 [1174 kB] 294s Get:3 http://ftpmaster.internal/ubuntu plucky/main s390x libp11-kit0 s390x 0.25.5-2ubuntu3 [316 kB] 294s Get:4 http://ftpmaster.internal/ubuntu plucky/main s390x lsof s390x 4.99.4+dfsg-1 [243 kB] 294s Get:5 http://ftpmaster.internal/ubuntu plucky/main s390x liblsof0 s390x 4.99.4+dfsg-1 [58.5 kB] 294s Get:6 http://ftpmaster.internal/ubuntu plucky/main s390x libgpgme11t64 s390x 1.24.2-1ubuntu1 [154 kB] 294s Preconfiguring packages ... 295s Fetched 1982 kB in 1s (3150 kB/s) 295s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 81030 files and directories currently installed.) 295s Preparing to unpack .../sysvinit-utils_3.14-1ubuntu1_s390x.deb ... 295s Unpacking sysvinit-utils (3.14-1ubuntu1) over (3.08-6ubuntu3) ... 295s Setting up sysvinit-utils (3.14-1ubuntu1) ... 295s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 81030 files and directories currently installed.) 295s Preparing to unpack .../iproute2_6.13.0-1ubuntu1_s390x.deb ... 295s Unpacking iproute2 (6.13.0-1ubuntu1) over (6.10.0-2ubuntu1) ... 295s Preparing to unpack .../libp11-kit0_0.25.5-2ubuntu3_s390x.deb ... 295s Unpacking libp11-kit0:s390x (0.25.5-2ubuntu3) over (0.25.5-2ubuntu2) ... 295s Preparing to unpack .../lsof_4.99.4+dfsg-1_s390x.deb ... 295s Unpacking lsof (4.99.4+dfsg-1) over (4.99.3+dfsg-2) ... 295s Preparing to unpack .../liblsof0_4.99.4+dfsg-1_s390x.deb ... 295s Unpacking liblsof0 (4.99.4+dfsg-1) over (4.99.3+dfsg-2) ... 295s Preparing to unpack .../libgpgme11t64_1.24.2-1ubuntu1_s390x.deb ... 295s Unpacking libgpgme11t64:s390x (1.24.2-1ubuntu1) over (1.24.1-4ubuntu1) ... 295s Setting up liblsof0 (4.99.4+dfsg-1) ... 295s Setting up iproute2 (6.13.0-1ubuntu1) ... 295s Setting up libp11-kit0:s390x (0.25.5-2ubuntu3) ... 295s Setting up lsof (4.99.4+dfsg-1) ... 295s Setting up libgpgme11t64:s390x (1.24.2-1ubuntu1) ... 295s Processing triggers for man-db (2.13.0-1) ... 296s Processing triggers for libc-bin (2.40-4ubuntu1) ... 296s + rm /etc/apt/preferences.d/force-downgrade-to-release.pref 296s + /usr/lib/apt/apt-helper analyze-pattern ?true 296s + uname -r 296s + sed s/\./\\./g 296s + running_kernel_pattern=^linux-.*6\.12\.0-15-generic.* 296s + apt list ?obsolete 296s + tail -n+2 296s + grep -v ^linux-.*6\.12\.0-15-generic.* 296s + cut -d/ -f1 296s + true 296s + obsolete_pkgs= 296s + DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y purge --autoremove 296s Reading package lists... 296s Building dependency tree... 296s Reading state information... 296s The following packages will be REMOVED: 296s libnsl2* libpython3.12-minimal* libpython3.12-stdlib* libpython3.12t64* 296s linux-headers-6.11.0-8* linux-headers-6.11.0-8-generic* 296s linux-modules-6.11.0-8-generic* linux-tools-6.11.0-8* 296s linux-tools-6.11.0-8-generic* 297s 0 upgraded, 0 newly installed, 9 to remove and 0 not upgraded. 297s After this operation, 167 MB disk space will be freed. 297s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 81031 files and directories currently installed.) 297s Removing linux-tools-6.11.0-8-generic (6.11.0-8.8) ... 297s Removing linux-tools-6.11.0-8 (6.11.0-8.8) ... 297s Removing libpython3.12t64:s390x (3.12.9-1) ... 297s Removing libpython3.12-stdlib:s390x (3.12.9-1) ... 297s Removing libnsl2:s390x (1.3.0-3build3) ... 297s Removing libpython3.12-minimal:s390x (3.12.9-1) ... 297s Removing linux-headers-6.11.0-8-generic (6.11.0-8.8) ... 297s Removing linux-headers-6.11.0-8 (6.11.0-8.8) ... 298s Removing linux-modules-6.11.0-8-generic (6.11.0-8.8) ... 298s Processing triggers for libc-bin (2.40-4ubuntu1) ... 298s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 55931 files and directories currently installed.) 298s Purging configuration files for libpython3.12-minimal:s390x (3.12.9-1) ... 298s Purging configuration files for linux-modules-6.11.0-8-generic (6.11.0-8.8) ... 298s + grep -q trusty /etc/lsb-release 298s + [ ! -d /usr/share/doc/unattended-upgrades ] 298s + [ ! -d /usr/share/doc/lxd ] 298s + [ ! -d /usr/share/doc/lxd-client ] 298s + [ ! -d /usr/share/doc/snapd ] 298s + type iptables 298s + cat 298s + chmod 755 /etc/rc.local 298s + . /etc/rc.local 298s + iptables -w -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu 298s + iptables -A OUTPUT -d 10.255.255.1/32 -p tcp -j DROP 298s + iptables -A OUTPUT -d 10.255.255.2/32 -p tcp -j DROP 298s + uname -m 298s + [ s390x = ppc64le ] 298s + [ -d /run/systemd/system ] 298s + systemd-detect-virt --quiet --vm 298s + mkdir -p /etc/systemd/system/systemd-random-seed.service.d/ 298s + cat 298s + grep -q lz4 /etc/initramfs-tools/initramfs.conf 298s + echo COMPRESS=lz4 298s autopkgtest: DBG: testbed command exited with code 0 298s autopkgtest [13:10:58]: upgrading testbed (apt dist-upgrade and autopurge) 298s autopkgtest: DBG: testbed command ['/bin/sh', '-ec', '"$@" 3>&2 2>&1', 'run_apt_command', '/usr/bin/eatmydata', 'apt-get', '--quiet', '--assume-yes', '-o=APT::Status-Fd=3', '-o=APT::Install-Recommends=false', '-o=Dpkg::Options::=--force-confnew', '-o=Debug::pkgProblemResolver=true', 'dist-upgrade'], kind install, sout raw, serr pipe, env ['DEBIAN_FRONTEND=noninteractive', 'APT_LISTBUGS_FRONTEND=none', 'APT_LISTCHANGES_FRONTEND=none'] 298s Reading package lists... 299s Building dependency tree... 299s Reading state information... 299s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 299s Starting 2 pkgProblemResolver with broken count: 0 299s Done 299s Entering ResolveByKeep 299s 299s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 299s autopkgtest: DBG: testbed command exited with code 0 299s autopkgtest: DBG: testbed command ['/bin/sh', '-ec', '"$@" 3>&2 2>&1', 'run_apt_command', '/usr/bin/eatmydata', 'apt-get', '--quiet', '--assume-yes', '-o=APT::Status-Fd=3', '-o=APT::Install-Recommends=false', '-o=Dpkg::Options::=--force-confnew', '-o=Debug::pkgProblemResolver=true', '--purge', 'autoremove'], kind install, sout raw, serr pipe, env ['DEBIAN_FRONTEND=noninteractive', 'APT_LISTBUGS_FRONTEND=none', 'APT_LISTCHANGES_FRONTEND=none'] 299s Reading package lists... 300s Building dependency tree... 300s Reading state information... 300s Starting pkgProblemResolver with broken count: 0 300s Starting 2 pkgProblemResolver with broken count: 0 300s Done 300s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 300s autopkgtest: DBG: testbed command exited with code 0 300s autopkgtest: DBG: testbed command ['bash', '-ec', '[ ! -e /run/autopkgtest_no_reboot.stamp ] || exit 0;for d in /boot /boot/efi /boot/grub /etc/init /etc/init.d /etc/systemd/system /lib/systemd/system; do s=/tmp/autopkgtest.9zB7bO/${d//\\//_}.stamp; [ ! -d $d ] || [ `stat -c %Y $d` = `stat -c %Y $s` ]; done'], kind short, sout raw, serr raw, env [] 300s autopkgtest: DBG: testbed command exited with code 1 300s autopkgtest [13:11:00]: rebooting testbed after setup commands that affected boot 300s autopkgtest: DBG: sending command to testbed: reboot 318s autopkgtest: DBG: got reply from testbed: ok 318s autopkgtest: DBG: testbed supports reboot, creating /tmp/autopkgtest-reboot 318s autopkgtest: DBG: testbed command ['mkdir', '-p', '/tmp/autopkgtest.9zB7bO'], kind short, sout raw, serr pipe, env [] 318s autopkgtest: DBG: testbed command exited with code 0 318s autopkgtest: DBG: sending command to testbed: copydown /home/ubuntu/autopkgtest/lib/in-testbed/reboot.sh /tmp/autopkgtest.9zB7bO/autopkgtest-reboot 318s autopkgtest: DBG: got reply from testbed: ok 318s autopkgtest: DBG: testbed command ['chmod', '-R', '0755', '--', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 318s autopkgtest: DBG: testbed command exited with code 0 318s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot', '/tmp/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 318s autopkgtest: DBG: testbed command exited with code 0 318s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot', '/sbin/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 319s autopkgtest: DBG: testbed command exited with code 0 319s autopkgtest: DBG: testbed command ['mkdir', '-p', '/tmp/autopkgtest.9zB7bO'], kind short, sout raw, serr pipe, env [] 319s autopkgtest: DBG: testbed command exited with code 0 319s autopkgtest: DBG: sending command to testbed: copydown /home/ubuntu/autopkgtest/lib/in-testbed/reboot-prepare.sh /tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare 319s autopkgtest: DBG: got reply from testbed: ok 319s autopkgtest: DBG: testbed command ['chmod', '-R', '0755', '--', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare'], kind short, sout raw, serr pipe, env [] 319s autopkgtest: DBG: testbed command exited with code 0 319s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare', '/tmp/autopkgtest-reboot-prepare'], kind short, sout raw, serr pipe, env [] 319s autopkgtest: DBG: testbed command exited with code 0 319s autopkgtest: DBG: testbed command ['uname', '-srv'], kind short, sout pipe, serr pipe, env [] 319s autopkgtest: DBG: testbed command exited with code 0 319s autopkgtest: DBG: testbed command ['sh', '-ec', "dpkg-query --show -f '${Package}\\t${Version}\\n' > /tmp/autopkgtest.9zB7bO/testbed-packages"], kind short, sout raw, serr pipe, env [] 320s autopkgtest: DBG: testbed command exited with code 0 320s autopkgtest: DBG: sending command to testbed: copyup /tmp/autopkgtest.9zB7bO/testbed-packages /tmp/autopkgtest-work.dij5uc5o/out/testbed-packages 320s autopkgtest: DBG: got reply from testbed: ok 320s autopkgtest: DBG: testbed supports reboot, creating /tmp/autopkgtest-reboot 320s autopkgtest: DBG: testbed command ['mkdir', '-p', '/tmp/autopkgtest.9zB7bO'], kind short, sout raw, serr pipe, env [] 320s autopkgtest: DBG: testbed command exited with code 0 320s autopkgtest: DBG: sending command to testbed: copydown /home/ubuntu/autopkgtest/lib/in-testbed/reboot.sh /tmp/autopkgtest.9zB7bO/autopkgtest-reboot 320s autopkgtest: DBG: got reply from testbed: ok 320s autopkgtest: DBG: testbed command ['chmod', '-R', '0755', '--', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 320s autopkgtest: DBG: testbed command exited with code 0 320s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot', '/tmp/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 321s autopkgtest: DBG: testbed command exited with code 0 321s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot', '/sbin/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 321s autopkgtest: DBG: testbed command exited with code 0 321s autopkgtest: DBG: testbed command ['mkdir', '-p', '/tmp/autopkgtest.9zB7bO'], kind short, sout raw, serr pipe, env [] 321s autopkgtest: DBG: testbed command exited with code 0 321s autopkgtest: DBG: sending command to testbed: copydown /home/ubuntu/autopkgtest/lib/in-testbed/reboot-prepare.sh /tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare 321s autopkgtest: DBG: got reply from testbed: ok 321s autopkgtest: DBG: testbed command ['chmod', '-R', '0755', '--', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare'], kind short, sout raw, serr pipe, env [] 321s autopkgtest: DBG: testbed command exited with code 0 321s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare', '/tmp/autopkgtest-reboot-prepare'], kind short, sout raw, serr pipe, env [] 321s autopkgtest: DBG: testbed command exited with code 0 321s autopkgtest: DBG: testbed command ['uname', '-srv'], kind short, sout pipe, serr pipe, env [] 322s autopkgtest: DBG: testbed command exited with code 0 322s autopkgtest: DBG: Binaries: no registered binaries, not publishing anything 322s autopkgtest: DBG: install_deps: deps_new=['python3-translate', 'python3-pytest', 'python3-all', 'subversion', 'python3-aeidon (>> 1.15~)', 'python3-bs4', 'python3-charset-normalizer', 'python3-cheroot', 'python3-cwcwidth', 'python3-diff-match-patch', 'python3-enchant', 'python3-iniparse', 'python3-levenshtein', 'python3-lxml', 'python3-mistletoe (>> 1.1.0~)', 'python3-phply (>> 1.2.4)', 'python3-pycountry (>> 17.5.14)', 'python3-pyparsing (>> 3)', 'python3-ruamel.yaml', 'python3-syrupy', 'python3-vobject', 'python3-xapian'] 322s autopkgtest: DBG: install-deps: satisfying python3-translate, python3-pytest, python3-all, subversion, python3-aeidon (>> 1.15~), python3-bs4, python3-charset-normalizer, python3-cheroot, python3-cwcwidth, python3-diff-match-patch, python3-enchant, python3-iniparse, python3-levenshtein, python3-lxml, python3-mistletoe (>> 1.1.0~), python3-phply (>> 1.2.4), python3-pycountry (>> 17.5.14), python3-pyparsing (>> 3), python3-ruamel.yaml, python3-syrupy, python3-vobject, python3-xapian 322s autopkgtest: DBG: can use apt-get on testbed: True 322s autopkgtest: DBG: testbed command ['/bin/sh', '-ec', '"$@" 3>&2 2>&1', 'run_apt_command', '/usr/bin/eatmydata', 'apt-get', '--quiet', '--assume-yes', '-o=APT::Status-Fd=3', '-o=APT::Install-Recommends=false', '-o=Dpkg::Options::=--force-confnew', '-o=Debug::pkgProblemResolver=true', 'satisfy', 'python3-translate, python3-pytest, python3-all, subversion, python3-aeidon (>> 1.15~), python3-bs4, python3-charset-normalizer, python3-cheroot, python3-cwcwidth, python3-diff-match-patch, python3-enchant, python3-iniparse, python3-levenshtein, python3-lxml, python3-mistletoe (>> 1.1.0~), python3-phply (>> 1.2.4), python3-pycountry (>> 17.5.14), python3-pyparsing (>> 3), python3-ruamel.yaml, python3-syrupy, python3-vobject, python3-xapian'], kind install, sout raw, serr pipe, env ['DEBIAN_FRONTEND=noninteractive', 'APT_LISTBUGS_FRONTEND=none', 'APT_LISTCHANGES_FRONTEND=none'] 322s Reading package lists... 322s Building dependency tree... 322s Reading state information... 322s Starting pkgProblemResolver with broken count: 0 322s Starting 2 pkgProblemResolver with broken count: 0 322s Done 322s The following NEW packages will be installed: 322s dictionaries-common emacsen-common gettext hunspell-en-us libapr1t64 322s libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data libgomp1 322s libhunspell-1.7-0 libnsl2 libpython3.12-minimal libpython3.12-stdlib 322s libserf-1-1 libsvn1 libutf8proc3 libxapian30 libxslt1.1 python3-aeidon 322s python3-all python3-bs4 python3-charset-normalizer python3-cheroot 322s python3-cwcwidth python3-dateutil python3-diff-match-patch python3-enchant 322s python3-iniconfig python3-iniparse python3-levenshtein python3-lxml 322s python3-mistletoe python3-packaging python3-phply python3-pluggy python3-ply 322s python3-pycountry python3-pytest python3-pytz python3-rapidfuzz 322s python3-ruamel.yaml python3-ruamel.yaml.clib python3-soupsieve 322s python3-syrupy python3-translate python3-tz python3-vobject python3-xapian 322s python3.12 python3.12-minimal subversion 323s 0 upgraded, 52 newly installed, 0 to remove and 0 not upgraded. 323s Need to get 19.0 MB of archives. 323s After this operation, 89.6 MB of additional disk space will be used. 323s Get:1 http://ftpmaster.internal/ubuntu plucky/main s390x libpython3.12-minimal s390x 3.12.9-1 [836 kB] 323s Get:2 http://ftpmaster.internal/ubuntu plucky/main s390x python3.12-minimal s390x 3.12.9-1 [2403 kB] 323s Get:3 http://ftpmaster.internal/ubuntu plucky/main s390x libnsl2 s390x 1.3.0-3build3 [44.1 kB] 323s Get:4 http://ftpmaster.internal/ubuntu plucky/main s390x libpython3.12-stdlib s390x 3.12.9-1 [2071 kB] 323s Get:5 http://ftpmaster.internal/ubuntu plucky/main s390x python3.12 s390x 3.12.9-1 [671 kB] 323s Get:6 http://ftpmaster.internal/ubuntu plucky/main s390x emacsen-common all 3.0.5 [12.1 kB] 323s Get:7 http://ftpmaster.internal/ubuntu plucky/main s390x dictionaries-common all 1.30.4 [176 kB] 323s Get:8 http://ftpmaster.internal/ubuntu plucky/main s390x libgomp1 s390x 15-20250213-1ubuntu1 [151 kB] 323s Get:9 http://ftpmaster.internal/ubuntu plucky/main s390x gettext s390x 0.23.1-1 [1065 kB] 323s Get:10 http://ftpmaster.internal/ubuntu plucky/main s390x hunspell-en-us all 1:2020.12.07-3 [586 kB] 323s Get:11 http://ftpmaster.internal/ubuntu plucky/main s390x libapr1t64 s390x 1.7.5-1 [114 kB] 323s Get:12 http://ftpmaster.internal/ubuntu plucky/main s390x libaprutil1t64 s390x 1.6.3-3ubuntu2 [98.4 kB] 323s Get:13 http://ftpmaster.internal/ubuntu plucky/main s390x libaspell15 s390x 0.60.8.1-4 [355 kB] 323s Get:14 http://ftpmaster.internal/ubuntu plucky/main s390x libhunspell-1.7-0 s390x 1.7.2+really1.7.2-10build3 [304 kB] 323s Get:15 http://ftpmaster.internal/ubuntu plucky/main s390x libenchant-2-2 s390x 2.8.2+dfsg1-3 [61.2 kB] 323s Get:16 http://ftpmaster.internal/ubuntu plucky/main s390x libexttextcat-data all 3.4.7-1build1 [193 kB] 323s Get:17 http://ftpmaster.internal/ubuntu plucky/universe s390x libserf-1-1 s390x 1.3.10-3ubuntu1 [49.8 kB] 323s Get:18 http://ftpmaster.internal/ubuntu plucky/universe s390x libutf8proc3 s390x 2.9.0-1build1 [71.1 kB] 323s Get:19 http://ftpmaster.internal/ubuntu plucky/universe s390x libsvn1 s390x 1.14.5-2 [1371 kB] 323s Get:20 http://ftpmaster.internal/ubuntu plucky/universe s390x libxapian30 s390x 1.4.25-2 [743 kB] 324s Get:21 http://ftpmaster.internal/ubuntu plucky/main s390x libxslt1.1 s390x 1.1.39-0exp1ubuntu2 [169 kB] 324s Get:22 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-aeidon all 1.15-2 [231 kB] 324s Get:23 http://ftpmaster.internal/ubuntu plucky/main s390x python3-all s390x 3.13.1-1~exp2 [898 B] 324s Get:24 http://ftpmaster.internal/ubuntu plucky/main s390x python3-soupsieve all 2.6-1 [33.0 kB] 324s Get:25 http://ftpmaster.internal/ubuntu plucky/main s390x python3-bs4 all 4.13.3-1 [136 kB] 324s Get:26 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-charset-normalizer s390x 3.4.1-1 [148 kB] 324s Get:27 http://ftpmaster.internal/ubuntu plucky/main s390x python3-cheroot all 10.0.1+ds1-3 [78.6 kB] 324s Get:28 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-cwcwidth s390x 0.1.10-1 [27.6 kB] 324s Get:29 http://ftpmaster.internal/ubuntu plucky/main s390x python3-dateutil all 2.9.0-3 [80.2 kB] 324s Get:30 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-diff-match-patch all 20241021-1 [33.6 kB] 324s Get:31 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-enchant all 3.3.0~rc1-1 [35.1 kB] 324s Get:32 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-iniconfig all 1.1.1-2 [6024 B] 324s Get:33 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-rapidfuzz s390x 3.12.1+ds-1 [1843 kB] 324s Get:34 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-levenshtein s390x 0.27.0-1 [211 kB] 324s Get:35 http://ftpmaster.internal/ubuntu plucky/main s390x python3-lxml s390x 5.3.1-1 [1773 kB] 324s Get:36 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-mistletoe all 1.4.0-1 [38.2 kB] 324s Get:37 http://ftpmaster.internal/ubuntu plucky/main s390x python3-packaging all 24.2-1 [51.5 kB] 324s Get:38 http://ftpmaster.internal/ubuntu plucky/main s390x python3-ply all 3.11-7 [45.4 kB] 324s Get:39 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-phply all 1.2.6-1 [50.5 kB] 324s Get:40 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-pluggy all 1.5.0-1 [21.0 kB] 324s Get:41 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-pytest all 8.3.4-1 [252 kB] 324s Get:42 http://ftpmaster.internal/ubuntu plucky/main s390x python3-pytz all 2025.1-3 [162 kB] 324s Get:43 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-ruamel.yaml.clib s390x 0.2.12+ds-1 [201 kB] 324s Get:44 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-ruamel.yaml all 0.18.10+ds-1 [127 kB] 324s Get:45 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-syrupy all 4.8.1-1 [45.4 kB] 324s Get:46 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-translate all 3.14.7-1 [319 kB] 324s Get:47 http://ftpmaster.internal/ubuntu plucky/main s390x python3-tz all 2025.1-3 [1866 B] 324s Get:48 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-vobject all 0.9.8+dfsg-2 [41.3 kB] 324s Get:49 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-xapian s390x 1.4.25-1build4 [527 kB] 324s Get:50 http://ftpmaster.internal/ubuntu plucky/universe s390x subversion s390x 1.14.5-2 [910 kB] 324s Get:51 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-iniparse all 0.5.1-1 [21.2 kB] 324s Get:52 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-pycountry all 24.6.1+ds1-1 [30.0 kB] 324s Preconfiguring packages ... 324s Fetched 19.0 MB in 2s (11.6 MB/s) 324s Selecting previously unselected package libpython3.12-minimal:s390x. 325s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 55929 files and directories currently installed.) 325s Preparing to unpack .../00-libpython3.12-minimal_3.12.9-1_s390x.deb ... 325s Unpacking libpython3.12-minimal:s390x (3.12.9-1) ... 325s Selecting previously unselected package python3.12-minimal. 325s Preparing to unpack .../01-python3.12-minimal_3.12.9-1_s390x.deb ... 325s Unpacking python3.12-minimal (3.12.9-1) ... 325s Selecting previously unselected package libnsl2:s390x. 325s Preparing to unpack .../02-libnsl2_1.3.0-3build3_s390x.deb ... 325s Unpacking libnsl2:s390x (1.3.0-3build3) ... 325s Selecting previously unselected package libpython3.12-stdlib:s390x. 325s Preparing to unpack .../03-libpython3.12-stdlib_3.12.9-1_s390x.deb ... 325s Unpacking libpython3.12-stdlib:s390x (3.12.9-1) ... 325s Selecting previously unselected package python3.12. 325s Preparing to unpack .../04-python3.12_3.12.9-1_s390x.deb ... 325s Unpacking python3.12 (3.12.9-1) ... 325s Selecting previously unselected package emacsen-common. 325s Preparing to unpack .../05-emacsen-common_3.0.5_all.deb ... 325s Unpacking emacsen-common (3.0.5) ... 325s Selecting previously unselected package dictionaries-common. 325s Preparing to unpack .../06-dictionaries-common_1.30.4_all.deb ... 325s Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common' 325s Unpacking dictionaries-common (1.30.4) ... 325s Selecting previously unselected package libgomp1:s390x. 325s Preparing to unpack .../07-libgomp1_15-20250213-1ubuntu1_s390x.deb ... 325s Unpacking libgomp1:s390x (15-20250213-1ubuntu1) ... 325s Selecting previously unselected package gettext. 325s Preparing to unpack .../08-gettext_0.23.1-1_s390x.deb ... 325s Unpacking gettext (0.23.1-1) ... 325s Selecting previously unselected package hunspell-en-us. 325s Preparing to unpack .../09-hunspell-en-us_1%3a2020.12.07-3_all.deb ... 325s Unpacking hunspell-en-us (1:2020.12.07-3) ... 325s Selecting previously unselected package libapr1t64:s390x. 325s Preparing to unpack .../10-libapr1t64_1.7.5-1_s390x.deb ... 325s Unpacking libapr1t64:s390x (1.7.5-1) ... 325s Selecting previously unselected package libaprutil1t64:s390x. 325s Preparing to unpack .../11-libaprutil1t64_1.6.3-3ubuntu2_s390x.deb ... 325s Unpacking libaprutil1t64:s390x (1.6.3-3ubuntu2) ... 325s Selecting previously unselected package libaspell15:s390x. 325s Preparing to unpack .../12-libaspell15_0.60.8.1-4_s390x.deb ... 325s Unpacking libaspell15:s390x (0.60.8.1-4) ... 325s Selecting previously unselected package libhunspell-1.7-0:s390x. 325s Preparing to unpack .../13-libhunspell-1.7-0_1.7.2+really1.7.2-10build3_s390x.deb ... 325s Unpacking libhunspell-1.7-0:s390x (1.7.2+really1.7.2-10build3) ... 325s Selecting previously unselected package libenchant-2-2:s390x. 325s Preparing to unpack .../14-libenchant-2-2_2.8.2+dfsg1-3_s390x.deb ... 325s Unpacking libenchant-2-2:s390x (2.8.2+dfsg1-3) ... 325s Selecting previously unselected package libexttextcat-data. 325s Preparing to unpack .../15-libexttextcat-data_3.4.7-1build1_all.deb ... 325s Unpacking libexttextcat-data (3.4.7-1build1) ... 325s Selecting previously unselected package libserf-1-1:s390x. 325s Preparing to unpack .../16-libserf-1-1_1.3.10-3ubuntu1_s390x.deb ... 325s Unpacking libserf-1-1:s390x (1.3.10-3ubuntu1) ... 325s Selecting previously unselected package libutf8proc3:s390x. 325s Preparing to unpack .../17-libutf8proc3_2.9.0-1build1_s390x.deb ... 325s Unpacking libutf8proc3:s390x (2.9.0-1build1) ... 325s Selecting previously unselected package libsvn1:s390x. 325s Preparing to unpack .../18-libsvn1_1.14.5-2_s390x.deb ... 325s Unpacking libsvn1:s390x (1.14.5-2) ... 325s Selecting previously unselected package libxapian30:s390x. 325s Preparing to unpack .../19-libxapian30_1.4.25-2_s390x.deb ... 325s Unpacking libxapian30:s390x (1.4.25-2) ... 325s Selecting previously unselected package libxslt1.1:s390x. 325s Preparing to unpack .../20-libxslt1.1_1.1.39-0exp1ubuntu2_s390x.deb ... 325s Unpacking libxslt1.1:s390x (1.1.39-0exp1ubuntu2) ... 325s Selecting previously unselected package python3-aeidon. 325s Preparing to unpack .../21-python3-aeidon_1.15-2_all.deb ... 325s Unpacking python3-aeidon (1.15-2) ... 325s Selecting previously unselected package python3-all. 325s Preparing to unpack .../22-python3-all_3.13.1-1~exp2_s390x.deb ... 325s Unpacking python3-all (3.13.1-1~exp2) ... 325s Selecting previously unselected package python3-soupsieve. 325s Preparing to unpack .../23-python3-soupsieve_2.6-1_all.deb ... 325s Unpacking python3-soupsieve (2.6-1) ... 325s Selecting previously unselected package python3-bs4. 325s Preparing to unpack .../24-python3-bs4_4.13.3-1_all.deb ... 325s Unpacking python3-bs4 (4.13.3-1) ... 325s Selecting previously unselected package python3-charset-normalizer. 325s Preparing to unpack .../25-python3-charset-normalizer_3.4.1-1_s390x.deb ... 325s Unpacking python3-charset-normalizer (3.4.1-1) ... 325s Selecting previously unselected package python3-cheroot. 325s Preparing to unpack .../26-python3-cheroot_10.0.1+ds1-3_all.deb ... 325s Unpacking python3-cheroot (10.0.1+ds1-3) ... 325s Selecting previously unselected package python3-cwcwidth. 325s Preparing to unpack .../27-python3-cwcwidth_0.1.10-1_s390x.deb ... 325s Unpacking python3-cwcwidth (0.1.10-1) ... 325s Selecting previously unselected package python3-dateutil. 325s Preparing to unpack .../28-python3-dateutil_2.9.0-3_all.deb ... 325s Unpacking python3-dateutil (2.9.0-3) ... 325s Selecting previously unselected package python3-diff-match-patch. 325s Preparing to unpack .../29-python3-diff-match-patch_20241021-1_all.deb ... 325s Unpacking python3-diff-match-patch (20241021-1) ... 325s Selecting previously unselected package python3-enchant. 325s Preparing to unpack .../30-python3-enchant_3.3.0~rc1-1_all.deb ... 325s Unpacking python3-enchant (3.3.0~rc1-1) ... 325s Selecting previously unselected package python3-iniconfig. 325s Preparing to unpack .../31-python3-iniconfig_1.1.1-2_all.deb ... 325s Unpacking python3-iniconfig (1.1.1-2) ... 325s Selecting previously unselected package python3-rapidfuzz. 325s Preparing to unpack .../32-python3-rapidfuzz_3.12.1+ds-1_s390x.deb ... 325s Unpacking python3-rapidfuzz (3.12.1+ds-1) ... 325s Selecting previously unselected package python3-levenshtein. 325s Preparing to unpack .../33-python3-levenshtein_0.27.0-1_s390x.deb ... 325s Unpacking python3-levenshtein (0.27.0-1) ... 325s Selecting previously unselected package python3-lxml:s390x. 325s Preparing to unpack .../34-python3-lxml_5.3.1-1_s390x.deb ... 325s Unpacking python3-lxml:s390x (5.3.1-1) ... 325s Selecting previously unselected package python3-mistletoe. 325s Preparing to unpack .../35-python3-mistletoe_1.4.0-1_all.deb ... 325s Unpacking python3-mistletoe (1.4.0-1) ... 325s Selecting previously unselected package python3-packaging. 325s Preparing to unpack .../36-python3-packaging_24.2-1_all.deb ... 325s Unpacking python3-packaging (24.2-1) ... 325s Selecting previously unselected package python3-ply. 325s Preparing to unpack .../37-python3-ply_3.11-7_all.deb ... 325s Unpacking python3-ply (3.11-7) ... 325s Selecting previously unselected package python3-phply. 325s Preparing to unpack .../38-python3-phply_1.2.6-1_all.deb ... 325s Unpacking python3-phply (1.2.6-1) ... 325s Selecting previously unselected package python3-pluggy. 325s Preparing to unpack .../39-python3-pluggy_1.5.0-1_all.deb ... 325s Unpacking python3-pluggy (1.5.0-1) ... 325s Selecting previously unselected package python3-pytest. 325s Preparing to unpack .../40-python3-pytest_8.3.4-1_all.deb ... 325s Unpacking python3-pytest (8.3.4-1) ... 325s Selecting previously unselected package python3-pytz. 325s Preparing to unpack .../41-python3-pytz_2025.1-3_all.deb ... 325s Unpacking python3-pytz (2025.1-3) ... 325s Selecting previously unselected package python3-ruamel.yaml.clib. 325s Preparing to unpack .../42-python3-ruamel.yaml.clib_0.2.12+ds-1_s390x.deb ... 325s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1) ... 325s Selecting previously unselected package python3-ruamel.yaml. 325s Preparing to unpack .../43-python3-ruamel.yaml_0.18.10+ds-1_all.deb ... 325s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ... 325s Selecting previously unselected package python3-syrupy. 325s Preparing to unpack .../44-python3-syrupy_4.8.1-1_all.deb ... 325s Unpacking python3-syrupy (4.8.1-1) ... 325s Selecting previously unselected package python3-translate. 325s Preparing to unpack .../45-python3-translate_3.14.7-1_all.deb ... 325s Unpacking python3-translate (3.14.7-1) ... 325s Selecting previously unselected package python3-tz. 325s Preparing to unpack .../46-python3-tz_2025.1-3_all.deb ... 325s Unpacking python3-tz (2025.1-3) ... 325s Selecting previously unselected package python3-vobject. 325s Preparing to unpack .../47-python3-vobject_0.9.8+dfsg-2_all.deb ... 325s Unpacking python3-vobject (0.9.8+dfsg-2) ... 325s Selecting previously unselected package python3-xapian. 325s Preparing to unpack .../48-python3-xapian_1.4.25-1build4_s390x.deb ... 325s Unpacking python3-xapian (1.4.25-1build4) ... 326s Selecting previously unselected package subversion. 326s Preparing to unpack .../49-subversion_1.14.5-2_s390x.deb ... 326s Unpacking subversion (1.14.5-2) ... 326s Selecting previously unselected package python3-iniparse. 326s Preparing to unpack .../50-python3-iniparse_0.5.1-1_all.deb ... 326s Unpacking python3-iniparse (0.5.1-1) ... 326s Selecting previously unselected package python3-pycountry. 326s Preparing to unpack .../51-python3-pycountry_24.6.1+ds1-1_all.deb ... 326s Unpacking python3-pycountry (24.6.1+ds1-1) ... 326s Setting up python3-iniconfig (1.1.1-2) ... 326s Setting up libxapian30:s390x (1.4.25-2) ... 326s Setting up python3-rapidfuzz (3.12.1+ds-1) ... 326s Setting up python3-diff-match-patch (20241021-1) ... 326s Setting up python3-aeidon (1.15-2) ... 326s Setting up libutf8proc3:s390x (2.9.0-1build1) ... 326s Setting up libaspell15:s390x (0.60.8.1-4) ... 326s Setting up python3-charset-normalizer (3.4.1-1) ... 327s Setting up python3-ply (3.11-7) ... 327s Setting up libpython3.12-minimal:s390x (3.12.9-1) ... 327s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1) ... 327s Setting up python3-pytz (2025.1-3) ... 327s Setting up libgomp1:s390x (15-20250213-1ubuntu1) ... 327s Setting up python3-tz (2025.1-3) ... 327s Setting up python3-packaging (24.2-1) ... 327s Setting up emacsen-common (3.0.5) ... 327s Setting up python3-cheroot (10.0.1+ds1-3) ... 327s Setting up python3-pycountry (24.6.1+ds1-1) ... 328s Setting up python3-xapian (1.4.25-1build4) ... 328s Setting up python3-cwcwidth (0.1.10-1) ... 328s Setting up python3-pluggy (1.5.0-1) ... 328s Setting up python3-ruamel.yaml (0.18.10+ds-1) ... 328s Setting up python3-mistletoe (1.4.0-1) ... 329s Setting up libexttextcat-data (3.4.7-1build1) ... 329s Setting up libapr1t64:s390x (1.7.5-1) ... 329s Setting up libnsl2:s390x (1.3.0-3build3) ... 329s Setting up libxslt1.1:s390x (1.1.39-0exp1ubuntu2) ... 329s Setting up python3-dateutil (2.9.0-3) ... 329s Setting up python3-levenshtein (0.27.0-1) ... 329s Setting up libhunspell-1.7-0:s390x (1.7.2+really1.7.2-10build3) ... 329s Setting up python3-soupsieve (2.6-1) ... 329s Setting up python3-iniparse (0.5.1-1) ... 329s Setting up python3.12-minimal (3.12.9-1) ... 330s Setting up libaprutil1t64:s390x (1.6.3-3ubuntu2) ... 330s Setting up python3-vobject (0.9.8+dfsg-2) ... 330s Setting up gettext (0.23.1-1) ... 330s Setting up libpython3.12-stdlib:s390x (3.12.9-1) ... 330s Setting up python3-phply (1.2.6-1) ... 331s Setting up dictionaries-common (1.30.4) ... 331s Setting up python3-pytest (8.3.4-1) ... 331s Setting up python3-syrupy (4.8.1-1) ... 331s Setting up python3.12 (3.12.9-1) ... 333s Setting up libserf-1-1:s390x (1.3.10-3ubuntu1) ... 333s Setting up python3-all (3.13.1-1~exp2) ... 333s Setting up python3-bs4 (4.13.3-1) ... 333s Setting up python3-lxml:s390x (5.3.1-1) ... 333s Setting up hunspell-en-us (1:2020.12.07-3) ... 333s Setting up libsvn1:s390x (1.14.5-2) ... 333s Setting up libenchant-2-2:s390x (2.8.2+dfsg1-3) ... 333s Setting up subversion (1.14.5-2) ... 333s Setting up python3-enchant (3.3.0~rc1-1) ... 333s Setting up python3-translate (3.14.7-1) ... 334s Processing triggers for libc-bin (2.40-4ubuntu1) ... 334s Processing triggers for systemd (257.2-3ubuntu1) ... 334s Processing triggers for man-db (2.13.0-1) ... 335s Processing triggers for install-info (7.1.1-1) ... 335s Processing triggers for dictionaries-common (1.30.4) ... 336s autopkgtest: DBG: testbed command exited with code 0 336s autopkgtest: DBG: testbed command ['dpkg-query', '--show', '-f', '${Status}', 'python3-translate'], kind short, sout pipe, serr pipe, env [] 336s autopkgtest: DBG: testbed command exited with code 0 336s autopkgtest: DBG: testbed command ['sh', '-ec', "dpkg-query --show -f '${Package}\\t${Version}\\n' > /tmp/autopkgtest.9zB7bO/python3-translate-packages.all"], kind short, sout raw, serr pipe, env [] 336s autopkgtest: DBG: testbed command exited with code 0 336s autopkgtest: DBG: sending command to testbed: copyup /tmp/autopkgtest.9zB7bO/python3-translate-packages.all /tmp/autopkgtest-work.dij5uc5o/out/python3-translate-packages.all 336s autopkgtest: DBG: got reply from testbed: ok 336s autopkgtest: DBG: testbed command ['test', '-e', '/tmp/autopkgtest.9zB7bO/build.lrp/src'], kind short, sout raw, serr raw, env [] 336s autopkgtest: DBG: testbed command exited with code 1 336s autopkgtest: DBG: testbed command ['mkdir', '-p', '/tmp/autopkgtest.9zB7bO/build.lrp'], kind short, sout raw, serr pipe, env [] 337s autopkgtest: DBG: testbed command exited with code 0 337s autopkgtest: DBG: sending command to testbed: copydown /tmp/autopkgtest-work.dij5uc5o/out/tests-tree/ /tmp/autopkgtest.9zB7bO/build.lrp/src/ 337s autopkgtest: DBG: got reply from testbed: ok 337s autopkgtest: DBG: testbed command ['chown', '-R', 'ubuntu', '--', '/tmp/autopkgtest.9zB7bO/build.lrp/src'], kind short, sout raw, serr pipe, env [] 338s autopkgtest: DBG: testbed command exited with code 0 338s autopkgtest [13:11:38]: test python3-translate: [----------------------- 338s autopkgtest: DBG: testbed command ['su', '-s', '/bin/bash', 'ubuntu', '-c', 'set -e; exec /tmp/autopkgtest.9zB7bO/wrapper.sh --debug --artifacts=/tmp/autopkgtest.9zB7bO/python3-translate-artifacts --chdir=/tmp/autopkgtest.9zB7bO/build.lrp/src --env=AUTOPKGTEST_TESTBED_ARCH=s390x --env=AUTOPKGTEST_TEST_ARCH=s390x --env=DEB_BUILD_OPTIONS=parallel=2 --env=DEBIAN_FRONTEND=noninteractive --env=LANG=C.UTF-8 --unset-env=LANGUAGE --unset-env=LC_ADDRESS --unset-env=LC_ALL --unset-env=LC_COLLATE --unset-env=LC_CTYPE --unset-env=LC_IDENTIFICATION --unset-env=LC_MEASUREMENT --unset-env=LC_MESSAGES --unset-env=LC_MONETARY --unset-env=LC_NAME --unset-env=LC_NUMERIC --unset-env=LC_PAPER --unset-env=LC_TELEPHONE --unset-env=LC_TIME --script-pid-file=/tmp/autopkgtest_script_pid --source-profile --stderr=/tmp/autopkgtest.9zB7bO/python3-translate-stderr --stdout=/tmp/autopkgtest.9zB7bO/python3-translate-stdout --tmp=/tmp/autopkgtest.9zB7bO/autopkgtest_tmp --env=ADT_TEST_TRIGGERS=sphinx/8.1.3-5 --make-executable=/tmp/autopkgtest.9zB7bO/build.lrp/src/debian/tests/python3-translate -- /tmp/autopkgtest.9zB7bO/build.lrp/src/debian/tests/python3-translate'], kind test, sout raw, serr raw, env [] 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: creating AUTOPKGTEST_ARTIFACTS: /tmp/autopkgtest.9zB7bO/python3-translate-artifacts 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: changing to directory: /tmp/autopkgtest.9zB7bO/build.lrp/src 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: AUTOPKGTEST_TESTBED_ARCH=s390x 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: AUTOPKGTEST_TEST_ARCH=s390x 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: DEB_BUILD_OPTIONS=parallel=2 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: DEBIAN_FRONTEND=noninteractive 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: LANG=C.UTF-8 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LANGUAGE 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_ADDRESS 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_ALL 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_COLLATE 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_CTYPE 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_IDENTIFICATION 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_MEASUREMENT 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_MESSAGES 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_MONETARY 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_NAME 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_NUMERIC 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_PAPER 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_TELEPHONE 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_TIME 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: will create pid file: /tmp/autopkgtest_script_pid 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: pretending to be a login shell 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: will write standard error to /tmp/autopkgtest.9zB7bO/python3-translate-stderr 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: will write stdout to /tmp/autopkgtest.9zB7bO/python3-translate-stdout 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: creating AUTOPKGTEST_TMP: /tmp/autopkgtest.9zB7bO/autopkgtest_tmp 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: ADT_TEST_TRIGGERS=sphinx/8.1.3-5 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: marking as executable: /tmp/autopkgtest.9zB7bO/build.lrp/src/debian/tests/python3-translate 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: command to run: /tmp/autopkgtest.9zB7bO/build.lrp/src/debian/tests/python3-translate 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: copying /tmp/tmp.N8H3EQAUF0/out to stdout and file: /tmp/autopkgtest.9zB7bO/python3-translate-stdout 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: copying /tmp/tmp.N8H3EQAUF0/err to standard error and file: /tmp/autopkgtest.9zB7bO/python3-translate-stdout 338s /tmp/autopkgtest.9zB7bO/wrapper.sh: writing script pid 2077 to /tmp/autopkgtest_script_pid 338s ============================= test session starts ============================== 338s platform linux -- Python 3.12.9, pytest-8.3.4, pluggy-1.5.0 -- /usr/bin/python3.12 338s cachedir: .pytest_cache 338s rootdir: /tmp/autopkgtest.9zB7bO/autopkgtest_tmp 338s plugins: syrupy-4.8.1, typeguard-4.4.1 344s collecting ... collected 3368 items / 2 skipped 344s 344s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff PASSED [ 0%] 344s tests/odf_xliff/test_odf_xliff.py::test_roundtrip PASSED [ 0%] 344s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff2_inline PASSED [ 0%] 344s tests/translate/convert/test_accesskey.py::test_get_label_and_accesskey PASSED [ 0%] 344s tests/translate/convert/test_accesskey.py::test_extract_bad_accesskeys PASSED [ 0%] 344s tests/translate/convert/test_accesskey.py::test_ignore_entities PASSED [ 0%] 344s tests/translate/convert/test_accesskey.py::test_alternate_accesskey_marker PASSED [ 0%] 344s tests/translate/convert/test_accesskey.py::test_unicode PASSED [ 0%] 344s tests/translate/convert/test_accesskey.py::test_numeric PASSED [ 0%] 344s tests/translate/convert/test_accesskey.py::test_empty_string PASSED [ 0%] 344s tests/translate/convert/test_accesskey.py::test_end_of_string PASSED [ 0%] 344s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey PASSED [ 0%] 344s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey_different_capitals PASSED [ 0%] 344s tests/translate/convert/test_accesskey.py::test_uncombinable PASSED [ 0%] 344s tests/translate/convert/test_accesskey.py::test_accesskey_already_in_text PASSED [ 0%] 344s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_no_template_units PASSED [ 0%] 344s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_template_units PASSED [ 0%] 344s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_no_template_units PASSED [ 0%] 344s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_template_units PASSED [ 0%] 344s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_help PASSED [ 0%] 344s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid PASSED [ 0%] 344s tests/translate/convert/test_convert.py::TestConvertCommand::test_help PASSED [ 0%] 344s tests/translate/convert/test_csv2po.py::test_replacestrings PASSED [ 0%] 344s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity PASSED [ 0%] 344s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity_with_template PASSED [ 0%] 344s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_newlines PASSED [ 0%] 344s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_tabs PASSED [ 0%] 344s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_quotes PASSED [ 0%] 344s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_empties PASSED [ 0%] 344s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_kdecomment PASSED [ 0%] 344s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_escaped_newlines PASSED [ 0%] 344s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity PASSED [ 0%] 344s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity_with_template PASSED [ 0%] 344s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_newlines PASSED [ 1%] 344s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_tabs PASSED [ 1%] 344s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_quotes PASSED [ 1%] 344s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_empties PASSED [ 1%] 344s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_kdecomment PASSED [ 1%] 344s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_escaped_newlines PASSED [ 1%] 344s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_help PASSED [ 1%] 344s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_simpleentity PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_convertdtd PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_apos PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_quotes PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_two_empty_entities PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity_translated PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisaton_note_simple PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisation_note_merge PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_simple PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_label PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_onlyentity PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_commentedout PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_spaces_at_start_of_dtd_lines PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_folding PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_mismatch PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_carriage_return_in_multiline_dtd PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_with_blankline PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_closing_quotes PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_preserving_spaces PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_escaping_newline_tabs PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_abandoned_accelerator PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_unassociable_accelerator PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_changed_labels_and_accelerators PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence XFAIL [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_exclude_entity_includes PASSED [ 1%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_linewraps PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merging_with_new_untranslated PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merge_without_template PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_simpleentity PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_convertdtd PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_apos PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_quotes PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_two_empty_entities PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity_translated PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisaton_note_simple PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisation_note_merge PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_simple PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_label PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_onlyentity PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_commentedout PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_spaces_at_start_of_dtd_lines PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_folding PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_mismatch PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_carriage_return_in_multiline_dtd PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_with_blankline PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_closing_quotes PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_preserving_spaces PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_escaping_newline_tabs PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_abandoned_accelerator PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_unassociable_accelerator PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_changed_labels_and_accelerators PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence XFAIL [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_exclude_entity_includes PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_linewraps PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merging_with_new_untranslated PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merge_without_template PASSED [ 2%] 344s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_help PASSED [ 2%] 344s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_defaults PASSED [ 2%] 344s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_root_name PASSED [ 3%] 344s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_value_name PASSED [ 3%] 344s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_key PASSED [ 3%] 344s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_default_namespace PASSED [ 3%] 344s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_namespace_prefix PASSED [ 3%] 344s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_all_parameters PASSED [ 3%] 344s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_empty_file_is_empty_store PASSED [ 3%] 344s tests/translate/convert/test_flatxml2po.py::TestFlatXML2POCommand::test_help PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_extract_lang_attribute_from_html_tag PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title_with_linebreak PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_meta PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_br PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak_and_embedded_br PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_uppercase_html PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div_with_linebreaks PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a_with_linebreak PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_sequence_of_anchor_elements PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_img_empty PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img_inside_a PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_table_summary PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_simple PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_complex PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_empty PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_address PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings_with_linebreaks PASSED [ 3%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dt PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dd PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_span PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_ul PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_lists PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_duplicates PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiline_reflow PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_tags PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_carriage_return PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_encoding_latin1 PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_strip_html PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_text PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_attributes PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_charrefs PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiple_php PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_multiline PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_with_embedded_html PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_comments PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2PO::test_attribute_without_value PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_extract_lang_attribute_from_html_tag PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title_with_linebreak PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_meta PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_br PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak_and_embedded_br PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_uppercase_html PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div_with_linebreaks PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a_with_linebreak PASSED [ 4%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_sequence_of_anchor_elements PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_img_empty PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img_inside_a PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_table_summary PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_simple PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_complex PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_empty PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_address PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings_with_linebreaks PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dt PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dd PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_span PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_ul PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_lists PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_duplicates PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiline_reflow PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_tags PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_carriage_return PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_encoding_latin1 PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_strip_html PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_text PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_attributes PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_charrefs PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiple_php PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_multiline PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_with_embedded_html PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_comments PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_attribute_without_value PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_help PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_single PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile PASSED [ 5%] 344s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile_to_stdout PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_convert_empty_file PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_translations PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_summary PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_description PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_location PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_comment PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_template_duplicate_style PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_misaligned_files PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_blank_msgstr PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_duplicate_style PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_convert_empty_file PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_translations PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_summary PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_description PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_location PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_comment PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_template_duplicate_style PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_misaligned_files PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_blank_msgstr PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_duplicate_style PASSED [ 6%] 344s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_help PASSED [ 6%] 344s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_help PASSED [ 6%] 344s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_convert PASSED [ 6%] 344s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_empty_file PASSED [ 6%] 344s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_no_translation PASSED [ 6%] 344s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_simple PASSED [ 6%] 344s tests/translate/convert/test_ini2po.py::TestIni2PO::test_no_duplicates PASSED [ 6%] 344s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_simple PASSED [ 6%] 344s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_misaligned_files PASSED [ 6%] 344s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_blank_msgstr PASSED [ 6%] 344s tests/translate/convert/test_ini2po.py::TestIni2PO::test_dialects_inno PASSED [ 7%] 344s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_empty_file PASSED [ 7%] 344s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_no_translation PASSED [ 7%] 344s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_simple PASSED [ 7%] 344s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_no_duplicates PASSED [ 7%] 344s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_simple PASSED [ 7%] 344s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_misaligned_files PASSED [ 7%] 344s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_blank_msgstr PASSED [ 7%] 344s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_dialects_inno PASSED [ 7%] 344s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_help PASSED [ 7%] 344s tests/translate/convert/test_json2po.py::TestJson2PO::test_simple PASSED [ 7%] 344s tests/translate/convert/test_json2po.py::TestJson2PO::test_three_same_keys PASSED [ 7%] 344s tests/translate/convert/test_json2po.py::TestJson2PO::test_filter PASSED [ 7%] 344s tests/translate/convert/test_json2po.py::TestJson2PO::test_miltiple_units PASSED [ 7%] 344s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_simple PASSED [ 7%] 344s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_three_same_keys PASSED [ 7%] 344s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_filter PASSED [ 7%] 344s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_miltiple_units PASSED [ 7%] 344s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_help PASSED [ 7%] 344s tests/translate/convert/test_md2po.py::TestMD2PO::test_help PASSED [ 7%] 344s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_single PASSED [ 7%] 344s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_onefile PASSED [ 7%] 344s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_single PASSED [ 7%] 344s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_onefile PASSED [ 7%] 344s tests/translate/convert/test_moz2po.py::TestMoz2POCommand::test_help PASSED [ 7%] 344s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_simpleentry PASSED [ 7%] 344s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_uncomment_contributors PASSED [ 7%] 344s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_convert_empty PASSED [ 7%] 344s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_string PASSED [ 7%] 344s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_merge PASSED [ 7%] 344s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_entry PASSED [ 7%] 344s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_comment PASSED [ 7%] 344s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_meta_tags PASSED [ 7%] 344s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_keep_duplicates PASSED [ 7%] 344s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_drop_duplicates PASSED [ 8%] 344s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_convert_empty PASSED [ 8%] 344s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_string PASSED [ 8%] 344s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_merge PASSED [ 8%] 344s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_entry PASSED [ 8%] 344s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_comment PASSED [ 8%] 344s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_meta_tags PASSED [ 8%] 344s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_keep_duplicates PASSED [ 8%] 344s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_drop_duplicates PASSED [ 8%] 344s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_help PASSED [ 8%] 344s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_help PASSED [ 8%] 344s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_convert PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2PO::test_simpleentity PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_escape PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_whitespaceonly PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2PO::test_double_escapes PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes_helpcontent2 PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2PO::test_msgid_bug_error_address PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2PO::test_x_comment_inclusion PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simpleentity PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_double_escapes PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_help PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_preserve_filename PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 8%] 344s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates PASSED [ 8%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_simpleentity PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_escape PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_whitespaceonly PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_double_escapes PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes_helpcontent2 PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_x_comment_inclusion PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_msgid_bug_error_address PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simpleentity PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_double_escapes PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_help PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_preserve_filename PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 344s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 344s tests/translate/convert/test_php2po.py::TestPhp2PO::test_simpleentry PASSED [ 9%] 344s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphp PASSED [ 9%] 344s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphptemplate PASSED [ 9%] 344s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpmissing PASSED [ 9%] 344s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpempty PASSED [ 9%] 344s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unicode PASSED [ 9%] 344s tests/translate/convert/test_php2po.py::TestPhp2PO::test_multiline PASSED [ 9%] 344s tests/translate/convert/test_php2po.py::TestPhp2PO::test_comments_before PASSED [ 9%] 344s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry PASSED [ 9%] 344s tests/translate/convert/test_php2po.py::TestPhp2PO::test_hash_comment_with_equals PASSED [ 9%] 344s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry_translated PASSED [ 9%] 344s tests/translate/convert/test_php2po.py::TestPhp2PO::test_newlines_in_value PASSED [ 9%] 344s tests/translate/convert/test_php2po.py::TestPhp2PO::test_spaces_in_name PASSED [ 10%] 344s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_array PASSED [ 10%] 344s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_array PASSED [ 10%] 344s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_nested_arrays PASSED [ 10%] 344s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_nested_arrays PASSED [ 10%] 344s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_simpleentry PASSED [ 10%] 345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphp PASSED [ 10%] 345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphptemplate PASSED [ 10%] 345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpmissing PASSED [ 10%] 345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpempty PASSED [ 10%] 345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unicode PASSED [ 10%] 345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_multiline PASSED [ 10%] 345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_comments_before PASSED [ 10%] 345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry PASSED [ 10%] 345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_hash_comment_with_equals PASSED [ 10%] 345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry_translated PASSED [ 10%] 345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_newlines_in_value PASSED [ 10%] 345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_spaces_in_name PASSED [ 10%] 345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_array PASSED [ 10%] 345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_array PASSED [ 10%] 345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_nested_arrays PASSED [ 10%] 345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_nested_arrays PASSED [ 10%] 345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_help PASSED [ 10%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_simpleentity PASSED [ 10%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_multiline PASSED [ 10%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapednewlines PASSED [ 10%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedtabs PASSED [ 10%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedquotes PASSED [ 10%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedescape PASSED [ 10%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_singlequotes PASSED [ 10%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_empties PASSED [ 10%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_kdecomments PASSED [ 10%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_simpleentity PASSED [ 10%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_multiline PASSED [ 10%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapednewlines PASSED [ 11%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedtabs PASSED [ 11%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedquotes PASSED [ 11%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedescape PASSED [ 11%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_singlequotes PASSED [ 11%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_empties PASSED [ 11%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_kdecomments PASSED [ 11%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_help PASSED [ 11%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder PASSED [ 11%] 345s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_joinlines PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_escapedstr PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_missingaccesskey PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskeycase PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_types PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities_two PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments_translator PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_retains_hashprefix PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_convertdtd PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_with_template PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_without_template PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_blank_source PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_newlines_escapes PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_simple PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_escape PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_quotes PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_amp PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_merging_entries_with_spaces_removed PASSED [ 11%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces_after_value PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_duplicates PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_joinlines PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_escapedstr PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_missingaccesskey PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskeycase PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_types PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities_two PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments_translator PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_retains_hashprefix PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_convertdtd PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_with_template PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_without_template PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_blank_source PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_newlines_escapes PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_simple PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_escape PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_quotes PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_amp PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_merging_entries_with_spaces_removed PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces_after_value PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_duplicates PASSED [ 12%] 345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_help PASSED [ 12%] 345s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_defaults PASSED [ 13%] 345s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_root_name PASSED [ 13%] 345s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_value_name PASSED [ 13%] 345s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_key PASSED [ 13%] 345s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_default_namespace PASSED [ 13%] 345s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_namespace_prefix PASSED [ 13%] 345s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_indent_eight PASSED [ 13%] 345s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_noindent PASSED [ 13%] 345s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXMLCommand::test_help PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2Html::test_simple PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2Html::test_linebreaks PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2Html::test_replace_substrings PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_outside_translatable_content PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_embedded_within_translatable_content PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_without_value PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2Html::test_entities PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2Html::test_escapes PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_translated PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_untranslated PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_fuzzy PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2Html::test_untranslated_attributes PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_simple PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_linebreaks PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_replace_substrings PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_outside_translatable_content PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_embedded_within_translatable_content PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_without_value PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_entities PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_escapes PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_translated PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_untranslated PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_fuzzy PASSED [ 13%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_untranslated_attributes PASSED [ 14%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_help PASSED [ 14%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_individual_files PASSED [ 14%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_fully_recursive PASSED [ 14%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_input_specified PASSED [ 14%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified PASSED [ 14%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_output_specified PASSED [ 14%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file PASSED [ 14%] 345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_empty_file PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_summary PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_description PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_location PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_comment PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_complex_icalendar PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_skip_fuzzy PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_include_fuzzy PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_no_template PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_template_location_not_in_source_file PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_below_threshold PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_above_threshold PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_empty_file PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_summary PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_description PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_location PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_comment PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_complex_icalendar PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_skip_fuzzy PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_include_fuzzy PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_no_template PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_template_location_not_in_source_file PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_below_threshold PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_above_threshold PASSED [ 14%] 345s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_help PASSED [ 14%] 345s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_help PASSED [ 15%] 345s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_no_templates PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_simple PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_space_preservation PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_blank_entries PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_fuzzy PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_propertyless_template PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_empty_value PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_dialects_inno PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_misaligned_files PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_below_threshold PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_above_threshold PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_no_fuzzy PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_allow_fuzzy PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_missing_source PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_repeated_locations PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_no_templates PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_simple PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_space_preservation PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_blank_entries PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_fuzzy PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_propertyless_template PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_empty_value PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_dialects_inno PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_misaligned_files PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_below_threshold PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_above_threshold PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_no_fuzzy PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_allow_fuzzy PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_missing_source PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_repeated_locations PASSED [ 15%] 345s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_help PASSED [ 15%] 345s tests/translate/convert/test_po2json.py::TestPO2JSON::test_basic PASSED [ 16%] 345s tests/translate/convert/test_po2json.py::TestPO2JSON::test_ordering_serialize PASSED [ 16%] 345s tests/translate/convert/test_po2json.py::TestPO2JSON::test_dont_use_empty_translation PASSED [ 16%] 345s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_false PASSED [ 16%] 345s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_true PASSED [ 16%] 345s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_false PASSED [ 16%] 345s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_true PASSED [ 16%] 345s tests/translate/convert/test_po2md.py::TestPO2MD::test_help PASSED [ 16%] 345s tests/translate/convert/test_po2md.py::TestPO2MD::test_single_markdown_file_with_single_po PASSED [ 16%] 345s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po PASSED [ 16%] 345s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_and_directory_of_po_files PASSED [ 16%] 345s tests/translate/convert/test_po2moz.py::TestPO2MozCommand::test_help PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_empty PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_simple PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_comment PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_ok_marker PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_below_threshold PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_above_threshold PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_skip_non_translatable_input PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_no_fuzzy PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_allow_fuzzy PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_mark_active PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_empty PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_simple PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_comment PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_ok_marker PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_below_threshold PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_above_threshold PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_skip_non_translatable_input PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_no_fuzzy PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_allow_fuzzy PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_mark_active PASSED [ 16%] 345s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_help PASSED [ 16%] 345s tests/translate/convert/test_po2oo.py::TestPO2OO::test_convertoo PASSED [ 16%] 345s tests/translate/convert/test_po2oo.py::TestPO2OO::test_pofilter PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_simple PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_escape PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_quotes PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_spaces PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OO::test_default_timestamp PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OO::test_escape_conversion PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes2 PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_convertoo PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_pofilter PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_simple PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_quotes PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_spaces PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_escape_conversion PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes2 PASSED [ 17%] 345s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_help PASSED [ 17%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp PASSED [ 17%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_notemplate PASSED [ 17%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_empty_template PASSED [ 17%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_simple PASSED [ 17%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_space_preservation PASSED [ 17%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_preserve_unused_statement PASSED [ 17%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_not_translated_multiline PASSED [ 17%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_blank_entries PASSED [ 17%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_fuzzy PASSED [ 17%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_locations_with_spaces PASSED [ 17%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_inline_comments PASSED [ 17%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_block_comments PASSED [ 17%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_variables PASSED [ 17%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_multiline PASSED [ 17%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_hash_comment PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_arrays PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_nested_array PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_unnamed_nested_arrays PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template XFAIL [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_notemplate PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_empty_template PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_simple PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_space_preservation PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_preserve_unused_statement PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_not_translated_multiline PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_blank_entries PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_fuzzy PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_locations_with_spaces PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_inline_comments PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_block_comments PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_variables PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_multiline PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_hash_comment PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_arrays PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_nested_array PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_unnamed_nested_arrays PASSED [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template XFAIL [ 18%] 345s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_help PASSED [ 18%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_simple PASSED [ 18%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated PASSED [ 18%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_hard_newlines_preserved PASSED [ 18%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_space_preservation PASSED [ 18%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_value PASSED [ 18%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_separator PASSED [ 18%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank_entries PASSED [ 18%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_fuzzy PASSED [ 18%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_margin_whitespace PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_all_whitespace PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_propertyless_template PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_delimiters PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_empty_value PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_personalities PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_simple PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline2 PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_comments PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_unchanged PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gaia_plurals PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_duplicates PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gwt_plurals PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_simple PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_hard_newlines_preserved PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_space_preservation PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_value PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_separator PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank_entries PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_fuzzy PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_margin_whitespace PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_all_whitespace PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_propertyless_template PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_delimiters PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_empty_value PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_personalities PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_simple PASSED [ 19%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline PASSED [ 20%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline2 PASSED [ 20%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_comments PASSED [ 20%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_unchanged PASSED [ 20%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank PASSED [ 20%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gaia_plurals PASSED [ 20%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_duplicates PASSED [ 20%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gwt_plurals PASSED [ 20%] 345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_help PASSED [ 20%] 345s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_help PASSED [ 20%] 345s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert PASSED [ 20%] 346s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_quotes PASSED [ 20%] 346s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment PASSED [ 20%] 346s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_dos_eol PASSED [ 20%] 346s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_double_string PASSED [ 20%] 346s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_popup PASSED [ 20%] 346s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_discardable PASSED [ 20%] 346s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_menuex PASSED [ 20%] 346s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_newlines PASSED [ 20%] 346s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_after PASSED [ 20%] 346s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_block_language PASSED [ 20%] 346s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_output_encoding PASSED [ 20%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_simpleunit PASSED [ 20%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_basic PASSED [ 20%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_multiline PASSED [ 20%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapednewlines PASSED [ 20%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedtabs PASSED [ 20%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedquotes PASSED [ 20%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_exclusions PASSED [ 20%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments PASSED [ 20%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingcomment PASSED [ 20%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecomment PASSED [ 20%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 20%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments PASSED [ 20%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingcomment PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingduplicatecomment PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingcomment PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_existingcomments PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_simpleunit PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_basic PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_multiline PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapednewlines PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedtabs PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedquotes PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_exclusions PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingcomment PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingcomment PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingduplicatecomment PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingcomment PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_existingcomments PASSED [ 21%] 346s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_help PASSED [ 21%] 346s tests/translate/convert/test_po2sub.py::TestPO2Sub::test_subrip PASSED [ 21%] 346s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_subrip PASSED [ 21%] 346s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_help PASSED [ 21%] 346s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_empty PASSED [ 21%] 346s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert PASSED [ 21%] 346s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_marked_untranslated PASSED [ 21%] 346s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_empty PASSED [ 21%] 346s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert PASSED [ 21%] 346s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_marked_untranslated PASSED [ 22%] 346s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_help PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_basic PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcelanguage PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_targetlanguage PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_multiline PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapednewlines PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedtabs PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedquotes PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_exclusions PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonascii PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonecomments PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_otherscomments PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcecomments PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_typecomments PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_basic PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcelanguage PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_targetlanguage PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_multiline PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapednewlines PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedtabs PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedquotes PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_exclusions PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonascii PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonecomments PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_otherscomments PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcecomments PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_typecomments PASSED [ 22%] 346s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_help PASSED [ 22%] 346s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simpleunit PASSED [ 22%] 346s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simple_unicode_unit PASSED [ 22%] 346s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fullunit PASSED [ 22%] 346s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fuzzyunit PASSED [ 22%] 346s tests/translate/convert/test_po2ts.py::TestPO2TS::test_obsolete PASSED [ 22%] 346s tests/translate/convert/test_po2ts.py::TestPO2TS::test_duplicates PASSED [ 23%] 346s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak PASSED [ 23%] 346s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak_consecutive PASSED [ 23%] 346s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simpleunit PASSED [ 23%] 346s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simple_unicode_unit PASSED [ 23%] 346s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fullunit PASSED [ 23%] 346s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fuzzyunit PASSED [ 23%] 346s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_obsolete PASSED [ 23%] 346s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_duplicates PASSED [ 23%] 346s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak PASSED [ 23%] 346s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak_consecutive PASSED [ 23%] 346s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_help PASSED [ 23%] 346s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_basic PASSED [ 23%] 346s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_nonascii PASSED [ 23%] 346s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_blank_handling PASSED [ 23%] 346s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_fuzzy_handling PASSED [ 23%] 346s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_obsolete_ignore PASSED [ 23%] 346s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_header_ignore PASSED [ 23%] 346s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_below_threshold PASSED [ 23%] 346s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_above_threshold PASSED [ 23%] 346s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_basic PASSED [ 23%] 346s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_nonascii PASSED [ 23%] 346s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_blank_handling PASSED [ 23%] 346s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_fuzzy_handling PASSED [ 23%] 346s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_obsolete_ignore PASSED [ 23%] 346s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_header_ignore PASSED [ 23%] 346s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_below_threshold PASSED [ 23%] 346s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_above_threshold PASSED [ 23%] 346s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_help PASSED [ 23%] 346s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_basic PASSED [ 23%] 346s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_unicode PASSED [ 23%] 346s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_ordering_serialize PASSED [ 23%] 346s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_markmin PASSED [ 23%] 346s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_minimal PASSED [ 23%] 346s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_basic PASSED [ 24%] 346s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_multiline PASSED [ 24%] 346s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapednewlines PASSED [ 24%] 346s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedtabs PASSED [ 24%] 346s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedquotes PASSED [ 24%] 346s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_locationcomments PASSED [ 24%] 346s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_othercomments PASSED [ 24%] 346s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_automaticcomments PASSED [ 24%] 346s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_header PASSED [ 24%] 346s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_fuzzy PASSED [ 24%] 346s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_germanic_plurals PASSED [ 24%] 346s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_funny_plurals PASSED [ 24%] 346s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_language_tags PASSED [ 24%] 346s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_variables PASSED [ 24%] 346s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_approved PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_empty_PO PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_no_templates PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple_output PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_translated PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_no_fuzzy PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_allow_fuzzy PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_nested PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_below_threshold PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_above_threshold PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_empty_PO PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_no_templates PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple_output PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_translated PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_no_fuzzy PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_allow_fuzzy PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_nested PASSED [ 24%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_below_threshold PASSED [ 25%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_above_threshold PASSED [ 25%] 346s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_help PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank_plurals PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_simple PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_messages_marked_fuzzy PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals_with_fuzzy_matching PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change XFAIL [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_change PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_and_whitespace_change PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_ambiguous_with_disambiguous PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes XFAIL [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently XFAIL [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_dont_duplicate PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_new_overides_old PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments_with_blank_comment_lines PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_commentlines PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgidcomments PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_with_msgidcomment PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_obsoleting_messages PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_not_obsoleting_empty_messages PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_new_before_obsolete PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_header_initialisation PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_typecomments PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt_multiline PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_location PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_id PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_msgid PASSED [ 25%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_migrate_msgidcomment_to_msgctxt PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_obsolete_msgctxt PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_small_strings PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank_plurals PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_simple PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_messages_marked_fuzzy PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change XFAIL [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_change PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_and_whitespace_change PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_ambiguous_with_disambiguous PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes XFAIL [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently XFAIL [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_new_overides_old PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments_with_blank_comment_lines PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_commentlines PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgidcomments PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_with_msgidcomment PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_obsoleting_messages PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_not_obsoleting_empty_messages PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_new_before_obsolete PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_header_initialisation PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_typecomments PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt_multiline PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_location PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_id PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_msgid PASSED [ 26%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_migrate_msgidcomment_to_msgctxt PASSED [ 27%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_obsolete_msgctxt PASSED [ 27%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_small_strings PASSED [ 27%] 346s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_help PASSED [ 27%] 346s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_no_endlines_added PASSED [ 27%] 346s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_uncomment_contributors PASSED [ 27%] 346s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_multiline_comment_newlines PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_simpleentry PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_convertprop PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_value_entry PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_separator_entry PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_end_of_string PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_start_of_value PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unicode PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_escaping PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_comments PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_comments PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_folding_accesskeys PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_dont_translate PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty_translated PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_newlines_in_value PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_header_comments PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unassociated_comment_order PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_x_header PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gaia_plurals PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_successive_gaia_plurals PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_duplicate_keys PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gwt_plurals PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_simpleentry PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_convertprop PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_value_entry PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_separator_entry PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_end_of_string PASSED [ 27%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_start_of_value PASSED [ 28%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unicode PASSED [ 28%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_escaping PASSED [ 28%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_comments PASSED [ 28%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_comments PASSED [ 28%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_folding_accesskeys PASSED [ 28%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_dont_translate PASSED [ 28%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty PASSED [ 28%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty_translated PASSED [ 28%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_newlines_in_value PASSED [ 28%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_header_comments PASSED [ 28%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unassociated_comment_order PASSED [ 28%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_x_header PASSED [ 28%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gaia_plurals PASSED [ 28%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_successive_gaia_plurals PASSED [ 28%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_duplicate_keys PASSED [ 28%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gwt_plurals PASSED [ 28%] 346s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_help PASSED [ 28%] 346s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_help PASSED [ 28%] 347s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert PASSED [ 28%] 347s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 PASSED [ 28%] 347s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong PASSED [ 28%] 347s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 PASSED [ 28%] 347s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex PASSED [ 28%] 347s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_simple PASSED [ 28%] 347s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_multiple_units PASSED [ 28%] 347s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_automaticcomments PASSED [ 28%] 347s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_translatorcomments PASSED [ 28%] 347s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_locations PASSED [ 28%] 347s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple PASSED [ 28%] 347s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_multiple_units PASSED [ 28%] 347s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_automaticcomments PASSED [ 28%] 347s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_translatorcomments PASSED [ 28%] 347s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_locations PASSED [ 29%] 347s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_help PASSED [ 29%] 347s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot PASSED [ 29%] 347s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po PASSED [ 29%] 347s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates PASSED [ 29%] 347s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_convert_empty PASSED [ 29%] 347s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_defaults PASSED [ 29%] 347s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_includeunused PASSED [ 29%] 347s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_convert_empty PASSED [ 29%] 347s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_defaults PASSED [ 29%] 347s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_includeunused PASSED [ 29%] 347s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_help PASSED [ 29%] 347s tests/translate/convert/test_ts2po.py::TestTS2PO::test_blank PASSED [ 29%] 347s tests/translate/convert/test_ts2po.py::TestTS2PO::test_basic PASSED [ 29%] 347s tests/translate/convert/test_ts2po.py::TestTS2PO::test_unfinished PASSED [ 29%] 347s tests/translate/convert/test_ts2po.py::TestTS2PO::test_multiline PASSED [ 29%] 347s tests/translate/convert/test_ts2po.py::TestTS2PO::test_obsolete PASSED [ 29%] 347s tests/translate/convert/test_ts2po.py::TestTS2PO::test_comment PASSED [ 29%] 347s tests/translate/convert/test_ts2po.py::TestTS2PO::test_extracomment PASSED [ 29%] 347s tests/translate/convert/test_ts2po.py::TestTS2PO::test_emptycontext PASSED [ 29%] 347s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_blank PASSED [ 29%] 347s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_basic PASSED [ 29%] 347s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_unfinished PASSED [ 29%] 347s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_multiline PASSED [ 29%] 347s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_obsolete PASSED [ 29%] 347s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_comment PASSED [ 29%] 347s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_extracomment PASSED [ 29%] 347s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_emptycontext PASSED [ 29%] 347s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_help PASSED [ 29%] 347s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_convert_empty PASSED [ 29%] 347s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_keep_duplicates PASSED [ 29%] 347s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_drop_duplicates PASSED [ 29%] 347s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_simple PASSED [ 29%] 347s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_multiple_units PASSED [ 29%] 347s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_carriage_return PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_merge PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_no_segmentation PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestDoku2po::test_convert_empty PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestDoku2po::test_keep_duplicates PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestDoku2po::test_drop_duplicates PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestDoku2po::test_basic PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestDoku2po::test_bullet_list PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestDoku2po::test_numbered_list PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestDoku2po::test_spacing PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestDoku2po::test_merge PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_convert_empty PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_keep_duplicates PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_drop_duplicates PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_simple PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_multiple_units PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_carriage_return PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_merge PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_no_segmentation PASSED [ 30%] 347s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_help PASSED [ 30%] 347s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_basic PASSED [ 30%] 347s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_unicode PASSED [ 30%] 347s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_markmin PASSED [ 30%] 347s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_help PASSED [ 30%] 347s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert PASSED [ 30%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_minimal PASSED [ 30%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_basic PASSED [ 30%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_translatorcomments PASSED [ 30%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_autocomment PASSED [ 30%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_locations PASSED [ 30%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_fuzzy PASSED [ 30%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_plurals PASSED [ 30%] 347s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_minimal PASSED [ 30%] 347s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_basic PASSED [ 30%] 347s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_translatorcomments PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_autocomment PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_locations PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_fuzzy PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_plurals PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_help PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_simple_convert PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_minimal PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_basic PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_translatorcomments PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_autocomment PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_locations PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_fuzzy PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_plurals PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_help PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po PASSED [ 31%] 347s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates PASSED [ 31%] 347s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_empty_YAML PASSED [ 31%] 347s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple_output PASSED [ 31%] 347s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple PASSED [ 31%] 347s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_nested PASSED [ 31%] 347s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates XFAIL [ 31%] 347s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_with_template PASSED [ 31%] 347s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_empty_YAML PASSED [ 31%] 347s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple_output PASSED [ 31%] 347s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple PASSED [ 31%] 347s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_nested PASSED [ 31%] 347s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates XFAIL [ 31%] 347s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_with_template PASSED [ 31%] 347s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_help PASSED [ 31%] 347s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_empty_target PASSED [ 31%] 347s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_ellipsis PASSED [ 32%] 347s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_spacestart_spaceend PASSED [ 32%] 347s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_start_capitals PASSED [ 32%] 347s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_end_punc PASSED [ 32%] 347s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_combinations PASSED [ 32%] 347s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_nothing_to_do PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_defaults PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_construct PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_accelerator_markers PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_messages PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_accelerators PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_acceleratedvariables XFAIL [ 32%] 347s tests/translate/filters/test_checks.py::test_acronyms PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_blank PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_brackets PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_compendiumconflicts PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_doublequoting PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_doublespacing PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_doublewords PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_endpunc PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_endwhitespace PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_escapes PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_newlines PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_tabs PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_filepaths PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_kdecomments PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_long PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_musttranslatewords XFAIL [ 32%] 347s tests/translate/filters/test_checks.py::test_notranslatewords PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_numbers PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_persian_numbers PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_bengali_numbers PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_arabic_numbers PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_assamese_numbers PASSED [ 32%] 347s tests/translate/filters/test_checks.py::test_options PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_printf PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_pythonbraceformat PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_puncspacing PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_purepunc PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_sentencecount PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_short PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_singlequoting PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_vietnamese_singlequoting PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time XFAIL [ 33%] 347s tests/translate/filters/test_checks.py::test_persian_quoting PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_simplecaps PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_spellcheck SKIPPED (Spe...) [ 33%] 347s tests/translate/filters/test_checks.py::test_startcaps PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_startpunc PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_startwhitespace PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_unchanged PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_untranslated PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_validchars PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_minimalchecker PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_reducedchecker PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_variables_kde PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_variables_gnome PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_variables_mozilla PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_variables_openoffice PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_variables_cclicense PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_variables_ios PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_xmltags PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags XFAIL [ 33%] 347s tests/translate/filters/test_checks.py::test_ooxmltags PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_functions PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_emails PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_urls PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_simpleplurals PASSED [ 33%] 347s tests/translate/filters/test_checks.py::test_nplurals PASSED [ 34%] 347s tests/translate/filters/test_checks.py::test_credits PASSED [ 34%] 347s tests/translate/filters/test_checks.py::test_gconf PASSED [ 34%] 347s tests/translate/filters/test_checks.py::test_validxml PASSED [ 34%] 347s tests/translate/filters/test_checks.py::test_hassuggestion PASSED [ 34%] 347s tests/translate/filters/test_checks.py::test_dialogsizes PASSED [ 34%] 347s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers PASSED [ 34%] 347s tests/translate/filters/test_checks.py::test_mozilla_no_accelerators_for_indic PASSED [ 34%] 347s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker PASSED [ 34%] 347s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source PASSED [ 34%] 347s tests/translate/filters/test_checks.py::test_ensure_bengali_languages_script_is_correct PASSED [ 34%] 347s tests/translate/filters/test_checks.py::test_category PASSED [ 34%] 347s tests/translate/filters/test_decoration.py::test_spacestart PASSED [ 34%] 347s tests/translate/filters/test_decoration.py::test_isvalidaccelerator PASSED [ 34%] 347s tests/translate/filters/test_decoration.py::test_find_marked_variables PASSED [ 34%] 347s tests/translate/filters/test_decoration.py::test_getnumbers PASSED [ 34%] 347s tests/translate/filters/test_decoration.py::test_getfunctions PASSED [ 34%] 347s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplepass PASSED [ 34%] 347s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplefail PASSED [ 34%] 347s tests/translate/filters/test_pofilter.py::TestPOFilter::test_variables_across_lines PASSED [ 34%] 347s tests/translate/filters/test_pofilter.py::TestPOFilter::test_ignore_if_already_marked PASSED [ 34%] 347s tests/translate/filters/test_pofilter.py::TestPOFilter::test_non_existant_check PASSED [ 34%] 347s tests/translate/filters/test_pofilter.py::TestPOFilter::test_list_all_tests PASSED [ 34%] 347s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_fuzzy PASSED [ 34%] 347s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_review PASSED [ 34%] 347s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isfuzzy PASSED [ 34%] 347s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isreview PASSED [ 34%] 347s tests/translate/filters/test_pofilter.py::TestPOFilter::test_notes PASSED [ 34%] 347s tests/translate/filters/test_pofilter.py::TestPOFilter::test_unicode PASSED [ 34%] 347s tests/translate/filters/test_pofilter.py::TestPOFilter::test_preconditions PASSED [ 34%] 347s tests/translate/filters/test_pofilter.py::TestPOFilter::test_msgid_comments PASSED [ 34%] 347s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplepass PASSED [ 34%] 347s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplefail PASSED [ 34%] 347s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_variables_across_lines PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_ignore_if_already_marked PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_non_existant_check PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_list_all_tests PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_fuzzy PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_review PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isfuzzy PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isreview PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_notes PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_unicode PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_preconditions PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplepass PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplefail PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_variables_across_lines PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_ignore_if_already_marked PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_non_existant_check PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_list_all_tests PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_notes PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_unicode PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_preconditions PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_fuzzy PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_review PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isfuzzy PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isreview PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplepass PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplefail PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_variables_across_lines PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_ignore_if_already_marked PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_non_existant_check PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_list_all_tests PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_fuzzy PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_review PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isfuzzy PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isreview PASSED [ 35%] 347s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_notes PASSED [ 36%] 347s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_unicode PASSED [ 36%] 347s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_preconditions PASSED [ 36%] 347s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_msgid_comments PASSED [ 36%] 347s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_cedillas PASSED [ 36%] 347s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_niciun PASSED [ 36%] 347s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_nicio PASSED [ 36%] 347s tests/translate/filters/test_prefilters.py::test_removekdecomments PASSED [ 36%] 347s tests/translate/filters/test_prefilters.py::test_filterwordswithpunctuation PASSED [ 36%] 347s tests/translate/lang/test_af.py::test_sentences PASSED [ 36%] 347s tests/translate/lang/test_af.py::test_capsstart PASSED [ 36%] 347s tests/translate/lang/test_af.py::test_transliterate_cyrillic PASSED [ 36%] 347s tests/translate/lang/test_am.py::test_punctranslate PASSED [ 36%] 347s tests/translate/lang/test_am.py::test_sentences PASSED [ 36%] 347s tests/translate/lang/test_ar.py::test_punctranslate PASSED [ 36%] 347s tests/translate/lang/test_ar.py::test_sentences PASSED [ 36%] 347s tests/translate/lang/test_common.py::test_characters PASSED [ 36%] 347s tests/translate/lang/test_common.py::test_words PASSED [ 36%] 347s tests/translate/lang/test_common.py::test_word_khmer XFAIL (ZWS is n...) [ 36%] 347s tests/translate/lang/test_common.py::test_sentences PASSED [ 36%] 347s tests/translate/lang/test_common.py::test_capsstart PASSED [ 36%] 347s tests/translate/lang/test_common.py::test_numstart PASSED [ 36%] 347s tests/translate/lang/test_common.py::test_punctranslate PASSED [ 36%] 347s tests/translate/lang/test_common.py::test_length_difference PASSED [ 36%] 347s tests/translate/lang/test_common.py::test_alter_length PASSED [ 36%] 347s tests/translate/lang/test_data.py::test_normalise_code PASSED [ 36%] 347s tests/translate/lang/test_data.py::test_simplify_to_common PASSED [ 36%] 347s tests/translate/lang/test_el.py::test_punctranslate PASSED [ 36%] 347s tests/translate/lang/test_el.py::test_sentences PASSED [ 36%] 347s tests/translate/lang/test_es.py::test_punctranslate PASSED [ 36%] 347s tests/translate/lang/test_es.py::test_sentences PASSED [ 36%] 347s tests/translate/lang/test_fa.py::test_punctranslate PASSED [ 36%] 347s tests/translate/lang/test_fa.py::test_sentences PASSED [ 36%] 347s tests/translate/lang/test_factory.py::test_getlanguage PASSED [ 36%] 347s tests/translate/lang/test_factory.py::test_get_all_languages PASSED [ 37%] 347s tests/translate/lang/test_fr.py::test_punctranslate PASSED [ 37%] 347s tests/translate/lang/test_fr.py::test_sentences PASSED [ 37%] 347s tests/translate/lang/test_hy.py::test_punctranslate PASSED [ 37%] 347s tests/translate/lang/test_hy.py::test_sentences PASSED [ 37%] 347s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_lang PASSED [ 37%] 347s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_store PASSED [ 37%] 347s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_bad_init_data PASSED [ 37%] 347s tests/translate/lang/test_ja.py::test_punctranslate PASSED [ 37%] 347s tests/translate/lang/test_ja.py::test_sentences PASSED [ 37%] 347s tests/translate/lang/test_km.py::test_punctranslate PASSED [ 37%] 347s tests/translate/lang/test_km.py::test_sentences PASSED [ 37%] 347s tests/translate/lang/test_ko.py::test_punctranslate PASSED [ 37%] 347s tests/translate/lang/test_ko.py::test_sentences PASSED [ 37%] 347s tests/translate/lang/test_ne.py::test_punctranslate PASSED [ 37%] 347s tests/translate/lang/test_ne.py::test_sentences PASSED [ 37%] 347s tests/translate/lang/test_nqo.py::test_punctranslate PASSED [ 37%] 347s tests/translate/lang/test_nqo.py::test_sentences PASSED [ 37%] 347s tests/translate/lang/test_or.py::test_punctranslate PASSED [ 37%] 347s tests/translate/lang/test_or.py::test_country_code PASSED [ 37%] 347s tests/translate/lang/test_or.py::test_sentences PASSED [ 37%] 347s tests/translate/lang/test_poedit.py::test_isocode PASSED [ 37%] 347s tests/translate/lang/test_ro.py::test_cedillas PASSED [ 37%] 347s tests/translate/lang/test_ro.py::test_niciun PASSED [ 37%] 347s tests/translate/lang/test_scn.py::test_italianisms PASSED [ 37%] 347s tests/translate/lang/test_scn.py::test_vocalism PASSED [ 37%] 347s tests/translate/lang/test_scn.py::test_suffixes PASSED [ 37%] 347s tests/translate/lang/test_team.py::test_simple PASSED [ 37%] 347s tests/translate/lang/test_th.py::test_punctranslate PASSED [ 37%] 347s tests/translate/lang/test_th.py::test_sentences PASSED [ 37%] 347s tests/translate/lang/test_tr.py::test_sentences PASSED [ 37%] 347s tests/translate/lang/test_uk.py::test_sentences PASSED [ 37%] 347s tests/translate/lang/test_vi.py::test_punctranslate PASSED [ 37%] 347s tests/translate/lang/test_vi.py::test_sentences PASSED [ 38%] 347s tests/translate/lang/test_zh.py::test_punctranslate PASSED [ 38%] 347s tests/translate/lang/test_zh.py::test_sentences PASSED [ 38%] 347s tests/translate/misc/test_deprecation.py::TestDeprecation::test_deprecated_decorator PASSED [ 38%] 347s tests/translate/misc/test_deprecation.py::TestDeprecation::test_no_deprecated_decorator PASSED [ 38%] 347s tests/translate/misc/test_dictutils.py::test_cidict_has_key PASSED [ 38%] 347s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor PASSED [ 38%] 347s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor_validation PASSED [ 38%] 347s tests/translate/misc/test_multistring.py::TestMultistring::test_repr PASSED [ 38%] 347s tests/translate/misc/test_multistring.py::TestMultistring::test_replace PASSED [ 38%] 347s tests/translate/misc/test_multistring.py::TestMultistring::test_comparison PASSED [ 38%] 347s tests/translate/misc/test_multistring.py::TestMultistring::test_coercion PASSED [ 38%] 347s tests/translate/misc/test_multistring.py::TestMultistring::test_unicode_coercion PASSED [ 38%] 347s tests/translate/misc/test_multistring.py::TestMultistring::test_list_coercion PASSED [ 38%] 347s tests/translate/misc/test_multistring.py::TestMultistring::test_multistring_hash PASSED [ 38%] 347s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_splitext PASSED [ 38%] 347s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_outputfile_receives_bytes PASSED [ 38%] 347s tests/translate/misc/test_progressbar.py::test_hashprogressbar PASSED [ 38%] 347s tests/translate/misc/test_quote.py::test_find_all PASSED [ 38%] 347s tests/translate/misc/test_quote.py::test_extract PASSED [ 38%] 347s tests/translate/misc/test_quote.py::test_extractwithoutquotes PASSED [ 38%] 347s tests/translate/misc/test_quote.py::test_extractwithoutquotes_passfunc PASSED [ 38%] 347s tests/translate/misc/test_quote.py::test_stripcomment PASSED [ 38%] 347s tests/translate/misc/test_quote.py::TestEncoding::test_javapropertiesencode PASSED [ 38%] 347s tests/translate/misc/test_quote.py::TestEncoding::test_java_utf8_properties_encode PASSED [ 38%] 347s tests/translate/misc/test_quote.py::TestEncoding::test_escapespace PASSED [ 38%] 347s tests/translate/misc/test_quote.py::TestEncoding::test_mozillaescapemarginspaces PASSED [ 38%] 347s tests/translate/misc/test_quote.py::TestEncoding::test_mozilla_control_escapes PASSED [ 38%] 347s tests/translate/misc/test_quote.py::TestEncoding::test_propertiesdecode PASSED [ 38%] 347s tests/translate/misc/test_quote.py::TestEncoding::test_controlchars PASSED [ 38%] 347s tests/translate/misc/test_quote.py::TestEncoding::test_properties_decode_slashu PASSED [ 38%] 347s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding PASSED [ 38%] 347s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_existing_entities PASSED [ 38%] 347s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_passthrough PASSED [ 38%] 347s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_nonentities PASSED [ 39%] 347s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_four_spaces PASSED [ 39%] 347s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_tab PASSED [ 39%] 347s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_distance PASSED [ 39%] 347s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_similarity PASSED [ 39%] 347s tests/translate/search/test_lshtein.py::TestLevenshtein::test_long_similarity PASSED [ 39%] 347s tests/translate/search/test_match.py::TestMatch::test_matching PASSED [ 39%] 347s tests/translate/search/test_match.py::TestMatch::test_multiple_store PASSED [ 39%] 347s tests/translate/search/test_match.py::TestMatch::test_extendtm PASSED [ 39%] 347s tests/translate/search/test_match.py::TestMatch::test_terminology PASSED [ 39%] 347s tests/translate/search/test_match.py::TestMatch::test_brackets PASSED [ 39%] 347s tests/translate/search/test_match.py::TestMatch::test_past_tences PASSED [ 39%] 347s tests/translate/search/test_match.py::TestMatch::test_space_mismatch PASSED [ 39%] 347s tests/translate/search/test_match.py::TestMatch::test_hyphen_mismatch PASSED [ 39%] 347s tests/translate/search/test_terminology.py::TestTerminology::test_basic PASSED [ 39%] 348s tests/translate/services/test_tmserver.py::TestTMServer::test_import PASSED [ 39%] 348s tests/translate/services/test_tmserver.py::TestTMServer::test_server PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_parse PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_tree PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_add PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_contains PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getitem PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getslice PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_iter PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_len PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_mul PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_offset PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_at_offset PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find_elems_with PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_flatten PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case1 PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case2 PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case3 PASSED [ 39%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case4 PASSED [ 40%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_insert PASSED [ 40%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_isleaf PASSED [ 40%] 348s tests/translate/storage/placeables/test_base.py::TestStringElem::test_prune PASSED [ 40%] 348s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_base_placeables PASSED [ 40%] 348s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables XFAIL [ 40%] 348s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables XFAIL [ 40%] 348s tests/translate/storage/placeables/test_general.py::test_placeable_numbers PASSED [ 40%] 348s tests/translate/storage/placeables/test_general.py::test_placeable_newline PASSED [ 40%] 348s tests/translate/storage/placeables/test_general.py::test_placeable_alt_attr PASSED [ 40%] 348s tests/translate/storage/placeables/test_general.py::test_placeable_qt_formatting PASSED [ 40%] 348s tests/translate/storage/placeables/test_general.py::test_placeable_camelcase PASSED [ 40%] 348s tests/translate/storage/placeables/test_general.py::test_placeable_space PASSED [ 40%] 348s tests/translate/storage/placeables/test_general.py::test_placeable_punctuation PASSED [ 40%] 348s tests/translate/storage/placeables/test_general.py::test_placeable_xml_entity PASSED [ 40%] 348s tests/translate/storage/placeables/test_general.py::test_placeable_xml_tag PASSED [ 40%] 348s tests/translate/storage/placeables/test_general.py::test_placeable_option PASSED [ 40%] 348s tests/translate/storage/placeables/test_general.py::test_placeable_file PASSED [ 40%] 348s tests/translate/storage/placeables/test_general.py::test_placeable_email PASSED [ 40%] 348s tests/translate/storage/placeables/test_general.py::test_placeable_caps PASSED [ 40%] 348s tests/translate/storage/placeables/test_general.py::test_placeable_formatting PASSED [ 40%] 348s tests/translate/storage/placeables/test_general.py::test_placeable_doubleat PASSED [ 40%] 348s tests/translate/storage/placeables/test_general.py::test_placeable_brace PASSED [ 40%] 348s tests/translate/storage/placeables/test_general.py::test_python_placeable PASSED [ 40%] 348s tests/translate/storage/placeables/test_lisa.py::test_xml_to_strelem PASSED [ 40%] 348s tests/translate/storage/placeables/test_lisa.py::test_xml_space PASSED [ 40%] 348s tests/translate/storage/placeables/test_lisa.py::test_chunk_list PASSED [ 40%] 348s tests/translate/storage/placeables/test_lisa.py::test_set_strelem_to_xml PASSED [ 40%] 348s tests/translate/storage/placeables/test_lisa.py::test_unknown_xml_placeable PASSED [ 40%] 348s tests/translate/storage/placeables/test_terminology.py::TestTerminologyPlaceable::test_simple_terminology PASSED [ 40%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_isfuzzy PASSED [ 40%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_create PASSED [ 40%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_eq PASSED [ 40%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escapes PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_difficult_escapes PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_note_sanity PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_target PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_get PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_set PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quotes_with_newline PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline_in_xml PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_twitter PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quote PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_question PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_double_space PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_leading_space PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_tailing_space PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_xml_entities PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote_newline PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_arrows PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link_and_text PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_blank_string PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_escape_message_with_newline PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_invalid_lang PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_quote PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_leading_space PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_trailing_space PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_with_ampersand PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_double_space PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_deep_double_space PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_complex_xml PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quoted_newlines PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline PASSED [ 41%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline_in_xml PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_twitter PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_question PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quote PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_space PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_space PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_newlines PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_xml_entities PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_code PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_arrows PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link_and_text PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_space PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_spaces PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_escaped_newline PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_escaped_newline PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_spaces PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_newline PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_many_quotes PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string_again PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_quotes_string PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_newline_in_string PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_not_translatable_string PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_newline PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_comments PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_quote PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space_quoted PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space_quoted PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_with_ampersand PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_double_space_quoted PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_deep_double_space_quoted PASSED [ 42%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_complex_xml PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unicode PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_unescaped PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_alone PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_full PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_escaped_percent PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_percent PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_quote PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unparied_quote PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_slash PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_ignored PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escaped_quote_end PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_create_blank PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_remove PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_find PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_parse PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_files PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_save PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_extensions PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_mimetypes PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translate PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_nonascii PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_default_handlings PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_invalid_filename PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_namespaces PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_serialize PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add_formatting PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_invalid_entity PASSED [ 43%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_indent PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_markup PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_edit PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_noedit PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_remove PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_set PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_others PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_quotes_set PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_g PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_namespace PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_zh_hk PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_b_zh_hk PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_missing_plural PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_removeunit PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata_text PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_prefix PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_rtl PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_tail PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translatable_marking PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_escaping PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_isfuzzy PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_create PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_eq PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_escapes PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_difficult_escapes PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_note_sanity PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_target PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_get PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_set PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_create_blank PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_add PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_remove PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_find PASSED [ 44%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_parse PASSED [ 45%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_files PASSED [ 45%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_save PASSED [ 45%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_extensions PASSED [ 45%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_mimetypes PASSED [ 45%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_translate PASSED [ 45%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_markup PASSED [ 45%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_nonascii PASSED [ 45%] 348s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_plural PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationUnit::test_isfuzzy PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationUnit::test_create PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationUnit::test_eq PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationUnit::test_target PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationUnit::test_escapes PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationUnit::test_difficult_escapes PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationUnit::test_note_sanity PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_get PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_set PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationStore::test_create_blank PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationStore::test_add PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationStore::test_remove PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationStore::test_find PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationStore::test_translate PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationStore::test_parse PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationStore::test_files PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationStore::test_save PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationStore::test_markup PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationStore::test_nonascii PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationStore::test_extensions PASSED [ 45%] 348s tests/translate/storage/test_base.py::TestTranslationStore::test_mimetypes PASSED [ 45%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_isfuzzy PASSED [ 45%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_create PASSED [ 45%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_eq PASSED [ 45%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_target PASSED [ 45%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_escapes PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_get PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_set PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_difficult_escapes PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_newlines PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_istranslated PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_note_sanity PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_create_blank PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_add PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_remove PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_find PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_translate PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_parse PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_files PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_save PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_markup PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_nonascii PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_extensions PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_mimetypes PASSED [ 46%] 348s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_checksum PASSED [ 46%] 348s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_isfuzzy PASSED [ 46%] 348s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_create PASSED [ 46%] 348s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_eq PASSED [ 46%] 348s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_target PASSED [ 46%] 348s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_escapes PASSED [ 46%] 348s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_difficult_escapes PASSED [ 46%] 348s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_note_sanity PASSED [ 46%] 348s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_get PASSED [ 46%] 348s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_set PASSED [ 46%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_create_blank PASSED [ 46%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_add PASSED [ 46%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_remove PASSED [ 46%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_find PASSED [ 46%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_translate PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_files PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_save PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_markup PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_nonascii PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_extensions PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_mimetypes PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_singlequoting PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8 PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_dialect PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_sig PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_default PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_location_is_parsed PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_context_is_parsed PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_newline PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse_sample PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_detection PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding PASSED [ 47%] 348s tests/translate/storage/test_csvl10n.py::TestCSV::test_corrupt PASSED [ 47%] 348s tests/translate/storage/test_directory.py::TestDirectory::test_created PASSED [ 47%] 348s tests/translate/storage/test_directory.py::TestDirectory::test_basic PASSED [ 47%] 348s tests/translate/storage/test_directory.py::TestDirectory::test_structure PASSED [ 47%] 348s tests/translate/storage/test_directory.py::TestDirectory::test_getunits PASSED [ 47%] 348s tests/translate/storage/test_dtd.py::test_roundtrip_quoting PASSED [ 47%] 348s tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases XFAIL [ 47%] 348s tests/translate/storage/test_dtd.py::test_quotefordtd PASSED [ 47%] 348s tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases XFAIL [ 47%] 348s tests/translate/storage/test_dtd.py::test_unquotefromdtd PASSED [ 47%] 348s tests/translate/storage/test_dtd.py::test_android_roundtrip_quoting PASSED [ 47%] 348s tests/translate/storage/test_dtd.py::test_quoteforandroid PASSED [ 47%] 348s tests/translate/storage/test_dtd.py::test_unquotefromandroid PASSED [ 47%] 348s tests/translate/storage/test_dtd.py::test_removeinvalidamp PASSED [ 47%] 348s tests/translate/storage/test_dtd.py::TestDTDUnit::test_isfuzzy PASSED [ 47%] 348s tests/translate/storage/test_dtd.py::TestDTDUnit::test_create PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTDUnit::test_eq PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTDUnit::test_escapes PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTDUnit::test_difficult_escapes PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTDUnit::test_note_sanity PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTDUnit::test_target PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_get PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_set PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_create_blank PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_add PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_remove PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_find PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_parse PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_files PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_save PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_extensions PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_mimetypes PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_translate PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_markup PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_nonascii PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_blanklines PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity_source PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_hashcomment_source PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_commentclosing PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_commententity PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_newlines_in_entity PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_conflate_comments PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_localisation_notes PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_in_source PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_order_in_source PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_comment_following XFAIL [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_comment_newline_space_closing PASSED [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting XFAIL [ 48%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_missing_quotes PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping_roundtrip PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_create_blank PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_add PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_remove PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_find PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_parse PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_files PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_save PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_extensions PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_mimetypes PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_translate PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_markup PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_nonascii PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape_parse_and_convert_back PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape PASSED [ 49%] 348s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape_parse_and_convert_back PASSED [ 49%] 348s tests/translate/storage/test_factory.py::TestPOFactory::test_getclass PASSED [ 49%] 348s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject_store PASSED [ 49%] 348s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject PASSED [ 49%] 348s tests/translate/storage/test_factory.py::TestPOFactory::test_get_noname_object PASSED [ 49%] 348s tests/translate/storage/test_factory.py::TestPOFactory::test_gzfile PASSED [ 49%] 348s tests/translate/storage/test_factory.py::TestPOFactory::test_bz2file PASSED [ 49%] 348s tests/translate/storage/test_factory.py::TestPOFactory::test_directory PASSED [ 49%] 348s tests/translate/storage/test_factory.py::TestXliffFactory::test_getclass PASSED [ 49%] 348s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject_store PASSED [ 49%] 348s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject PASSED [ 49%] 348s tests/translate/storage/test_factory.py::TestXliffFactory::test_get_noname_object PASSED [ 49%] 348s tests/translate/storage/test_factory.py::TestXliffFactory::test_gzfile PASSED [ 49%] 348s tests/translate/storage/test_factory.py::TestXliffFactory::test_bz2file PASSED [ 49%] 348s tests/translate/storage/test_factory.py::TestXliffFactory::test_directory PASSED [ 49%] 348s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getclass PASSED [ 50%] 348s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject_store PASSED [ 50%] 348s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject PASSED [ 50%] 348s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_get_noname_object PASSED [ 50%] 348s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_gzfile PASSED [ 50%] 348s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_bz2file PASSED [ 50%] 348s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_directory PASSED [ 50%] 348s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getclass PASSED [ 50%] 348s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject_store PASSED [ 50%] 348s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject PASSED [ 50%] 348s tests/translate/storage/test_factory.py::TestWordfastFactory::test_get_noname_object PASSED [ 50%] 348s tests/translate/storage/test_factory.py::TestWordfastFactory::test_gzfile PASSED [ 50%] 348s tests/translate/storage/test_factory.py::TestWordfastFactory::test_bz2file PASSED [ 50%] 348s tests/translate/storage/test_factory.py::TestWordfastFactory::test_directory PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_isfuzzy PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_create PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_eq PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_escapes PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_difficult_escapes PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_note_sanity PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_target PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_get PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_set PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_create_blank PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_add PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_remove PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_find PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_parse PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_files PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_save PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_extensions PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_mimetypes PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_translate PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_markup PASSED [ 50%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_nonascii PASSED [ 51%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_root_config_detect PASSED [ 51%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_detect PASSED [ 51%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_key_config_detect PASSED [ 51%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_mixed_ok PASSED [ 51%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_namespace_config_detect PASSED [ 51%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_four_spaces PASSED [ 51%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_tab PASSED [ 51%] 348s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_none_linearizes PASSED [ 51%] 348s tests/translate/storage/test_html.py::test_guess_encoding PASSED [ 51%] 348s tests/translate/storage/test_html.py::TestHTMLParsing::test_mismatched_tags PASSED [ 51%] 348s tests/translate/storage/test_html.py::TestHTMLParsing::test_self_closing_tags PASSED [ 51%] 348s tests/translate/storage/test_html.py::TestHTMLParsing::test_escaping_script_and_pre PASSED [ 51%] 348s tests/translate/storage/test_html.py::TestHTMLExtraction::test_strip_html PASSED [ 51%] 348s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_figcaption PASSED [ 51%] 348s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_caption_td_th PASSED [ 51%] 348s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_alt PASSED [ 51%] 348s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_title PASSED [ 51%] 348s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre PASSED [ 51%] 348s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre_code PASSED [ 51%] 348s tests/translate/storage/test_ini.py::TestINIUnit::test_isfuzzy PASSED [ 51%] 348s tests/translate/storage/test_ini.py::TestINIUnit::test_create PASSED [ 51%] 348s tests/translate/storage/test_ini.py::TestINIUnit::test_eq PASSED [ 51%] 348s tests/translate/storage/test_ini.py::TestINIUnit::test_escapes PASSED [ 51%] 348s tests/translate/storage/test_ini.py::TestINIUnit::test_difficult_escapes PASSED [ 51%] 348s tests/translate/storage/test_ini.py::TestINIUnit::test_note_sanity PASSED [ 51%] 348s tests/translate/storage/test_ini.py::TestINIUnit::test_target PASSED [ 51%] 348s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_get PASSED [ 51%] 348s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_set PASSED [ 51%] 348s tests/translate/storage/test_ini.py::TestINIStore::test_create_blank PASSED [ 51%] 348s tests/translate/storage/test_ini.py::TestINIStore::test_add PASSED [ 51%] 348s tests/translate/storage/test_ini.py::TestINIStore::test_remove PASSED [ 51%] 348s tests/translate/storage/test_ini.py::TestINIStore::test_find PASSED [ 51%] 348s tests/translate/storage/test_ini.py::TestINIStore::test_parse PASSED [ 51%] 348s tests/translate/storage/test_ini.py::TestINIStore::test_files PASSED [ 52%] 348s tests/translate/storage/test_ini.py::TestINIStore::test_save PASSED [ 52%] 348s tests/translate/storage/test_ini.py::TestINIStore::test_extensions PASSED [ 52%] 348s tests/translate/storage/test_ini.py::TestINIStore::test_mimetypes PASSED [ 52%] 348s tests/translate/storage/test_ini.py::TestINIStore::test_translate PASSED [ 52%] 348s tests/translate/storage/test_ini.py::TestINIStore::test_markup PASSED [ 52%] 348s tests/translate/storage/test_ini.py::TestINIStore::test_nonascii PASSED [ 52%] 348s tests/translate/storage/test_ini.py::TestINIStore::test_serialize PASSED [ 52%] 348s tests/translate/storage/test_ini.py::TestINIStore::test_rem PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_isfuzzy PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_create PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_eq PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_escapes PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_difficult_escapes PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_note_sanity PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_target PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_get PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_set PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_create_blank PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_remove PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_find PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_parse PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_files PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_save PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_extensions PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_mimetypes PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_translate PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_markup PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_nonascii PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_serialize PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_can_not_detect PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_error PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_filter PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_ordering PASSED [ 52%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_args PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_bom PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex_array PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_list_like PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_blank PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_types PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_null PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_isfuzzy PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_create PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_eq PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_escapes PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_difficult_escapes PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_note_sanity PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_target PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_get PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_set PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_serialize PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_ordering PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_array PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index_nested PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_nested_list_mixed PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_list_to_dict PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_complex_keys PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_other PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0]-expected0] PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0]-expected1] PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0][1][2][3]-expected2] PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test]selection-expected3] PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test][0]selection-expected4] PASSED [ 53%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0][test]selection-expected5] PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[-expected6] PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_dot_keys PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_isfuzzy PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_create PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_eq PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_escapes PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_difficult_escapes PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_note_sanity PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_target PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_get PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_set PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_create_blank PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_add PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_remove PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_find PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_parse PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_files PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_save PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_extensions PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_mimetypes PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_translate PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_markup PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_nonascii PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_dot_keys PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_leading_dot_keys PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize_no_description PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_set_target PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_placeholders PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_create_blank PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_add PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_remove PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_find PASSED [ 54%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_parse PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_files PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_save PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_extensions PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_mimetypes PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_translate PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_markup PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nonascii PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_serialize PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_units PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_plurals PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nested_array PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural_id PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_create_blank PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_add PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_remove PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_find PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_parse PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_files PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_save PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_extensions PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_mimetypes PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_translate PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_markup PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_nonascii PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals_missing PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_case_no_msg PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_complex_id PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_create_blank PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_add PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_remove PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_find PASSED [ 55%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_parse PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_files PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_save PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_extensions PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_mimetypes PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_translate PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_markup PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nonascii PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_serialize PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_units PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_plurals PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nested_array PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_new_plural PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_ru PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_create_blank PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_add PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_remove PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_find PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_parse PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_files PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_save PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_extensions PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_mimetypes PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_translate PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_markup PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nonascii PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_serialize PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_units PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_plurals PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nested_array PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_new_plural PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_ru PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_create_blank PASSED [ 56%] 348s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_add PASSED [ 57%] 348s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_remove PASSED [ 57%] 348s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_find PASSED [ 57%] 348s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_parse PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_files PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_save PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_extensions PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_mimetypes PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_translate PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_markup PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_nonascii PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals_missing PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_invalid PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_dot_keys PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_create_blank PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_add PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_remove PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_find PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_parse PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_files PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_save PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_extensions PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_mimetypes PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_translate PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_markup PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_nonascii PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_1 PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_2 PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_blank PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_missing PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_simplification PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_invalid PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_dot_keys PASSED [ 57%] 349s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_create_blank PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_add PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_remove PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_find PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_parse PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_files PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_save PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_extensions PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_mimetypes PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_translate PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_markup PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_nonascii PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_roundtrip PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_leading_dot_keys PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_create_blank PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_add PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_remove PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_find PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_parse PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_files PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_save PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_extensions PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_mimetypes PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_translate PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_markup PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_nonascii PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_roundtrip PASSED [ 58%] 349s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_leading_dot_keys PASSED [ 58%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_atx_heading PASSED [ 58%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_autolink PASSED [ 58%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_block_quote PASSED [ 58%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_block PASSED [ 58%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_span PASSED [ 58%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_atx_heading PASSED [ 58%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_document PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_list_item PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_escaped_character PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_hard_line_break PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_block PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_character_entities PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_span PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_image_embedded_in_link PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_collapsed_reference_link PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_full_reference_link PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_shortcut_reference_link PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_merging_of_adjacent_placeholders PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_block_tokens PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_list PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_basic_markup PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_only_whitespace_and_placeholders PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_placeholder_trimming PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image_no_title PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_link PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_text_paragraph PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_remove_placeholders_from_both_ends_of_translation_units PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_setext_heading PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_table_with_header PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_thematic_break PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_hard_line_break_in_translation_unit PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_missing_placeholder PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_duplicate_placeholder PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_extraneous_placeholder PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_reordered_placeholders PASSED [ 59%] 349s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_invalid_markdown_in_translation PASSED [ 59%] 349s tests/translate/storage/test_mo.py::TestMOUnit::test_isfuzzy PASSED [ 59%] 349s tests/translate/storage/test_mo.py::TestMOUnit::test_create PASSED [ 59%] 349s tests/translate/storage/test_mo.py::TestMOUnit::test_eq PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOUnit::test_target PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOUnit::test_escapes PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOUnit::test_difficult_escapes PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOUnit::test_note_sanity PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_get PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_set PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOUnit::test_context PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOFile::test_create_blank PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOFile::test_add PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOFile::test_remove PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOFile::test_find PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOFile::test_translate PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOFile::test_parse PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOFile::test_files PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOFile::test_save PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOFile::test_markup PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOFile::test_nonascii PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOFile::test_extensions PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOFile::test_mimetypes PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOFile::test_language PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOFile::test_context PASSED [ 60%] 349s tests/translate/storage/test_mo.py::TestMOFile::test_output SKIPPED [ 60%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_isfuzzy PASSED [ 60%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_create PASSED [ 60%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_eq PASSED [ 60%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_escapes PASSED [ 60%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_difficult_escapes PASSED [ 60%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_note_sanity PASSED [ 60%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_target PASSED [ 60%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_get PASSED [ 60%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_set PASSED [ 60%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_create_blank PASSED [ 60%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_add PASSED [ 60%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_remove PASSED [ 61%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_find PASSED [ 61%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_parse PASSED [ 61%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_files PASSED [ 61%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_save PASSED [ 61%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_extensions PASSED [ 61%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_mimetypes PASSED [ 61%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_translate PASSED [ 61%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_markup PASSED [ 61%] 349s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_nonascii PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[-] PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String-String] PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {OK}-String] PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[\u015e\u0167\u0159\u012b\u019e\u0260 {ok}-\u015e\u0167\u0159\u012b\u019e\u0260] PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{ok}-String] PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{OK}-String] PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok} -String] PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_isfuzzy PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_create PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_eq PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_target PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_escapes PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_difficult_escapes PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_note_sanity PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_get PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_set PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_translate_but_same PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_untranslated PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_comments PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_copy_target PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_create_blank PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_add PASSED [ 61%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_remove PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_find PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_translate PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_parse PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_files PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_save PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_markup PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_extensions PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_mimetypes PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_nonascii PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_format_layout PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_crlf PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_active_flag PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_multiline_comments PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_template PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[--False] PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ -Source -True] PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok}-Source-True] PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok} -Source-True] PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[{ok}-Source-True] PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_headers PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_not_headers PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[0] PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[1] PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[2] PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[3] PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_tag_comments PASSED [ 62%] 349s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_maxlength PASSED [ 62%] 349s tests/translate/storage/test_omegat.py::TestOtUnit::test_isfuzzy PASSED [ 62%] 349s tests/translate/storage/test_omegat.py::TestOtUnit::test_create PASSED [ 62%] 349s tests/translate/storage/test_omegat.py::TestOtUnit::test_eq PASSED [ 62%] 349s tests/translate/storage/test_omegat.py::TestOtUnit::test_target PASSED [ 62%] 349s tests/translate/storage/test_omegat.py::TestOtUnit::test_escapes PASSED [ 62%] 349s tests/translate/storage/test_omegat.py::TestOtUnit::test_difficult_escapes PASSED [ 63%] 349s tests/translate/storage/test_omegat.py::TestOtUnit::test_note_sanity PASSED [ 63%] 349s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_get PASSED [ 63%] 349s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_set PASSED [ 63%] 349s tests/translate/storage/test_omegat.py::TestOtFile::test_create_blank PASSED [ 63%] 349s tests/translate/storage/test_omegat.py::TestOtFile::test_add PASSED [ 63%] 349s tests/translate/storage/test_omegat.py::TestOtFile::test_remove PASSED [ 63%] 349s tests/translate/storage/test_omegat.py::TestOtFile::test_find PASSED [ 63%] 349s tests/translate/storage/test_omegat.py::TestOtFile::test_translate PASSED [ 63%] 349s tests/translate/storage/test_omegat.py::TestOtFile::test_parse PASSED [ 63%] 349s tests/translate/storage/test_omegat.py::TestOtFile::test_files PASSED [ 63%] 349s tests/translate/storage/test_omegat.py::TestOtFile::test_save PASSED [ 63%] 349s tests/translate/storage/test_omegat.py::TestOtFile::test_markup PASSED [ 63%] 349s tests/translate/storage/test_omegat.py::TestOtFile::test_nonascii PASSED [ 63%] 349s tests/translate/storage/test_omegat.py::TestOtFile::test_mimetypes PASSED [ 63%] 349s tests/translate/storage/test_omegat.py::TestOtFile::test_extensions XFAIL [ 63%] 349s tests/translate/storage/test_oo.py::test_makekey PASSED [ 63%] 349s tests/translate/storage/test_oo.py::test_escape_help_text PASSED [ 63%] 349s tests/translate/storage/test_oo.py::TestOO::test_simpleentry PASSED [ 63%] 349s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_quickhelptest PASSED [ 63%] 349s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_title PASSED [ 63%] 349s tests/translate/storage/test_oo.py::TestOO::test_blankline PASSED [ 63%] 349s tests/translate/storage/test_oo.py::TestOO::test_fieldlength PASSED [ 63%] 349s tests/translate/storage/test_oo.py::TestOO::test_escapes PASSED [ 63%] 349s tests/translate/storage/test_php.py::test_php_escaping_single_quote PASSED [ 63%] 349s tests/translate/storage/test_php.py::test_php_escaping_double_quote PASSED [ 63%] 349s tests/translate/storage/test_php.py::TestPhpUnit::test_isfuzzy PASSED [ 63%] 349s tests/translate/storage/test_php.py::TestPhpUnit::test_create PASSED [ 63%] 349s tests/translate/storage/test_php.py::TestPhpUnit::test_eq PASSED [ 63%] 349s tests/translate/storage/test_php.py::TestPhpUnit::test_escapes PASSED [ 63%] 349s tests/translate/storage/test_php.py::TestPhpUnit::test_note_sanity PASSED [ 63%] 349s tests/translate/storage/test_php.py::TestPhpUnit::test_target PASSED [ 63%] 349s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_get PASSED [ 63%] 349s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_set PASSED [ 63%] 349s tests/translate/storage/test_php.py::TestPhpUnit::test_difficult_escapes PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_create_blank PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_add PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_remove PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_find PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parse PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_files PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_save PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_extensions PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_mimetypes PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_translate PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_markup PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_nonascii PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_source PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_spaces_in_name PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_comment_definition PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_comment_blocks PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_comment_output PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_comment_add PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_multiline PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_no_array_syntax PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_spaces PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_quotes PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_number_as_value PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_non_textual PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define_with_spaces_before_key PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter_and_before_key PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equal_delimiter PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equaldel_but_before_key PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_entries_with_quotes PASSED [ 64%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_comments_at_entry_line_end PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_double_slash_comments_before_entries PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_before_end_delimiter PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simpledefinition_spaces_before_end_delimiter PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_no_trailing_comma PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_space_before_comma PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_space_before_array_declaration PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_declared_in_a_single_line PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys_assigned_to_array PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_no_keys PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_assignment_in_line_where_multiline_comment_ends PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_using_short_array_syntax PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_space_before_array_declaration PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_unnamed_nested_arrays PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_array_declaration_in_next_line PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_with_newline_after_delimiter PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_blank_entries PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_slashstar_in_string PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_heredoc_syntax PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_after_define PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_quotes PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_concatenation PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_serialize PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_space_before_comma PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_equals_in_id PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_comma_in_string PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_nowdoc PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_plain_concatenation PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_array_keys PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_double_var PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_return_array PASSED [ 65%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short_quotes PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestPhpFile::test_addunit PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_isfuzzy PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_create PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_eq PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_escapes PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_difficult_escapes PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_note_sanity PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_target PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_get PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_set PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_create_blank PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_add PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_remove PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_find PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_parse PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_files PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_save PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_extensions PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_mimetypes PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_translate PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_markup PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_nonascii PASSED [ 66%] 349s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_plurals PASSED [ 66%] 349s tests/translate/storage/test_po.py::test_roundtrip_quoting PASSED [ 66%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_isfuzzy PASSED [ 66%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_create PASSED [ 66%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_eq PASSED [ 66%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_target PASSED [ 66%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_escapes PASSED [ 66%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_difficult_escapes PASSED [ 66%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_note_sanity PASSED [ 66%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_rich_get PASSED [ 66%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_rich_set PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_istranslatable PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_locations PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_nongettext_location PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_adding_empty_note PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_markreview PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_errors PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_no_plural_settarget PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_wrapping_bug PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_extract_msgidcomments_from_text PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_isheader PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOUnit::test_buildfromunit PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_create_blank PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_add PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_remove PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_find PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_translate PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_parse PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_files PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_save PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_markup PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_nonascii PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_extensions PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_mimetypes PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_context_only PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_simpleentry PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_copy PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_parse_source_string PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_parse_file PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_unicode PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_plurals PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_plural_unicode PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_nongettext_location PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_percent_location PASSED [ 67%] 349s tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals XFAIL [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_empty_lines_notes PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_fuzzy PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated XFAIL [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_merging_automaticcomments PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_malformed_units PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_malformed_obsolete_units PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_uniforum_po PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_obsolete PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_obsolete_with_prev_msgid PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_header_escapes PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_plural PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgctxt PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgidcomments PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_multiline_obsolete PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_merge_duplicates PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_merge_mixed_sources PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_parse_context PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_parse_advanced_context PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_kde_context PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_broken_kde_context PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_id PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments_2 PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_final_slash PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_unfinished_lines PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_encoding_change PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_istranslated PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_wrapping PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_wrapping_cjk PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_wrap_emoji PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis PASSED [ 68%] 349s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis_long PASSED [ 69%] 349s tests/translate/storage/test_po.py::TestPOFile::test_wrap_gettext PASSED [ 69%] 349s tests/translate/storage/test_po.py::TestPOFile::test_msgidcomments PASSED [ 69%] 349s tests/translate/storage/test_po.py::TestPOFile::test_unicode_ids PASSED [ 69%] 349s tests/translate/storage/test_po.py::TestPOFile::test_syntax_error PASSED [ 69%] 349s tests/translate/storage/test_po.py::TestPOFile::test_invalid PASSED [ 69%] 349s tests/translate/storage/test_po.py::TestPOFile::test_wrapped_msgid PASSED [ 69%] 349s tests/translate/storage/test_po.py::TestPOFile::test_missing_plural PASSED [ 69%] 349s tests/translate/storage/test_pocommon.py::test_roundtrip_quote_plus PASSED [ 69%] 349s tests/translate/storage/test_poheader.py::test_parseheaderstring PASSED [ 69%] 349s tests/translate/storage/test_poheader.py::test_update PASSED [ 69%] 349s tests/translate/storage/test_poheader.py::test_po_dates PASSED [ 69%] 349s tests/translate/storage/test_poheader.py::test_timezones PASSED [ 69%] 349s tests/translate/storage/test_poheader.py::test_header_blank PASSED [ 69%] 349s tests/translate/storage/test_poheader.py::test_plural_equation PASSED [ 69%] 349s tests/translate/storage/test_poheader.py::test_plural_equation_across_lines PASSED [ 69%] 349s tests/translate/storage/test_poheader.py::test_updatecontributor PASSED [ 69%] 349s tests/translate/storage/test_poheader.py::test_updatecontributor_header PASSED [ 69%] 349s tests/translate/storage/test_poheader.py::test_language PASSED [ 69%] 349s tests/translate/storage/test_poheader.py::test_project PASSED [ 69%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_isfuzzy PASSED [ 69%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_create PASSED [ 69%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_eq PASSED [ 69%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_target PASSED [ 69%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_escapes PASSED [ 69%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_difficult_escapes PASSED [ 69%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_note_sanity PASSED [ 69%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_get PASSED [ 69%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_set PASSED [ 69%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_markreview PASSED [ 69%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_errors PASSED [ 69%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_accepted_control_chars PASSED [ 69%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_unaccepted_control_chars PASSED [ 69%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_plurals PASSED [ 69%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_ids PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_create_blank PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_remove PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_find PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_translate PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_files PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_save PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_markup PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_nonascii PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_extensions PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_mimetypes PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_basic PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_namespace PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_source PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_target PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_source PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_target PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_sourcelanguage PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage_multi PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_alttrans PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_fuzzy PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_xml_space PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parsing PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_entities PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_multiple_filenodes PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_indent PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add_target PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_closing_tags PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_context_groups PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_getlocations PASSED [ 70%] 349s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_addlocation PASSED [ 70%] 350s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_huge PASSED [ 71%] 350s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve_add PASSED [ 71%] 350s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse PASSED [ 71%] 350s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse_plural_alpha_id PASSED [ 71%] 350s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_notes PASSED [ 71%] 350s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_plural PASSED [ 71%] 350s tests/translate/storage/test_properties.py::test_find_delimiter_pos_simple PASSED [ 71%] 350s tests/translate/storage/test_properties.py::test_find_delimiter_pos_multiple PASSED [ 71%] 350s tests/translate/storage/test_properties.py::test_find_delimiter_pos_none PASSED [ 71%] 350s tests/translate/storage/test_properties.py::test_find_delimiter_pos_whitespace PASSED [ 71%] 350s tests/translate/storage/test_properties.py::test_find_delimiter_pos_escapes PASSED [ 71%] 350s tests/translate/storage/test_properties.py::test_is_line_continuation PASSED [ 71%] 350s tests/translate/storage/test_properties.py::test_key_strip PASSED [ 71%] 350s tests/translate/storage/test_properties.py::test_get_comment_one_line PASSED [ 71%] 350s tests/translate/storage/test_properties.py::test_get_comment_start PASSED [ 71%] 350s tests/translate/storage/test_properties.py::test_get_comment_end PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestPropUnit::test_isfuzzy PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestPropUnit::test_create PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestPropUnit::test_eq PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestPropUnit::test_escapes PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestPropUnit::test_difficult_escapes PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestPropUnit::test_note_sanity PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestPropUnit::test_target PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_get PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_set PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_create_blank PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_add PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_remove PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_find PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_parse PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_files PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_save PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_extensions PASSED [ 71%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_mimetypes PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_translate PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_markup PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_nonascii PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_quotes PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_simpledefinition PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition_source PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_reduce PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_increase PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_extra_plurals PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_non_plurals PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_encoding PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestGwtProp::test_other_plurals PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_create_blank PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_add PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_remove PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_find PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_parse PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_files PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_save PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_extensions PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_mimetypes PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_translate PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_markup PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_nonascii PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition_source PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_controlutf8_source PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_control_source PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_unicode_escaping PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_newlines_startend PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_space PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_whitespace_handling PASSED [ 72%] 350s tests/translate/storage/test_properties.py::TestProp::test_key_value_delimiters_simple PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_comments PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_latin1 PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_fullspec_delimiters PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_fullspec_escaped_key PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_fullspec_line_continuation PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_fullspec_key_without_value PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_mac_strings PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_utf_16_save PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_mac_multiline_strings PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_unicode PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_utf8 PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_newlines PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_multilines_comments PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments_dropping PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_quotes PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_equals PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_serialization PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_double_backslashes PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_override_encoding PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_trailing_comments PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_utf16_byte_order_mark PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_raise_ioerror_if_cannot_detect_encoding PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_utf8_byte_order_mark PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_joomla_set_target PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_joomla PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_joomla_escape PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_delimiter PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_value PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_multi_comments PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_serialize_note PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_serialize_long_note PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestProp::test_trailing_newlines PASSED [ 73%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_create_blank PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_add PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_remove PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_find PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_parse PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_files PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_save PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_extensions PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_mimetypes PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_translate PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_markup PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_nonascii PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_simpledefinition PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition_source PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote_and_argument PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_header_preserved PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_blank_line_before_comment_preserved PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWiki::test_deprecated_comments_preserved PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_create_blank PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_add PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_remove PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_find PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_parse PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_files PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_save PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_extensions PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_mimetypes PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_markup PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_nonascii PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_simpledefinition PASSED [ 74%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition_source PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote_and_argument PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_encoded_html PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_cleaning_attributes PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate_source PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_create_blank PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_add PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_find PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_extensions PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_mimetypes PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_translate PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_markup PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_nonascii PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_simpledefinition PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_parse PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_files PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_save PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_cleaning_attributes PASSED [ 75%] 350s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove XFAIL [ 75%] 350s tests/translate/storage/test_pypo.py::TestHelpers::test_unescape PASSED [ 75%] 350s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo PASSED [ 75%] 350s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo_escaped_quotes PASSED [ 75%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isfuzzy PASSED [ 75%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_create PASSED [ 75%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_eq PASSED [ 75%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_target PASSED [ 75%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_escapes PASSED [ 75%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_difficult_escapes PASSED [ 75%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_note_sanity PASSED [ 75%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_get PASSED [ 75%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_set PASSED [ 75%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_istranslatable PASSED [ 75%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_locations PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_nongettext_location PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_adding_empty_note PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_markreview PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_errors PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_no_plural_settarget PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrapping_bug PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_extract_msgidcomments_from_text PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isheader PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_buildfromunit PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plurals PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plural_reduction PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes_withcomments PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_firstlines PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_newlines PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_max_line_length PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_slash PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_spacing_max_line PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_create_blank PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_add PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_remove PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_find PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_translate PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_files PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_save PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_markup PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nonascii PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_extensions PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mimetypes PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_context_only PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_simpleentry PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_copy PASSED [ 76%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_source_string PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_file PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plurals PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plural_unicode PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nongettext_location PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_percent_location PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals XFAIL [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_empty_lines_notes PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_fuzzy PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated XFAIL [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merging_automaticcomments PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_units PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_obsolete_units PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_uniforum_po PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete_with_prev_msgid PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_header_escapes PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_plural PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgctxt PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgidcomments PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_multiline_obsolete PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_mixed_sources PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_context PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_advanced_context PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_context PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_broken_kde_context PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_id PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments_2 PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_final_slash PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unfinished_lines PASSED [ 77%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_encoding_change PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_istranslated PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping_cjk PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_emoji PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis_long PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_gettext PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_msgidcomments PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_ids PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_syntax_error PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapped_msgid PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_missing_plural PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_combine_msgidcomments PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates_msgctxt PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_blanks PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_output_str_unicode PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_posections PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_typecomments PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unassociated_comments PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_header PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_prevmsgid_parse PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_newlines PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unix_newlines PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mac_newlines PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_header PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_comment PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_bom PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_long_msgidcomments PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_incomplete PASSED [ 78%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_invalid PASSED [ 79%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_write PASSED [ 79%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment XFAIL [ 79%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_typecomment PASSED [ 79%] 350s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_custom PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtUnit::test_isfuzzy PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtUnit::test_create PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtUnit::test_eq PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtUnit::test_target PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtUnit::test_escapes PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtUnit::test_difficult_escapes PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtUnit::test_note_sanity PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_get PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_set PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtFile::test_create_blank PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtFile::test_find PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtFile::test_translate PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtFile::test_markup PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtFile::test_extensions PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtFile::test_mimetypes PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtFile::test_parse PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtFile::test_save PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtFile::test_files PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtFile::test_nonascii PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtFile::test_add PASSED [ 79%] 350s tests/translate/storage/test_qm.py::TestQtFile::test_remove PASSED [ 79%] 350s tests/translate/storage/test_qph.py::TestQphUnit::test_isfuzzy PASSED [ 79%] 350s tests/translate/storage/test_qph.py::TestQphUnit::test_create PASSED [ 79%] 350s tests/translate/storage/test_qph.py::TestQphUnit::test_eq PASSED [ 79%] 350s tests/translate/storage/test_qph.py::TestQphUnit::test_target PASSED [ 79%] 350s tests/translate/storage/test_qph.py::TestQphUnit::test_escapes PASSED [ 79%] 350s tests/translate/storage/test_qph.py::TestQphUnit::test_difficult_escapes PASSED [ 79%] 350s tests/translate/storage/test_qph.py::TestQphUnit::test_note_sanity PASSED [ 79%] 350s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_get PASSED [ 79%] 350s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_set PASSED [ 80%] 350s tests/translate/storage/test_qph.py::TestQphFile::test_create_blank PASSED [ 80%] 350s tests/translate/storage/test_qph.py::TestQphFile::test_add PASSED [ 80%] 350s tests/translate/storage/test_qph.py::TestQphFile::test_remove PASSED [ 80%] 350s tests/translate/storage/test_qph.py::TestQphFile::test_find PASSED [ 80%] 350s tests/translate/storage/test_qph.py::TestQphFile::test_translate PASSED [ 80%] 350s tests/translate/storage/test_qph.py::TestQphFile::test_parse PASSED [ 80%] 350s tests/translate/storage/test_qph.py::TestQphFile::test_files PASSED [ 80%] 350s tests/translate/storage/test_qph.py::TestQphFile::test_save PASSED [ 80%] 350s tests/translate/storage/test_qph.py::TestQphFile::test_markup PASSED [ 80%] 350s tests/translate/storage/test_qph.py::TestQphFile::test_nonascii PASSED [ 80%] 350s tests/translate/storage/test_qph.py::TestQphFile::test_extensions PASSED [ 80%] 350s tests/translate/storage/test_qph.py::TestQphFile::test_mimetypes PASSED [ 80%] 350s tests/translate/storage/test_qph.py::TestQphFile::test_basic PASSED [ 80%] 350s tests/translate/storage/test_qph.py::TestQphFile::test_source PASSED [ 80%] 350s tests/translate/storage/test_qph.py::TestQphFile::test_target PASSED [ 80%] 350s tests/translate/storage/test_qph.py::TestQphFile::test_language PASSED [ 80%] 350s tests/translate/storage/test_rc.py::test_escaping PASSED [ 80%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_comments PASSED [ 80%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_textinclude PASSED [ 80%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_parse_dialog PASSED [ 80%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_parse_stringtable PASSED [ 80%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_lf PASSED [ 80%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_crlf PASSED [ 80%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_cr PASSED [ 80%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_parse_no_language PASSED [ 80%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude PASSED [ 80%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_multiline PASSED [ 80%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_str PASSED [ 80%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_empty PASSED [ 80%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_utf_8 PASSED [ 80%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_utf_16 PASSED [ 80%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_comment PASSED [ 80%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_stringtables PASSED [ 80%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude_appstudio PASSED [ 81%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_id_whitespace PASSED [ 81%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_menu_comment PASSED [ 81%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_decompiled PASSED [ 81%] 351s tests/translate/storage/test_rc.py::TestRcFile::test_quotes PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_isfuzzy PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_create PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_eq PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_escapes PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_difficult_escapes PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_note_sanity PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_target PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_get PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_set PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_create_blank PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_add PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_remove PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_find PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_parse PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_files PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_save PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_extensions PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_mimetypes PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_translate PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_markup PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_nonascii PASSED [ 81%] 351s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_roundtrip PASSED [ 81%] 351s tests/translate/storage/test_resx.py::TestRESXUnit::test_isfuzzy PASSED [ 81%] 351s tests/translate/storage/test_resx.py::TestRESXUnit::test_create PASSED [ 81%] 351s tests/translate/storage/test_resx.py::TestRESXUnit::test_eq PASSED [ 81%] 351s tests/translate/storage/test_resx.py::TestRESXUnit::test_escapes PASSED [ 81%] 351s tests/translate/storage/test_resx.py::TestRESXUnit::test_difficult_escapes PASSED [ 81%] 351s tests/translate/storage/test_resx.py::TestRESXUnit::test_note_sanity PASSED [ 81%] 351s tests/translate/storage/test_resx.py::TestRESXUnit::test_target PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_get PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_set PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_isfuzzy PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_create PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_eq PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_escapes PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_difficult_escapes PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_note_sanity PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_target PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_get PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_set PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit_comment PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXfile::test_create_blank PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXfile::test_add PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXfile::test_remove PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXfile::test_find PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXfile::test_parse PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXfile::test_files PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXfile::test_save PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXfile::test_extensions PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXfile::test_mimetypes PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXfile::test_translate PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXfile::test_markup PASSED [ 82%] 351s tests/translate/storage/test_resx.py::TestRESXfile::test_nonascii PASSED [ 82%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_isfuzzy PASSED [ 82%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_create PASSED [ 82%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq PASSED [ 82%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_escapes PASSED [ 82%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_difficult_escapes PASSED [ 82%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_note_sanity PASSED [ 82%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_target PASSED [ 82%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_get PASSED [ 82%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_set PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_source PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq_formatvaluetype PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_innerkey PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_create_blank PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_remove PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_find PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_parse PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_files PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_save PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_extensions PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_mimetypes PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_translate PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_markup PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_nonascii PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_serialize PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_default_handlings PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_base_filename PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_plural_zero_always_set PASSED [ 83%] 351s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add_unit PASSED [ 83%] 351s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_isfuzzy PASSED [ 83%] 351s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_create PASSED [ 83%] 351s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_eq PASSED [ 83%] 351s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_escapes PASSED [ 83%] 351s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_difficult_escapes PASSED [ 83%] 351s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_target PASSED [ 83%] 351s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_get PASSED [ 83%] 351s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_set PASSED [ 83%] 351s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity XFAIL [ 83%] 351s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_create_blank PASSED [ 83%] 351s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_add PASSED [ 83%] 351s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_remove PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_find PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_parse PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_files PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_save PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_extensions PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_mimetypes PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_translate PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_markup PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_nonascii PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_create_blank PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_add PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_remove PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_find PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_parse PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_files PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_save PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_extensions PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_mimetypes PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_translate PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_markup PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_nonascii PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_create_blank PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_add PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_remove PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_find PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_parse PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_files PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_save PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_extensions PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_mimetypes PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_translate PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_markup PASSED [ 84%] 351s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_nonascii PASSED [ 85%] 351s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_create_blank PASSED [ 85%] 351s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_add PASSED [ 85%] 351s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_remove PASSED [ 85%] 351s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_find PASSED [ 85%] 351s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_parse PASSED [ 85%] 351s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_files PASSED [ 85%] 351s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_save PASSED [ 85%] 351s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_extensions PASSED [ 85%] 351s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_mimetypes PASSED [ 85%] 351s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_translate PASSED [ 85%] 351s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_markup PASSED [ 85%] 351s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_nonascii PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXUnit::test_isfuzzy PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXUnit::test_create PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXUnit::test_eq PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXUnit::test_target PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXUnit::test_escapes PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXUnit::test_difficult_escapes PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXUnit::test_note_sanity PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_get PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_set PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_create_blank PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_add PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_remove PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_find PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_translate PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_parse PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_files PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_save PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_markup PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_nonascii PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_extensions PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_mimetypes PASSED [ 85%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_basic PASSED [ 86%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_source PASSED [ 86%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_target PASSED [ 86%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_setid PASSED [ 86%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_indent PASSED [ 86%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_descrip PASSED [ 86%] 351s tests/translate/storage/test_tbx.py::TestTBXfile::test_note_from PASSED [ 86%] 351s tests/translate/storage/test_tiki.py::TestTikiUnit::test_locations PASSED [ 86%] 351s tests/translate/storage/test_tiki.py::TestTikiUnit::test_to_unicode PASSED [ 86%] 351s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_simple PASSED [ 86%] 351s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_encode PASSED [ 86%] 351s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_locations PASSED [ 86%] 351s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_ignore_extras PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnit::test_isfuzzy PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnit::test_create PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnit::test_eq PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnit::test_target PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnit::test_escapes PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnit::test_difficult_escapes PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnit::test_note_sanity PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_get PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_set PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_isfuzzy PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_create PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_eq PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_target PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_escapes PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_difficult_escapes PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_note_sanity PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_get PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_set PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXfile::test_create_blank PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXfile::test_add PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXfile::test_remove PASSED [ 86%] 351s tests/translate/storage/test_tmx.py::TestTMXfile::test_find PASSED [ 87%] 351s tests/translate/storage/test_tmx.py::TestTMXfile::test_parse PASSED [ 87%] 351s tests/translate/storage/test_tmx.py::TestTMXfile::test_files PASSED [ 87%] 351s tests/translate/storage/test_tmx.py::TestTMXfile::test_save PASSED [ 87%] 351s tests/translate/storage/test_tmx.py::TestTMXfile::test_markup PASSED [ 87%] 351s tests/translate/storage/test_tmx.py::TestTMXfile::test_nonascii PASSED [ 87%] 351s tests/translate/storage/test_tmx.py::TestTMXfile::test_extensions PASSED [ 87%] 351s tests/translate/storage/test_tmx.py::TestTMXfile::test_mimetypes PASSED [ 87%] 351s tests/translate/storage/test_tmx.py::TestTMXfile::test_translate PASSED [ 87%] 351s tests/translate/storage/test_tmx.py::TestTMXfile::test_addtranslation PASSED [ 87%] 351s tests/translate/storage/test_tmx.py::TestTMXfile::test_withcomment PASSED [ 87%] 351s tests/translate/storage/test_tmx.py::TestTMXfile::test_withnewlines PASSED [ 87%] 351s tests/translate/storage/test_tmx.py::TestTMXfile::test_xmlentities PASSED [ 87%] 351s tests/translate/storage/test_tmx.py::TestTMXfile::test_controls_cleaning PASSED [ 87%] 351s tests/translate/storage/test_trados.py::test_unescape PASSED [ 87%] 351s tests/translate/storage/test_trados.py::test_escape PASSED [ 87%] 351s tests/translate/storage/test_ts.py::TestTS::test_construct PASSED [ 87%] 351s tests/translate/storage/test_ts2.py::TestTSUnit::test_isfuzzy PASSED [ 87%] 351s tests/translate/storage/test_ts2.py::TestTSUnit::test_create PASSED [ 87%] 351s tests/translate/storage/test_ts2.py::TestTSUnit::test_eq PASSED [ 87%] 351s tests/translate/storage/test_ts2.py::TestTSUnit::test_target PASSED [ 87%] 351s tests/translate/storage/test_ts2.py::TestTSUnit::test_escapes PASSED [ 87%] 351s tests/translate/storage/test_ts2.py::TestTSUnit::test_difficult_escapes PASSED [ 87%] 351s tests/translate/storage/test_ts2.py::TestTSUnit::test_note_sanity PASSED [ 87%] 351s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_get PASSED [ 87%] 351s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_set PASSED [ 87%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_create_blank PASSED [ 87%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_add PASSED [ 87%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_remove PASSED [ 87%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_find PASSED [ 87%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_translate PASSED [ 87%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_parse PASSED [ 87%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_files PASSED [ 87%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_save PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_markup PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_nonascii PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_extensions PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_mimetypes PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_basic PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_source PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_target PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_plurals PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_nplural PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_language PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_edit PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_obsolete PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_locations PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_merge_with_fuzzies PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_getid PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_backnforth PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_context PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_roundtrip_context PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_edit_missing_translation PASSED [ 88%] 351s tests/translate/storage/test_ts2.py::TestTSfile::test_missing_source PASSED [ 88%] 351s tests/translate/storage/test_txt.py::TestTxtUnit::test_isfuzzy PASSED [ 88%] 351s tests/translate/storage/test_txt.py::TestTxtUnit::test_create PASSED [ 88%] 351s tests/translate/storage/test_txt.py::TestTxtUnit::test_eq PASSED [ 88%] 351s tests/translate/storage/test_txt.py::TestTxtUnit::test_escapes PASSED [ 88%] 351s tests/translate/storage/test_txt.py::TestTxtUnit::test_difficult_escapes PASSED [ 88%] 351s tests/translate/storage/test_txt.py::TestTxtUnit::test_note_sanity PASSED [ 88%] 351s tests/translate/storage/test_txt.py::TestTxtUnit::test_target PASSED [ 88%] 351s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_get PASSED [ 88%] 351s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_set PASSED [ 88%] 351s tests/translate/storage/test_txt.py::TestTxtFile::test_create_blank PASSED [ 88%] 351s tests/translate/storage/test_txt.py::TestTxtFile::test_add PASSED [ 88%] 351s tests/translate/storage/test_txt.py::TestTxtFile::test_remove PASSED [ 88%] 351s tests/translate/storage/test_txt.py::TestTxtFile::test_find PASSED [ 88%] 351s tests/translate/storage/test_txt.py::TestTxtFile::test_parse PASSED [ 89%] 351s tests/translate/storage/test_txt.py::TestTxtFile::test_files PASSED [ 89%] 351s tests/translate/storage/test_txt.py::TestTxtFile::test_save PASSED [ 89%] 351s tests/translate/storage/test_txt.py::TestTxtFile::test_extensions PASSED [ 89%] 351s tests/translate/storage/test_txt.py::TestTxtFile::test_mimetypes PASSED [ 89%] 351s tests/translate/storage/test_txt.py::TestTxtFile::test_translate PASSED [ 89%] 351s tests/translate/storage/test_txt.py::TestTxtFile::test_markup PASSED [ 89%] 351s tests/translate/storage/test_txt.py::TestTxtFile::test_nonascii PASSED [ 89%] 351s tests/translate/storage/test_txt.py::TestTxtFile::test_simpleblock PASSED [ 89%] 351s tests/translate/storage/test_txt.py::TestTxtFile::test_multipleblocks PASSED [ 89%] 351s tests/translate/storage/test_txt.py::TestTxtFile::test_no_segmentation PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxUnit::test_isfuzzy PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxUnit::test_create PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxUnit::test_eq PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxUnit::test_target PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxUnit::test_escapes PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxUnit::test_difficult_escapes PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxUnit::test_note_sanity PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_get PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_set PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxFile::test_create_blank PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxFile::test_add PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxFile::test_remove PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxFile::test_find PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxFile::test_translate PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxFile::test_parse PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxFile::test_files PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxFile::test_save PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxFile::test_markup PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxFile::test_nonascii PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxFile::test_extensions PASSED [ 89%] 351s tests/translate/storage/test_utx.py::TestUtxFile::test_mimetypes PASSED [ 89%] 351s tests/translate/storage/test_wordfast.py::TestWFTime::test_timestring PASSED [ 89%] 351s tests/translate/storage/test_wordfast.py::TestWFTime::test_time PASSED [ 89%] 351s tests/translate/storage/test_wordfast.py::TestWFUnit::test_isfuzzy PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFUnit::test_create PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFUnit::test_eq PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFUnit::test_target PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFUnit::test_escapes PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFUnit::test_note_sanity PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_get PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_set PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFUnit::test_difficult_escapes PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFUnit::test_wordfast_escaping PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFUnit::test_newlines PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFUnit::test_language_setting PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFUnit::test_istranslated PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFFile::test_create_blank PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFFile::test_add PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFFile::test_remove PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFFile::test_find PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFFile::test_translate PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFFile::test_parse PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFFile::test_files PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFFile::test_save PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFFile::test_markup PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFFile::test_nonascii PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFFile::test_extensions PASSED [ 90%] 351s tests/translate/storage/test_wordfast.py::TestWFFile::test_mimetypes PASSED [ 90%] 351s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_isfuzzy PASSED [ 90%] 351s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_create PASSED [ 90%] 351s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_eq PASSED [ 90%] 351s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_target PASSED [ 90%] 351s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_escapes PASSED [ 90%] 351s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_difficult_escapes PASSED [ 90%] 351s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_note_sanity PASSED [ 90%] 351s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_get PASSED [ 90%] 351s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_set PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_markreview PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_errors PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_accepted_control_chars PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_unaccepted_control_chars PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_create_blank PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_remove PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_find PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_translate PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parse PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_files PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_save PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_markup PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_nonascii PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_extensions PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_mimetypes PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_basic PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_namespace PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_source PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_target PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_source PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_target PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_sourcelanguage PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage_multi PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_notes PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_alttrans PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_fuzzy PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_xml_space PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parsing PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_entities PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_multiple_filenodes PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_indent PASSED [ 91%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add_target PASSED [ 92%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve PASSED [ 92%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_closing_tags PASSED [ 92%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_context_groups PASSED [ 92%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_getlocations PASSED [ 92%] 351s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_addlocation PASSED [ 92%] 352s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_huge PASSED [ 92%] 352s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve_add PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_isfuzzy PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_create PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_eq PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_escapes PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_difficult_escapes PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_note_sanity PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_target PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_get PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_set PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_getlocations PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_create_blank PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_find PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_files PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_save PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_extensions PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_mimetypes PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_translate PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_markup PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nonascii PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_serialize PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit_unicode PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse_unicode_list PASSED [ 92%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_ordering PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_initial_comments PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_string_key PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nested PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_multiline PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_boolean PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_integer PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_no_quote_strings PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_double_quote_strings PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_single_quote_strings PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_double_quote_strings PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_single_quote_strings PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_escaped_double_quotes PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_newlines PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_list PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_dictionary PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_key_nesting PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add_to_mepty PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty_key PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dict_in_list PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dump_args PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_anchors PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_tagged_scalar PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_numeric PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_remove PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_special PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_quotes_roundtrip PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_create_blank PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_remove PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_find PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_parse PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_files PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_save PASSED [ 93%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_extensions PASSED [ 94%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_mimetypes PASSED [ 94%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_translate PASSED [ 94%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_markup PASSED [ 94%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_nonascii PASSED [ 94%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_list PASSED [ 94%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby PASSED [ 94%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_wrong PASSED [ 94%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_invalid_value PASSED [ 94%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural PASSED [ 94%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_empty PASSED [ 94%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_anchors PASSED [ 94%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_type_change PASSED [ 94%] 352s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_add PASSED [ 94%] 352s tests/translate/storage/test_zip.py::TestZIPFile::test_created PASSED [ 94%] 352s tests/translate/storage/test_zip.py::TestZIPFile::test_basic PASSED [ 94%] 352s tests/translate/storage/test_zip.py::TestZIPFile::test_structure PASSED [ 94%] 352s tests/translate/storage/test_zip.py::TestZIPFile::test_getunits PASSED [ 94%] 352s tests/translate/storage/xml_extract/test_misc.py::test_reduce_tree PASSED [ 94%] 352s tests/translate/storage/xml_extract/test_misc.py::test_compose_mappings PASSED [ 94%] 352s tests/translate/storage/xml_extract/test_misc.py::test_parse_tag PASSED [ 94%] 352s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath_component PASSED [ 94%] 352s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath PASSED [ 94%] 352s tests/translate/storage/xml_extract/test_unit_tree.py::test__add_unit_to_tree PASSED [ 94%] 352s tests/translate/storage/xml_extract/test_xpath_breadcrumb.py::test_breadcrumb PASSED [ 94%] 352s tests/translate/tools/test_help.py::test_help[build_tmdb] SKIPPED (S...) [ 94%] 352s tests/translate/tools/test_help.py::test_help[phppo2pypo] SKIPPED (S...) [ 94%] 352s tests/translate/tools/test_help.py::test_help[poclean] SKIPPED (Skip...) [ 94%] 352s tests/translate/tools/test_help.py::test_help[pocompile] SKIPPED (Sk...) [ 94%] 352s tests/translate/tools/test_help.py::test_help[poconflicts] SKIPPED (...) [ 94%] 352s tests/translate/tools/test_help.py::test_help[pocount] SKIPPED (Skip...) [ 94%] 352s tests/translate/tools/test_help.py::test_help[podebug] SKIPPED (Skip...) [ 94%] 352s tests/translate/tools/test_help.py::test_help[pogrep] SKIPPED (Skip ...) [ 94%] 352s tests/translate/tools/test_help.py::test_help[pomerge] SKIPPED (Skip...) [ 94%] 352s tests/translate/tools/test_help.py::test_help[porestructure] SKIPPED [ 95%] 352s tests/translate/tools/test_help.py::test_help[posegment] SKIPPED (Sk...) [ 95%] 352s tests/translate/tools/test_help.py::test_help[poswap] SKIPPED (Skip ...) [ 95%] 352s tests/translate/tools/test_help.py::test_help[poterminology] SKIPPED [ 95%] 352s tests/translate/tools/test_help.py::test_help[pretranslate] SKIPPED [ 95%] 352s tests/translate/tools/test_help.py::test_help[pydiff] SKIPPED (Skip ...) [ 95%] 352s tests/translate/tools/test_help.py::test_help[pypo2phppo] SKIPPED (S...) [ 95%] 352s tests/translate/tools/test_junitmsgfmt.py::test_output[failure] PASSED [ 95%] 352s tests/translate/tools/test_junitmsgfmt.py::test_output[untranslated] PASSED [ 95%] 352s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_single_po PASSED [ 95%] 352s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_plural_po PASSED [ 95%] 352s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_single_po PASSED [ 95%] 352s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_plural_po PASSED [ 95%] 352s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_help PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_zero PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_one PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_two PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::TestCount::test_punctuation_divides_words PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::TestCount::test_xml_tags PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::TestCount::test_newlines PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::TestCount::test_variables_are_words PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::TestCount::test_plurals PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde XFAIL [ 95%] 352s tests/translate/tools/test_pocount.py::TestCount::test_msgid_blank PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::TestPOCount::test_translated PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzy PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslated PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::TestPOCount::test_total PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::TestPOCount::test_translatedsourcewords PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzysourcewords PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslatedsourcewords PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::TestPOCount::test_totalsourcewords PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-csv] PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-full] PASSED [ 95%] 352s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-strings] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-words] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-csv] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-full] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-strings] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-words] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-csv] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-full] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-strings] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-words] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-csv] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-full] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-strings] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-words] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_cases[po-file] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_cases[po-file-fuzzy] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_cases[po-file-csv] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_cases[xliff-states-yes] PASSED [ 96%] 352s tests/translate/tools/test_pocount.py::test_cases[xliff-states-no] PASSED [ 96%] 353s tests/translate/tools/test_pocount.py::test_error_cases[mutually-exclusive] PASSED [ 96%] 353s tests/translate/tools/test_pocount.py::test_error_cases[missing-file] PASSED [ 96%] 353s tests/translate/tools/test_pocount.py::test_error_cases[no-args] PASSED [ 96%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_ignore_gtk PASSED [ 96%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_keep_target PASSED [ 96%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_blank PASSED [ 96%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_en PASSED [ 96%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_xxx PASSED [ 96%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_bracket PASSED [ 96%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode PASSED [ 96%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_at_placeholders PASSED [ 96%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_single_brace_placeholders PASSED [ 96%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_double_brace_placeholders PASSED [ 96%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_html PASSED [ 96%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_multiple_styles_of_placeholder PASSED [ 97%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped PASSED [ 97%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_at_placeholders PASSED [ 97%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_single_brace_placeholders PASSED [ 97%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_double_brace_placeholders PASSED [ 97%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_html PASSED [ 97%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_multiple_styles_of_placeholder PASSED [ 97%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified PASSED [ 97%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_at_placeholders PASSED [ 97%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_single_brace_placeholders PASSED [ 97%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_double_brace_placeholders PASSED [ 97%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_html PASSED [ 97%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_multiple_styles_of_placeholder PASSED [ 97%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_chef PASSED [ 97%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_po_variables PASSED [ 97%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_xliff_rewrite PASSED [ 97%] 353s tests/translate/tools/test_podebug.py::TestPODebug::test_hash PASSED [ 97%] 353s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgid PASSED [ 97%] 353s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgstr PASSED [ 97%] 353s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations PASSED [ 97%] 353s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_comments PASSED [ 97%] 353s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations_with_comment_enabled PASSED [ 97%] 353s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_searchstring PASSED [ 97%] 353s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_regex_searchstring PASSED [ 97%] 353s tests/translate/tools/test_pogrep.py::TestPOGrep::test_keep_translations PASSED [ 97%] 353s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_normalise PASSED [ 97%] 353s tests/translate/tools/test_pogrep.py::TestXLiffGrep::test_simplegrep PASSED [ 97%] 353s tests/translate/tools/test_pomerge.py::test_str2bool PASSED [ 97%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_mergesore_bad_data PASSED [ 97%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge PASSED [ 97%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge_no_locations PASSED [ 97%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_replacemerge PASSED [ 97%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_blanks PASSED [ 97%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_fuzzies PASSED [ 97%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_locations PASSED [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_with_locations PASSED [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_no_locations PASSED [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_reflowed_source_comments PASSED [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_comments_with_blank_lines PASSED [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dont_delete_unassociated_comments PASSED [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_trailing_newlines PASSED [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_minor_start_and_end_of_sentence_changes PASSED [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_last_entry_in_a_file PASSED [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs XFAIL [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_comments_layout PASSED [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dos2unix PASSED [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_xliff PASSED [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_po_into_xliff PASSED [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_po PASSED [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_dont_merge_kde_comments_found_in_translation PASSED [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_untranslated_with_kde_disambiguation PASSED [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_header_entries PASSED [ 98%] 353s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_different_locations PASSED [ 98%] 353s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_simple PASSED [ 98%] 353s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_punctuation PASSED [ 98%] 353s tests/translate/tools/test_poterminology.py::TestPOTerminology::test_term_extraction PASSED [ 98%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_pretranslatepo_blank PASSED [ 98%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_simple PASSED [ 98%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_messages_marked_fuzzy PASSED [ 98%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals_with_fuzzy_matching PASSED [ 98%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change XFAIL [ 98%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_change PASSED [ 98%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_and_whitespace_change PASSED [ 98%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes XFAIL [ 98%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently XFAIL [ 98%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_dont_duplicate PASSED [ 98%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_new_overides_old PASSED [ 98%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments_with_blank_comment_lines PASSED [ 98%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_empty_commentlines PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgidcomments PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_resurect_obsolete_messages PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_typecomments PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_xliff_states PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_pretranslatepo_blank PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_simple PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_messages_marked_fuzzy PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change XFAIL [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_change PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_and_whitespace_change PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes XFAIL [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently XFAIL [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_new_overides_old PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments_with_blank_comment_lines PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_empty_commentlines PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgidcomments PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_resurect_obsolete_messages PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_typecomments PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_xliff_states PASSED [ 99%] 353s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_help PASSED [ 99%] 353s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_single_po PASSED [ 99%] 353s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_plural_po PASSED [ 99%] 353s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_single_po PASSED [ 99%] 353s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_plural_po PASSED [ 99%] 353s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_help PASSED [ 99%] 353s tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff SKIPPED [ 99%] 353s tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff SKIPPED [100%] 353s 353s =============================== warnings summary =============================== 353s tests/translate/storage/test_cpo.py:15 353s Warning: 353s Module 'translate.storage.cpo' was found, but when imported by pytest it raised: 353s ImportError('gettext PO library not found') 353s In pytest 9.1 this warning will become an error by default. 353s You can fix the underlying problem, or alternatively overwrite this behavior and silence this warning by passing exc_type=ImportError explicitly. 353s See https://docs.pytest.org/en/stable/deprecations.html#pytest-importorskip-default-behavior-regarding-importerror 353s 353s tests/odf_xliff/test_odf_xliff.py::test_roundtrip 353s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.9zB7bO/autopkgtest_tmp/tests/odf_xliff/test_2.odt'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid 353s Warning: unclosed file <_io.TextIOWrapper name='TestAndroid2POCommand_test_convertandroid/en.po' mode='r' encoding='UTF-8'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 353s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 353s Warning: unclosed file <_io.TextIOWrapper name='TestCSV2POCommand_test_columnorder/test.po' mode='r' encoding='UTF-8'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot 353s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_pot/simple.pot'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po 353s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po 353s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_po/simple.po'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates 353s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_remove_duplicates/simple.po'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf 353s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_xlf/simple.xlf'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 353s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 353s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_columnorder/test.csv' mode='r' encoding='UTF-8'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context 353s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_context/test.csv' mode='r' encoding='UTF-8'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing 353s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey 353s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey 353s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing 353s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey 353s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey 353s Warning: Could not find accesskey for key.accesskey 353s 353s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 353s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file 353s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten 353s Warning: unclosed file <_io.BufferedReader name='translation/file1.po'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 353s Warning: unclosed file <_io.BufferedWriter name='translated/file1.html'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert 353s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.9zB7bO/autopkgtest_tmp/tests/translate/convert/test.idml'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po 353s Warning: unclosed file <_io.BufferedReader name='translation.po'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 353s Warning: unclosed file <_io.FileIO name='input.oo' mode='rb' closefd=True> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 353s Warning: unclosed file <_io.FileIO name='output.oo' mode='wb' closefd=True> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey 353s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey 353s Warning: Could not find accesskey for prop.accesskey 353s 353s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert 353s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert/simple.po'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 353s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf16/simple.po'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 353s Warning: unclosed file <_io.BufferedWriter name='simple.po'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 353s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 353s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_wrong/simple.po'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 353s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf8/simple.po'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex 353s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_menuex/simple.po'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot 353s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_pot/simple.pot'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po 353s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_po/simple.po'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates 353s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_remove_duplicates/simple.po'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 353s Warning: unclosed file <_io.BufferedWriter name='simple.odt'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 353s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.9zB7bO/autopkgtest_tmp/tests/translate/convert/test.odt'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename 353s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_preserve_filename/snippet.xlf'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot 353s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_pot/simple.pot'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po 353s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_po/simple.po'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates 353s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_remove_duplicates/simple.po'> 353s Enable tracemalloc to get traceback where the object was allocated. 353s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 353s 353s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 353s Warning: DTD parse error: :1:36:FATAL:PARSER:ERR_ENTITY_NOT_FINISHED: xmlParseEntityDecl: entity test.me not terminated 353s 353s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 353s Warning: DTD file '' does not validate 353s 353s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 353s --------------------------- snapshot report summary ---------------------------- 353s 23 snapshots passed. 353s =========================== short test summary info ============================ 353s SKIPPED [1] tests/translate/storage/test_cpo.py:15: could not import 'translate.storage.cpo': gettext PO library not found 353s SKIPPED [1] tests/translate/storage/test_fluent.py:29: could not import 'translate.storage.fluent': No module named 'fluent' 353s SKIPPED [1] tests/translate/filters/test_checks.py:1429: Spell checking for af is not available 353s SKIPPED [1] tests/translate/storage/test_mo.py:498: Skip testing command line tools 353s SKIPPED [16] tests/translate/tools/test_help.py:16: Skip testing command line tools 353s SKIPPED [1] tests/xliff_conformance/test_xliff_conformance.py:49: Skip testing command line tools 353s SKIPPED [1] tests/xliff_conformance/test_xliff_conformance.py:58: Skip testing command line tools 353s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence - Not Implemented 353s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence - Not Implemented 353s XFAIL tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template - Need to review if we want this behaviour 353s XFAIL tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template - Need to review if we want this behaviour 353s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change - Not implemented - review if this is even correct 353s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes - Not Implemented - needs review 353s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently - Not Implemented - review if this is even correct 353s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change - Not implemented - review if this is even correct 353s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes - Not Implemented - needs review 353s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently - Not Implemented - review if this is even correct 353s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates - This is invalid YAML document 353s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates - This is invalid YAML document 353s XFAIL tests/translate/filters/test_checks.py::test_acceleratedvariables - Accelerated variables needs a better implementation 353s XFAIL tests/translate/filters/test_checks.py::test_musttranslatewords - FIXME: All fails() tests are not working 353s XFAIL tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time - Bug #3408 353s XFAIL tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags - Bug #3506 353s XFAIL tests/translate/lang/test_common.py::test_word_khmer - ZWS is not considered a space in Python 2.6+. Khmer should extend words() to include \u200b in addition to other word breakers. 353s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables - Test needs fixing, disabled for now 353s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables - Test needs fixing, disabled for now 353s XFAIL tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases - Not Implemented 353s XFAIL tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases - Not Implemented 353s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_comment_following - Not Implemented 353s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting - Not Implemented 353s XFAIL tests/translate/storage/test_omegat.py::TestOtFile::test_extensions - This doesn't work, due to two store classes handling different extensions, but factory listing it as one supported file type 353s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals - Not Implemented 353s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 353s XFAIL tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove - removal not working in full page 353s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals - Not Implemented 353s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 353s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment - Not sure if this can not be parsed gracefully 353s XFAIL tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity - Not Implemented 353s XFAIL tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde - Support commented out pending removal 353s XFAIL tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs - Not Implemented 353s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change - Not Implemented 353s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes - Not Implemented 353s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently - Not Implemented 353s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change - Not Implemented 353s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes - Not Implemented 353s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently - Not Implemented 353s ========= 3309 passed, 22 skipped, 39 xfailed, 47 warnings in -70.56s ========== 354s ============================= test session starts ============================== 354s platform linux -- Python 3.13.2, pytest-8.3.4, pluggy-1.5.0 -- /usr/bin/python3.13 354s cachedir: .pytest_cache 354s rootdir: /tmp/autopkgtest.9zB7bO/autopkgtest_tmp 354s plugins: syrupy-4.8.1, typeguard-4.4.1 359s collecting ... collected 3368 items / 2 skipped 359s 359s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff PASSED [ 0%] 359s tests/odf_xliff/test_odf_xliff.py::test_roundtrip PASSED [ 0%] 359s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff2_inline PASSED [ 0%] 359s tests/translate/convert/test_accesskey.py::test_get_label_and_accesskey PASSED [ 0%] 359s tests/translate/convert/test_accesskey.py::test_extract_bad_accesskeys PASSED [ 0%] 359s tests/translate/convert/test_accesskey.py::test_ignore_entities PASSED [ 0%] 359s tests/translate/convert/test_accesskey.py::test_alternate_accesskey_marker PASSED [ 0%] 359s tests/translate/convert/test_accesskey.py::test_unicode PASSED [ 0%] 359s tests/translate/convert/test_accesskey.py::test_numeric PASSED [ 0%] 359s tests/translate/convert/test_accesskey.py::test_empty_string PASSED [ 0%] 359s tests/translate/convert/test_accesskey.py::test_end_of_string PASSED [ 0%] 359s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey PASSED [ 0%] 359s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey_different_capitals PASSED [ 0%] 359s tests/translate/convert/test_accesskey.py::test_uncombinable PASSED [ 0%] 359s tests/translate/convert/test_accesskey.py::test_accesskey_already_in_text PASSED [ 0%] 359s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_no_template_units PASSED [ 0%] 359s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_template_units PASSED [ 0%] 359s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_no_template_units PASSED [ 0%] 359s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_template_units PASSED [ 0%] 359s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_help PASSED [ 0%] 359s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid PASSED [ 0%] 359s tests/translate/convert/test_convert.py::TestConvertCommand::test_help PASSED [ 0%] 359s tests/translate/convert/test_csv2po.py::test_replacestrings PASSED [ 0%] 359s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity PASSED [ 0%] 359s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity_with_template PASSED [ 0%] 359s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_newlines PASSED [ 0%] 359s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_tabs PASSED [ 0%] 359s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_quotes PASSED [ 0%] 359s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_empties PASSED [ 0%] 359s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_kdecomment PASSED [ 0%] 359s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_escaped_newlines PASSED [ 0%] 359s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity PASSED [ 0%] 359s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity_with_template PASSED [ 0%] 359s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_newlines PASSED [ 1%] 359s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_tabs PASSED [ 1%] 359s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_quotes PASSED [ 1%] 359s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_empties PASSED [ 1%] 359s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_kdecomment PASSED [ 1%] 359s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_escaped_newlines PASSED [ 1%] 359s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_help PASSED [ 1%] 359s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_simpleentity PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_convertdtd PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_apos PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_quotes PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_two_empty_entities PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity_translated PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisaton_note_simple PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisation_note_merge PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_simple PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_label PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_onlyentity PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_commentedout PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_spaces_at_start_of_dtd_lines PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_folding PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_mismatch PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_carriage_return_in_multiline_dtd PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_with_blankline PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_closing_quotes PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_preserving_spaces PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_escaping_newline_tabs PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_abandoned_accelerator PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_unassociable_accelerator PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_changed_labels_and_accelerators PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence XFAIL [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_exclude_entity_includes PASSED [ 1%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_linewraps PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merging_with_new_untranslated PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merge_without_template PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_simpleentity PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_convertdtd PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_apos PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_quotes PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_two_empty_entities PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity_translated PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisaton_note_simple PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisation_note_merge PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_simple PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_label PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_onlyentity PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_commentedout PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_spaces_at_start_of_dtd_lines PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_folding PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_mismatch PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_carriage_return_in_multiline_dtd PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_with_blankline PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_closing_quotes PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_preserving_spaces PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_escaping_newline_tabs PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_abandoned_accelerator PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_unassociable_accelerator PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_changed_labels_and_accelerators PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence XFAIL [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_exclude_entity_includes PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_linewraps PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merging_with_new_untranslated PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merge_without_template PASSED [ 2%] 359s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_help PASSED [ 2%] 359s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_defaults PASSED [ 2%] 359s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_root_name PASSED [ 3%] 359s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_value_name PASSED [ 3%] 359s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_key PASSED [ 3%] 359s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_default_namespace PASSED [ 3%] 359s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_namespace_prefix PASSED [ 3%] 359s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_all_parameters PASSED [ 3%] 359s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_empty_file_is_empty_store PASSED [ 3%] 359s tests/translate/convert/test_flatxml2po.py::TestFlatXML2POCommand::test_help PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_extract_lang_attribute_from_html_tag PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title_with_linebreak PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_meta PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_br PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak_and_embedded_br PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_uppercase_html PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div_with_linebreaks PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a_with_linebreak PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_sequence_of_anchor_elements PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_img_empty PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img_inside_a PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_table_summary PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_simple PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_complex PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_empty PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_address PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings_with_linebreaks PASSED [ 3%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dt PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dd PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_span PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_ul PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_lists PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_duplicates PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiline_reflow PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_tags PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_carriage_return PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_encoding_latin1 PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_strip_html PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_text PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_attributes PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_charrefs PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiple_php PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_multiline PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_with_embedded_html PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_comments PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2PO::test_attribute_without_value PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_extract_lang_attribute_from_html_tag PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title_with_linebreak PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_meta PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_br PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak_and_embedded_br PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_uppercase_html PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div_with_linebreaks PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a_with_linebreak PASSED [ 4%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_sequence_of_anchor_elements PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_img_empty PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img_inside_a PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_table_summary PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_simple PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_complex PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_empty PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_address PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings_with_linebreaks PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dt PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dd PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_span PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_ul PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_lists PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_duplicates PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiline_reflow PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_tags PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_carriage_return PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_encoding_latin1 PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_strip_html PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_text PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_attributes PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_charrefs PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiple_php PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_multiline PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_with_embedded_html PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_comments PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_attribute_without_value PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_help PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_single PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile PASSED [ 5%] 359s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile_to_stdout PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_convert_empty_file PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_translations PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_summary PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_description PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_location PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_comment PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_template_duplicate_style PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_misaligned_files PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_blank_msgstr PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_duplicate_style PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_convert_empty_file PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_translations PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_summary PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_description PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_location PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_comment PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_template_duplicate_style PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_misaligned_files PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_blank_msgstr PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_duplicate_style PASSED [ 6%] 359s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_help PASSED [ 6%] 359s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_help PASSED [ 6%] 359s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_convert PASSED [ 6%] 359s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_empty_file PASSED [ 6%] 359s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_no_translation PASSED [ 6%] 359s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_simple PASSED [ 6%] 359s tests/translate/convert/test_ini2po.py::TestIni2PO::test_no_duplicates PASSED [ 6%] 359s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_simple PASSED [ 6%] 359s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_misaligned_files PASSED [ 6%] 359s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_blank_msgstr PASSED [ 6%] 359s tests/translate/convert/test_ini2po.py::TestIni2PO::test_dialects_inno PASSED [ 7%] 359s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_empty_file PASSED [ 7%] 359s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_no_translation PASSED [ 7%] 359s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_simple PASSED [ 7%] 359s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_no_duplicates PASSED [ 7%] 359s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_simple PASSED [ 7%] 359s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_misaligned_files PASSED [ 7%] 359s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_blank_msgstr PASSED [ 7%] 359s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_dialects_inno PASSED [ 7%] 359s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_help PASSED [ 7%] 359s tests/translate/convert/test_json2po.py::TestJson2PO::test_simple PASSED [ 7%] 359s tests/translate/convert/test_json2po.py::TestJson2PO::test_three_same_keys PASSED [ 7%] 359s tests/translate/convert/test_json2po.py::TestJson2PO::test_filter PASSED [ 7%] 359s tests/translate/convert/test_json2po.py::TestJson2PO::test_miltiple_units PASSED [ 7%] 359s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_simple PASSED [ 7%] 359s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_three_same_keys PASSED [ 7%] 359s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_filter PASSED [ 7%] 359s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_miltiple_units PASSED [ 7%] 359s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_help PASSED [ 7%] 359s tests/translate/convert/test_md2po.py::TestMD2PO::test_help PASSED [ 7%] 359s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_single PASSED [ 7%] 359s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_onefile PASSED [ 7%] 359s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_single PASSED [ 7%] 359s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_onefile PASSED [ 7%] 359s tests/translate/convert/test_moz2po.py::TestMoz2POCommand::test_help PASSED [ 7%] 359s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_simpleentry PASSED [ 7%] 359s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_uncomment_contributors PASSED [ 7%] 359s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_convert_empty PASSED [ 7%] 359s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_string PASSED [ 7%] 359s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_merge PASSED [ 7%] 359s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_entry PASSED [ 7%] 359s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_comment PASSED [ 7%] 359s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_meta_tags PASSED [ 7%] 359s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_keep_duplicates PASSED [ 7%] 359s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_drop_duplicates PASSED [ 8%] 359s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_convert_empty PASSED [ 8%] 359s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_string PASSED [ 8%] 359s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_merge PASSED [ 8%] 359s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_entry PASSED [ 8%] 359s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_comment PASSED [ 8%] 359s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_meta_tags PASSED [ 8%] 359s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_keep_duplicates PASSED [ 8%] 359s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_drop_duplicates PASSED [ 8%] 359s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_help PASSED [ 8%] 359s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_help PASSED [ 8%] 359s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_convert PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2PO::test_simpleentity PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_escape PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_whitespaceonly PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2PO::test_double_escapes PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes_helpcontent2 PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2PO::test_msgid_bug_error_address PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2PO::test_x_comment_inclusion PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simpleentity PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_double_escapes PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_help PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_preserve_filename PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 8%] 359s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates PASSED [ 8%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_simpleentity PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_escape PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_whitespaceonly PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_double_escapes PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes_helpcontent2 PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_x_comment_inclusion PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_msgid_bug_error_address PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simpleentity PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_double_escapes PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_help PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_preserve_filename PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 359s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 365s tests/translate/convert/test_php2po.py::TestPhp2PO::test_simpleentry PASSED [ 9%] 370s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphp PASSED [ 9%] 380s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphptemplate PASSED [ 9%] 392s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpmissing PASSED [ 9%] 394s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpempty PASSED [ 9%] 400s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unicode PASSED [ 9%] 405s tests/translate/convert/test_php2po.py::TestPhp2PO::test_multiline PASSED [ 9%] 411s tests/translate/convert/test_php2po.py::TestPhp2PO::test_comments_before PASSED [ 9%] 416s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry PASSED [ 9%] 421s tests/translate/convert/test_php2po.py::TestPhp2PO::test_hash_comment_with_equals PASSED [ 9%] 432s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry_translated PASSED [ 9%] 442s tests/translate/convert/test_php2po.py::TestPhp2PO::test_newlines_in_value PASSED [ 9%] 453s tests/translate/convert/test_php2po.py::TestPhp2PO::test_spaces_in_name PASSED [ 10%] 464s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_array PASSED [ 10%] 474s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_array PASSED [ 10%] 484s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_nested_arrays PASSED [ 10%] 496s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_nested_arrays PASSED [ 10%] 501s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_simpleentry PASSED [ 10%] 506s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphp PASSED [ 10%] 516s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphptemplate PASSED [ 10%] 527s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpmissing PASSED [ 10%] 529s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpempty PASSED [ 10%] 534s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unicode PASSED [ 10%] 539s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_multiline PASSED [ 10%] 544s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_comments_before PASSED [ 10%] 549s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry PASSED [ 10%] 554s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_hash_comment_with_equals PASSED [ 10%] 565s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry_translated PASSED [ 10%] 576s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_newlines_in_value PASSED [ 10%] 587s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_spaces_in_name PASSED [ 10%] 599s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_array PASSED [ 10%] 610s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_array PASSED [ 10%] 621s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_nested_arrays PASSED [ 10%] 631s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_nested_arrays PASSED [ 10%] 631s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_help PASSED [ 10%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_simpleentity PASSED [ 10%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_multiline PASSED [ 10%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapednewlines PASSED [ 10%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedtabs PASSED [ 10%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedquotes PASSED [ 10%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedescape PASSED [ 10%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_singlequotes PASSED [ 10%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_empties PASSED [ 10%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_kdecomments PASSED [ 10%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_simpleentity PASSED [ 10%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_multiline PASSED [ 10%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapednewlines PASSED [ 11%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedtabs PASSED [ 11%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedquotes PASSED [ 11%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedescape PASSED [ 11%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_singlequotes PASSED [ 11%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_empties PASSED [ 11%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_kdecomments PASSED [ 11%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_help PASSED [ 11%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder PASSED [ 11%] 631s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_joinlines PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_escapedstr PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_missingaccesskey PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskeycase PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_types PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities_two PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments_translator PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_retains_hashprefix PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_convertdtd PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_with_template PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_without_template PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_blank_source PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_newlines_escapes PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_simple PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_escape PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_quotes PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_amp PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_merging_entries_with_spaces_removed PASSED [ 11%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces_after_value PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_duplicates PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_joinlines PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_escapedstr PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_missingaccesskey PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskeycase PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_types PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities_two PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments_translator PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_retains_hashprefix PASSED [ 12%] 631s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_convertdtd PASSED [ 12%] 632s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_with_template PASSED [ 12%] 632s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_without_template PASSED [ 12%] 632s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_blank_source PASSED [ 12%] 632s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_newlines_escapes PASSED [ 12%] 632s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_simple PASSED [ 12%] 632s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_escape PASSED [ 12%] 632s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_quotes PASSED [ 12%] 632s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_amp PASSED [ 12%] 632s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_merging_entries_with_spaces_removed PASSED [ 12%] 632s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces PASSED [ 12%] 632s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces_after_value PASSED [ 12%] 632s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments PASSED [ 12%] 632s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_duplicates PASSED [ 12%] 632s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_help PASSED [ 12%] 632s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_defaults PASSED [ 13%] 632s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_root_name PASSED [ 13%] 632s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_value_name PASSED [ 13%] 632s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_key PASSED [ 13%] 632s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_default_namespace PASSED [ 13%] 632s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_namespace_prefix PASSED [ 13%] 632s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_indent_eight PASSED [ 13%] 632s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_noindent PASSED [ 13%] 632s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXMLCommand::test_help PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2Html::test_simple PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2Html::test_linebreaks PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2Html::test_replace_substrings PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_outside_translatable_content PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_embedded_within_translatable_content PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_without_value PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2Html::test_entities PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2Html::test_escapes PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_translated PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_untranslated PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_fuzzy PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2Html::test_untranslated_attributes PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_simple PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_linebreaks PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_replace_substrings PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_outside_translatable_content PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_embedded_within_translatable_content PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_without_value PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_entities PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_escapes PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_translated PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_untranslated PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_fuzzy PASSED [ 13%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_untranslated_attributes PASSED [ 14%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_help PASSED [ 14%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_individual_files PASSED [ 14%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_fully_recursive PASSED [ 14%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_input_specified PASSED [ 14%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified PASSED [ 14%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_output_specified PASSED [ 14%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file PASSED [ 14%] 632s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_empty_file PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_summary PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_description PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_location PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_comment PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_complex_icalendar PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_skip_fuzzy PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_include_fuzzy PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_no_template PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_template_location_not_in_source_file PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_below_threshold PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_above_threshold PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_empty_file PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_summary PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_description PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_location PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_comment PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_complex_icalendar PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_skip_fuzzy PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_include_fuzzy PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_no_template PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_template_location_not_in_source_file PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_below_threshold PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_above_threshold PASSED [ 14%] 632s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_help PASSED [ 14%] 632s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_help PASSED [ 15%] 632s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_no_templates PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_simple PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_space_preservation PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_blank_entries PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_fuzzy PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_propertyless_template PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_empty_value PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_dialects_inno PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_misaligned_files PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_below_threshold PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_above_threshold PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_no_fuzzy PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_allow_fuzzy PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_missing_source PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_repeated_locations PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_no_templates PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_simple PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_space_preservation PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_blank_entries PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_fuzzy PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_propertyless_template PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_empty_value PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_dialects_inno PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_misaligned_files PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_below_threshold PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_above_threshold PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_no_fuzzy PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_allow_fuzzy PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_missing_source PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_repeated_locations PASSED [ 15%] 632s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_help PASSED [ 15%] 632s tests/translate/convert/test_po2json.py::TestPO2JSON::test_basic PASSED [ 16%] 632s tests/translate/convert/test_po2json.py::TestPO2JSON::test_ordering_serialize PASSED [ 16%] 632s tests/translate/convert/test_po2json.py::TestPO2JSON::test_dont_use_empty_translation PASSED [ 16%] 632s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_false PASSED [ 16%] 632s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_true PASSED [ 16%] 632s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_false PASSED [ 16%] 632s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_true PASSED [ 16%] 632s tests/translate/convert/test_po2md.py::TestPO2MD::test_help PASSED [ 16%] 632s tests/translate/convert/test_po2md.py::TestPO2MD::test_single_markdown_file_with_single_po PASSED [ 16%] 632s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po PASSED [ 16%] 632s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_and_directory_of_po_files PASSED [ 16%] 632s tests/translate/convert/test_po2moz.py::TestPO2MozCommand::test_help PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_empty PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_simple PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_comment PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_ok_marker PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_below_threshold PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_above_threshold PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_skip_non_translatable_input PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_no_fuzzy PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_allow_fuzzy PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_mark_active PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_empty PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_simple PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_comment PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_ok_marker PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_below_threshold PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_above_threshold PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_skip_non_translatable_input PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_no_fuzzy PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_allow_fuzzy PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_mark_active PASSED [ 16%] 632s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_help PASSED [ 16%] 632s tests/translate/convert/test_po2oo.py::TestPO2OO::test_convertoo PASSED [ 16%] 632s tests/translate/convert/test_po2oo.py::TestPO2OO::test_pofilter PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_simple PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_escape PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_quotes PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_spaces PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OO::test_default_timestamp PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OO::test_escape_conversion PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes2 PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_convertoo PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_pofilter PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_simple PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_quotes PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_spaces PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_escape_conversion PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes2 PASSED [ 17%] 632s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_help PASSED [ 17%] 637s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp PASSED [ 17%] 637s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_notemplate PASSED [ 17%] 637s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_empty_template PASSED [ 17%] 640s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_simple PASSED [ 17%] 643s tests/translate/convert/test_po2php.py::TestPO2Php::test_space_preservation PASSED [ 17%] 646s tests/translate/convert/test_po2php.py::TestPO2Php::test_preserve_unused_statement PASSED [ 17%] 648s tests/translate/convert/test_po2php.py::TestPO2Php::test_not_translated_multiline PASSED [ 17%] 651s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_blank_entries PASSED [ 17%] 654s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_fuzzy PASSED [ 17%] 656s tests/translate/convert/test_po2php.py::TestPO2Php::test_locations_with_spaces PASSED [ 17%] 659s tests/translate/convert/test_po2php.py::TestPO2Php::test_inline_comments PASSED [ 17%] 662s tests/translate/convert/test_po2php.py::TestPO2Php::test_block_comments PASSED [ 17%] 665s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_variables PASSED [ 17%] 667s tests/translate/convert/test_po2php.py::TestPO2Php::test_multiline PASSED [ 17%] 671s tests/translate/convert/test_po2php.py::TestPO2Php::test_hash_comment PASSED [ 18%] 673s tests/translate/convert/test_po2php.py::TestPO2Php::test_arrays PASSED [ 18%] 676s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_nested_array PASSED [ 18%] 679s tests/translate/convert/test_po2php.py::TestPO2Php::test_unnamed_nested_arrays PASSED [ 18%] 679s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template XFAIL [ 18%] 685s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp PASSED [ 18%] 685s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_notemplate PASSED [ 18%] 685s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_empty_template PASSED [ 18%] 688s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_simple PASSED [ 18%] 692s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_space_preservation PASSED [ 18%] 694s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_preserve_unused_statement PASSED [ 18%] 697s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_not_translated_multiline PASSED [ 18%] 700s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_blank_entries PASSED [ 18%] 703s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_fuzzy PASSED [ 18%] 706s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_locations_with_spaces PASSED [ 18%] 709s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_inline_comments PASSED [ 18%] 711s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_block_comments PASSED [ 18%] 714s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_variables PASSED [ 18%] 717s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_multiline PASSED [ 18%] 720s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_hash_comment PASSED [ 18%] 722s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_arrays PASSED [ 18%] 725s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_nested_array PASSED [ 18%] 728s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_unnamed_nested_arrays PASSED [ 18%] 728s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template XFAIL [ 18%] 728s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_help PASSED [ 18%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_simple PASSED [ 18%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated PASSED [ 18%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_hard_newlines_preserved PASSED [ 18%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_space_preservation PASSED [ 18%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_value PASSED [ 18%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_separator PASSED [ 18%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank_entries PASSED [ 18%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_fuzzy PASSED [ 18%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_margin_whitespace PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_all_whitespace PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_propertyless_template PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_delimiters PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_empty_value PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_personalities PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_simple PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline2 PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_comments PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_unchanged PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gaia_plurals PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_duplicates PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gwt_plurals PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_simple PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_hard_newlines_preserved PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_space_preservation PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_value PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_separator PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank_entries PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_fuzzy PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_margin_whitespace PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_all_whitespace PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_propertyless_template PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_delimiters PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_empty_value PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_personalities PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_simple PASSED [ 19%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline PASSED [ 20%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline2 PASSED [ 20%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_comments PASSED [ 20%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_unchanged PASSED [ 20%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank PASSED [ 20%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gaia_plurals PASSED [ 20%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_duplicates PASSED [ 20%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gwt_plurals PASSED [ 20%] 728s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_help PASSED [ 20%] 728s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_help PASSED [ 20%] 729s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert PASSED [ 20%] 729s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_quotes PASSED [ 20%] 729s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment PASSED [ 20%] 729s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_dos_eol PASSED [ 20%] 729s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_double_string PASSED [ 20%] 729s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_popup PASSED [ 20%] 729s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_discardable PASSED [ 20%] 729s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_menuex PASSED [ 20%] 729s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_newlines PASSED [ 20%] 729s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_after PASSED [ 20%] 729s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_block_language PASSED [ 20%] 729s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_output_encoding PASSED [ 20%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_simpleunit PASSED [ 20%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_basic PASSED [ 20%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_multiline PASSED [ 20%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapednewlines PASSED [ 20%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedtabs PASSED [ 20%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedquotes PASSED [ 20%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_exclusions PASSED [ 20%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments PASSED [ 20%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingcomment PASSED [ 20%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecomment PASSED [ 20%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 20%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments PASSED [ 20%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingcomment PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingduplicatecomment PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingcomment PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_existingcomments PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_simpleunit PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_basic PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_multiline PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapednewlines PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedtabs PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedquotes PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_exclusions PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingcomment PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingcomment PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingduplicatecomment PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingcomment PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_existingcomments PASSED [ 21%] 729s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_help PASSED [ 21%] 729s tests/translate/convert/test_po2sub.py::TestPO2Sub::test_subrip PASSED [ 21%] 729s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_subrip PASSED [ 21%] 729s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_help PASSED [ 21%] 729s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_empty PASSED [ 21%] 729s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert PASSED [ 21%] 729s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_marked_untranslated PASSED [ 21%] 729s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_empty PASSED [ 21%] 729s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert PASSED [ 21%] 729s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_marked_untranslated PASSED [ 22%] 729s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_help PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_basic PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcelanguage PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_targetlanguage PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_multiline PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapednewlines PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedtabs PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedquotes PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_exclusions PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonascii PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonecomments PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_otherscomments PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcecomments PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_typecomments PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_basic PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcelanguage PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_targetlanguage PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_multiline PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapednewlines PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedtabs PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedquotes PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_exclusions PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonascii PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonecomments PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_otherscomments PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcecomments PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_typecomments PASSED [ 22%] 729s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_help PASSED [ 22%] 729s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simpleunit PASSED [ 22%] 729s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simple_unicode_unit PASSED [ 22%] 729s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fullunit PASSED [ 22%] 729s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fuzzyunit PASSED [ 22%] 729s tests/translate/convert/test_po2ts.py::TestPO2TS::test_obsolete PASSED [ 22%] 729s tests/translate/convert/test_po2ts.py::TestPO2TS::test_duplicates PASSED [ 23%] 729s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak PASSED [ 23%] 729s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak_consecutive PASSED [ 23%] 729s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simpleunit PASSED [ 23%] 729s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simple_unicode_unit PASSED [ 23%] 729s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fullunit PASSED [ 23%] 729s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fuzzyunit PASSED [ 23%] 729s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_obsolete PASSED [ 23%] 729s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_duplicates PASSED [ 23%] 729s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak PASSED [ 23%] 729s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak_consecutive PASSED [ 23%] 729s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_help PASSED [ 23%] 729s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_basic PASSED [ 23%] 729s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_nonascii PASSED [ 23%] 729s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_blank_handling PASSED [ 23%] 729s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_fuzzy_handling PASSED [ 23%] 729s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_obsolete_ignore PASSED [ 23%] 729s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_header_ignore PASSED [ 23%] 729s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_below_threshold PASSED [ 23%] 729s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_above_threshold PASSED [ 23%] 729s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_basic PASSED [ 23%] 729s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_nonascii PASSED [ 23%] 729s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_blank_handling PASSED [ 23%] 729s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_fuzzy_handling PASSED [ 23%] 729s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_obsolete_ignore PASSED [ 23%] 729s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_header_ignore PASSED [ 23%] 729s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_below_threshold PASSED [ 23%] 729s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_above_threshold PASSED [ 23%] 729s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_help PASSED [ 23%] 729s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_basic PASSED [ 23%] 729s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_unicode PASSED [ 23%] 729s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_ordering_serialize PASSED [ 23%] 729s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_markmin PASSED [ 23%] 729s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_minimal PASSED [ 23%] 729s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_basic PASSED [ 24%] 729s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_multiline PASSED [ 24%] 729s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapednewlines PASSED [ 24%] 729s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedtabs PASSED [ 24%] 729s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedquotes PASSED [ 24%] 729s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_locationcomments PASSED [ 24%] 729s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_othercomments PASSED [ 24%] 729s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_automaticcomments PASSED [ 24%] 729s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_header PASSED [ 24%] 729s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_fuzzy PASSED [ 24%] 729s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_germanic_plurals PASSED [ 24%] 729s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_funny_plurals PASSED [ 24%] 729s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_language_tags PASSED [ 24%] 729s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_variables PASSED [ 24%] 729s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_approved PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_empty_PO PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_no_templates PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple_output PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_translated PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_no_fuzzy PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_allow_fuzzy PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_nested PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_below_threshold PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_above_threshold PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_empty_PO PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_no_templates PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple_output PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_translated PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_no_fuzzy PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_allow_fuzzy PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_nested PASSED [ 24%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_below_threshold PASSED [ 25%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_above_threshold PASSED [ 25%] 729s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_help PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank_plurals PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_simple PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_messages_marked_fuzzy PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals_with_fuzzy_matching PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change XFAIL [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_change PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_and_whitespace_change PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_ambiguous_with_disambiguous PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes XFAIL [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently XFAIL [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_dont_duplicate PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_new_overides_old PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments_with_blank_comment_lines PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_commentlines PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgidcomments PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_with_msgidcomment PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_obsoleting_messages PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_not_obsoleting_empty_messages PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_new_before_obsolete PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_header_initialisation PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_typecomments PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt_multiline PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_location PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_id PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_msgid PASSED [ 25%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_migrate_msgidcomment_to_msgctxt PASSED [ 26%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_obsolete_msgctxt PASSED [ 26%] 729s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_small_strings PASSED [ 26%] 729s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank PASSED [ 26%] 729s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank_plurals PASSED [ 26%] 729s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_simple PASSED [ 26%] 729s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_messages_marked_fuzzy PASSED [ 26%] 729s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change XFAIL [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_change PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_and_whitespace_change PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_ambiguous_with_disambiguous PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes XFAIL [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently XFAIL [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_new_overides_old PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments_with_blank_comment_lines PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_commentlines PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgidcomments PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_with_msgidcomment PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_obsoleting_messages PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_not_obsoleting_empty_messages PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_new_before_obsolete PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_header_initialisation PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_typecomments PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt_multiline PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_location PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_id PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_msgid PASSED [ 26%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_migrate_msgidcomment_to_msgctxt PASSED [ 27%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_obsolete_msgctxt PASSED [ 27%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_small_strings PASSED [ 27%] 730s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_help PASSED [ 27%] 730s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_no_endlines_added PASSED [ 27%] 730s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_uncomment_contributors PASSED [ 27%] 730s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_multiline_comment_newlines PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_simpleentry PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_convertprop PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_value_entry PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_separator_entry PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_end_of_string PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_start_of_value PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unicode PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_escaping PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_comments PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_comments PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_folding_accesskeys PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_dont_translate PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty_translated PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_newlines_in_value PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_header_comments PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unassociated_comment_order PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_x_header PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gaia_plurals PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_successive_gaia_plurals PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_duplicate_keys PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gwt_plurals PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_simpleentry PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_convertprop PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_value_entry PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_separator_entry PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_end_of_string PASSED [ 27%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_start_of_value PASSED [ 28%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unicode PASSED [ 28%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_escaping PASSED [ 28%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_comments PASSED [ 28%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_comments PASSED [ 28%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_folding_accesskeys PASSED [ 28%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_dont_translate PASSED [ 28%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty PASSED [ 28%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty_translated PASSED [ 28%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_newlines_in_value PASSED [ 28%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_header_comments PASSED [ 28%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unassociated_comment_order PASSED [ 28%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_x_header PASSED [ 28%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gaia_plurals PASSED [ 28%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_successive_gaia_plurals PASSED [ 28%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_duplicate_keys PASSED [ 28%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gwt_plurals PASSED [ 28%] 730s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_help PASSED [ 28%] 730s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_help PASSED [ 28%] 730s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert PASSED [ 28%] 730s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 PASSED [ 28%] 730s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong PASSED [ 28%] 730s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 PASSED [ 28%] 730s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex PASSED [ 28%] 730s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_simple PASSED [ 28%] 730s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_multiple_units PASSED [ 28%] 730s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_automaticcomments PASSED [ 28%] 730s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_translatorcomments PASSED [ 28%] 730s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_locations PASSED [ 28%] 730s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple PASSED [ 28%] 730s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_multiple_units PASSED [ 28%] 730s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_automaticcomments PASSED [ 28%] 730s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_translatorcomments PASSED [ 28%] 730s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_locations PASSED [ 29%] 730s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_help PASSED [ 29%] 730s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot PASSED [ 29%] 730s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po PASSED [ 29%] 730s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates PASSED [ 29%] 730s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_convert_empty PASSED [ 29%] 730s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_defaults PASSED [ 29%] 730s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_includeunused PASSED [ 29%] 730s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_convert_empty PASSED [ 29%] 730s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_defaults PASSED [ 29%] 730s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_includeunused PASSED [ 29%] 730s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_help PASSED [ 29%] 730s tests/translate/convert/test_ts2po.py::TestTS2PO::test_blank PASSED [ 29%] 730s tests/translate/convert/test_ts2po.py::TestTS2PO::test_basic PASSED [ 29%] 730s tests/translate/convert/test_ts2po.py::TestTS2PO::test_unfinished PASSED [ 29%] 730s tests/translate/convert/test_ts2po.py::TestTS2PO::test_multiline PASSED [ 29%] 730s tests/translate/convert/test_ts2po.py::TestTS2PO::test_obsolete PASSED [ 29%] 730s tests/translate/convert/test_ts2po.py::TestTS2PO::test_comment PASSED [ 29%] 730s tests/translate/convert/test_ts2po.py::TestTS2PO::test_extracomment PASSED [ 29%] 730s tests/translate/convert/test_ts2po.py::TestTS2PO::test_emptycontext PASSED [ 29%] 730s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_blank PASSED [ 29%] 730s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_basic PASSED [ 29%] 730s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_unfinished PASSED [ 29%] 730s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_multiline PASSED [ 29%] 730s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_obsolete PASSED [ 29%] 730s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_comment PASSED [ 29%] 730s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_extracomment PASSED [ 29%] 730s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_emptycontext PASSED [ 29%] 730s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_help PASSED [ 29%] 730s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_convert_empty PASSED [ 29%] 730s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_keep_duplicates PASSED [ 29%] 730s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_drop_duplicates PASSED [ 29%] 730s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_simple PASSED [ 29%] 730s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_multiple_units PASSED [ 29%] 730s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_carriage_return PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_merge PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_no_segmentation PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestDoku2po::test_convert_empty PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestDoku2po::test_keep_duplicates PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestDoku2po::test_drop_duplicates PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestDoku2po::test_basic PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestDoku2po::test_bullet_list PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestDoku2po::test_numbered_list PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestDoku2po::test_spacing PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestDoku2po::test_merge PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_convert_empty PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_keep_duplicates PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_drop_duplicates PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_simple PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_multiple_units PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_carriage_return PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_merge PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_no_segmentation PASSED [ 30%] 730s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_help PASSED [ 30%] 730s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_basic PASSED [ 30%] 730s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_unicode PASSED [ 30%] 730s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_markmin PASSED [ 30%] 730s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_help PASSED [ 30%] 730s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert PASSED [ 30%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_minimal PASSED [ 30%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_basic PASSED [ 30%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_translatorcomments PASSED [ 30%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_autocomment PASSED [ 30%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_locations PASSED [ 30%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_fuzzy PASSED [ 30%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_plurals PASSED [ 30%] 730s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_minimal PASSED [ 30%] 730s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_basic PASSED [ 30%] 730s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_translatorcomments PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_autocomment PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_locations PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_fuzzy PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_plurals PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_help PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_simple_convert PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_minimal PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_basic PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_translatorcomments PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_autocomment PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_locations PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_fuzzy PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_plurals PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_help PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po PASSED [ 31%] 730s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates PASSED [ 31%] 730s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_empty_YAML PASSED [ 31%] 730s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple_output PASSED [ 31%] 730s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple PASSED [ 31%] 730s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_nested PASSED [ 31%] 730s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates XFAIL [ 31%] 730s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_with_template PASSED [ 31%] 730s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_empty_YAML PASSED [ 31%] 730s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple_output PASSED [ 31%] 730s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple PASSED [ 31%] 730s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_nested PASSED [ 31%] 730s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates XFAIL [ 31%] 730s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_with_template PASSED [ 31%] 730s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_help PASSED [ 31%] 730s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_empty_target PASSED [ 31%] 730s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_ellipsis PASSED [ 32%] 730s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_spacestart_spaceend PASSED [ 32%] 730s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_start_capitals PASSED [ 32%] 730s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_end_punc PASSED [ 32%] 730s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_combinations PASSED [ 32%] 730s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_nothing_to_do PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_defaults PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_construct PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_accelerator_markers PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_messages PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_accelerators PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_acceleratedvariables XFAIL [ 32%] 730s tests/translate/filters/test_checks.py::test_acronyms PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_blank PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_brackets PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_compendiumconflicts PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_doublequoting PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_doublespacing PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_doublewords PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_endpunc PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_endwhitespace PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_escapes PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_newlines PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_tabs PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_filepaths PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_kdecomments PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_long PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_musttranslatewords XFAIL [ 32%] 730s tests/translate/filters/test_checks.py::test_notranslatewords PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_numbers PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_persian_numbers PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_bengali_numbers PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_arabic_numbers PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_assamese_numbers PASSED [ 32%] 730s tests/translate/filters/test_checks.py::test_options PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_printf PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_pythonbraceformat PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_puncspacing PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_purepunc PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_sentencecount PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_short PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_singlequoting PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_vietnamese_singlequoting PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time XFAIL [ 33%] 730s tests/translate/filters/test_checks.py::test_persian_quoting PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_simplecaps PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_spellcheck SKIPPED (Spe...) [ 33%] 730s tests/translate/filters/test_checks.py::test_startcaps PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_startpunc PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_startwhitespace PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_unchanged PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_untranslated PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_validchars PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_minimalchecker PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_reducedchecker PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_variables_kde PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_variables_gnome PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_variables_mozilla PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_variables_openoffice PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_variables_cclicense PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_variables_ios PASSED [ 33%] 730s tests/translate/filters/test_checks.py::test_xmltags PASSED [ 33%] 731s tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags XFAIL [ 33%] 731s tests/translate/filters/test_checks.py::test_ooxmltags PASSED [ 33%] 731s tests/translate/filters/test_checks.py::test_functions PASSED [ 33%] 731s tests/translate/filters/test_checks.py::test_emails PASSED [ 33%] 731s tests/translate/filters/test_checks.py::test_urls PASSED [ 33%] 731s tests/translate/filters/test_checks.py::test_simpleplurals PASSED [ 33%] 731s tests/translate/filters/test_checks.py::test_nplurals PASSED [ 34%] 731s tests/translate/filters/test_checks.py::test_credits PASSED [ 34%] 731s tests/translate/filters/test_checks.py::test_gconf PASSED [ 34%] 731s tests/translate/filters/test_checks.py::test_validxml PASSED [ 34%] 731s tests/translate/filters/test_checks.py::test_hassuggestion PASSED [ 34%] 731s tests/translate/filters/test_checks.py::test_dialogsizes PASSED [ 34%] 731s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers PASSED [ 34%] 731s tests/translate/filters/test_checks.py::test_mozilla_no_accelerators_for_indic PASSED [ 34%] 731s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker PASSED [ 34%] 731s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source PASSED [ 34%] 731s tests/translate/filters/test_checks.py::test_ensure_bengali_languages_script_is_correct PASSED [ 34%] 731s tests/translate/filters/test_checks.py::test_category PASSED [ 34%] 731s tests/translate/filters/test_decoration.py::test_spacestart PASSED [ 34%] 731s tests/translate/filters/test_decoration.py::test_isvalidaccelerator PASSED [ 34%] 731s tests/translate/filters/test_decoration.py::test_find_marked_variables PASSED [ 34%] 731s tests/translate/filters/test_decoration.py::test_getnumbers PASSED [ 34%] 731s tests/translate/filters/test_decoration.py::test_getfunctions PASSED [ 34%] 731s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplepass PASSED [ 34%] 731s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplefail PASSED [ 34%] 731s tests/translate/filters/test_pofilter.py::TestPOFilter::test_variables_across_lines PASSED [ 34%] 731s tests/translate/filters/test_pofilter.py::TestPOFilter::test_ignore_if_already_marked PASSED [ 34%] 731s tests/translate/filters/test_pofilter.py::TestPOFilter::test_non_existant_check PASSED [ 34%] 731s tests/translate/filters/test_pofilter.py::TestPOFilter::test_list_all_tests PASSED [ 34%] 731s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_fuzzy PASSED [ 34%] 731s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_review PASSED [ 34%] 731s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isfuzzy PASSED [ 34%] 731s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isreview PASSED [ 34%] 731s tests/translate/filters/test_pofilter.py::TestPOFilter::test_notes PASSED [ 34%] 731s tests/translate/filters/test_pofilter.py::TestPOFilter::test_unicode PASSED [ 34%] 731s tests/translate/filters/test_pofilter.py::TestPOFilter::test_preconditions PASSED [ 34%] 731s tests/translate/filters/test_pofilter.py::TestPOFilter::test_msgid_comments PASSED [ 34%] 731s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplepass PASSED [ 34%] 731s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplefail PASSED [ 34%] 731s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_variables_across_lines PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_ignore_if_already_marked PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_non_existant_check PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_list_all_tests PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_fuzzy PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_review PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isfuzzy PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isreview PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_notes PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_unicode PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_preconditions PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplepass PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplefail PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_variables_across_lines PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_ignore_if_already_marked PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_non_existant_check PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_list_all_tests PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_notes PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_unicode PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_preconditions PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_fuzzy PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_review PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isfuzzy PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isreview PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplepass PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplefail PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_variables_across_lines PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_ignore_if_already_marked PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_non_existant_check PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_list_all_tests PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_fuzzy PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_review PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isfuzzy PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isreview PASSED [ 35%] 731s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_notes PASSED [ 36%] 731s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_unicode PASSED [ 36%] 731s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_preconditions PASSED [ 36%] 731s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_msgid_comments PASSED [ 36%] 731s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_cedillas PASSED [ 36%] 731s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_niciun PASSED [ 36%] 731s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_nicio PASSED [ 36%] 731s tests/translate/filters/test_prefilters.py::test_removekdecomments PASSED [ 36%] 731s tests/translate/filters/test_prefilters.py::test_filterwordswithpunctuation PASSED [ 36%] 731s tests/translate/lang/test_af.py::test_sentences PASSED [ 36%] 731s tests/translate/lang/test_af.py::test_capsstart PASSED [ 36%] 731s tests/translate/lang/test_af.py::test_transliterate_cyrillic PASSED [ 36%] 731s tests/translate/lang/test_am.py::test_punctranslate PASSED [ 36%] 731s tests/translate/lang/test_am.py::test_sentences PASSED [ 36%] 731s tests/translate/lang/test_ar.py::test_punctranslate PASSED [ 36%] 731s tests/translate/lang/test_ar.py::test_sentences PASSED [ 36%] 731s tests/translate/lang/test_common.py::test_characters PASSED [ 36%] 731s tests/translate/lang/test_common.py::test_words PASSED [ 36%] 731s tests/translate/lang/test_common.py::test_word_khmer XFAIL (ZWS is n...) [ 36%] 731s tests/translate/lang/test_common.py::test_sentences PASSED [ 36%] 731s tests/translate/lang/test_common.py::test_capsstart PASSED [ 36%] 731s tests/translate/lang/test_common.py::test_numstart PASSED [ 36%] 731s tests/translate/lang/test_common.py::test_punctranslate PASSED [ 36%] 731s tests/translate/lang/test_common.py::test_length_difference PASSED [ 36%] 731s tests/translate/lang/test_common.py::test_alter_length PASSED [ 36%] 731s tests/translate/lang/test_data.py::test_normalise_code PASSED [ 36%] 731s tests/translate/lang/test_data.py::test_simplify_to_common PASSED [ 36%] 731s tests/translate/lang/test_el.py::test_punctranslate PASSED [ 36%] 731s tests/translate/lang/test_el.py::test_sentences PASSED [ 36%] 731s tests/translate/lang/test_es.py::test_punctranslate PASSED [ 36%] 731s tests/translate/lang/test_es.py::test_sentences PASSED [ 36%] 731s tests/translate/lang/test_fa.py::test_punctranslate PASSED [ 36%] 731s tests/translate/lang/test_fa.py::test_sentences PASSED [ 36%] 731s tests/translate/lang/test_factory.py::test_getlanguage PASSED [ 36%] 731s tests/translate/lang/test_factory.py::test_get_all_languages PASSED [ 37%] 731s tests/translate/lang/test_fr.py::test_punctranslate PASSED [ 37%] 731s tests/translate/lang/test_fr.py::test_sentences PASSED [ 37%] 731s tests/translate/lang/test_hy.py::test_punctranslate PASSED [ 37%] 731s tests/translate/lang/test_hy.py::test_sentences PASSED [ 37%] 731s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_lang PASSED [ 37%] 731s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_store PASSED [ 37%] 731s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_bad_init_data PASSED [ 37%] 731s tests/translate/lang/test_ja.py::test_punctranslate PASSED [ 37%] 731s tests/translate/lang/test_ja.py::test_sentences PASSED [ 37%] 731s tests/translate/lang/test_km.py::test_punctranslate PASSED [ 37%] 731s tests/translate/lang/test_km.py::test_sentences PASSED [ 37%] 731s tests/translate/lang/test_ko.py::test_punctranslate PASSED [ 37%] 731s tests/translate/lang/test_ko.py::test_sentences PASSED [ 37%] 731s tests/translate/lang/test_ne.py::test_punctranslate PASSED [ 37%] 731s tests/translate/lang/test_ne.py::test_sentences PASSED [ 37%] 731s tests/translate/lang/test_nqo.py::test_punctranslate PASSED [ 37%] 731s tests/translate/lang/test_nqo.py::test_sentences PASSED [ 37%] 731s tests/translate/lang/test_or.py::test_punctranslate PASSED [ 37%] 731s tests/translate/lang/test_or.py::test_country_code PASSED [ 37%] 731s tests/translate/lang/test_or.py::test_sentences PASSED [ 37%] 731s tests/translate/lang/test_poedit.py::test_isocode PASSED [ 37%] 731s tests/translate/lang/test_ro.py::test_cedillas PASSED [ 37%] 731s tests/translate/lang/test_ro.py::test_niciun PASSED [ 37%] 731s tests/translate/lang/test_scn.py::test_italianisms PASSED [ 37%] 731s tests/translate/lang/test_scn.py::test_vocalism PASSED [ 37%] 731s tests/translate/lang/test_scn.py::test_suffixes PASSED [ 37%] 731s tests/translate/lang/test_team.py::test_simple PASSED [ 37%] 731s tests/translate/lang/test_th.py::test_punctranslate PASSED [ 37%] 731s tests/translate/lang/test_th.py::test_sentences PASSED [ 37%] 731s tests/translate/lang/test_tr.py::test_sentences PASSED [ 37%] 731s tests/translate/lang/test_uk.py::test_sentences PASSED [ 37%] 731s tests/translate/lang/test_vi.py::test_punctranslate PASSED [ 37%] 731s tests/translate/lang/test_vi.py::test_sentences PASSED [ 38%] 731s tests/translate/lang/test_zh.py::test_punctranslate PASSED [ 38%] 731s tests/translate/lang/test_zh.py::test_sentences PASSED [ 38%] 731s tests/translate/misc/test_deprecation.py::TestDeprecation::test_deprecated_decorator PASSED [ 38%] 731s tests/translate/misc/test_deprecation.py::TestDeprecation::test_no_deprecated_decorator PASSED [ 38%] 731s tests/translate/misc/test_dictutils.py::test_cidict_has_key PASSED [ 38%] 731s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor PASSED [ 38%] 731s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor_validation PASSED [ 38%] 731s tests/translate/misc/test_multistring.py::TestMultistring::test_repr PASSED [ 38%] 731s tests/translate/misc/test_multistring.py::TestMultistring::test_replace PASSED [ 38%] 731s tests/translate/misc/test_multistring.py::TestMultistring::test_comparison PASSED [ 38%] 731s tests/translate/misc/test_multistring.py::TestMultistring::test_coercion PASSED [ 38%] 731s tests/translate/misc/test_multistring.py::TestMultistring::test_unicode_coercion PASSED [ 38%] 731s tests/translate/misc/test_multistring.py::TestMultistring::test_list_coercion PASSED [ 38%] 731s tests/translate/misc/test_multistring.py::TestMultistring::test_multistring_hash PASSED [ 38%] 731s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_splitext PASSED [ 38%] 731s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_outputfile_receives_bytes PASSED [ 38%] 731s tests/translate/misc/test_progressbar.py::test_hashprogressbar PASSED [ 38%] 731s tests/translate/misc/test_quote.py::test_find_all PASSED [ 38%] 731s tests/translate/misc/test_quote.py::test_extract PASSED [ 38%] 731s tests/translate/misc/test_quote.py::test_extractwithoutquotes PASSED [ 38%] 731s tests/translate/misc/test_quote.py::test_extractwithoutquotes_passfunc PASSED [ 38%] 731s tests/translate/misc/test_quote.py::test_stripcomment PASSED [ 38%] 731s tests/translate/misc/test_quote.py::TestEncoding::test_javapropertiesencode PASSED [ 38%] 731s tests/translate/misc/test_quote.py::TestEncoding::test_java_utf8_properties_encode PASSED [ 38%] 731s tests/translate/misc/test_quote.py::TestEncoding::test_escapespace PASSED [ 38%] 731s tests/translate/misc/test_quote.py::TestEncoding::test_mozillaescapemarginspaces PASSED [ 38%] 731s tests/translate/misc/test_quote.py::TestEncoding::test_mozilla_control_escapes PASSED [ 38%] 731s tests/translate/misc/test_quote.py::TestEncoding::test_propertiesdecode PASSED [ 38%] 731s tests/translate/misc/test_quote.py::TestEncoding::test_controlchars PASSED [ 38%] 731s tests/translate/misc/test_quote.py::TestEncoding::test_properties_decode_slashu PASSED [ 38%] 731s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding PASSED [ 38%] 731s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_existing_entities PASSED [ 38%] 731s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_passthrough PASSED [ 38%] 731s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_nonentities PASSED [ 39%] 731s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_four_spaces PASSED [ 39%] 731s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_tab PASSED [ 39%] 731s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_distance PASSED [ 39%] 731s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_similarity PASSED [ 39%] 731s tests/translate/search/test_lshtein.py::TestLevenshtein::test_long_similarity PASSED [ 39%] 731s tests/translate/search/test_match.py::TestMatch::test_matching PASSED [ 39%] 731s tests/translate/search/test_match.py::TestMatch::test_multiple_store PASSED [ 39%] 731s tests/translate/search/test_match.py::TestMatch::test_extendtm PASSED [ 39%] 731s tests/translate/search/test_match.py::TestMatch::test_terminology PASSED [ 39%] 731s tests/translate/search/test_match.py::TestMatch::test_brackets PASSED [ 39%] 731s tests/translate/search/test_match.py::TestMatch::test_past_tences PASSED [ 39%] 731s tests/translate/search/test_match.py::TestMatch::test_space_mismatch PASSED [ 39%] 731s tests/translate/search/test_match.py::TestMatch::test_hyphen_mismatch PASSED [ 39%] 731s tests/translate/search/test_terminology.py::TestTerminology::test_basic PASSED [ 39%] 731s tests/translate/services/test_tmserver.py::TestTMServer::test_import PASSED [ 39%] 732s tests/translate/services/test_tmserver.py::TestTMServer::test_server PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_parse PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_tree PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_add PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_contains PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getitem PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getslice PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_iter PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_len PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_mul PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_offset PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_at_offset PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find_elems_with PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_flatten PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case1 PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case2 PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case3 PASSED [ 39%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case4 PASSED [ 40%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_insert PASSED [ 40%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_isleaf PASSED [ 40%] 732s tests/translate/storage/placeables/test_base.py::TestStringElem::test_prune PASSED [ 40%] 732s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_base_placeables PASSED [ 40%] 732s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables XFAIL [ 40%] 732s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables XFAIL [ 40%] 732s tests/translate/storage/placeables/test_general.py::test_placeable_numbers PASSED [ 40%] 732s tests/translate/storage/placeables/test_general.py::test_placeable_newline PASSED [ 40%] 732s tests/translate/storage/placeables/test_general.py::test_placeable_alt_attr PASSED [ 40%] 732s tests/translate/storage/placeables/test_general.py::test_placeable_qt_formatting PASSED [ 40%] 732s tests/translate/storage/placeables/test_general.py::test_placeable_camelcase PASSED [ 40%] 732s tests/translate/storage/placeables/test_general.py::test_placeable_space PASSED [ 40%] 732s tests/translate/storage/placeables/test_general.py::test_placeable_punctuation PASSED [ 40%] 732s tests/translate/storage/placeables/test_general.py::test_placeable_xml_entity PASSED [ 40%] 732s tests/translate/storage/placeables/test_general.py::test_placeable_xml_tag PASSED [ 40%] 732s tests/translate/storage/placeables/test_general.py::test_placeable_option PASSED [ 40%] 732s tests/translate/storage/placeables/test_general.py::test_placeable_file PASSED [ 40%] 732s tests/translate/storage/placeables/test_general.py::test_placeable_email PASSED [ 40%] 732s tests/translate/storage/placeables/test_general.py::test_placeable_caps PASSED [ 40%] 732s tests/translate/storage/placeables/test_general.py::test_placeable_formatting PASSED [ 40%] 732s tests/translate/storage/placeables/test_general.py::test_placeable_doubleat PASSED [ 40%] 732s tests/translate/storage/placeables/test_general.py::test_placeable_brace PASSED [ 40%] 732s tests/translate/storage/placeables/test_general.py::test_python_placeable PASSED [ 40%] 732s tests/translate/storage/placeables/test_lisa.py::test_xml_to_strelem PASSED [ 40%] 732s tests/translate/storage/placeables/test_lisa.py::test_xml_space PASSED [ 40%] 732s tests/translate/storage/placeables/test_lisa.py::test_chunk_list PASSED [ 40%] 732s tests/translate/storage/placeables/test_lisa.py::test_set_strelem_to_xml PASSED [ 40%] 732s tests/translate/storage/placeables/test_lisa.py::test_unknown_xml_placeable PASSED [ 40%] 732s tests/translate/storage/placeables/test_terminology.py::TestTerminologyPlaceable::test_simple_terminology PASSED [ 40%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_isfuzzy PASSED [ 40%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_create PASSED [ 40%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_eq PASSED [ 40%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escapes PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_difficult_escapes PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_note_sanity PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_target PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_get PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_set PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quotes_with_newline PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline_in_xml PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_twitter PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quote PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_question PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_double_space PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_leading_space PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_tailing_space PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_xml_entities PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote_newline PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_arrows PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link_and_text PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_blank_string PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_escape_message_with_newline PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_invalid_lang PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_quote PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_leading_space PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_trailing_space PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_with_ampersand PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_double_space PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_deep_double_space PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_complex_xml PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quoted_newlines PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline PASSED [ 41%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline_in_xml PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_twitter PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_question PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quote PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_space PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_space PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_newlines PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_xml_entities PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_code PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_arrows PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link_and_text PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_space PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_spaces PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_escaped_newline PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_escaped_newline PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_spaces PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_newline PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_many_quotes PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string_again PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_quotes_string PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_newline_in_string PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_not_translatable_string PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_newline PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_comments PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_quote PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space_quoted PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space_quoted PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_with_ampersand PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_double_space_quoted PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_deep_double_space_quoted PASSED [ 42%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_complex_xml PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unicode PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_unescaped PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_alone PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_full PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_escaped_percent PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_percent PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_quote PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unparied_quote PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_slash PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_ignored PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escaped_quote_end PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_create_blank PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_remove PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_find PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_parse PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_files PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_save PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_extensions PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_mimetypes PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translate PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_nonascii PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_default_handlings PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_invalid_filename PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_namespaces PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_serialize PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add_formatting PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_invalid_entity PASSED [ 43%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_indent PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_markup PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_edit PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_noedit PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_remove PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_set PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_others PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_quotes_set PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_g PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_namespace PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_zh_hk PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_b_zh_hk PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_missing_plural PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_removeunit PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata_text PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_prefix PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_rtl PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_tail PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translatable_marking PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_escaping PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_isfuzzy PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_create PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_eq PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_escapes PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_difficult_escapes PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_note_sanity PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_target PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_get PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_set PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_create_blank PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_add PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_remove PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_find PASSED [ 44%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_parse PASSED [ 45%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_files PASSED [ 45%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_save PASSED [ 45%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_extensions PASSED [ 45%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_mimetypes PASSED [ 45%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_translate PASSED [ 45%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_markup PASSED [ 45%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_nonascii PASSED [ 45%] 732s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_plural PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationUnit::test_isfuzzy PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationUnit::test_create PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationUnit::test_eq PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationUnit::test_target PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationUnit::test_escapes PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationUnit::test_difficult_escapes PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationUnit::test_note_sanity PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_get PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_set PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationStore::test_create_blank PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationStore::test_add PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationStore::test_remove PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationStore::test_find PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationStore::test_translate PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationStore::test_parse PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationStore::test_files PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationStore::test_save PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationStore::test_markup PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationStore::test_nonascii PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationStore::test_extensions PASSED [ 45%] 732s tests/translate/storage/test_base.py::TestTranslationStore::test_mimetypes PASSED [ 45%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_isfuzzy PASSED [ 45%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_create PASSED [ 45%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_eq PASSED [ 45%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_target PASSED [ 45%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_escapes PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_get PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_set PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_difficult_escapes PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_newlines PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_istranslated PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_note_sanity PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_create_blank PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_add PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_remove PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_find PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_translate PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_parse PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_files PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_save PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_markup PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_nonascii PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_extensions PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_mimetypes PASSED [ 46%] 732s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_checksum PASSED [ 46%] 732s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_isfuzzy PASSED [ 46%] 732s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_create PASSED [ 46%] 732s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_eq PASSED [ 46%] 732s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_target PASSED [ 46%] 732s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_escapes PASSED [ 46%] 732s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_difficult_escapes PASSED [ 46%] 732s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_note_sanity PASSED [ 46%] 732s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_get PASSED [ 46%] 732s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_set PASSED [ 46%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_create_blank PASSED [ 46%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_add PASSED [ 46%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_remove PASSED [ 46%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_find PASSED [ 46%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_translate PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_files PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_save PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_markup PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_nonascii PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_extensions PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_mimetypes PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_singlequoting PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8 PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_dialect PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_sig PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_default PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_location_is_parsed PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_context_is_parsed PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_newline PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse_sample PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_detection PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding PASSED [ 47%] 732s tests/translate/storage/test_csvl10n.py::TestCSV::test_corrupt PASSED [ 47%] 732s tests/translate/storage/test_directory.py::TestDirectory::test_created PASSED [ 47%] 732s tests/translate/storage/test_directory.py::TestDirectory::test_basic PASSED [ 47%] 732s tests/translate/storage/test_directory.py::TestDirectory::test_structure PASSED [ 47%] 732s tests/translate/storage/test_directory.py::TestDirectory::test_getunits PASSED [ 47%] 732s tests/translate/storage/test_dtd.py::test_roundtrip_quoting PASSED [ 47%] 732s tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases XFAIL [ 47%] 732s tests/translate/storage/test_dtd.py::test_quotefordtd PASSED [ 47%] 732s tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases XFAIL [ 47%] 732s tests/translate/storage/test_dtd.py::test_unquotefromdtd PASSED [ 47%] 732s tests/translate/storage/test_dtd.py::test_android_roundtrip_quoting PASSED [ 47%] 732s tests/translate/storage/test_dtd.py::test_quoteforandroid PASSED [ 47%] 732s tests/translate/storage/test_dtd.py::test_unquotefromandroid PASSED [ 47%] 732s tests/translate/storage/test_dtd.py::test_removeinvalidamp PASSED [ 47%] 732s tests/translate/storage/test_dtd.py::TestDTDUnit::test_isfuzzy PASSED [ 47%] 732s tests/translate/storage/test_dtd.py::TestDTDUnit::test_create PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTDUnit::test_eq PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTDUnit::test_escapes PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTDUnit::test_difficult_escapes PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTDUnit::test_note_sanity PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTDUnit::test_target PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_get PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_set PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_create_blank PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_add PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_remove PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_find PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_parse PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_files PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_save PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_extensions PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_mimetypes PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_translate PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_markup PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_nonascii PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_blanklines PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity_source PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_hashcomment_source PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_commentclosing PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_commententity PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_newlines_in_entity PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_conflate_comments PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_localisation_notes PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_in_source PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_order_in_source PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_comment_following XFAIL [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_comment_newline_space_closing PASSED [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting XFAIL [ 48%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_missing_quotes PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping_roundtrip PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_create_blank PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_add PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_remove PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_find PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_parse PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_files PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_save PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_extensions PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_mimetypes PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_translate PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_markup PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_nonascii PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape_parse_and_convert_back PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape PASSED [ 49%] 732s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape_parse_and_convert_back PASSED [ 49%] 732s tests/translate/storage/test_factory.py::TestPOFactory::test_getclass PASSED [ 49%] 732s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject_store PASSED [ 49%] 732s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject PASSED [ 49%] 732s tests/translate/storage/test_factory.py::TestPOFactory::test_get_noname_object PASSED [ 49%] 732s tests/translate/storage/test_factory.py::TestPOFactory::test_gzfile PASSED [ 49%] 732s tests/translate/storage/test_factory.py::TestPOFactory::test_bz2file PASSED [ 49%] 732s tests/translate/storage/test_factory.py::TestPOFactory::test_directory PASSED [ 49%] 732s tests/translate/storage/test_factory.py::TestXliffFactory::test_getclass PASSED [ 49%] 732s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject_store PASSED [ 49%] 732s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject PASSED [ 49%] 732s tests/translate/storage/test_factory.py::TestXliffFactory::test_get_noname_object PASSED [ 49%] 732s tests/translate/storage/test_factory.py::TestXliffFactory::test_gzfile PASSED [ 49%] 732s tests/translate/storage/test_factory.py::TestXliffFactory::test_bz2file PASSED [ 49%] 732s tests/translate/storage/test_factory.py::TestXliffFactory::test_directory PASSED [ 49%] 732s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getclass PASSED [ 50%] 732s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject_store PASSED [ 50%] 732s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject PASSED [ 50%] 732s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_get_noname_object PASSED [ 50%] 732s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_gzfile PASSED [ 50%] 732s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_bz2file PASSED [ 50%] 732s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_directory PASSED [ 50%] 732s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getclass PASSED [ 50%] 732s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject_store PASSED [ 50%] 732s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject PASSED [ 50%] 732s tests/translate/storage/test_factory.py::TestWordfastFactory::test_get_noname_object PASSED [ 50%] 732s tests/translate/storage/test_factory.py::TestWordfastFactory::test_gzfile PASSED [ 50%] 732s tests/translate/storage/test_factory.py::TestWordfastFactory::test_bz2file PASSED [ 50%] 732s tests/translate/storage/test_factory.py::TestWordfastFactory::test_directory PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_isfuzzy PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_create PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_eq PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_escapes PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_difficult_escapes PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_note_sanity PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_target PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_get PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_set PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_create_blank PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_add PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_remove PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_find PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_parse PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_files PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_save PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_extensions PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_mimetypes PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_translate PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_markup PASSED [ 50%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_nonascii PASSED [ 51%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_root_config_detect PASSED [ 51%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_detect PASSED [ 51%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_key_config_detect PASSED [ 51%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_mixed_ok PASSED [ 51%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_namespace_config_detect PASSED [ 51%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_four_spaces PASSED [ 51%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_tab PASSED [ 51%] 732s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_none_linearizes PASSED [ 51%] 732s tests/translate/storage/test_html.py::test_guess_encoding PASSED [ 51%] 732s tests/translate/storage/test_html.py::TestHTMLParsing::test_mismatched_tags PASSED [ 51%] 732s tests/translate/storage/test_html.py::TestHTMLParsing::test_self_closing_tags PASSED [ 51%] 732s tests/translate/storage/test_html.py::TestHTMLParsing::test_escaping_script_and_pre PASSED [ 51%] 732s tests/translate/storage/test_html.py::TestHTMLExtraction::test_strip_html PASSED [ 51%] 732s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_figcaption PASSED [ 51%] 732s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_caption_td_th PASSED [ 51%] 732s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_alt PASSED [ 51%] 732s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_title PASSED [ 51%] 732s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre PASSED [ 51%] 732s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre_code PASSED [ 51%] 732s tests/translate/storage/test_ini.py::TestINIUnit::test_isfuzzy PASSED [ 51%] 732s tests/translate/storage/test_ini.py::TestINIUnit::test_create PASSED [ 51%] 732s tests/translate/storage/test_ini.py::TestINIUnit::test_eq PASSED [ 51%] 732s tests/translate/storage/test_ini.py::TestINIUnit::test_escapes PASSED [ 51%] 732s tests/translate/storage/test_ini.py::TestINIUnit::test_difficult_escapes PASSED [ 51%] 732s tests/translate/storage/test_ini.py::TestINIUnit::test_note_sanity PASSED [ 51%] 732s tests/translate/storage/test_ini.py::TestINIUnit::test_target PASSED [ 51%] 732s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_get PASSED [ 51%] 732s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_set PASSED [ 51%] 732s tests/translate/storage/test_ini.py::TestINIStore::test_create_blank PASSED [ 51%] 732s tests/translate/storage/test_ini.py::TestINIStore::test_add PASSED [ 51%] 732s tests/translate/storage/test_ini.py::TestINIStore::test_remove PASSED [ 51%] 732s tests/translate/storage/test_ini.py::TestINIStore::test_find PASSED [ 51%] 732s tests/translate/storage/test_ini.py::TestINIStore::test_parse PASSED [ 51%] 732s tests/translate/storage/test_ini.py::TestINIStore::test_files PASSED [ 52%] 732s tests/translate/storage/test_ini.py::TestINIStore::test_save PASSED [ 52%] 732s tests/translate/storage/test_ini.py::TestINIStore::test_extensions PASSED [ 52%] 732s tests/translate/storage/test_ini.py::TestINIStore::test_mimetypes PASSED [ 52%] 732s tests/translate/storage/test_ini.py::TestINIStore::test_translate PASSED [ 52%] 732s tests/translate/storage/test_ini.py::TestINIStore::test_markup PASSED [ 52%] 732s tests/translate/storage/test_ini.py::TestINIStore::test_nonascii PASSED [ 52%] 732s tests/translate/storage/test_ini.py::TestINIStore::test_serialize PASSED [ 52%] 732s tests/translate/storage/test_ini.py::TestINIStore::test_rem PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_isfuzzy PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_create PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_eq PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_escapes PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_difficult_escapes PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_note_sanity PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_target PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_get PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_set PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_create_blank PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_remove PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_find PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_parse PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_files PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_save PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_extensions PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_mimetypes PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_translate PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_markup PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_nonascii PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_serialize PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_can_not_detect PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_error PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_filter PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_ordering PASSED [ 52%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_args PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_bom PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex_array PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_list_like PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_blank PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_types PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_null PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_isfuzzy PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_create PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_eq PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_escapes PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_difficult_escapes PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_note_sanity PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_target PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_get PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_set PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_serialize PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_ordering PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_array PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index_nested PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_nested_list_mixed PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_list_to_dict PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_complex_keys PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_other PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0]-expected0] PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0]-expected1] PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0][1][2][3]-expected2] PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test]selection-expected3] PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test][0]selection-expected4] PASSED [ 53%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0][test]selection-expected5] PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[-expected6] PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_dot_keys PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_isfuzzy PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_create PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_eq PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_escapes PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_difficult_escapes PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_note_sanity PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_target PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_get PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_set PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_create_blank PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_add PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_remove PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_find PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_parse PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_files PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_save PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_extensions PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_mimetypes PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_translate PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_markup PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_nonascii PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_dot_keys PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_leading_dot_keys PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize_no_description PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_set_target PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_placeholders PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_create_blank PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_add PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_remove PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_find PASSED [ 54%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_parse PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_files PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_save PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_extensions PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_mimetypes PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_translate PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_markup PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nonascii PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_serialize PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_units PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_plurals PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nested_array PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural_id PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_create_blank PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_add PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_remove PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_find PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_parse PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_files PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_save PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_extensions PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_mimetypes PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_translate PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_markup PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_nonascii PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals_missing PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_case_no_msg PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_complex_id PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_create_blank PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_add PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_remove PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_find PASSED [ 55%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_parse PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_files PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_save PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_extensions PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_mimetypes PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_translate PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_markup PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nonascii PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_serialize PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_units PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_plurals PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nested_array PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_new_plural PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_ru PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_create_blank PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_add PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_remove PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_find PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_parse PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_files PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_save PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_extensions PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_mimetypes PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_translate PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_markup PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nonascii PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_serialize PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_units PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_plurals PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nested_array PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_new_plural PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_ru PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_create_blank PASSED [ 56%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_add PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_remove PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_find PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_parse PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_files PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_save PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_extensions PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_mimetypes PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_translate PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_markup PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_nonascii PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals_missing PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_invalid PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_dot_keys PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_create_blank PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_add PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_remove PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_find PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_parse PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_files PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_save PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_extensions PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_mimetypes PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_translate PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_markup PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_nonascii PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_1 PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_2 PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_blank PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_missing PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_simplification PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_invalid PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_dot_keys PASSED [ 57%] 732s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_create_blank PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_add PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_remove PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_find PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_parse PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_files PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_save PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_extensions PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_mimetypes PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_translate PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_markup PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_nonascii PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_roundtrip PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_leading_dot_keys PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_create_blank PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_add PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_remove PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_find PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_parse PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_files PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_save PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_extensions PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_mimetypes PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_translate PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_markup PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_nonascii PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_roundtrip PASSED [ 58%] 732s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_leading_dot_keys PASSED [ 58%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_atx_heading PASSED [ 58%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_autolink PASSED [ 58%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_block_quote PASSED [ 58%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_block PASSED [ 58%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_span PASSED [ 58%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_atx_heading PASSED [ 58%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_document PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_list_item PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_escaped_character PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_hard_line_break PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_block PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_character_entities PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_span PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_image_embedded_in_link PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_collapsed_reference_link PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_full_reference_link PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_shortcut_reference_link PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_merging_of_adjacent_placeholders PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_block_tokens PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_list PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_basic_markup PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_only_whitespace_and_placeholders PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_placeholder_trimming PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image_no_title PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_link PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_text_paragraph PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_remove_placeholders_from_both_ends_of_translation_units PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_setext_heading PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_table_with_header PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_thematic_break PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_hard_line_break_in_translation_unit PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_missing_placeholder PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_duplicate_placeholder PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_extraneous_placeholder PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_reordered_placeholders PASSED [ 59%] 732s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_invalid_markdown_in_translation PASSED [ 59%] 732s tests/translate/storage/test_mo.py::TestMOUnit::test_isfuzzy PASSED [ 59%] 732s tests/translate/storage/test_mo.py::TestMOUnit::test_create PASSED [ 59%] 732s tests/translate/storage/test_mo.py::TestMOUnit::test_eq PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOUnit::test_target PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOUnit::test_escapes PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOUnit::test_difficult_escapes PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOUnit::test_note_sanity PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_get PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_set PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOUnit::test_context PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOFile::test_create_blank PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOFile::test_add PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOFile::test_remove PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOFile::test_find PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOFile::test_translate PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOFile::test_parse PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOFile::test_files PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOFile::test_save PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOFile::test_markup PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOFile::test_nonascii PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOFile::test_extensions PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOFile::test_mimetypes PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOFile::test_language PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOFile::test_context PASSED [ 60%] 732s tests/translate/storage/test_mo.py::TestMOFile::test_output SKIPPED [ 60%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_isfuzzy PASSED [ 60%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_create PASSED [ 60%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_eq PASSED [ 60%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_escapes PASSED [ 60%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_difficult_escapes PASSED [ 60%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_note_sanity PASSED [ 60%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_target PASSED [ 60%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_get PASSED [ 60%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_set PASSED [ 60%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_create_blank PASSED [ 60%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_add PASSED [ 60%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_remove PASSED [ 61%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_find PASSED [ 61%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_parse PASSED [ 61%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_files PASSED [ 61%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_save PASSED [ 61%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_extensions PASSED [ 61%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_mimetypes PASSED [ 61%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_translate PASSED [ 61%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_markup PASSED [ 61%] 732s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_nonascii PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[-] PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String-String] PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {OK}-String] PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[\u015e\u0167\u0159\u012b\u019e\u0260 {ok}-\u015e\u0167\u0159\u012b\u019e\u0260] PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{ok}-String] PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{OK}-String] PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok} -String] PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_isfuzzy PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_create PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_eq PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_target PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_escapes PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_difficult_escapes PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_note_sanity PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_get PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_set PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_translate_but_same PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_untranslated PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_comments PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_copy_target PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_create_blank PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_add PASSED [ 61%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_remove PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_find PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_translate PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_parse PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_files PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_save PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_markup PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_extensions PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_mimetypes PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_nonascii PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_format_layout PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_crlf PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_active_flag PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_multiline_comments PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_template PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[--False] PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ -Source -True] PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok}-Source-True] PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok} -Source-True] PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[{ok}-Source-True] PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_headers PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_not_headers PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[0] PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[1] PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[2] PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[3] PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_tag_comments PASSED [ 62%] 732s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_maxlength PASSED [ 62%] 732s tests/translate/storage/test_omegat.py::TestOtUnit::test_isfuzzy PASSED [ 62%] 732s tests/translate/storage/test_omegat.py::TestOtUnit::test_create PASSED [ 62%] 732s tests/translate/storage/test_omegat.py::TestOtUnit::test_eq PASSED [ 62%] 732s tests/translate/storage/test_omegat.py::TestOtUnit::test_target PASSED [ 62%] 732s tests/translate/storage/test_omegat.py::TestOtUnit::test_escapes PASSED [ 62%] 732s tests/translate/storage/test_omegat.py::TestOtUnit::test_difficult_escapes PASSED [ 63%] 732s tests/translate/storage/test_omegat.py::TestOtUnit::test_note_sanity PASSED [ 63%] 732s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_get PASSED [ 63%] 732s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_set PASSED [ 63%] 732s tests/translate/storage/test_omegat.py::TestOtFile::test_create_blank PASSED [ 63%] 732s tests/translate/storage/test_omegat.py::TestOtFile::test_add PASSED [ 63%] 732s tests/translate/storage/test_omegat.py::TestOtFile::test_remove PASSED [ 63%] 732s tests/translate/storage/test_omegat.py::TestOtFile::test_find PASSED [ 63%] 732s tests/translate/storage/test_omegat.py::TestOtFile::test_translate PASSED [ 63%] 732s tests/translate/storage/test_omegat.py::TestOtFile::test_parse PASSED [ 63%] 732s tests/translate/storage/test_omegat.py::TestOtFile::test_files PASSED [ 63%] 732s tests/translate/storage/test_omegat.py::TestOtFile::test_save PASSED [ 63%] 732s tests/translate/storage/test_omegat.py::TestOtFile::test_markup PASSED [ 63%] 732s tests/translate/storage/test_omegat.py::TestOtFile::test_nonascii PASSED [ 63%] 732s tests/translate/storage/test_omegat.py::TestOtFile::test_mimetypes PASSED [ 63%] 732s tests/translate/storage/test_omegat.py::TestOtFile::test_extensions XFAIL [ 63%] 732s tests/translate/storage/test_oo.py::test_makekey PASSED [ 63%] 732s tests/translate/storage/test_oo.py::test_escape_help_text PASSED [ 63%] 732s tests/translate/storage/test_oo.py::TestOO::test_simpleentry PASSED [ 63%] 732s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_quickhelptest PASSED [ 63%] 732s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_title PASSED [ 63%] 732s tests/translate/storage/test_oo.py::TestOO::test_blankline PASSED [ 63%] 732s tests/translate/storage/test_oo.py::TestOO::test_fieldlength PASSED [ 63%] 732s tests/translate/storage/test_oo.py::TestOO::test_escapes PASSED [ 63%] 732s tests/translate/storage/test_php.py::test_php_escaping_single_quote PASSED [ 63%] 732s tests/translate/storage/test_php.py::test_php_escaping_double_quote PASSED [ 63%] 732s tests/translate/storage/test_php.py::TestPhpUnit::test_isfuzzy PASSED [ 63%] 732s tests/translate/storage/test_php.py::TestPhpUnit::test_create PASSED [ 63%] 732s tests/translate/storage/test_php.py::TestPhpUnit::test_eq PASSED [ 63%] 732s tests/translate/storage/test_php.py::TestPhpUnit::test_escapes PASSED [ 63%] 732s tests/translate/storage/test_php.py::TestPhpUnit::test_note_sanity PASSED [ 63%] 732s tests/translate/storage/test_php.py::TestPhpUnit::test_target PASSED [ 63%] 732s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_get PASSED [ 63%] 732s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_set PASSED [ 63%] 732s tests/translate/storage/test_php.py::TestPhpUnit::test_difficult_escapes PASSED [ 64%] 732s tests/translate/storage/test_php.py::TestPhpFile::test_create_blank PASSED [ 64%] 732s tests/translate/storage/test_php.py::TestPhpFile::test_add PASSED [ 64%] 732s tests/translate/storage/test_php.py::TestPhpFile::test_remove PASSED [ 64%] 732s tests/translate/storage/test_php.py::TestPhpFile::test_find PASSED [ 64%] 735s tests/translate/storage/test_php.py::TestPhpFile::test_parse PASSED [ 64%] 737s tests/translate/storage/test_php.py::TestPhpFile::test_files PASSED [ 64%] 740s tests/translate/storage/test_php.py::TestPhpFile::test_save PASSED [ 64%] 740s tests/translate/storage/test_php.py::TestPhpFile::test_extensions PASSED [ 64%] 740s tests/translate/storage/test_php.py::TestPhpFile::test_mimetypes PASSED [ 64%] 740s tests/translate/storage/test_php.py::TestPhpFile::test_translate PASSED [ 64%] 740s tests/translate/storage/test_php.py::TestPhpFile::test_markup PASSED [ 64%] 740s tests/translate/storage/test_php.py::TestPhpFile::test_nonascii PASSED [ 64%] 745s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition PASSED [ 64%] 748s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_source PASSED [ 64%] 754s tests/translate/storage/test_php.py::TestPhpFile::test_spaces_in_name PASSED [ 64%] 760s tests/translate/storage/test_php.py::TestPhpFile::test_comment_definition PASSED [ 64%] 765s tests/translate/storage/test_php.py::TestPhpFile::test_comment_blocks PASSED [ 64%] 771s tests/translate/storage/test_php.py::TestPhpFile::test_comment_output PASSED [ 64%] 776s tests/translate/storage/test_php.py::TestPhpFile::test_comment_add PASSED [ 64%] 785s tests/translate/storage/test_php.py::TestPhpFile::test_multiline PASSED [ 64%] 801s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays PASSED [ 64%] 806s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_no_array_syntax PASSED [ 64%] 812s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_spaces PASSED [ 64%] 814s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_quotes PASSED [ 64%] 817s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_number_as_value PASSED [ 64%] 822s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_non_textual PASSED [ 64%] 827s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define PASSED [ 64%] 832s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define_with_spaces_before_key PASSED [ 64%] 838s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter PASSED [ 64%] 842s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter_and_before_key PASSED [ 64%] 847s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equal_delimiter PASSED [ 64%] 852s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equaldel_but_before_key PASSED [ 64%] 857s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_entries_with_quotes PASSED [ 64%] 863s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_comments_at_entry_line_end PASSED [ 65%] 868s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_double_slash_comments_before_entries PASSED [ 65%] 872s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_before_end_delimiter PASSED [ 65%] 877s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simpledefinition_spaces_before_end_delimiter PASSED [ 65%] 883s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_no_trailing_comma PASSED [ 65%] 888s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_space_before_comma PASSED [ 65%] 893s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_space_before_array_declaration PASSED [ 65%] 898s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_declared_in_a_single_line PASSED [ 65%] 901s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys PASSED [ 65%] 903s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys_assigned_to_array PASSED [ 65%] 908s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_no_keys PASSED [ 65%] 911s tests/translate/storage/test_php.py::TestPhpFile::test_assignment_in_line_where_multiline_comment_ends PASSED [ 65%] 913s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_using_short_array_syntax PASSED [ 65%] 918s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays PASSED [ 65%] 923s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_space_before_array_declaration PASSED [ 65%] 928s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_unnamed_nested_arrays PASSED [ 65%] 934s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_array_declaration_in_next_line PASSED [ 65%] 940s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_with_newline_after_delimiter PASSED [ 65%] 943s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_blank_entries PASSED [ 65%] 948s tests/translate/storage/test_php.py::TestPhpFile::test_slashstar_in_string PASSED [ 65%] 953s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_heredoc_syntax PASSED [ 65%] 958s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_after_define PASSED [ 65%] 961s tests/translate/storage/test_php.py::TestPhpFile::test_quotes PASSED [ 65%] 966s tests/translate/storage/test_php.py::TestPhpFile::test_concatenation PASSED [ 65%] 969s tests/translate/storage/test_php.py::TestPhpFile::test_serialize PASSED [ 65%] 974s tests/translate/storage/test_php.py::TestPhpFile::test_space_before_comma PASSED [ 65%] 979s tests/translate/storage/test_php.py::TestPhpFile::test_equals_in_id PASSED [ 65%] 984s tests/translate/storage/test_php.py::TestPhpFile::test_comma_in_string PASSED [ 65%] 989s tests/translate/storage/test_php.py::TestPhpFile::test_nowdoc PASSED [ 65%] 994s tests/translate/storage/test_php.py::TestPhpFile::test_plain_concatenation PASSED [ 65%] 1000s tests/translate/storage/test_php.py::TestPhpFile::test_array_keys PASSED [ 65%] 1005s tests/translate/storage/test_php.py::TestPhpFile::test_double_var PASSED [ 65%] 1008s tests/translate/storage/test_php.py::TestPhpFile::test_return_array PASSED [ 65%] 1010s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short PASSED [ 66%] 1013s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short_quotes PASSED [ 66%] 1013s tests/translate/storage/test_php.py::TestPhpFile::test_addunit PASSED [ 66%] 1013s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_isfuzzy PASSED [ 66%] 1013s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_create PASSED [ 66%] 1013s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_eq PASSED [ 66%] 1013s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_escapes PASSED [ 66%] 1013s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_difficult_escapes PASSED [ 66%] 1013s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_note_sanity PASSED [ 66%] 1013s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_target PASSED [ 66%] 1013s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_get PASSED [ 66%] 1013s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_set PASSED [ 66%] 1013s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_create_blank PASSED [ 66%] 1013s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_add PASSED [ 66%] 1013s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_remove PASSED [ 66%] 1013s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_find PASSED [ 66%] 1016s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_parse PASSED [ 66%] 1019s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_files PASSED [ 66%] 1022s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_save PASSED [ 66%] 1022s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_extensions PASSED [ 66%] 1022s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_mimetypes PASSED [ 66%] 1022s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_translate PASSED [ 66%] 1022s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_markup PASSED [ 66%] 1022s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_nonascii PASSED [ 66%] 1024s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_plurals PASSED [ 66%] 1024s tests/translate/storage/test_po.py::test_roundtrip_quoting PASSED [ 66%] 1024s tests/translate/storage/test_po.py::TestPOUnit::test_isfuzzy PASSED [ 66%] 1024s tests/translate/storage/test_po.py::TestPOUnit::test_create PASSED [ 66%] 1024s tests/translate/storage/test_po.py::TestPOUnit::test_eq PASSED [ 66%] 1025s tests/translate/storage/test_po.py::TestPOUnit::test_target PASSED [ 66%] 1025s tests/translate/storage/test_po.py::TestPOUnit::test_escapes PASSED [ 66%] 1025s tests/translate/storage/test_po.py::TestPOUnit::test_difficult_escapes PASSED [ 66%] 1025s tests/translate/storage/test_po.py::TestPOUnit::test_note_sanity PASSED [ 66%] 1025s tests/translate/storage/test_po.py::TestPOUnit::test_rich_get PASSED [ 66%] 1025s tests/translate/storage/test_po.py::TestPOUnit::test_rich_set PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOUnit::test_istranslatable PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOUnit::test_locations PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOUnit::test_nongettext_location PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOUnit::test_adding_empty_note PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOUnit::test_markreview PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOUnit::test_errors PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOUnit::test_no_plural_settarget PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOUnit::test_wrapping_bug PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOUnit::test_extract_msgidcomments_from_text PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOUnit::test_isheader PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOUnit::test_buildfromunit PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_create_blank PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_add PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_remove PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_find PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_translate PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_parse PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_files PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_save PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_markup PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_nonascii PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_extensions PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_mimetypes PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_context_only PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_simpleentry PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_copy PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_parse_source_string PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_parse_file PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_unicode PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_plurals PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_plural_unicode PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_nongettext_location PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_percent_location PASSED [ 67%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals XFAIL [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_empty_lines_notes PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_fuzzy PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated XFAIL [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_merging_automaticcomments PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_malformed_units PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_malformed_obsolete_units PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_uniforum_po PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_obsolete PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_obsolete_with_prev_msgid PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_header_escapes PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_plural PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgctxt PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgidcomments PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_multiline_obsolete PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_merge_duplicates PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_merge_mixed_sources PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_parse_context PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_parse_advanced_context PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_kde_context PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_broken_kde_context PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_id PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments_2 PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_final_slash PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_unfinished_lines PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_encoding_change PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_istranslated PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_wrapping PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_wrapping_cjk PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_wrap_emoji PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis PASSED [ 68%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis_long PASSED [ 69%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_wrap_gettext PASSED [ 69%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_msgidcomments PASSED [ 69%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_unicode_ids PASSED [ 69%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_syntax_error PASSED [ 69%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_invalid PASSED [ 69%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_wrapped_msgid PASSED [ 69%] 1025s tests/translate/storage/test_po.py::TestPOFile::test_missing_plural PASSED [ 69%] 1025s tests/translate/storage/test_pocommon.py::test_roundtrip_quote_plus PASSED [ 69%] 1025s tests/translate/storage/test_poheader.py::test_parseheaderstring PASSED [ 69%] 1025s tests/translate/storage/test_poheader.py::test_update PASSED [ 69%] 1025s tests/translate/storage/test_poheader.py::test_po_dates PASSED [ 69%] 1025s tests/translate/storage/test_poheader.py::test_timezones PASSED [ 69%] 1025s tests/translate/storage/test_poheader.py::test_header_blank PASSED [ 69%] 1025s tests/translate/storage/test_poheader.py::test_plural_equation PASSED [ 69%] 1025s tests/translate/storage/test_poheader.py::test_plural_equation_across_lines PASSED [ 69%] 1025s tests/translate/storage/test_poheader.py::test_updatecontributor PASSED [ 69%] 1025s tests/translate/storage/test_poheader.py::test_updatecontributor_header PASSED [ 69%] 1025s tests/translate/storage/test_poheader.py::test_language PASSED [ 69%] 1025s tests/translate/storage/test_poheader.py::test_project PASSED [ 69%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_isfuzzy PASSED [ 69%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_create PASSED [ 69%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_eq PASSED [ 69%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_target PASSED [ 69%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_escapes PASSED [ 69%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_difficult_escapes PASSED [ 69%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_note_sanity PASSED [ 69%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_get PASSED [ 69%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_set PASSED [ 69%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_markreview PASSED [ 69%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_errors PASSED [ 69%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_accepted_control_chars PASSED [ 69%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_unaccepted_control_chars PASSED [ 69%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_plurals PASSED [ 69%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_ids PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_create_blank PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_remove PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_find PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_translate PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_files PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_save PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_markup PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_nonascii PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_extensions PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_mimetypes PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_basic PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_namespace PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_source PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_target PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_source PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_target PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_sourcelanguage PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage_multi PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_alttrans PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_fuzzy PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_xml_space PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parsing PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_entities PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_multiple_filenodes PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_indent PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add_target PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_closing_tags PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_context_groups PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_getlocations PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_addlocation PASSED [ 70%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_huge PASSED [ 71%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve_add PASSED [ 71%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse PASSED [ 71%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse_plural_alpha_id PASSED [ 71%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_notes PASSED [ 71%] 1025s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_plural PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::test_find_delimiter_pos_simple PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::test_find_delimiter_pos_multiple PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::test_find_delimiter_pos_none PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::test_find_delimiter_pos_whitespace PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::test_find_delimiter_pos_escapes PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::test_is_line_continuation PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::test_key_strip PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::test_get_comment_one_line PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::test_get_comment_start PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::test_get_comment_end PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestPropUnit::test_isfuzzy PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestPropUnit::test_create PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestPropUnit::test_eq PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestPropUnit::test_escapes PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestPropUnit::test_difficult_escapes PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestPropUnit::test_note_sanity PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestPropUnit::test_target PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_get PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_set PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_create_blank PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_add PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_remove PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_find PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_parse PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_files PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_save PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_extensions PASSED [ 71%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_mimetypes PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_translate PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_markup PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_nonascii PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_quotes PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_simpledefinition PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition_source PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_reduce PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_increase PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_extra_plurals PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_non_plurals PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_encoding PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestGwtProp::test_other_plurals PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_create_blank PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_add PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_remove PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_find PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_parse PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_files PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_save PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_extensions PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_mimetypes PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_translate PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_markup PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_nonascii PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition_source PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_controlutf8_source PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_control_source PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_unicode_escaping PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_newlines_startend PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_space PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_whitespace_handling PASSED [ 72%] 1025s tests/translate/storage/test_properties.py::TestProp::test_key_value_delimiters_simple PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_comments PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_latin1 PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_fullspec_delimiters PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_fullspec_escaped_key PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_fullspec_line_continuation PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_fullspec_key_without_value PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_mac_strings PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_utf_16_save PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_mac_multiline_strings PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_unicode PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_utf8 PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_newlines PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_multilines_comments PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments_dropping PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_quotes PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_equals PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_serialization PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_double_backslashes PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_override_encoding PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_trailing_comments PASSED [ 73%] 1025s tests/translate/storage/test_properties.py::TestProp::test_utf16_byte_order_mark PASSED [ 73%] 1026s tests/translate/storage/test_properties.py::TestProp::test_raise_ioerror_if_cannot_detect_encoding PASSED [ 73%] 1026s tests/translate/storage/test_properties.py::TestProp::test_utf8_byte_order_mark PASSED [ 73%] 1026s tests/translate/storage/test_properties.py::TestProp::test_joomla_set_target PASSED [ 73%] 1026s tests/translate/storage/test_properties.py::TestProp::test_joomla PASSED [ 73%] 1026s tests/translate/storage/test_properties.py::TestProp::test_joomla_escape PASSED [ 73%] 1026s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_delimiter PASSED [ 73%] 1026s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_value PASSED [ 73%] 1026s tests/translate/storage/test_properties.py::TestProp::test_multi_comments PASSED [ 73%] 1026s tests/translate/storage/test_properties.py::TestProp::test_serialize_note PASSED [ 73%] 1026s tests/translate/storage/test_properties.py::TestProp::test_serialize_long_note PASSED [ 73%] 1026s tests/translate/storage/test_properties.py::TestProp::test_trailing_newlines PASSED [ 73%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_create_blank PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_add PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_remove PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_find PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_parse PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_files PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_save PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_extensions PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_mimetypes PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_translate PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_markup PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_nonascii PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_simpledefinition PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition_source PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote_and_argument PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_header_preserved PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_blank_line_before_comment_preserved PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWiki::test_deprecated_comments_preserved PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_create_blank PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_add PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_remove PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_find PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_parse PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_files PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_save PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_extensions PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_mimetypes PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_markup PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_nonascii PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_simpledefinition PASSED [ 74%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition_source PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote_and_argument PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_encoded_html PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_cleaning_attributes PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate_source PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_create_blank PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_add PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_find PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_extensions PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_mimetypes PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_translate PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_markup PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_nonascii PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_simpledefinition PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_parse PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_files PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_save PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_cleaning_attributes PASSED [ 75%] 1026s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove XFAIL [ 75%] 1026s tests/translate/storage/test_pypo.py::TestHelpers::test_unescape PASSED [ 75%] 1026s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo PASSED [ 75%] 1026s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo_escaped_quotes PASSED [ 75%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isfuzzy PASSED [ 75%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_create PASSED [ 75%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_eq PASSED [ 75%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_target PASSED [ 75%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_escapes PASSED [ 75%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_difficult_escapes PASSED [ 75%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_note_sanity PASSED [ 75%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_get PASSED [ 75%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_set PASSED [ 75%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_istranslatable PASSED [ 75%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_locations PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_nongettext_location PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_adding_empty_note PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_markreview PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_errors PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_no_plural_settarget PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrapping_bug PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_extract_msgidcomments_from_text PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isheader PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_buildfromunit PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plurals PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plural_reduction PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes_withcomments PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_firstlines PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_newlines PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_max_line_length PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_slash PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_spacing_max_line PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_create_blank PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_add PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_remove PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_find PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_translate PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_files PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_save PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_markup PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nonascii PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_extensions PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mimetypes PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_context_only PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_simpleentry PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_copy PASSED [ 76%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_source_string PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_file PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plurals PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plural_unicode PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nongettext_location PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_percent_location PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals XFAIL [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_empty_lines_notes PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_fuzzy PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated XFAIL [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merging_automaticcomments PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_units PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_obsolete_units PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_uniforum_po PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete_with_prev_msgid PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_header_escapes PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_plural PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgctxt PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgidcomments PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_multiline_obsolete PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_mixed_sources PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_context PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_advanced_context PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_context PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_broken_kde_context PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_id PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments_2 PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_final_slash PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unfinished_lines PASSED [ 77%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_encoding_change PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_istranslated PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping_cjk PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_emoji PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis_long PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_gettext PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_msgidcomments PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_ids PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_syntax_error PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapped_msgid PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_missing_plural PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_combine_msgidcomments PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates_msgctxt PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_blanks PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_output_str_unicode PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_posections PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_typecomments PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unassociated_comments PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_header PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_prevmsgid_parse PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_newlines PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unix_newlines PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mac_newlines PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_header PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_comment PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_bom PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_long_msgidcomments PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_incomplete PASSED [ 78%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_invalid PASSED [ 79%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_write PASSED [ 79%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment XFAIL [ 79%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_typecomment PASSED [ 79%] 1026s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_custom PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtUnit::test_isfuzzy PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtUnit::test_create PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtUnit::test_eq PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtUnit::test_target PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtUnit::test_escapes PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtUnit::test_difficult_escapes PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtUnit::test_note_sanity PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_get PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_set PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtFile::test_create_blank PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtFile::test_find PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtFile::test_translate PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtFile::test_markup PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtFile::test_extensions PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtFile::test_mimetypes PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtFile::test_parse PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtFile::test_save PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtFile::test_files PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtFile::test_nonascii PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtFile::test_add PASSED [ 79%] 1026s tests/translate/storage/test_qm.py::TestQtFile::test_remove PASSED [ 79%] 1026s tests/translate/storage/test_qph.py::TestQphUnit::test_isfuzzy PASSED [ 79%] 1026s tests/translate/storage/test_qph.py::TestQphUnit::test_create PASSED [ 79%] 1026s tests/translate/storage/test_qph.py::TestQphUnit::test_eq PASSED [ 79%] 1026s tests/translate/storage/test_qph.py::TestQphUnit::test_target PASSED [ 79%] 1026s tests/translate/storage/test_qph.py::TestQphUnit::test_escapes PASSED [ 79%] 1026s tests/translate/storage/test_qph.py::TestQphUnit::test_difficult_escapes PASSED [ 79%] 1026s tests/translate/storage/test_qph.py::TestQphUnit::test_note_sanity PASSED [ 79%] 1026s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_get PASSED [ 79%] 1026s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_set PASSED [ 80%] 1026s tests/translate/storage/test_qph.py::TestQphFile::test_create_blank PASSED [ 80%] 1026s tests/translate/storage/test_qph.py::TestQphFile::test_add PASSED [ 80%] 1026s tests/translate/storage/test_qph.py::TestQphFile::test_remove PASSED [ 80%] 1026s tests/translate/storage/test_qph.py::TestQphFile::test_find PASSED [ 80%] 1026s tests/translate/storage/test_qph.py::TestQphFile::test_translate PASSED [ 80%] 1026s tests/translate/storage/test_qph.py::TestQphFile::test_parse PASSED [ 80%] 1026s tests/translate/storage/test_qph.py::TestQphFile::test_files PASSED [ 80%] 1026s tests/translate/storage/test_qph.py::TestQphFile::test_save PASSED [ 80%] 1026s tests/translate/storage/test_qph.py::TestQphFile::test_markup PASSED [ 80%] 1026s tests/translate/storage/test_qph.py::TestQphFile::test_nonascii PASSED [ 80%] 1026s tests/translate/storage/test_qph.py::TestQphFile::test_extensions PASSED [ 80%] 1026s tests/translate/storage/test_qph.py::TestQphFile::test_mimetypes PASSED [ 80%] 1026s tests/translate/storage/test_qph.py::TestQphFile::test_basic PASSED [ 80%] 1026s tests/translate/storage/test_qph.py::TestQphFile::test_source PASSED [ 80%] 1026s tests/translate/storage/test_qph.py::TestQphFile::test_target PASSED [ 80%] 1026s tests/translate/storage/test_qph.py::TestQphFile::test_language PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::test_escaping PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_comments PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_textinclude PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_parse_dialog PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_parse_stringtable PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_lf PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_crlf PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_cr PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_parse_no_language PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_multiline PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_str PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_empty PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_utf_8 PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_utf_16 PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_comment PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_stringtables PASSED [ 80%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude_appstudio PASSED [ 81%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_id_whitespace PASSED [ 81%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_menu_comment PASSED [ 81%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_decompiled PASSED [ 81%] 1026s tests/translate/storage/test_rc.py::TestRcFile::test_quotes PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_isfuzzy PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_create PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_eq PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_escapes PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_difficult_escapes PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_note_sanity PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_target PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_get PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_set PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_create_blank PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_add PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_remove PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_find PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_parse PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_files PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_save PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_extensions PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_mimetypes PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_translate PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_markup PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_nonascii PASSED [ 81%] 1026s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_roundtrip PASSED [ 81%] 1026s tests/translate/storage/test_resx.py::TestRESXUnit::test_isfuzzy PASSED [ 81%] 1026s tests/translate/storage/test_resx.py::TestRESXUnit::test_create PASSED [ 81%] 1026s tests/translate/storage/test_resx.py::TestRESXUnit::test_eq PASSED [ 81%] 1026s tests/translate/storage/test_resx.py::TestRESXUnit::test_escapes PASSED [ 81%] 1026s tests/translate/storage/test_resx.py::TestRESXUnit::test_difficult_escapes PASSED [ 81%] 1026s tests/translate/storage/test_resx.py::TestRESXUnit::test_note_sanity PASSED [ 81%] 1026s tests/translate/storage/test_resx.py::TestRESXUnit::test_target PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_get PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_set PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_isfuzzy PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_create PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_eq PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_escapes PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_difficult_escapes PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_note_sanity PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_target PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_get PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_set PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit_comment PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXfile::test_create_blank PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXfile::test_add PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXfile::test_remove PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXfile::test_find PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXfile::test_parse PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXfile::test_files PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXfile::test_save PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXfile::test_extensions PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXfile::test_mimetypes PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXfile::test_translate PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXfile::test_markup PASSED [ 82%] 1026s tests/translate/storage/test_resx.py::TestRESXfile::test_nonascii PASSED [ 82%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_isfuzzy PASSED [ 82%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_create PASSED [ 82%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq PASSED [ 82%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_escapes PASSED [ 82%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_difficult_escapes PASSED [ 82%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_note_sanity PASSED [ 82%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_target PASSED [ 82%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_get PASSED [ 82%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_set PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_source PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq_formatvaluetype PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_innerkey PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_create_blank PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_remove PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_find PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_parse PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_files PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_save PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_extensions PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_mimetypes PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_translate PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_markup PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_nonascii PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_serialize PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_default_handlings PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_base_filename PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_plural_zero_always_set PASSED [ 83%] 1026s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add_unit PASSED [ 83%] 1026s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_isfuzzy PASSED [ 83%] 1026s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_create PASSED [ 83%] 1026s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_eq PASSED [ 83%] 1026s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_escapes PASSED [ 83%] 1026s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_difficult_escapes PASSED [ 83%] 1026s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_target PASSED [ 83%] 1026s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_get PASSED [ 83%] 1026s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_set PASSED [ 83%] 1026s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity XFAIL [ 83%] 1026s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_create_blank PASSED [ 83%] 1026s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_add PASSED [ 83%] 1026s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_remove PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_find PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_parse PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_files PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_save PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_extensions PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_mimetypes PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_translate PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_markup PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_nonascii PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_create_blank PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_add PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_remove PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_find PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_parse PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_files PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_save PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_extensions PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_mimetypes PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_translate PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_markup PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_nonascii PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_create_blank PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_add PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_remove PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_find PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_parse PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_files PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_save PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_extensions PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_mimetypes PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_translate PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_markup PASSED [ 84%] 1026s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_nonascii PASSED [ 85%] 1026s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_create_blank PASSED [ 85%] 1026s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_add PASSED [ 85%] 1026s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_remove PASSED [ 85%] 1026s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_find PASSED [ 85%] 1026s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_parse PASSED [ 85%] 1026s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_files PASSED [ 85%] 1026s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_save PASSED [ 85%] 1026s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_extensions PASSED [ 85%] 1026s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_mimetypes PASSED [ 85%] 1026s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_translate PASSED [ 85%] 1026s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_markup PASSED [ 85%] 1026s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_nonascii PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXUnit::test_isfuzzy PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXUnit::test_create PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXUnit::test_eq PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXUnit::test_target PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXUnit::test_escapes PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXUnit::test_difficult_escapes PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXUnit::test_note_sanity PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_get PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_set PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_create_blank PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_add PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_remove PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_find PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_translate PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_parse PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_files PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_save PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_markup PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_nonascii PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_extensions PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_mimetypes PASSED [ 85%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_basic PASSED [ 86%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_source PASSED [ 86%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_target PASSED [ 86%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_setid PASSED [ 86%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_indent PASSED [ 86%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_descrip PASSED [ 86%] 1026s tests/translate/storage/test_tbx.py::TestTBXfile::test_note_from PASSED [ 86%] 1026s tests/translate/storage/test_tiki.py::TestTikiUnit::test_locations PASSED [ 86%] 1026s tests/translate/storage/test_tiki.py::TestTikiUnit::test_to_unicode PASSED [ 86%] 1026s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_simple PASSED [ 86%] 1026s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_encode PASSED [ 86%] 1026s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_locations PASSED [ 86%] 1026s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_ignore_extras PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnit::test_isfuzzy PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnit::test_create PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnit::test_eq PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnit::test_target PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnit::test_escapes PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnit::test_difficult_escapes PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnit::test_note_sanity PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_get PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_set PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_isfuzzy PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_create PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_eq PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_target PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_escapes PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_difficult_escapes PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_note_sanity PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_get PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_set PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXfile::test_create_blank PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXfile::test_add PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXfile::test_remove PASSED [ 86%] 1026s tests/translate/storage/test_tmx.py::TestTMXfile::test_find PASSED [ 87%] 1026s tests/translate/storage/test_tmx.py::TestTMXfile::test_parse PASSED [ 87%] 1026s tests/translate/storage/test_tmx.py::TestTMXfile::test_files PASSED [ 87%] 1026s tests/translate/storage/test_tmx.py::TestTMXfile::test_save PASSED [ 87%] 1026s tests/translate/storage/test_tmx.py::TestTMXfile::test_markup PASSED [ 87%] 1026s tests/translate/storage/test_tmx.py::TestTMXfile::test_nonascii PASSED [ 87%] 1026s tests/translate/storage/test_tmx.py::TestTMXfile::test_extensions PASSED [ 87%] 1026s tests/translate/storage/test_tmx.py::TestTMXfile::test_mimetypes PASSED [ 87%] 1026s tests/translate/storage/test_tmx.py::TestTMXfile::test_translate PASSED [ 87%] 1026s tests/translate/storage/test_tmx.py::TestTMXfile::test_addtranslation PASSED [ 87%] 1026s tests/translate/storage/test_tmx.py::TestTMXfile::test_withcomment PASSED [ 87%] 1026s tests/translate/storage/test_tmx.py::TestTMXfile::test_withnewlines PASSED [ 87%] 1026s tests/translate/storage/test_tmx.py::TestTMXfile::test_xmlentities PASSED [ 87%] 1026s tests/translate/storage/test_tmx.py::TestTMXfile::test_controls_cleaning PASSED [ 87%] 1026s tests/translate/storage/test_trados.py::test_unescape PASSED [ 87%] 1026s tests/translate/storage/test_trados.py::test_escape PASSED [ 87%] 1026s tests/translate/storage/test_ts.py::TestTS::test_construct PASSED [ 87%] 1026s tests/translate/storage/test_ts2.py::TestTSUnit::test_isfuzzy PASSED [ 87%] 1026s tests/translate/storage/test_ts2.py::TestTSUnit::test_create PASSED [ 87%] 1026s tests/translate/storage/test_ts2.py::TestTSUnit::test_eq PASSED [ 87%] 1026s tests/translate/storage/test_ts2.py::TestTSUnit::test_target PASSED [ 87%] 1026s tests/translate/storage/test_ts2.py::TestTSUnit::test_escapes PASSED [ 87%] 1026s tests/translate/storage/test_ts2.py::TestTSUnit::test_difficult_escapes PASSED [ 87%] 1026s tests/translate/storage/test_ts2.py::TestTSUnit::test_note_sanity PASSED [ 87%] 1026s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_get PASSED [ 87%] 1026s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_set PASSED [ 87%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_create_blank PASSED [ 87%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_add PASSED [ 87%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_remove PASSED [ 87%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_find PASSED [ 87%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_translate PASSED [ 87%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_parse PASSED [ 87%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_files PASSED [ 87%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_save PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_markup PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_nonascii PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_extensions PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_mimetypes PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_basic PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_source PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_target PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_plurals PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_nplural PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_language PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_edit PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_obsolete PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_locations PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_merge_with_fuzzies PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_getid PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_backnforth PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_context PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_roundtrip_context PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_edit_missing_translation PASSED [ 88%] 1026s tests/translate/storage/test_ts2.py::TestTSfile::test_missing_source PASSED [ 88%] 1026s tests/translate/storage/test_txt.py::TestTxtUnit::test_isfuzzy PASSED [ 88%] 1026s tests/translate/storage/test_txt.py::TestTxtUnit::test_create PASSED [ 88%] 1026s tests/translate/storage/test_txt.py::TestTxtUnit::test_eq PASSED [ 88%] 1026s tests/translate/storage/test_txt.py::TestTxtUnit::test_escapes PASSED [ 88%] 1026s tests/translate/storage/test_txt.py::TestTxtUnit::test_difficult_escapes PASSED [ 88%] 1026s tests/translate/storage/test_txt.py::TestTxtUnit::test_note_sanity PASSED [ 88%] 1026s tests/translate/storage/test_txt.py::TestTxtUnit::test_target PASSED [ 88%] 1026s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_get PASSED [ 88%] 1026s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_set PASSED [ 88%] 1026s tests/translate/storage/test_txt.py::TestTxtFile::test_create_blank PASSED [ 88%] 1026s tests/translate/storage/test_txt.py::TestTxtFile::test_add PASSED [ 88%] 1026s tests/translate/storage/test_txt.py::TestTxtFile::test_remove PASSED [ 88%] 1026s tests/translate/storage/test_txt.py::TestTxtFile::test_find PASSED [ 88%] 1026s tests/translate/storage/test_txt.py::TestTxtFile::test_parse PASSED [ 89%] 1026s tests/translate/storage/test_txt.py::TestTxtFile::test_files PASSED [ 89%] 1026s tests/translate/storage/test_txt.py::TestTxtFile::test_save PASSED [ 89%] 1026s tests/translate/storage/test_txt.py::TestTxtFile::test_extensions PASSED [ 89%] 1026s tests/translate/storage/test_txt.py::TestTxtFile::test_mimetypes PASSED [ 89%] 1026s tests/translate/storage/test_txt.py::TestTxtFile::test_translate PASSED [ 89%] 1026s tests/translate/storage/test_txt.py::TestTxtFile::test_markup PASSED [ 89%] 1026s tests/translate/storage/test_txt.py::TestTxtFile::test_nonascii PASSED [ 89%] 1026s tests/translate/storage/test_txt.py::TestTxtFile::test_simpleblock PASSED [ 89%] 1026s tests/translate/storage/test_txt.py::TestTxtFile::test_multipleblocks PASSED [ 89%] 1026s tests/translate/storage/test_txt.py::TestTxtFile::test_no_segmentation PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxUnit::test_isfuzzy PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxUnit::test_create PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxUnit::test_eq PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxUnit::test_target PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxUnit::test_escapes PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxUnit::test_difficult_escapes PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxUnit::test_note_sanity PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_get PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_set PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxFile::test_create_blank PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxFile::test_add PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxFile::test_remove PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxFile::test_find PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxFile::test_translate PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxFile::test_parse PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxFile::test_files PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxFile::test_save PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxFile::test_markup PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxFile::test_nonascii PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxFile::test_extensions PASSED [ 89%] 1026s tests/translate/storage/test_utx.py::TestUtxFile::test_mimetypes PASSED [ 89%] 1026s tests/translate/storage/test_wordfast.py::TestWFTime::test_timestring PASSED [ 89%] 1026s tests/translate/storage/test_wordfast.py::TestWFTime::test_time PASSED [ 89%] 1026s tests/translate/storage/test_wordfast.py::TestWFUnit::test_isfuzzy PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFUnit::test_create PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFUnit::test_eq PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFUnit::test_target PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFUnit::test_escapes PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFUnit::test_note_sanity PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_get PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_set PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFUnit::test_difficult_escapes PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFUnit::test_wordfast_escaping PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFUnit::test_newlines PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFUnit::test_language_setting PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFUnit::test_istranslated PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFFile::test_create_blank PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFFile::test_add PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFFile::test_remove PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFFile::test_find PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFFile::test_translate PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFFile::test_parse PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFFile::test_files PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFFile::test_save PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFFile::test_markup PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFFile::test_nonascii PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFFile::test_extensions PASSED [ 90%] 1026s tests/translate/storage/test_wordfast.py::TestWFFile::test_mimetypes PASSED [ 90%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_isfuzzy PASSED [ 90%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_create PASSED [ 90%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_eq PASSED [ 90%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_target PASSED [ 90%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_escapes PASSED [ 90%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_difficult_escapes PASSED [ 90%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_note_sanity PASSED [ 90%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_get PASSED [ 90%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_set PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_markreview PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_errors PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_accepted_control_chars PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_unaccepted_control_chars PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_create_blank PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_remove PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_find PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_translate PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parse PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_files PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_save PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_markup PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_nonascii PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_extensions PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_mimetypes PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_basic PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_namespace PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_source PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_target PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_source PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_target PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_sourcelanguage PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage_multi PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_notes PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_alttrans PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_fuzzy PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_xml_space PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parsing PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_entities PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_multiple_filenodes PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_indent PASSED [ 91%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add_target PASSED [ 92%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve PASSED [ 92%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_closing_tags PASSED [ 92%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_context_groups PASSED [ 92%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_getlocations PASSED [ 92%] 1026s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_addlocation PASSED [ 92%] 1027s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_huge PASSED [ 92%] 1027s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve_add PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_isfuzzy PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_create PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_eq PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_escapes PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_difficult_escapes PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_note_sanity PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_target PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_get PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_set PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_getlocations PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_create_blank PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_find PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_files PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_save PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_extensions PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_mimetypes PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_translate PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_markup PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nonascii PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_serialize PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit_unicode PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse_unicode_list PASSED [ 92%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_ordering PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_initial_comments PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_string_key PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nested PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_multiline PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_boolean PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_integer PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_no_quote_strings PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_double_quote_strings PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_single_quote_strings PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_double_quote_strings PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_single_quote_strings PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_escaped_double_quotes PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_newlines PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_list PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_dictionary PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_key_nesting PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add_to_mepty PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty_key PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dict_in_list PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dump_args PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_anchors PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_tagged_scalar PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_numeric PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_remove PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_special PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_quotes_roundtrip PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_create_blank PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_remove PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_find PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_parse PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_files PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_save PASSED [ 93%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_extensions PASSED [ 94%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_mimetypes PASSED [ 94%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_translate PASSED [ 94%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_markup PASSED [ 94%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_nonascii PASSED [ 94%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_list PASSED [ 94%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby PASSED [ 94%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_wrong PASSED [ 94%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_invalid_value PASSED [ 94%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural PASSED [ 94%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_empty PASSED [ 94%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_anchors PASSED [ 94%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_type_change PASSED [ 94%] 1027s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_add PASSED [ 94%] 1027s tests/translate/storage/test_zip.py::TestZIPFile::test_created PASSED [ 94%] 1027s tests/translate/storage/test_zip.py::TestZIPFile::test_basic PASSED [ 94%] 1027s tests/translate/storage/test_zip.py::TestZIPFile::test_structure PASSED [ 94%] 1027s tests/translate/storage/test_zip.py::TestZIPFile::test_getunits PASSED [ 94%] 1027s tests/translate/storage/xml_extract/test_misc.py::test_reduce_tree PASSED [ 94%] 1027s tests/translate/storage/xml_extract/test_misc.py::test_compose_mappings PASSED [ 94%] 1027s tests/translate/storage/xml_extract/test_misc.py::test_parse_tag PASSED [ 94%] 1027s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath_component PASSED [ 94%] 1027s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath PASSED [ 94%] 1027s tests/translate/storage/xml_extract/test_unit_tree.py::test__add_unit_to_tree PASSED [ 94%] 1027s tests/translate/storage/xml_extract/test_xpath_breadcrumb.py::test_breadcrumb PASSED [ 94%] 1027s tests/translate/tools/test_help.py::test_help[build_tmdb] SKIPPED (S...) [ 94%] 1027s tests/translate/tools/test_help.py::test_help[phppo2pypo] SKIPPED (S...) [ 94%] 1027s tests/translate/tools/test_help.py::test_help[poclean] SKIPPED (Skip...) [ 94%] 1027s tests/translate/tools/test_help.py::test_help[pocompile] SKIPPED (Sk...) [ 94%] 1027s tests/translate/tools/test_help.py::test_help[poconflicts] SKIPPED (...) [ 94%] 1027s tests/translate/tools/test_help.py::test_help[pocount] SKIPPED (Skip...) [ 94%] 1027s tests/translate/tools/test_help.py::test_help[podebug] SKIPPED (Skip...) [ 94%] 1027s tests/translate/tools/test_help.py::test_help[pogrep] SKIPPED (Skip ...) [ 94%] 1027s tests/translate/tools/test_help.py::test_help[pomerge] SKIPPED (Skip...) [ 94%] 1027s tests/translate/tools/test_help.py::test_help[porestructure] SKIPPED [ 95%] 1027s tests/translate/tools/test_help.py::test_help[posegment] SKIPPED (Sk...) [ 95%] 1027s tests/translate/tools/test_help.py::test_help[poswap] SKIPPED (Skip ...) [ 95%] 1027s tests/translate/tools/test_help.py::test_help[poterminology] SKIPPED [ 95%] 1027s tests/translate/tools/test_help.py::test_help[pretranslate] SKIPPED [ 95%] 1027s tests/translate/tools/test_help.py::test_help[pydiff] SKIPPED (Skip ...) [ 95%] 1027s tests/translate/tools/test_help.py::test_help[pypo2phppo] SKIPPED (S...) [ 95%] 1027s tests/translate/tools/test_junitmsgfmt.py::test_output[failure] PASSED [ 95%] 1027s tests/translate/tools/test_junitmsgfmt.py::test_output[untranslated] PASSED [ 95%] 1027s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_single_po PASSED [ 95%] 1027s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_plural_po PASSED [ 95%] 1027s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_single_po PASSED [ 95%] 1027s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_plural_po PASSED [ 95%] 1027s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_help PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_zero PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_one PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_two PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::TestCount::test_punctuation_divides_words PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::TestCount::test_xml_tags PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::TestCount::test_newlines PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::TestCount::test_variables_are_words PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::TestCount::test_plurals PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde XFAIL [ 95%] 1027s tests/translate/tools/test_pocount.py::TestCount::test_msgid_blank PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::TestPOCount::test_translated PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzy PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslated PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::TestPOCount::test_total PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::TestPOCount::test_translatedsourcewords PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzysourcewords PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslatedsourcewords PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::TestPOCount::test_totalsourcewords PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-csv] PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-full] PASSED [ 95%] 1027s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-strings] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-words] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-csv] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-full] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-strings] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-words] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-csv] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-full] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-strings] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-words] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-csv] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-full] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-strings] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-words] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_cases[po-file] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_cases[po-file-fuzzy] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_cases[po-file-csv] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_cases[xliff-states-yes] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_cases[xliff-states-no] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_error_cases[mutually-exclusive] PASSED [ 96%] 1027s tests/translate/tools/test_pocount.py::test_error_cases[missing-file] PASSED [ 96%] 1028s tests/translate/tools/test_pocount.py::test_error_cases[no-args] PASSED [ 96%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_ignore_gtk PASSED [ 96%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_keep_target PASSED [ 96%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_blank PASSED [ 96%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_en PASSED [ 96%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_xxx PASSED [ 96%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_bracket PASSED [ 96%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode PASSED [ 96%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_at_placeholders PASSED [ 96%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_single_brace_placeholders PASSED [ 96%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_double_brace_placeholders PASSED [ 96%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_html PASSED [ 96%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_multiple_styles_of_placeholder PASSED [ 97%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped PASSED [ 97%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_at_placeholders PASSED [ 97%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_single_brace_placeholders PASSED [ 97%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_double_brace_placeholders PASSED [ 97%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_html PASSED [ 97%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_multiple_styles_of_placeholder PASSED [ 97%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified PASSED [ 97%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_at_placeholders PASSED [ 97%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_single_brace_placeholders PASSED [ 97%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_double_brace_placeholders PASSED [ 97%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_html PASSED [ 97%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_multiple_styles_of_placeholder PASSED [ 97%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_chef PASSED [ 97%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_po_variables PASSED [ 97%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_xliff_rewrite PASSED [ 97%] 1028s tests/translate/tools/test_podebug.py::TestPODebug::test_hash PASSED [ 97%] 1028s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgid PASSED [ 97%] 1028s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgstr PASSED [ 97%] 1028s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations PASSED [ 97%] 1028s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_comments PASSED [ 97%] 1028s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations_with_comment_enabled PASSED [ 97%] 1028s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_searchstring PASSED [ 97%] 1028s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_regex_searchstring PASSED [ 97%] 1028s tests/translate/tools/test_pogrep.py::TestPOGrep::test_keep_translations PASSED [ 97%] 1028s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_normalise PASSED [ 97%] 1028s tests/translate/tools/test_pogrep.py::TestXLiffGrep::test_simplegrep PASSED [ 97%] 1028s tests/translate/tools/test_pomerge.py::test_str2bool PASSED [ 97%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_mergesore_bad_data PASSED [ 97%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge PASSED [ 97%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge_no_locations PASSED [ 97%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_replacemerge PASSED [ 97%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_blanks PASSED [ 97%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_fuzzies PASSED [ 97%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_locations PASSED [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_with_locations PASSED [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_no_locations PASSED [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_reflowed_source_comments PASSED [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_comments_with_blank_lines PASSED [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dont_delete_unassociated_comments PASSED [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_trailing_newlines PASSED [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_minor_start_and_end_of_sentence_changes PASSED [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_last_entry_in_a_file PASSED [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs XFAIL [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_comments_layout PASSED [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dos2unix PASSED [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_xliff PASSED [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_po_into_xliff PASSED [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_po PASSED [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_dont_merge_kde_comments_found_in_translation PASSED [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_untranslated_with_kde_disambiguation PASSED [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_header_entries PASSED [ 98%] 1028s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_different_locations PASSED [ 98%] 1028s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_simple PASSED [ 98%] 1028s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_punctuation PASSED [ 98%] 1028s tests/translate/tools/test_poterminology.py::TestPOTerminology::test_term_extraction PASSED [ 98%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_pretranslatepo_blank PASSED [ 98%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_simple PASSED [ 98%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_messages_marked_fuzzy PASSED [ 98%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals_with_fuzzy_matching PASSED [ 98%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change XFAIL [ 98%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_change PASSED [ 98%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_and_whitespace_change PASSED [ 98%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes XFAIL [ 98%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently XFAIL [ 98%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_dont_duplicate PASSED [ 98%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_new_overides_old PASSED [ 98%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments_with_blank_comment_lines PASSED [ 98%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_empty_commentlines PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgidcomments PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_resurect_obsolete_messages PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_typecomments PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_xliff_states PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_pretranslatepo_blank PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_simple PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_messages_marked_fuzzy PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change XFAIL [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_change PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_and_whitespace_change PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes XFAIL [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently XFAIL [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_new_overides_old PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments_with_blank_comment_lines PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_empty_commentlines PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgidcomments PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_resurect_obsolete_messages PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_typecomments PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_xliff_states PASSED [ 99%] 1028s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_help PASSED [ 99%] 1028s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_single_po PASSED [ 99%] 1028s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_plural_po PASSED [ 99%] 1028s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_single_po PASSED [ 99%] 1028s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_plural_po PASSED [ 99%] 1028s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_help PASSED [ 99%] 1028s tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff SKIPPED [ 99%] 1028s tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff SKIPPED [100%] 1028s 1028s =============================== warnings summary =============================== 1028s tests/translate/storage/test_cpo.py:15 1028s Warning: 1028s Module 'translate.storage.cpo' was found, but when imported by pytest it raised: 1028s ImportError('gettext PO library not found') 1028s In pytest 9.1 this warning will become an error by default. 1028s You can fix the underlying problem, or alternatively overwrite this behavior and silence this warning by passing exc_type=ImportError explicitly. 1028s See https://docs.pytest.org/en/stable/deprecations.html#pytest-importorskip-default-behavior-regarding-importerror 1028s 1028s tests/odf_xliff/test_odf_xliff.py::test_roundtrip 1028s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.9zB7bO/autopkgtest_tmp/tests/odf_xliff/test_2.odt'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid 1028s Warning: unclosed file <_io.TextIOWrapper name='TestAndroid2POCommand_test_convertandroid/en.po' mode='r' encoding='UTF-8'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 1028s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 1028s Warning: unclosed file <_io.TextIOWrapper name='TestCSV2POCommand_test_columnorder/test.po' mode='r' encoding='UTF-8'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot 1028s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_pot/simple.pot'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po 1028s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po 1028s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_po/simple.po'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates 1028s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_remove_duplicates/simple.po'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf 1028s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_xlf/simple.xlf'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 1028s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 1028s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_columnorder/test.csv' mode='r' encoding='UTF-8'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context 1028s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_context/test.csv' mode='r' encoding='UTF-8'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing 1028s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey 1028s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey 1028s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing 1028s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey 1028s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey 1028s Warning: Could not find accesskey for key.accesskey 1028s 1028s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 1028s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file 1028s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten 1028s Warning: unclosed file <_io.BufferedReader name='translation/file1.po'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 1028s Warning: unclosed file <_io.BufferedWriter name='translated/file1.html'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert 1028s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.9zB7bO/autopkgtest_tmp/tests/translate/convert/test.idml'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po 1028s Warning: unclosed file <_io.BufferedReader name='translation.po'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp 1028s Warning: unclosed file <_io.FileIO name='input.oo' mode='rb' closefd=True> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp 1028s Warning: unclosed file <_io.FileIO name='output.oo' mode='wb' closefd=True> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey 1028s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey 1028s Warning: Could not find accesskey for prop.accesskey 1028s 1028s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert 1028s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert/simple.po'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 1028s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf16/simple.po'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1028s Warning: unclosed file <_io.BufferedWriter name='simple.po'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1028s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1028s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_wrong/simple.po'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 1028s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf8/simple.po'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex 1028s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_menuex/simple.po'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot 1028s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_pot/simple.pot'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po 1028s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_po/simple.po'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates 1028s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_remove_duplicates/simple.po'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 1028s Warning: unclosed file <_io.BufferedWriter name='simple.odt'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 1028s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.9zB7bO/autopkgtest_tmp/tests/translate/convert/test.odt'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename 1028s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_preserve_filename/snippet.xlf'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot 1028s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_pot/simple.pot'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po 1028s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_po/simple.po'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates 1028s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_remove_duplicates/simple.po'> 1028s Enable tracemalloc to get traceback where the object was allocated. 1028s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1028s 1028s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers 1028s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers 1028s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker 1028s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source 1028s Warning: The 'u' type code is deprecated and will be removed in Python 3.16 1028s 1028s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 1028s Warning: DTD parse error: :1:36:FATAL:PARSER:ERR_ENTITY_NOT_FINISHED: xmlParseEntityDecl: entity test.me not terminated 1028s 1028s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 1028s Warning: DTD file '' does not validate 1028s 1028s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1028s --------------------------- snapshot report summary ---------------------------- 1028s 23 snapshots passed. 1028s =========================== short test summary info ============================ 1028s SKIPPED [1] tests/translate/storage/test_cpo.py:15: could not import 'translate.storage.cpo': gettext PO library not found 1028s SKIPPED [1] tests/translate/storage/test_fluent.py:29: could not import 'translate.storage.fluent': No module named 'fluent' 1028s SKIPPED [1] tests/translate/filters/test_checks.py:1429: Spell checking for af is not available 1028s SKIPPED [1] tests/translate/storage/test_mo.py:498: Skip testing command line tools 1028s SKIPPED [16] tests/translate/tools/test_help.py:16: Skip testing command line tools 1028s SKIPPED [1] tests/xliff_conformance/test_xliff_conformance.py:49: Skip testing command line tools 1028s SKIPPED [1] tests/xliff_conformance/test_xliff_conformance.py:58: Skip testing command line tools 1028s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence - Not Implemented 1028s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence - Not Implemented 1028s XFAIL tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template - Need to review if we want this behaviour 1028s XFAIL tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template - Need to review if we want this behaviour 1028s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change - Not implemented - review if this is even correct 1028s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes - Not Implemented - needs review 1028s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently - Not Implemented - review if this is even correct 1028s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change - Not implemented - review if this is even correct 1028s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes - Not Implemented - needs review 1028s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently - Not Implemented - review if this is even correct 1028s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates - This is invalid YAML document 1028s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates - This is invalid YAML document 1028s XFAIL tests/translate/filters/test_checks.py::test_acceleratedvariables - Accelerated variables needs a better implementation 1028s XFAIL tests/translate/filters/test_checks.py::test_musttranslatewords - FIXME: All fails() tests are not working 1028s XFAIL tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time - Bug #3408 1028s XFAIL tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags - Bug #3506 1028s XFAIL tests/translate/lang/test_common.py::test_word_khmer - ZWS is not considered a space in Python 2.6+. Khmer should extend words() to include \u200b in addition to other word breakers. 1028s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables - Test needs fixing, disabled for now 1028s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables - Test needs fixing, disabled for now 1028s XFAIL tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases - Not Implemented 1028s XFAIL tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases - Not Implemented 1028s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_comment_following - Not Implemented 1028s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting - Not Implemented 1028s XFAIL tests/translate/storage/test_omegat.py::TestOtFile::test_extensions - This doesn't work, due to two store classes handling different extensions, but factory listing it as one supported file type 1028s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals - Not Implemented 1028s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 1028s XFAIL tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove - removal not working in full page 1028s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals - Not Implemented 1028s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 1028s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment - Not sure if this can not be parsed gracefully 1028s XFAIL tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity - Not Implemented 1028s XFAIL tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde - Support commented out pending removal 1028s XFAIL tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs - Not Implemented 1028s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change - Not Implemented 1028s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes - Not Implemented 1028s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently - Not Implemented 1028s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change - Not Implemented 1028s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes - Not Implemented 1028s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently - Not Implemented 1028s ==== 3309 passed, 22 skipped, 39 xfailed, 51 warnings in 674.23s (0:11:14) ===== 1028s /tmp/autopkgtest.9zB7bO/wrapper.sh: checking for leaked background processes... 1028s /tmp/autopkgtest.9zB7bO/wrapper.sh: waiting for tee/cat subprocesses... 1028s /tmp/autopkgtest.9zB7bO/wrapper.sh: cleaning up... 1028s /tmp/autopkgtest.9zB7bO/wrapper.sh: Exit status: 0 1028s autopkgtest: DBG: testbed command exited with code 0 1029s autopkgtest [13:23:09]: test python3-translate: -----------------------] 1029s autopkgtest: DBG: testbed executing test finished with exit status 0 1029s autopkgtest: DBG: sending command to testbed: copyup /tmp/autopkgtest.9zB7bO/python3-translate-stdout /tmp/autopkgtest-work.dij5uc5o/out/python3-translate-stdout 1029s autopkgtest: DBG: got reply from testbed: ok 1029s autopkgtest: DBG: sending command to testbed: copyup /tmp/autopkgtest.9zB7bO/python3-translate-stderr /tmp/autopkgtest-work.dij5uc5o/out/python3-translate-stderr 1029s autopkgtest: DBG: got reply from testbed: ok 1029s autopkgtest [13:23:09]: test python3-translate: - - - - - - - - - - results - - - - - - - - - - 1029s python3-translate PASS 1029s autopkgtest: DBG: sending command to testbed: copyup /tmp/autopkgtest.9zB7bO/python3-translate-artifacts/ /tmp/autopkgtest-work.dij5uc5o/out/artifacts/ 1029s autopkgtest: DBG: got reply from testbed: ok 1029s autopkgtest: DBG: testbed command ['rm', '-rf', '/tmp/autopkgtest.9zB7bO/python3-translate-artifacts', '/tmp/autopkgtest.9zB7bO/autopkgtest_tmp'], kind short, sout raw, serr pipe, env [] 1030s autopkgtest: DBG: testbed command exited with code 0 1030s autopkgtest [13:23:10]: test python3-translate-commands: preparing testbed 1030s autopkgtest: DBG: testbed reset: modified=False, deps_installed=['python3-translate', 'python3-pytest', 'python3-all', 'subversion', 'python3-aeidon (>> 1.15~)', 'python3-bs4', 'python3-charset-normalizer', 'python3-cheroot', 'python3-cwcwidth', 'python3-diff-match-patch', 'python3-enchant', 'python3-iniparse', 'python3-levenshtein', 'python3-lxml', 'python3-mistletoe (>> 1.1.0~)', 'python3-phply (>> 1.2.4)', 'python3-pycountry (>> 17.5.14)', 'python3-pyparsing (>> 3)', 'python3-ruamel.yaml', 'python3-syrupy', 'python3-vobject', 'python3-xapian'], deps_new=['python3-translate', 'translate-toolkit', 'python3-pytest', 'python3-all', 'subversion', 'python3-aeidon', 'python3-bs4', 'python3-charset-normalizer', 'python3-cheroot', 'python3-diff-match-patch', 'python3-enchant', 'python3-iniparse', 'python3-levenshtein', 'python3-lxml', 'python3-mistletoe (>> 1.1.0~)', 'python3-phply (>> 1.2.4)', 'python3-pycountry (>> 17.5.14)', 'python3-pyparsing (>> 3)', 'python3-ruamel.yaml', 'python3-syrupy', 'python3-vobject', 'python3-wcwidth', 'python3-xapian'] 1030s autopkgtest: DBG: testbed reset 1030s autopkgtest: DBG: sending command to testbed: revert 1163s autopkgtest: DBG: got reply from testbed: ok /tmp/autopkgtest.9zB7bO 1163s autopkgtest: DBG: sending command to testbed: print-execute-command 1163s autopkgtest: DBG: got reply from testbed: ok /tmp/autopkgtest-ssh.82df28hz/runcmd 1163s autopkgtest: DBG: sending command to testbed: capabilities 1163s autopkgtest: DBG: got reply from testbed: ok revert ok suggested-normal-user=ubuntu root-on-testbed revert-full-system isolation-machine reboot 1163s autopkgtest: DBG: testbed capabilities: ['revert', 'ok', 'suggested-normal-user=ubuntu', 'root-on-testbed', 'revert-full-system', 'isolation-machine', 'reboot', 'has_internet'] 1163s autopkgtest: DBG: testbed command ['mkdir', '-p', '/tmp/autopkgtest.9zB7bO'], kind short, sout raw, serr pipe, env [] 1163s autopkgtest: DBG: testbed command exited with code 0 1163s autopkgtest: DBG: sending command to testbed: copydown /home/ubuntu/autopkgtest/lib/in-testbed/wrapper.sh /tmp/autopkgtest.9zB7bO/wrapper.sh 1163s autopkgtest: DBG: got reply from testbed: ok 1163s autopkgtest: DBG: testbed command ['chmod', '-R', '0755', '--', '/tmp/autopkgtest.9zB7bO/wrapper.sh'], kind short, sout raw, serr pipe, env [] 1163s autopkgtest: DBG: testbed command exited with code 0 1163s autopkgtest: DBG: testbed command ['dpkg', '--print-architecture'], kind short, sout pipe, serr pipe, env [] 1163s autopkgtest: DBG: testbed command exited with code 0 1163s autopkgtest [13:25:23]: testbed dpkg architecture: s390x 1163s autopkgtest: DBG: testbed command ['dpkg-query', '-W', '-f', '${Version}', 'apt'], kind short, sout pipe, serr pipe, env [] 1164s autopkgtest: DBG: testbed command exited with code 0 1164s autopkgtest [13:25:24]: testbed apt version: 2.9.30 1164s autopkgtest: DBG: testbed command ['sh', '-ec', 'command -v eatmydata'], kind short, sout pipe, serr pipe, env [] 1164s autopkgtest: DBG: testbed command exited with code 0 1164s autopkgtest: DBG: testbed has eatmydata 1164s autopkgtest: DBG: testbed command ['mkdir', '-p', '/etc/apt/preferences.d'], kind short, sout raw, serr pipe, env [] 1164s autopkgtest: DBG: testbed command exited with code 0 1164s autopkgtest [13:25:24]: @@@@@@@@@@@@@@@@@@@@ test bed setup 1164s autopkgtest: DBG: testbed command ['sh', '-ec', '#!/bin/sh\n# Copyright © 2006-2018 Canonical Ltd.\n# Copyright © 2015-2017 Martin Pitt\n# Copyright © 2017 Steve Langasek\n# Copyright © 2017-2022 Paul Gevers\n# Copyright © 2018 Simon McVittie\n# SPDX-License-Identifier: GPL-2.0-or-later\n\n# This script returns the first suite found in apt sources. We can\'t just rely\n# on /etc/os-release because it doesn\'t allow to distinguish between Debian\n# unstable and testing.\n#\n# This release detection logic should be kept in sync with similar code in the\n# setup-testbed script.\n#\n# For more information on APT data sources see sources.list(5).\n\n# Usage $0\n\nset -eux\n\ndistro=UNKNOWN\nif [ -r /etc/os-release ]; then\n # shellcheck disable=SC1091\n distro=$(. /etc/os-release && echo "${ID:-$distro}")\nfi\n\n# Try guessing the default release from deb822-style format sources.\n#\n# While not mandatory, APT upstream expects distros to follow the\n# .sources naming pattern for the default deb822 sources.\napt_sources="/etc/apt/sources.list.d/$distro.sources"\nif [ -r "$apt_sources" ]; then\n release=$(sed -En \'s/^Suites:\\s*(\\w+).*/\\1/Ip\' "$apt_sources" | head -n1)\n [ -n "$release" ] && echo "$release" && exit\nfi\n\n# Try guessing the default release from one-line-style format sources.\napt_sources=/etc/apt/sources.list\nif [ -r "$apt_sources" ]; then\n release=$(sed -En \'/^(deb|deb-src) +(\\[.*\\] *)?(http|https|file):/ { s/\\[.*\\] +//; s/^[^ ]+ +[^ ]* +([^ ]+) +.*$/\\1/p }\' "$apt_sources" | head -n1)\n [ -n "$release" ] && echo "$release" && exit\nfi\n\n# Could not guess the default release\necho "Could not guess the default release from the APT sources." >&2\nexit 1\n'], kind short, sout pipe, serr pipe, env [] 1164s autopkgtest: DBG: testbed command exited with code 0 1164s autopkgtest [13:25:24]: testbed release detected to be: plucky 1164s autopkgtest: DBG: testbed command ['sh', '-ec', '#!/bin/sh\n# SPDX-License-Identifier: GPL-2.0-or-later\n\n# This script returns the list of configured "deb" sources in one-line-style\n# source lists (/etc/apt/sources.list, /etc/apt/sources.list.d/*.list).\n# See sources.list(5) for more information on the APT source list formats.\n#\n# This script takes no arguments.\n\nset -eu\n\n# grep(1) returns 1 if no lines were selected from the input files, which\n# can happen if there are .list files, but they contain no "deb" entries.\n# We don\'t want to fail in this case, hence the "|| true", which we put\n# in a subshell because we want it to affect only the grep invocation.\n{\n if [ -f /etc/apt/sources.list ]; then\n printf \'%s\\0\' /etc/apt/sources.list\n fi\n if [ -d /etc/apt/sources.list.d ]; then\n find /etc/apt/sources.list.d -maxdepth 1 -type f -regex \'.*/[a-zA-Z0-9_.-]+\\.list\' -print0 \\\n | LC_ALL=C sort --zero-terminated\n fi\n} | xargs -0 --no-run-if-empty -- sh -c \'grep -h "^deb " "$@" || true\' "$(basename "$0")"\n'], kind short, sout pipe, serr pipe, env [] 1164s autopkgtest: DBG: testbed command exited with code 0 1164s autopkgtest: DBG: testbed command ['sh', '-ec', '#!/bin/sh\n# SPDX-License-Identifier: GPL-2.0-or-later\n\n# This script returns the list of configured sources in deb822-style source\n# lists (/etc/apt/sources.list.d/*.sources). Sources are not stripped out of\n# comments, extra blank lines or similar: the output of this script is meant to\n# be consumed by a deb822 parser that is able to correctly handle those.\n# See sources.list(5) for more information on the APT source list formats.\n#\n# This script takes no arguments.\n\nset -eu\n\n# Awk concatenates files making sure stanzas from separate files are separated\n# by a blank line, even if there are no newlines at EOF in the .sources files.\nif [ -d /etc/apt/sources.list.d ]; then\n find /etc/apt/sources.list.d -maxdepth 1 -type f -regex \'.*/[a-zA-Z0-9_.-]+\\.sources\' -print0 \\\n | LC_ALL=C sort --zero-terminated \\\n | xargs -0 --no-run-if-empty -- awk \'FNR == 1 && NR != 1 { print "" } { print }\'\nfi\n'], kind short, sout pipe, serr pipe, env [] 1164s autopkgtest: DBG: testbed command exited with code 0 1164s autopkgtest: DBG: adding APT source: Types: deb deb-src 1164s URIs: http://ftpmaster.internal/ubuntu/ 1164s Suites: plucky-proposed 1164s Components: main restricted universe multiverse 1164s Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg 1164s autopkgtest: DBG: testbed command ['sh', '-ec', '"$@" >> "/etc/apt/sources.list.d/autopkgtest-add-apt-release-plucky-proposed.sources"', 'add_apt_source', 'printf', '%s\\n', 'Types: deb deb-src\nURIs: http://ftpmaster.internal/ubuntu/\nSuites: plucky-proposed\nComponents: main restricted universe multiverse\nSigned-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg\n'], kind short, sout raw, serr pipe, env [] 1165s autopkgtest: DBG: testbed command exited with code 0 1165s autopkgtest: DBG: adding APT preference to autopkgtest-zz-plucky-proposed-baseline.pref: 1165s Package: * 1165s Pin: release plucky-proposed 1165s Pin-Priority: 500 1165s autopkgtest: DBG: testbed command ['sh', '-ec', '"$@" > "/etc/apt/preferences.d/autopkgtest-zz-plucky-proposed-baseline.pref"', 'add_apt_preference', 'printf', '%s\\n', 'Package: *\nPin: release plucky-proposed\nPin-Priority: 500'], kind short, sout raw, serr pipe, env [] 1165s autopkgtest: DBG: testbed command exited with code 0 1165s autopkgtest [13:25:25]: updating testbed package index (apt update) 1165s autopkgtest: DBG: testbed command ['/bin/sh', '-ec', '"$@" 3>&2 2>&1', 'run_apt_command', '/usr/bin/eatmydata', 'apt-get', '--quiet', '--assume-yes', '-o=APT::Status-Fd=3', '-o=APT::Install-Recommends=false', '-o=Dpkg::Options::=--force-confnew', '-o=Debug::pkgProblemResolver=true', 'update'], kind install, sout raw, serr pipe, env ['DEBIAN_FRONTEND=noninteractive', 'APT_LISTBUGS_FRONTEND=none', 'APT_LISTCHANGES_FRONTEND=none'] 1165s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [110 kB] 1165s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 1165s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 1165s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 1166s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [744 kB] 1166s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [13.9 kB] 1166s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [76.1 kB] 1166s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [3120 B] 1166s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main s390x Packages [104 kB] 1166s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/restricted s390x Packages [760 B] 1166s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/universe s390x Packages [653 kB] 1166s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse s390x Packages [4900 B] 1166s Fetched 1711 kB in 1s (1705 kB/s) 1167s Reading package lists... 1167s autopkgtest: DBG: testbed command exited with code 0 1167s autopkgtest: DBG: adding APT preference to autopkgtest-plucky-proposed.pref: 1167s Package: * 1167s Pin: release plucky-proposed 1167s Pin-Priority: 100 1167s 1167s Package: src:sphinx:any 1167s Pin: release plucky-proposed 1167s Pin-Priority: 995 1167s autopkgtest: DBG: testbed command ['sh', '-ec', '"$@" > "/etc/apt/preferences.d/autopkgtest-plucky-proposed.pref"', 'add_apt_preference', 'printf', '%s\\n', 'Package: *\nPin: release plucky-proposed\nPin-Priority: 100\n\nPackage: src:sphinx:any\nPin: release plucky-proposed\nPin-Priority: 995'], kind short, sout raw, serr pipe, env [] 1167s autopkgtest: DBG: testbed command exited with code 0 1167s autopkgtest: DBG: testbed command ['bash', '-ec', 'for d in /boot /boot/efi /boot/grub /etc/init /etc/init.d /etc/systemd/system /lib/systemd/system; do [ ! -d $d ] || touch -r $d /tmp/autopkgtest.9zB7bO/${d//\\//_}.stamp; done'], kind short, sout raw, serr pipe, env [] 1167s autopkgtest: DBG: testbed command exited with code 0 1167s autopkgtest: DBG: testbed command ['sh', '-ec', '#!/bin/sh\n# Canonical/Ubuntu specific testbed setup\n\nset -x\n\nRELEASE=$(lsb_release --codename --short 2>/dev/null)\n\n# Make the installed package versions match what is available from the configured\n# repositories, even if a downgrade is required.\n#\n# We may end up with images with packages newer than those available from the\n# repositories when opening a new release (images are created using the\n# previous release dailies as a base, which may include 0-day SRUs, or\n# Launchpad may fail to copy packages, see openssl 3.0.8-1ubuntu2), or when\n# package versions are pulled from the archive.\n#\n# Note: \'release a=\' matches the Suite field in the repository Release file.\ncat >/etc/apt/preferences.d/force-downgrade-to-release.pref <= Focal).\n#\n# Note: autoremove/--autoremove always runs on the entire set of installed\n# packages. Together with --autopurge/purge each removal becomes a purge.\n#\n# Removing \'?obsolete\' packages may remove the running kernel. This is not\n# expected to be an issue.\nif /usr/lib/apt/apt-helper analyze-pattern \'?true\' >/dev/null 2>&1; then\n # DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y purge --autoremove \'?obsolete\'\n # Avoid removing the running kernel\n running_kernel_pattern="^linux-.*$(uname -r | sed \'s/\\./\\\\./g\').*"\n obsolete_pkgs="$(apt list \'?obsolete\' 2>/dev/null \\\n | tail -n+2 \\\n | cut -d\'/\' -f1 \\\n | grep -v "${running_kernel_pattern}" || true)"\n DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y purge --autoremove ${obsolete_pkgs}\nelse\n # We\'re on an older release (analyze-pattern is not available).\n # Still do an autopurge to get rid of packages that got orphaned\n # by downgrades.\n eatmydata apt-get -y autoremove --purge\nfi\n\n# compatibility with old Jenkins testbeds for trusty\nif grep -q trusty /etc/lsb-release; then apt-get update || (sleep 10; apt-get update); apt-get install -y build-essential; fi\n\n# these packages really break tests, purge them if we use standard cloud images\n# (on lcy01)\nfor p in unattended-upgrades lxd lxd-client snapd; do\n [ ! -d /usr/share/doc/$p ] || $(which eatmydata || true) apt-get purge --auto-remove -y $p\ndone\n\nif type iptables >/dev/null 2>&1; then\n cat < /etc/rc.local\n#!/bin/sh\n\n# work around broken PTMU; LP: #1572026, RT#90771\niptables -w -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu || true\n\n# These addresses are used at least by rust-reqwest and should not be reachable\n# See https://bugs.launchpad.net/ubuntu/+source/rust-reqwest/+bug/2080346\niptables -A OUTPUT -d 10.255.255.1/32 -p tcp -j DROP || true\niptables -A OUTPUT -d 10.255.255.2/32 -p tcp -j DROP || true\nEOF\n chmod 755 /etc/rc.local\n # shellcheck disable=SC1091\n . /etc/rc.local\nfi\n\n# work around broken tty on ppc64el instances (LP: #1607075)\nif [ "$(uname -m)" = ppc64le ] && [ "$(systemctl is-active keyboard-setup.service 2>/dev/null|| true)" = failed ]; then\n systemctl reset-failed keyboard-setup.service\n systemctl mask keyboard-setup.service\nfi\n\n# work around late urandom pool initialization (LP: #1622893)\nif [ -d /run/systemd/system ] && systemd-detect-virt --quiet --vm; then\n mkdir -p /etc/systemd/system/systemd-random-seed.service.d/\n cat < /etc/systemd/system/systemd-random-seed.service.d/fakeentropy.conf\n[Service]\nExecStart=/usr/bin/perl -E \'open \\$\\$f, "/bin/bash" or die; open \\$\\$rnd, ">/dev/random" or die; for (\\$\\$i = 0; \\$\\$i < 10; ++\\$\\$i) {read \\$\\$f, \\$\\$d, 64; ioctl \\$\\$rnd, 0x40085203, pack("ii", 64*8, 64) . \\$\\$d}\'\nEOF\nfi\n\n# set compressor to lz4 where supported, we care about compression speed\nif grep -q lz4 /etc/initramfs-tools/initramfs.conf; then\n echo COMPRESS=lz4 > /etc/initramfs-tools/conf.d/lz4\nfi'], kind install, sout raw, serr raw, env ['AUTOPKGTEST_IS_SETUP_COMMAND=1', 'AUTOPKGTEST_NORMAL_USER=ubuntu', 'ADT_NORMAL_USER=ubuntu'] 1167s + lsb_release --codename --short 1167s + RELEASE=plucky 1167s + cat 1167s + [ plucky != trusty ] 1167s + DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y --allow-downgrades -o Dpkg::Options::=--force-confnew dist-upgrade 1167s Reading package lists... 1167s Building dependency tree... 1167s Reading state information... 1167s Calculating upgrade... 1168s The following packages were automatically installed and are no longer required: 1168s libnsl2 libpython3.12-minimal libpython3.12-stdlib libpython3.12t64 1168s linux-headers-6.11.0-8 linux-headers-6.11.0-8-generic 1168s linux-modules-6.11.0-8-generic linux-tools-6.11.0-8 1168s linux-tools-6.11.0-8-generic 1168s Use 'sudo apt autoremove' to remove them. 1168s The following packages will be upgraded: 1168s iproute2 libgpgme11t64 liblsof0 libp11-kit0 lsof sysvinit-utils 1168s 6 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1168s Need to get 1982 kB of archives. 1168s After this operation, 22.5 kB of additional disk space will be used. 1168s Get:1 http://ftpmaster.internal/ubuntu plucky/main s390x sysvinit-utils s390x 3.14-1ubuntu1 [36.0 kB] 1168s Get:2 http://ftpmaster.internal/ubuntu plucky/main s390x iproute2 s390x 6.13.0-1ubuntu1 [1174 kB] 1168s Get:3 http://ftpmaster.internal/ubuntu plucky/main s390x libp11-kit0 s390x 0.25.5-2ubuntu3 [316 kB] 1168s Get:4 http://ftpmaster.internal/ubuntu plucky/main s390x lsof s390x 4.99.4+dfsg-1 [243 kB] 1168s Get:5 http://ftpmaster.internal/ubuntu plucky/main s390x liblsof0 s390x 4.99.4+dfsg-1 [58.5 kB] 1168s Get:6 http://ftpmaster.internal/ubuntu plucky/main s390x libgpgme11t64 s390x 1.24.2-1ubuntu1 [154 kB] 1169s Preconfiguring packages ... 1169s Fetched 1982 kB in 1s (2683 kB/s) 1169s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 81030 files and directories currently installed.) 1169s Preparing to unpack .../sysvinit-utils_3.14-1ubuntu1_s390x.deb ... 1169s Unpacking sysvinit-utils (3.14-1ubuntu1) over (3.08-6ubuntu3) ... 1169s Setting up sysvinit-utils (3.14-1ubuntu1) ... 1169s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 81030 files and directories currently installed.) 1169s Preparing to unpack .../iproute2_6.13.0-1ubuntu1_s390x.deb ... 1169s Unpacking iproute2 (6.13.0-1ubuntu1) over (6.10.0-2ubuntu1) ... 1169s Preparing to unpack .../libp11-kit0_0.25.5-2ubuntu3_s390x.deb ... 1169s Unpacking libp11-kit0:s390x (0.25.5-2ubuntu3) over (0.25.5-2ubuntu2) ... 1169s Preparing to unpack .../lsof_4.99.4+dfsg-1_s390x.deb ... 1169s Unpacking lsof (4.99.4+dfsg-1) over (4.99.3+dfsg-2) ... 1169s Preparing to unpack .../liblsof0_4.99.4+dfsg-1_s390x.deb ... 1169s Unpacking liblsof0 (4.99.4+dfsg-1) over (4.99.3+dfsg-2) ... 1169s Preparing to unpack .../libgpgme11t64_1.24.2-1ubuntu1_s390x.deb ... 1169s Unpacking libgpgme11t64:s390x (1.24.2-1ubuntu1) over (1.24.1-4ubuntu1) ... 1169s Setting up liblsof0 (4.99.4+dfsg-1) ... 1169s Setting up iproute2 (6.13.0-1ubuntu1) ... 1169s Setting up libp11-kit0:s390x (0.25.5-2ubuntu3) ... 1169s Setting up lsof (4.99.4+dfsg-1) ... 1169s Setting up libgpgme11t64:s390x (1.24.2-1ubuntu1) ... 1169s Processing triggers for man-db (2.13.0-1) ... 1170s Processing triggers for libc-bin (2.40-4ubuntu1) ... 1170s + rm /etc/apt/preferences.d/force-downgrade-to-release.pref 1170s + /usr/lib/apt/apt-helper analyze-pattern ?true 1170s + uname -r 1170s + sed s/\./\\./g 1170s + running_kernel_pattern=^linux-.*6\.12\.0-15-generic.* 1170s + apt list ?obsolete 1170s + tail+ cut -n+2 -d/ -f1 1170s 1170s + grep -v ^linux-.*6\.12\.0-15-generic.* 1170s + true 1170s + obsolete_pkgs= 1170s + DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y purge --autoremove 1170s Reading package lists... 1170s Building dependency tree... 1170s Reading state information... 1171s The following packages will be REMOVED: 1171s libnsl2* libpython3.12-minimal* libpython3.12-stdlib* libpython3.12t64* 1171s linux-headers-6.11.0-8* linux-headers-6.11.0-8-generic* 1171s linux-modules-6.11.0-8-generic* linux-tools-6.11.0-8* 1171s linux-tools-6.11.0-8-generic* 1171s 0 upgraded, 0 newly installed, 9 to remove and 0 not upgraded. 1171s After this operation, 167 MB disk space will be freed. 1171s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 81031 files and directories currently installed.) 1171s Removing linux-tools-6.11.0-8-generic (6.11.0-8.8) ... 1171s Removing linux-tools-6.11.0-8 (6.11.0-8.8) ... 1171s Removing libpython3.12t64:s390x (3.12.9-1) ... 1171s Removing libpython3.12-stdlib:s390x (3.12.9-1) ... 1171s Removing libnsl2:s390x (1.3.0-3build3) ... 1171s Removing libpython3.12-minimal:s390x (3.12.9-1) ... 1171s Removing linux-headers-6.11.0-8-generic (6.11.0-8.8) ... 1171s Removing linux-headers-6.11.0-8 (6.11.0-8.8) ... 1172s Removing linux-modules-6.11.0-8-generic (6.11.0-8.8) ... 1172s Processing triggers for libc-bin (2.40-4ubuntu1) ... 1172s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 55931 files and directories currently installed.) 1172s Purging configuration files for libpython3.12-minimal:s390x (3.12.9-1) ... 1172s Purging configuration files for linux-modules-6.11.0-8-generic (6.11.0-8.8) ... 1172s + grep -q trusty /etc/lsb-release 1172s + [ ! -d /usr/share/doc/unattended-upgrades ] 1172s + [ ! -d /usr/share/doc/lxd ] 1172s + [ ! -d /usr/share/doc/lxd-client ] 1172s + [ ! -d /usr/share/doc/snapd ] 1172s + type iptables 1172s + cat 1172s + chmod 755 /etc/rc.local 1172s + . /etc/rc.local 1172s + iptables -w -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu 1172s + iptables -A OUTPUT -d 10.255.255.1/32 -p tcp -j DROP 1172s + iptables -A OUTPUT -d 10.255.255.2/32 -p tcp -j DROP 1172s + uname -m 1172s + [ s390x = ppc64le ] 1172s + [ -d /run/systemd/system ] 1172s + systemd-detect-virt --quiet --vm 1172s + mkdir -p /etc/systemd/system/systemd-random-seed.service.d/ 1172s + cat 1172s + grep -q lz4 /etc/initramfs-tools/initramfs.conf 1172s + echo COMPRESS=lz4 1172s autopkgtest: DBG: testbed command exited with code 0 1172s autopkgtest [13:25:32]: upgrading testbed (apt dist-upgrade and autopurge) 1172s autopkgtest: DBG: testbed command ['/bin/sh', '-ec', '"$@" 3>&2 2>&1', 'run_apt_command', '/usr/bin/eatmydata', 'apt-get', '--quiet', '--assume-yes', '-o=APT::Status-Fd=3', '-o=APT::Install-Recommends=false', '-o=Dpkg::Options::=--force-confnew', '-o=Debug::pkgProblemResolver=true', 'dist-upgrade'], kind install, sout raw, serr pipe, env ['DEBIAN_FRONTEND=noninteractive', 'APT_LISTBUGS_FRONTEND=none', 'APT_LISTCHANGES_FRONTEND=none'] 1173s Reading package lists... 1173s Building dependency tree... 1173s Reading state information... 1173s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 1173s Starting 2 pkgProblemResolver with broken count: 0 1173s Done 1173s Entering ResolveByKeep 1173s 1173s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1173s autopkgtest: DBG: testbed command exited with code 0 1173s autopkgtest: DBG: testbed command ['/bin/sh', '-ec', '"$@" 3>&2 2>&1', 'run_apt_command', '/usr/bin/eatmydata', 'apt-get', '--quiet', '--assume-yes', '-o=APT::Status-Fd=3', '-o=APT::Install-Recommends=false', '-o=Dpkg::Options::=--force-confnew', '-o=Debug::pkgProblemResolver=true', '--purge', 'autoremove'], kind install, sout raw, serr pipe, env ['DEBIAN_FRONTEND=noninteractive', 'APT_LISTBUGS_FRONTEND=none', 'APT_LISTCHANGES_FRONTEND=none'] 1174s Reading package lists... 1174s Building dependency tree... 1174s Reading state information... 1174s Starting pkgProblemResolver with broken count: 0 1174s Starting 2 pkgProblemResolver with broken count: 0 1174s Done 1174s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1174s autopkgtest: DBG: testbed command exited with code 0 1174s autopkgtest: DBG: testbed command ['bash', '-ec', '[ ! -e /run/autopkgtest_no_reboot.stamp ] || exit 0;for d in /boot /boot/efi /boot/grub /etc/init /etc/init.d /etc/systemd/system /lib/systemd/system; do s=/tmp/autopkgtest.9zB7bO/${d//\\//_}.stamp; [ ! -d $d ] || [ `stat -c %Y $d` = `stat -c %Y $s` ]; done'], kind short, sout raw, serr raw, env [] 1174s autopkgtest: DBG: testbed command exited with code 1 1174s autopkgtest [13:25:34]: rebooting testbed after setup commands that affected boot 1174s autopkgtest: DBG: sending command to testbed: reboot 1193s autopkgtest: DBG: got reply from testbed: ok 1193s autopkgtest: DBG: testbed supports reboot, creating /tmp/autopkgtest-reboot 1193s autopkgtest: DBG: testbed command ['mkdir', '-p', '/tmp/autopkgtest.9zB7bO'], kind short, sout raw, serr pipe, env [] 1193s autopkgtest: DBG: testbed command exited with code 0 1193s autopkgtest: DBG: sending command to testbed: copydown /home/ubuntu/autopkgtest/lib/in-testbed/reboot.sh /tmp/autopkgtest.9zB7bO/autopkgtest-reboot 1193s autopkgtest: DBG: got reply from testbed: ok 1193s autopkgtest: DBG: testbed command ['chmod', '-R', '0755', '--', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 1194s autopkgtest: DBG: testbed command exited with code 0 1194s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot', '/tmp/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 1194s autopkgtest: DBG: testbed command exited with code 0 1194s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot', '/sbin/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 1194s autopkgtest: DBG: testbed command exited with code 0 1194s autopkgtest: DBG: testbed command ['mkdir', '-p', '/tmp/autopkgtest.9zB7bO'], kind short, sout raw, serr pipe, env [] 1194s autopkgtest: DBG: testbed command exited with code 0 1194s autopkgtest: DBG: sending command to testbed: copydown /home/ubuntu/autopkgtest/lib/in-testbed/reboot-prepare.sh /tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare 1194s autopkgtest: DBG: got reply from testbed: ok 1194s autopkgtest: DBG: testbed command ['chmod', '-R', '0755', '--', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare'], kind short, sout raw, serr pipe, env [] 1194s autopkgtest: DBG: testbed command exited with code 0 1194s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare', '/tmp/autopkgtest-reboot-prepare'], kind short, sout raw, serr pipe, env [] 1195s autopkgtest: DBG: testbed command exited with code 0 1195s autopkgtest: DBG: testbed command ['uname', '-srv'], kind short, sout pipe, serr pipe, env [] 1195s autopkgtest: DBG: testbed command exited with code 0 1195s autopkgtest: DBG: testbed command ['sh', '-ec', "dpkg-query --show -f '${Package}\\t${Version}\\n' > /tmp/autopkgtest.9zB7bO/testbed-packages"], kind short, sout raw, serr pipe, env [] 1195s autopkgtest: DBG: testbed command exited with code 0 1195s autopkgtest: DBG: sending command to testbed: copyup /tmp/autopkgtest.9zB7bO/testbed-packages /tmp/autopkgtest-work.dij5uc5o/out/testbed-packages 1195s autopkgtest: DBG: got reply from testbed: ok 1195s autopkgtest: DBG: testbed supports reboot, creating /tmp/autopkgtest-reboot 1195s autopkgtest: DBG: testbed command ['mkdir', '-p', '/tmp/autopkgtest.9zB7bO'], kind short, sout raw, serr pipe, env [] 1195s autopkgtest: DBG: testbed command exited with code 0 1195s autopkgtest: DBG: sending command to testbed: copydown /home/ubuntu/autopkgtest/lib/in-testbed/reboot.sh /tmp/autopkgtest.9zB7bO/autopkgtest-reboot 1195s autopkgtest: DBG: got reply from testbed: ok 1195s autopkgtest: DBG: testbed command ['chmod', '-R', '0755', '--', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 1196s autopkgtest: DBG: testbed command exited with code 0 1196s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot', '/tmp/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 1196s autopkgtest: DBG: testbed command exited with code 0 1196s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot', '/sbin/autopkgtest-reboot'], kind short, sout raw, serr pipe, env [] 1196s autopkgtest: DBG: testbed command exited with code 0 1196s autopkgtest: DBG: testbed command ['mkdir', '-p', '/tmp/autopkgtest.9zB7bO'], kind short, sout raw, serr pipe, env [] 1196s autopkgtest: DBG: testbed command exited with code 0 1196s autopkgtest: DBG: sending command to testbed: copydown /home/ubuntu/autopkgtest/lib/in-testbed/reboot-prepare.sh /tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare 1196s autopkgtest: DBG: got reply from testbed: ok 1196s autopkgtest: DBG: testbed command ['chmod', '-R', '0755', '--', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare'], kind short, sout raw, serr pipe, env [] 1197s autopkgtest: DBG: testbed command exited with code 0 1197s autopkgtest: DBG: testbed command ['ln', '-fns', '/tmp/autopkgtest.9zB7bO/autopkgtest-reboot-prepare', '/tmp/autopkgtest-reboot-prepare'], kind short, sout raw, serr pipe, env [] 1197s autopkgtest: DBG: testbed command exited with code 0 1197s autopkgtest: DBG: testbed command ['uname', '-srv'], kind short, sout pipe, serr pipe, env [] 1197s autopkgtest: DBG: testbed command exited with code 0 1197s autopkgtest: DBG: Binaries: no registered binaries, not publishing anything 1197s autopkgtest: DBG: install_deps: deps_new=['python3-translate', 'translate-toolkit', 'python3-pytest', 'python3-all', 'subversion', 'python3-aeidon', 'python3-bs4', 'python3-charset-normalizer', 'python3-cheroot', 'python3-diff-match-patch', 'python3-enchant', 'python3-iniparse', 'python3-levenshtein', 'python3-lxml', 'python3-mistletoe (>> 1.1.0~)', 'python3-phply (>> 1.2.4)', 'python3-pycountry (>> 17.5.14)', 'python3-pyparsing (>> 3)', 'python3-ruamel.yaml', 'python3-syrupy', 'python3-vobject', 'python3-wcwidth', 'python3-xapian'] 1197s autopkgtest: DBG: install-deps: satisfying python3-translate, translate-toolkit, python3-pytest, python3-all, subversion, python3-aeidon, python3-bs4, python3-charset-normalizer, python3-cheroot, python3-diff-match-patch, python3-enchant, python3-iniparse, python3-levenshtein, python3-lxml, python3-mistletoe (>> 1.1.0~), python3-phply (>> 1.2.4), python3-pycountry (>> 17.5.14), python3-pyparsing (>> 3), python3-ruamel.yaml, python3-syrupy, python3-vobject, python3-wcwidth, python3-xapian 1197s autopkgtest: DBG: can use apt-get on testbed: True 1197s autopkgtest: DBG: testbed command ['/bin/sh', '-ec', '"$@" 3>&2 2>&1', 'run_apt_command', '/usr/bin/eatmydata', 'apt-get', '--quiet', '--assume-yes', '-o=APT::Status-Fd=3', '-o=APT::Install-Recommends=false', '-o=Dpkg::Options::=--force-confnew', '-o=Debug::pkgProblemResolver=true', 'satisfy', 'python3-translate, translate-toolkit, python3-pytest, python3-all, subversion, python3-aeidon, python3-bs4, python3-charset-normalizer, python3-cheroot, python3-diff-match-patch, python3-enchant, python3-iniparse, python3-levenshtein, python3-lxml, python3-mistletoe (>> 1.1.0~), python3-phply (>> 1.2.4), python3-pycountry (>> 17.5.14), python3-pyparsing (>> 3), python3-ruamel.yaml, python3-syrupy, python3-vobject, python3-wcwidth, python3-xapian'], kind install, sout raw, serr pipe, env ['DEBIAN_FRONTEND=noninteractive', 'APT_LISTBUGS_FRONTEND=none', 'APT_LISTCHANGES_FRONTEND=none'] 1197s Reading package lists... 1197s Building dependency tree... 1197s Reading state information... 1197s Starting pkgProblemResolver with broken count: 0 1197s Starting 2 pkgProblemResolver with broken count: 0 1197s Done 1198s The following NEW packages will be installed: 1198s dictionaries-common emacsen-common gettext hunspell-en-us libapr1t64 1198s libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data libgomp1 1198s libhunspell-1.7-0 libnsl2 libpython3.12-minimal libpython3.12-stdlib 1198s libserf-1-1 libsvn1 libutf8proc3 libxapian30 libxslt1.1 python3-aeidon 1198s python3-all python3-bs4 python3-charset-normalizer python3-cheroot 1198s python3-cwcwidth python3-dateutil python3-diff-match-patch python3-enchant 1198s python3-iniconfig python3-iniparse python3-levenshtein python3-lxml 1198s python3-mistletoe python3-packaging python3-phply python3-pluggy python3-ply 1198s python3-pycountry python3-pytest python3-pytz python3-rapidfuzz 1198s python3-ruamel.yaml python3-ruamel.yaml.clib python3-soupsieve 1198s python3-syrupy python3-translate python3-tz python3-vobject python3-wcwidth 1198s python3-xapian python3.12 python3.12-minimal subversion translate-toolkit 1198s 0 upgraded, 54 newly installed, 0 to remove and 0 not upgraded. 1198s Need to get 19.1 MB of archives. 1198s After this operation, 90.5 MB of additional disk space will be used. 1198s Get:1 http://ftpmaster.internal/ubuntu plucky/main s390x libpython3.12-minimal s390x 3.12.9-1 [836 kB] 1198s Get:2 http://ftpmaster.internal/ubuntu plucky/main s390x python3.12-minimal s390x 3.12.9-1 [2403 kB] 1199s Get:3 http://ftpmaster.internal/ubuntu plucky/main s390x libnsl2 s390x 1.3.0-3build3 [44.1 kB] 1199s Get:4 http://ftpmaster.internal/ubuntu plucky/main s390x libpython3.12-stdlib s390x 3.12.9-1 [2071 kB] 1200s Get:5 http://ftpmaster.internal/ubuntu plucky/main s390x python3.12 s390x 3.12.9-1 [671 kB] 1200s Get:6 http://ftpmaster.internal/ubuntu plucky/main s390x emacsen-common all 3.0.5 [12.1 kB] 1200s Get:7 http://ftpmaster.internal/ubuntu plucky/main s390x dictionaries-common all 1.30.4 [176 kB] 1200s Get:8 http://ftpmaster.internal/ubuntu plucky/main s390x libgomp1 s390x 15-20250213-1ubuntu1 [151 kB] 1200s Get:9 http://ftpmaster.internal/ubuntu plucky/main s390x gettext s390x 0.23.1-1 [1065 kB] 1200s Get:10 http://ftpmaster.internal/ubuntu plucky/main s390x hunspell-en-us all 1:2020.12.07-3 [586 kB] 1200s Get:11 http://ftpmaster.internal/ubuntu plucky/main s390x libapr1t64 s390x 1.7.5-1 [114 kB] 1200s Get:12 http://ftpmaster.internal/ubuntu plucky/main s390x libaprutil1t64 s390x 1.6.3-3ubuntu2 [98.4 kB] 1200s Get:13 http://ftpmaster.internal/ubuntu plucky/main s390x libaspell15 s390x 0.60.8.1-4 [355 kB] 1200s Get:14 http://ftpmaster.internal/ubuntu plucky/main s390x libhunspell-1.7-0 s390x 1.7.2+really1.7.2-10build3 [304 kB] 1200s Get:15 http://ftpmaster.internal/ubuntu plucky/main s390x libenchant-2-2 s390x 2.8.2+dfsg1-3 [61.2 kB] 1200s Get:16 http://ftpmaster.internal/ubuntu plucky/main s390x libexttextcat-data all 3.4.7-1build1 [193 kB] 1200s Get:17 http://ftpmaster.internal/ubuntu plucky/universe s390x libserf-1-1 s390x 1.3.10-3ubuntu1 [49.8 kB] 1200s Get:18 http://ftpmaster.internal/ubuntu plucky/universe s390x libutf8proc3 s390x 2.9.0-1build1 [71.1 kB] 1200s Get:19 http://ftpmaster.internal/ubuntu plucky/universe s390x libsvn1 s390x 1.14.5-2 [1371 kB] 1201s Get:20 http://ftpmaster.internal/ubuntu plucky/universe s390x libxapian30 s390x 1.4.25-2 [743 kB] 1201s Get:21 http://ftpmaster.internal/ubuntu plucky/main s390x libxslt1.1 s390x 1.1.39-0exp1ubuntu2 [169 kB] 1201s Get:22 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-aeidon all 1.15-2 [231 kB] 1201s Get:23 http://ftpmaster.internal/ubuntu plucky/main s390x python3-all s390x 3.13.1-1~exp2 [898 B] 1201s Get:24 http://ftpmaster.internal/ubuntu plucky/main s390x python3-soupsieve all 2.6-1 [33.0 kB] 1201s Get:25 http://ftpmaster.internal/ubuntu plucky/main s390x python3-bs4 all 4.13.3-1 [136 kB] 1201s Get:26 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-charset-normalizer s390x 3.4.1-1 [148 kB] 1201s Get:27 http://ftpmaster.internal/ubuntu plucky/main s390x python3-cheroot all 10.0.1+ds1-3 [78.6 kB] 1201s Get:28 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-cwcwidth s390x 0.1.10-1 [27.6 kB] 1201s Get:29 http://ftpmaster.internal/ubuntu plucky/main s390x python3-dateutil all 2.9.0-3 [80.2 kB] 1201s Get:30 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-diff-match-patch all 20241021-1 [33.6 kB] 1201s Get:31 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-enchant all 3.3.0~rc1-1 [35.1 kB] 1201s Get:32 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-iniconfig all 1.1.1-2 [6024 B] 1201s Get:33 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-rapidfuzz s390x 3.12.1+ds-1 [1843 kB] 1201s Get:34 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-levenshtein s390x 0.27.0-1 [211 kB] 1201s Get:35 http://ftpmaster.internal/ubuntu plucky/main s390x python3-lxml s390x 5.3.1-1 [1773 kB] 1201s Get:36 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-mistletoe all 1.4.0-1 [38.2 kB] 1201s Get:37 http://ftpmaster.internal/ubuntu plucky/main s390x python3-packaging all 24.2-1 [51.5 kB] 1201s Get:38 http://ftpmaster.internal/ubuntu plucky/main s390x python3-ply all 3.11-7 [45.4 kB] 1201s Get:39 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-phply all 1.2.6-1 [50.5 kB] 1201s Get:40 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-pluggy all 1.5.0-1 [21.0 kB] 1201s Get:41 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-pytest all 8.3.4-1 [252 kB] 1201s Get:42 http://ftpmaster.internal/ubuntu plucky/main s390x python3-pytz all 2025.1-3 [162 kB] 1201s Get:43 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-ruamel.yaml.clib s390x 0.2.12+ds-1 [201 kB] 1201s Get:44 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-ruamel.yaml all 0.18.10+ds-1 [127 kB] 1201s Get:45 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-syrupy all 4.8.1-1 [45.4 kB] 1201s Get:46 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-translate all 3.14.7-1 [319 kB] 1201s Get:47 http://ftpmaster.internal/ubuntu plucky/main s390x python3-tz all 2025.1-3 [1866 B] 1201s Get:48 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-vobject all 0.9.8+dfsg-2 [41.3 kB] 1201s Get:49 http://ftpmaster.internal/ubuntu plucky/main s390x python3-wcwidth all 0.2.13+dfsg1-1 [26.3 kB] 1201s Get:50 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-xapian s390x 1.4.25-1build4 [527 kB] 1201s Get:51 http://ftpmaster.internal/ubuntu plucky/universe s390x subversion s390x 1.14.5-2 [910 kB] 1201s Get:52 http://ftpmaster.internal/ubuntu plucky/universe s390x translate-toolkit all 3.14.7-1 [81.5 kB] 1201s Get:53 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-iniparse all 0.5.1-1 [21.2 kB] 1201s Get:54 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-pycountry all 24.6.1+ds1-1 [30.0 kB] 1202s Preconfiguring packages ... 1202s Fetched 19.1 MB in 4s (5083 kB/s) 1202s Selecting previously unselected package libpython3.12-minimal:s390x. 1202s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 55929 files and directories currently installed.) 1202s Preparing to unpack .../00-libpython3.12-minimal_3.12.9-1_s390x.deb ... 1202s Unpacking libpython3.12-minimal:s390x (3.12.9-1) ... 1202s Selecting previously unselected package python3.12-minimal. 1202s Preparing to unpack .../01-python3.12-minimal_3.12.9-1_s390x.deb ... 1202s Unpacking python3.12-minimal (3.12.9-1) ... 1202s Selecting previously unselected package libnsl2:s390x. 1202s Preparing to unpack .../02-libnsl2_1.3.0-3build3_s390x.deb ... 1202s Unpacking libnsl2:s390x (1.3.0-3build3) ... 1202s Selecting previously unselected package libpython3.12-stdlib:s390x. 1202s Preparing to unpack .../03-libpython3.12-stdlib_3.12.9-1_s390x.deb ... 1202s Unpacking libpython3.12-stdlib:s390x (3.12.9-1) ... 1202s Selecting previously unselected package python3.12. 1202s Preparing to unpack .../04-python3.12_3.12.9-1_s390x.deb ... 1202s Unpacking python3.12 (3.12.9-1) ... 1202s Selecting previously unselected package emacsen-common. 1202s Preparing to unpack .../05-emacsen-common_3.0.5_all.deb ... 1202s Unpacking emacsen-common (3.0.5) ... 1202s Selecting previously unselected package dictionaries-common. 1202s Preparing to unpack .../06-dictionaries-common_1.30.4_all.deb ... 1202s Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common' 1202s Unpacking dictionaries-common (1.30.4) ... 1202s Selecting previously unselected package libgomp1:s390x. 1202s Preparing to unpack .../07-libgomp1_15-20250213-1ubuntu1_s390x.deb ... 1202s Unpacking libgomp1:s390x (15-20250213-1ubuntu1) ... 1202s Selecting previously unselected package gettext. 1202s Preparing to unpack .../08-gettext_0.23.1-1_s390x.deb ... 1202s Unpacking gettext (0.23.1-1) ... 1202s Selecting previously unselected package hunspell-en-us. 1202s Preparing to unpack .../09-hunspell-en-us_1%3a2020.12.07-3_all.deb ... 1202s Unpacking hunspell-en-us (1:2020.12.07-3) ... 1202s Selecting previously unselected package libapr1t64:s390x. 1202s Preparing to unpack .../10-libapr1t64_1.7.5-1_s390x.deb ... 1202s Unpacking libapr1t64:s390x (1.7.5-1) ... 1202s Selecting previously unselected package libaprutil1t64:s390x. 1202s Preparing to unpack .../11-libaprutil1t64_1.6.3-3ubuntu2_s390x.deb ... 1202s Unpacking libaprutil1t64:s390x (1.6.3-3ubuntu2) ... 1202s Selecting previously unselected package libaspell15:s390x. 1202s Preparing to unpack .../12-libaspell15_0.60.8.1-4_s390x.deb ... 1202s Unpacking libaspell15:s390x (0.60.8.1-4) ... 1202s Selecting previously unselected package libhunspell-1.7-0:s390x. 1202s Preparing to unpack .../13-libhunspell-1.7-0_1.7.2+really1.7.2-10build3_s390x.deb ... 1202s Unpacking libhunspell-1.7-0:s390x (1.7.2+really1.7.2-10build3) ... 1202s Selecting previously unselected package libenchant-2-2:s390x. 1202s Preparing to unpack .../14-libenchant-2-2_2.8.2+dfsg1-3_s390x.deb ... 1202s Unpacking libenchant-2-2:s390x (2.8.2+dfsg1-3) ... 1202s Selecting previously unselected package libexttextcat-data. 1202s Preparing to unpack .../15-libexttextcat-data_3.4.7-1build1_all.deb ... 1202s Unpacking libexttextcat-data (3.4.7-1build1) ... 1202s Selecting previously unselected package libserf-1-1:s390x. 1202s Preparing to unpack .../16-libserf-1-1_1.3.10-3ubuntu1_s390x.deb ... 1202s Unpacking libserf-1-1:s390x (1.3.10-3ubuntu1) ... 1202s Selecting previously unselected package libutf8proc3:s390x. 1202s Preparing to unpack .../17-libutf8proc3_2.9.0-1build1_s390x.deb ... 1202s Unpacking libutf8proc3:s390x (2.9.0-1build1) ... 1202s Selecting previously unselected package libsvn1:s390x. 1202s Preparing to unpack .../18-libsvn1_1.14.5-2_s390x.deb ... 1202s Unpacking libsvn1:s390x (1.14.5-2) ... 1202s Selecting previously unselected package libxapian30:s390x. 1202s Preparing to unpack .../19-libxapian30_1.4.25-2_s390x.deb ... 1202s Unpacking libxapian30:s390x (1.4.25-2) ... 1202s Selecting previously unselected package libxslt1.1:s390x. 1202s Preparing to unpack .../20-libxslt1.1_1.1.39-0exp1ubuntu2_s390x.deb ... 1202s Unpacking libxslt1.1:s390x (1.1.39-0exp1ubuntu2) ... 1202s Selecting previously unselected package python3-aeidon. 1202s Preparing to unpack .../21-python3-aeidon_1.15-2_all.deb ... 1202s Unpacking python3-aeidon (1.15-2) ... 1202s Selecting previously unselected package python3-all. 1202s Preparing to unpack .../22-python3-all_3.13.1-1~exp2_s390x.deb ... 1202s Unpacking python3-all (3.13.1-1~exp2) ... 1202s Selecting previously unselected package python3-soupsieve. 1202s Preparing to unpack .../23-python3-soupsieve_2.6-1_all.deb ... 1202s Unpacking python3-soupsieve (2.6-1) ... 1203s Selecting previously unselected package python3-bs4. 1203s Preparing to unpack .../24-python3-bs4_4.13.3-1_all.deb ... 1203s Unpacking python3-bs4 (4.13.3-1) ... 1203s Selecting previously unselected package python3-charset-normalizer. 1203s Preparing to unpack .../25-python3-charset-normalizer_3.4.1-1_s390x.deb ... 1203s Unpacking python3-charset-normalizer (3.4.1-1) ... 1203s Selecting previously unselected package python3-cheroot. 1203s Preparing to unpack .../26-python3-cheroot_10.0.1+ds1-3_all.deb ... 1203s Unpacking python3-cheroot (10.0.1+ds1-3) ... 1203s Selecting previously unselected package python3-cwcwidth. 1203s Preparing to unpack .../27-python3-cwcwidth_0.1.10-1_s390x.deb ... 1203s Unpacking python3-cwcwidth (0.1.10-1) ... 1203s Selecting previously unselected package python3-dateutil. 1203s Preparing to unpack .../28-python3-dateutil_2.9.0-3_all.deb ... 1203s Unpacking python3-dateutil (2.9.0-3) ... 1203s Selecting previously unselected package python3-diff-match-patch. 1203s Preparing to unpack .../29-python3-diff-match-patch_20241021-1_all.deb ... 1203s Unpacking python3-diff-match-patch (20241021-1) ... 1203s Selecting previously unselected package python3-enchant. 1203s Preparing to unpack .../30-python3-enchant_3.3.0~rc1-1_all.deb ... 1203s Unpacking python3-enchant (3.3.0~rc1-1) ... 1203s Selecting previously unselected package python3-iniconfig. 1203s Preparing to unpack .../31-python3-iniconfig_1.1.1-2_all.deb ... 1203s Unpacking python3-iniconfig (1.1.1-2) ... 1203s Selecting previously unselected package python3-rapidfuzz. 1203s Preparing to unpack .../32-python3-rapidfuzz_3.12.1+ds-1_s390x.deb ... 1203s Unpacking python3-rapidfuzz (3.12.1+ds-1) ... 1203s Selecting previously unselected package python3-levenshtein. 1203s Preparing to unpack .../33-python3-levenshtein_0.27.0-1_s390x.deb ... 1203s Unpacking python3-levenshtein (0.27.0-1) ... 1203s Selecting previously unselected package python3-lxml:s390x. 1203s Preparing to unpack .../34-python3-lxml_5.3.1-1_s390x.deb ... 1203s Unpacking python3-lxml:s390x (5.3.1-1) ... 1203s Selecting previously unselected package python3-mistletoe. 1203s Preparing to unpack .../35-python3-mistletoe_1.4.0-1_all.deb ... 1203s Unpacking python3-mistletoe (1.4.0-1) ... 1203s Selecting previously unselected package python3-packaging. 1203s Preparing to unpack .../36-python3-packaging_24.2-1_all.deb ... 1203s Unpacking python3-packaging (24.2-1) ... 1203s Selecting previously unselected package python3-ply. 1203s Preparing to unpack .../37-python3-ply_3.11-7_all.deb ... 1203s Unpacking python3-ply (3.11-7) ... 1203s Selecting previously unselected package python3-phply. 1203s Preparing to unpack .../38-python3-phply_1.2.6-1_all.deb ... 1203s Unpacking python3-phply (1.2.6-1) ... 1203s Selecting previously unselected package python3-pluggy. 1203s Preparing to unpack .../39-python3-pluggy_1.5.0-1_all.deb ... 1203s Unpacking python3-pluggy (1.5.0-1) ... 1203s Selecting previously unselected package python3-pytest. 1203s Preparing to unpack .../40-python3-pytest_8.3.4-1_all.deb ... 1203s Unpacking python3-pytest (8.3.4-1) ... 1203s Selecting previously unselected package python3-pytz. 1203s Preparing to unpack .../41-python3-pytz_2025.1-3_all.deb ... 1203s Unpacking python3-pytz (2025.1-3) ... 1203s Selecting previously unselected package python3-ruamel.yaml.clib. 1203s Preparing to unpack .../42-python3-ruamel.yaml.clib_0.2.12+ds-1_s390x.deb ... 1203s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1) ... 1203s Selecting previously unselected package python3-ruamel.yaml. 1203s Preparing to unpack .../43-python3-ruamel.yaml_0.18.10+ds-1_all.deb ... 1203s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ... 1203s Selecting previously unselected package python3-syrupy. 1203s Preparing to unpack .../44-python3-syrupy_4.8.1-1_all.deb ... 1203s Unpacking python3-syrupy (4.8.1-1) ... 1203s Selecting previously unselected package python3-translate. 1203s Preparing to unpack .../45-python3-translate_3.14.7-1_all.deb ... 1203s Unpacking python3-translate (3.14.7-1) ... 1203s Selecting previously unselected package python3-tz. 1203s Preparing to unpack .../46-python3-tz_2025.1-3_all.deb ... 1203s Unpacking python3-tz (2025.1-3) ... 1203s Selecting previously unselected package python3-vobject. 1203s Preparing to unpack .../47-python3-vobject_0.9.8+dfsg-2_all.deb ... 1203s Unpacking python3-vobject (0.9.8+dfsg-2) ... 1203s Selecting previously unselected package python3-wcwidth. 1203s Preparing to unpack .../48-python3-wcwidth_0.2.13+dfsg1-1_all.deb ... 1203s Unpacking python3-wcwidth (0.2.13+dfsg1-1) ... 1203s Selecting previously unselected package python3-xapian. 1203s Preparing to unpack .../49-python3-xapian_1.4.25-1build4_s390x.deb ... 1203s Unpacking python3-xapian (1.4.25-1build4) ... 1203s Selecting previously unselected package subversion. 1203s Preparing to unpack .../50-subversion_1.14.5-2_s390x.deb ... 1203s Unpacking subversion (1.14.5-2) ... 1203s Selecting previously unselected package translate-toolkit. 1203s Preparing to unpack .../51-translate-toolkit_3.14.7-1_all.deb ... 1203s Unpacking translate-toolkit (3.14.7-1) ... 1203s Selecting previously unselected package python3-iniparse. 1203s Preparing to unpack .../52-python3-iniparse_0.5.1-1_all.deb ... 1203s Unpacking python3-iniparse (0.5.1-1) ... 1203s Selecting previously unselected package python3-pycountry. 1203s Preparing to unpack .../53-python3-pycountry_24.6.1+ds1-1_all.deb ... 1203s Unpacking python3-pycountry (24.6.1+ds1-1) ... 1203s Setting up python3-iniconfig (1.1.1-2) ... 1203s Setting up libxapian30:s390x (1.4.25-2) ... 1203s Setting up python3-rapidfuzz (3.12.1+ds-1) ... 1204s Setting up python3-diff-match-patch (20241021-1) ... 1204s Setting up python3-aeidon (1.15-2) ... 1204s Setting up libutf8proc3:s390x (2.9.0-1build1) ... 1204s Setting up libaspell15:s390x (0.60.8.1-4) ... 1204s Setting up python3-charset-normalizer (3.4.1-1) ... 1204s Setting up python3-ply (3.11-7) ... 1204s Setting up libpython3.12-minimal:s390x (3.12.9-1) ... 1204s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1) ... 1204s Setting up python3-pytz (2025.1-3) ... 1204s Setting up libgomp1:s390x (15-20250213-1ubuntu1) ... 1204s Setting up python3-tz (2025.1-3) ... 1204s Setting up python3-packaging (24.2-1) ... 1205s Setting up python3-wcwidth (0.2.13+dfsg1-1) ... 1205s Setting up emacsen-common (3.0.5) ... 1205s Setting up python3-cheroot (10.0.1+ds1-3) ... 1205s Setting up python3-pycountry (24.6.1+ds1-1) ... 1205s Setting up python3-xapian (1.4.25-1build4) ... 1205s Setting up python3-cwcwidth (0.1.10-1) ... 1206s Setting up python3-pluggy (1.5.0-1) ... 1206s Setting up python3-ruamel.yaml (0.18.10+ds-1) ... 1206s Setting up python3-mistletoe (1.4.0-1) ... 1206s Setting up libexttextcat-data (3.4.7-1build1) ... 1206s Setting up libapr1t64:s390x (1.7.5-1) ... 1206s Setting up libnsl2:s390x (1.3.0-3build3) ... 1206s Setting up libxslt1.1:s390x (1.1.39-0exp1ubuntu2) ... 1206s Setting up python3-dateutil (2.9.0-3) ... 1206s Setting up python3-levenshtein (0.27.0-1) ... 1207s Setting up libhunspell-1.7-0:s390x (1.7.2+really1.7.2-10build3) ... 1207s Setting up python3-soupsieve (2.6-1) ... 1207s Setting up python3-iniparse (0.5.1-1) ... 1207s Setting up python3.12-minimal (3.12.9-1) ... 1208s Setting up libaprutil1t64:s390x (1.6.3-3ubuntu2) ... 1208s Setting up python3-vobject (0.9.8+dfsg-2) ... 1208s Setting up gettext (0.23.1-1) ... 1208s Setting up libpython3.12-stdlib:s390x (3.12.9-1) ... 1208s Setting up python3-phply (1.2.6-1) ... 1208s Setting up dictionaries-common (1.30.4) ... 1208s Setting up python3-pytest (8.3.4-1) ... 1209s Setting up python3-syrupy (4.8.1-1) ... 1209s Setting up python3.12 (3.12.9-1) ... 1210s Setting up libserf-1-1:s390x (1.3.10-3ubuntu1) ... 1210s Setting up python3-all (3.13.1-1~exp2) ... 1210s Setting up python3-bs4 (4.13.3-1) ... 1211s Setting up python3-lxml:s390x (5.3.1-1) ... 1211s Setting up hunspell-en-us (1:2020.12.07-3) ... 1211s Setting up libsvn1:s390x (1.14.5-2) ... 1211s Setting up libenchant-2-2:s390x (2.8.2+dfsg1-3) ... 1211s Setting up subversion (1.14.5-2) ... 1211s Setting up python3-enchant (3.3.0~rc1-1) ... 1211s Setting up python3-translate (3.14.7-1) ... 1212s Setting up translate-toolkit (3.14.7-1) ... 1212s Processing triggers for libc-bin (2.40-4ubuntu1) ... 1212s Processing triggers for systemd (257.2-3ubuntu1) ... 1212s Processing triggers for man-db (2.13.0-1) ... 1213s Processing triggers for install-info (7.1.1-1) ... 1213s Processing triggers for dictionaries-common (1.30.4) ... 1213s autopkgtest: DBG: testbed command exited with code 0 1213s autopkgtest: DBG: testbed command ['dpkg-query', '--show', '-f', '${Status}', 'python3-translate'], kind short, sout pipe, serr pipe, env [] 1213s autopkgtest: DBG: testbed command exited with code 0 1213s autopkgtest: DBG: testbed command ['dpkg-query', '--show', '-f', '${Status}', 'translate-toolkit'], kind short, sout pipe, serr pipe, env [] 1214s autopkgtest: DBG: testbed command exited with code 0 1214s autopkgtest: DBG: testbed command ['sh', '-ec', "dpkg-query --show -f '${Package}\\t${Version}\\n' > /tmp/autopkgtest.9zB7bO/python3-translate-commands-packages.all"], kind short, sout raw, serr pipe, env [] 1214s autopkgtest: DBG: testbed command exited with code 0 1214s autopkgtest: DBG: sending command to testbed: copyup /tmp/autopkgtest.9zB7bO/python3-translate-commands-packages.all /tmp/autopkgtest-work.dij5uc5o/out/python3-translate-commands-packages.all 1214s autopkgtest: DBG: got reply from testbed: ok 1214s autopkgtest: DBG: testbed command ['test', '-e', '/tmp/autopkgtest.9zB7bO/build.lrp/src'], kind short, sout raw, serr raw, env [] 1214s autopkgtest: DBG: testbed command exited with code 1 1214s autopkgtest: DBG: testbed command ['mkdir', '-p', '/tmp/autopkgtest.9zB7bO/build.lrp'], kind short, sout raw, serr pipe, env [] 1214s autopkgtest: DBG: testbed command exited with code 0 1214s autopkgtest: DBG: sending command to testbed: copydown /tmp/autopkgtest-work.dij5uc5o/out/tests-tree/ /tmp/autopkgtest.9zB7bO/build.lrp/src/ 1218s autopkgtest: DBG: got reply from testbed: ok 1218s autopkgtest: DBG: testbed command ['chown', '-R', 'ubuntu', '--', '/tmp/autopkgtest.9zB7bO/build.lrp/src'], kind short, sout raw, serr pipe, env [] 1218s autopkgtest: DBG: testbed command exited with code 0 1218s autopkgtest [13:26:18]: test python3-translate-commands: [----------------------- 1218s autopkgtest: DBG: testbed command ['su', '-s', '/bin/bash', 'ubuntu', '-c', 'set -e; exec /tmp/autopkgtest.9zB7bO/wrapper.sh --debug --artifacts=/tmp/autopkgtest.9zB7bO/python3-translate-commands-artifacts --chdir=/tmp/autopkgtest.9zB7bO/build.lrp/src --env=AUTOPKGTEST_TESTBED_ARCH=s390x --env=AUTOPKGTEST_TEST_ARCH=s390x --env=DEB_BUILD_OPTIONS=parallel=2 --env=DEBIAN_FRONTEND=noninteractive --env=LANG=C.UTF-8 --unset-env=LANGUAGE --unset-env=LC_ADDRESS --unset-env=LC_ALL --unset-env=LC_COLLATE --unset-env=LC_CTYPE --unset-env=LC_IDENTIFICATION --unset-env=LC_MEASUREMENT --unset-env=LC_MESSAGES --unset-env=LC_MONETARY --unset-env=LC_NAME --unset-env=LC_NUMERIC --unset-env=LC_PAPER --unset-env=LC_TELEPHONE --unset-env=LC_TIME --script-pid-file=/tmp/autopkgtest_script_pid --source-profile --stderr=/tmp/autopkgtest.9zB7bO/python3-translate-commands-stderr --stdout=/tmp/autopkgtest.9zB7bO/python3-translate-commands-stdout --tmp=/tmp/autopkgtest.9zB7bO/autopkgtest_tmp --env=ADT_TEST_TRIGGERS=sphinx/8.1.3-5 --make-executable=/tmp/autopkgtest.9zB7bO/build.lrp/src/debian/tests/python3-translate-commands -- /tmp/autopkgtest.9zB7bO/build.lrp/src/debian/tests/python3-translate-commands'], kind test, sout raw, serr raw, env [] 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: creating AUTOPKGTEST_ARTIFACTS: /tmp/autopkgtest.9zB7bO/python3-translate-commands-artifacts 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: changing to directory: /tmp/autopkgtest.9zB7bO/build.lrp/src 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: AUTOPKGTEST_TESTBED_ARCH=s390x 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: AUTOPKGTEST_TEST_ARCH=s390x 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: DEB_BUILD_OPTIONS=parallel=2 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: DEBIAN_FRONTEND=noninteractive 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: LANG=C.UTF-8 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LANGUAGE 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_ADDRESS 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_ALL 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_COLLATE 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_CTYPE 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_IDENTIFICATION 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_MEASUREMENT 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_MESSAGES 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_MONETARY 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_NAME 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_NUMERIC 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_PAPER 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_TELEPHONE 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: unsetting environment: LC_TIME 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: will create pid file: /tmp/autopkgtest_script_pid 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: pretending to be a login shell 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: will write standard error to /tmp/autopkgtest.9zB7bO/python3-translate-commands-stderr 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: will write stdout to /tmp/autopkgtest.9zB7bO/python3-translate-commands-stdout 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: creating AUTOPKGTEST_TMP: /tmp/autopkgtest.9zB7bO/autopkgtest_tmp 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: setting environment: ADT_TEST_TRIGGERS=sphinx/8.1.3-5 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: marking as executable: /tmp/autopkgtest.9zB7bO/build.lrp/src/debian/tests/python3-translate-commands 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: command to run: /tmp/autopkgtest.9zB7bO/build.lrp/src/debian/tests/python3-translate-commands 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: copying /tmp/tmp.SHvcubImH3/out to stdout and file: /tmp/autopkgtest.9zB7bO/python3-translate-commands-stdout 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: copying /tmp/tmp.SHvcubImH3/err to standard error and file: /tmp/autopkgtest.9zB7bO/python3-translate-commands-stdout 1218s /tmp/autopkgtest.9zB7bO/wrapper.sh: writing script pid 2114 to /tmp/autopkgtest_script_pid 1219s ============================= test session starts ============================== 1219s platform linux -- Python 3.12.9, pytest-8.3.4, pluggy-1.5.0 -- /usr/bin/python3.12 1219s cachedir: .pytest_cache 1219s rootdir: /tmp/autopkgtest.9zB7bO/autopkgtest_tmp 1219s plugins: syrupy-4.8.1, typeguard-4.4.1 1225s collecting ... collected 3368 items / 2 skipped 1225s 1225s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff PASSED [ 0%] 1225s tests/odf_xliff/test_odf_xliff.py::test_roundtrip PASSED [ 0%] 1225s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff2_inline PASSED [ 0%] 1225s tests/translate/convert/test_accesskey.py::test_get_label_and_accesskey PASSED [ 0%] 1225s tests/translate/convert/test_accesskey.py::test_extract_bad_accesskeys PASSED [ 0%] 1225s tests/translate/convert/test_accesskey.py::test_ignore_entities PASSED [ 0%] 1225s tests/translate/convert/test_accesskey.py::test_alternate_accesskey_marker PASSED [ 0%] 1225s tests/translate/convert/test_accesskey.py::test_unicode PASSED [ 0%] 1225s tests/translate/convert/test_accesskey.py::test_numeric PASSED [ 0%] 1225s tests/translate/convert/test_accesskey.py::test_empty_string PASSED [ 0%] 1225s tests/translate/convert/test_accesskey.py::test_end_of_string PASSED [ 0%] 1225s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey PASSED [ 0%] 1225s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey_different_capitals PASSED [ 0%] 1225s tests/translate/convert/test_accesskey.py::test_uncombinable PASSED [ 0%] 1225s tests/translate/convert/test_accesskey.py::test_accesskey_already_in_text PASSED [ 0%] 1225s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_no_template_units PASSED [ 0%] 1225s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_template_units PASSED [ 0%] 1225s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_no_template_units PASSED [ 0%] 1225s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_template_units PASSED [ 0%] 1225s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_help PASSED [ 0%] 1225s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid PASSED [ 0%] 1225s tests/translate/convert/test_convert.py::TestConvertCommand::test_help PASSED [ 0%] 1225s tests/translate/convert/test_csv2po.py::test_replacestrings PASSED [ 0%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity PASSED [ 0%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity_with_template PASSED [ 0%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_newlines PASSED [ 0%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_tabs PASSED [ 0%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_quotes PASSED [ 0%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_empties PASSED [ 0%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_kdecomment PASSED [ 0%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_escaped_newlines PASSED [ 0%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity PASSED [ 0%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity_with_template PASSED [ 0%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_newlines PASSED [ 1%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_tabs PASSED [ 1%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_quotes PASSED [ 1%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_empties PASSED [ 1%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_kdecomment PASSED [ 1%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_escaped_newlines PASSED [ 1%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_help PASSED [ 1%] 1225s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_simpleentity PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_convertdtd PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_apos PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_quotes PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_two_empty_entities PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity_translated PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisaton_note_simple PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisation_note_merge PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_simple PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_label PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_onlyentity PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_commentedout PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_spaces_at_start_of_dtd_lines PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_folding PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_mismatch PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_carriage_return_in_multiline_dtd PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_with_blankline PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_closing_quotes PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_preserving_spaces PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_escaping_newline_tabs PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_abandoned_accelerator PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_unassociable_accelerator PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_changed_labels_and_accelerators PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence XFAIL [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_exclude_entity_includes PASSED [ 1%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_linewraps PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merging_with_new_untranslated PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merge_without_template PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_simpleentity PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_convertdtd PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_apos PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_quotes PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_two_empty_entities PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity_translated PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisaton_note_simple PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisation_note_merge PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_simple PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_label PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_onlyentity PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_commentedout PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_spaces_at_start_of_dtd_lines PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_folding PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_mismatch PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_carriage_return_in_multiline_dtd PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_with_blankline PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_closing_quotes PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_preserving_spaces PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_escaping_newline_tabs PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_abandoned_accelerator PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_unassociable_accelerator PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_changed_labels_and_accelerators PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence XFAIL [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_exclude_entity_includes PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_linewraps PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merging_with_new_untranslated PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merge_without_template PASSED [ 2%] 1225s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_help PASSED [ 2%] 1225s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_defaults PASSED [ 2%] 1225s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_root_name PASSED [ 3%] 1225s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_value_name PASSED [ 3%] 1225s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_key PASSED [ 3%] 1225s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_default_namespace PASSED [ 3%] 1225s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_namespace_prefix PASSED [ 3%] 1225s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_all_parameters PASSED [ 3%] 1225s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_empty_file_is_empty_store PASSED [ 3%] 1225s tests/translate/convert/test_flatxml2po.py::TestFlatXML2POCommand::test_help PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_extract_lang_attribute_from_html_tag PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title_with_linebreak PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_meta PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_br PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak_and_embedded_br PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_uppercase_html PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div_with_linebreaks PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a_with_linebreak PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_sequence_of_anchor_elements PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_img_empty PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img_inside_a PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_table_summary PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_simple PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_complex PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_empty PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_address PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings_with_linebreaks PASSED [ 3%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dt PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dd PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_span PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_ul PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_lists PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_duplicates PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiline_reflow PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_tags PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_carriage_return PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_encoding_latin1 PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_strip_html PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_text PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_attributes PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_charrefs PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiple_php PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_multiline PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_with_embedded_html PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_comments PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2PO::test_attribute_without_value PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_extract_lang_attribute_from_html_tag PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title_with_linebreak PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_meta PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_br PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak_and_embedded_br PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_uppercase_html PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div_with_linebreaks PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a_with_linebreak PASSED [ 4%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_sequence_of_anchor_elements PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_img_empty PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img_inside_a PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_table_summary PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_simple PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_complex PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_empty PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_address PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings_with_linebreaks PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dt PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dd PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_span PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_ul PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_lists PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_duplicates PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiline_reflow PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_tags PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_carriage_return PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_encoding_latin1 PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_strip_html PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_text PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_attributes PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_charrefs PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiple_php PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_multiline PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_with_embedded_html PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_comments PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_attribute_without_value PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_help PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_single PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile PASSED [ 5%] 1225s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile_to_stdout PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_convert_empty_file PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_translations PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_summary PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_description PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_location PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_comment PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_template_duplicate_style PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_misaligned_files PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_blank_msgstr PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_duplicate_style PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_convert_empty_file PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_translations PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_summary PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_description PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_location PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_comment PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_template_duplicate_style PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_misaligned_files PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_blank_msgstr PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_duplicate_style PASSED [ 6%] 1225s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_help PASSED [ 6%] 1225s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_help PASSED [ 6%] 1225s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_convert PASSED [ 6%] 1225s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_empty_file PASSED [ 6%] 1225s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_no_translation PASSED [ 6%] 1225s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_simple PASSED [ 6%] 1225s tests/translate/convert/test_ini2po.py::TestIni2PO::test_no_duplicates PASSED [ 6%] 1225s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_simple PASSED [ 6%] 1225s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_misaligned_files PASSED [ 6%] 1225s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_blank_msgstr PASSED [ 6%] 1225s tests/translate/convert/test_ini2po.py::TestIni2PO::test_dialects_inno PASSED [ 7%] 1225s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_empty_file PASSED [ 7%] 1225s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_no_translation PASSED [ 7%] 1225s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_simple PASSED [ 7%] 1225s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_no_duplicates PASSED [ 7%] 1225s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_simple PASSED [ 7%] 1225s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_misaligned_files PASSED [ 7%] 1225s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_blank_msgstr PASSED [ 7%] 1225s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_dialects_inno PASSED [ 7%] 1225s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_help PASSED [ 7%] 1225s tests/translate/convert/test_json2po.py::TestJson2PO::test_simple PASSED [ 7%] 1225s tests/translate/convert/test_json2po.py::TestJson2PO::test_three_same_keys PASSED [ 7%] 1225s tests/translate/convert/test_json2po.py::TestJson2PO::test_filter PASSED [ 7%] 1225s tests/translate/convert/test_json2po.py::TestJson2PO::test_miltiple_units PASSED [ 7%] 1225s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_simple PASSED [ 7%] 1225s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_three_same_keys PASSED [ 7%] 1225s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_filter PASSED [ 7%] 1225s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_miltiple_units PASSED [ 7%] 1225s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_help PASSED [ 7%] 1225s tests/translate/convert/test_md2po.py::TestMD2PO::test_help PASSED [ 7%] 1225s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_single PASSED [ 7%] 1225s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_onefile PASSED [ 7%] 1225s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_single PASSED [ 7%] 1225s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_onefile PASSED [ 7%] 1225s tests/translate/convert/test_moz2po.py::TestMoz2POCommand::test_help PASSED [ 7%] 1225s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_simpleentry PASSED [ 7%] 1225s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_uncomment_contributors PASSED [ 7%] 1225s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_convert_empty PASSED [ 7%] 1225s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_string PASSED [ 7%] 1225s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_merge PASSED [ 7%] 1225s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_entry PASSED [ 7%] 1225s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_comment PASSED [ 7%] 1225s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_meta_tags PASSED [ 7%] 1225s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_keep_duplicates PASSED [ 7%] 1225s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_drop_duplicates PASSED [ 8%] 1225s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_convert_empty PASSED [ 8%] 1225s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_string PASSED [ 8%] 1225s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_merge PASSED [ 8%] 1225s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_entry PASSED [ 8%] 1225s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_comment PASSED [ 8%] 1225s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_meta_tags PASSED [ 8%] 1225s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_keep_duplicates PASSED [ 8%] 1225s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_drop_duplicates PASSED [ 8%] 1225s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_help PASSED [ 8%] 1225s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_help PASSED [ 8%] 1225s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_convert PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2PO::test_simpleentity PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_escape PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_whitespaceonly PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2PO::test_double_escapes PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes_helpcontent2 PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2PO::test_msgid_bug_error_address PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2PO::test_x_comment_inclusion PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simpleentity PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_double_escapes PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_help PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_preserve_filename PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 8%] 1225s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates PASSED [ 8%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_simpleentity PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_escape PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_whitespaceonly PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_double_escapes PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes_helpcontent2 PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_x_comment_inclusion PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_msgid_bug_error_address PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simpleentity PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_double_escapes PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_help PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_preserve_filename PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 1225s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 1225s tests/translate/convert/test_php2po.py::TestPhp2PO::test_simpleentry PASSED [ 9%] 1225s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphp PASSED [ 9%] 1225s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphptemplate PASSED [ 9%] 1225s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpmissing PASSED [ 9%] 1225s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpempty PASSED [ 9%] 1225s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unicode PASSED [ 9%] 1226s tests/translate/convert/test_php2po.py::TestPhp2PO::test_multiline PASSED [ 9%] 1226s tests/translate/convert/test_php2po.py::TestPhp2PO::test_comments_before PASSED [ 9%] 1226s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry PASSED [ 9%] 1226s tests/translate/convert/test_php2po.py::TestPhp2PO::test_hash_comment_with_equals PASSED [ 9%] 1226s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry_translated PASSED [ 9%] 1226s tests/translate/convert/test_php2po.py::TestPhp2PO::test_newlines_in_value PASSED [ 9%] 1226s tests/translate/convert/test_php2po.py::TestPhp2PO::test_spaces_in_name PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_array PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_array PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_nested_arrays PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_nested_arrays PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_simpleentry PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphp PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphptemplate PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpmissing PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpempty PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unicode PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_multiline PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_comments_before PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_hash_comment_with_equals PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry_translated PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_newlines_in_value PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_spaces_in_name PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_array PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_array PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_nested_arrays PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_nested_arrays PASSED [ 10%] 1226s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_help PASSED [ 10%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_simpleentity PASSED [ 10%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_multiline PASSED [ 10%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapednewlines PASSED [ 10%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedtabs PASSED [ 10%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedquotes PASSED [ 10%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedescape PASSED [ 10%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_singlequotes PASSED [ 10%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_empties PASSED [ 10%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_kdecomments PASSED [ 10%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_simpleentity PASSED [ 10%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_multiline PASSED [ 10%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapednewlines PASSED [ 11%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedtabs PASSED [ 11%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedquotes PASSED [ 11%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedescape PASSED [ 11%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_singlequotes PASSED [ 11%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_empties PASSED [ 11%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_kdecomments PASSED [ 11%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_help PASSED [ 11%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder PASSED [ 11%] 1226s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_joinlines PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_escapedstr PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_missingaccesskey PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskeycase PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_types PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities_two PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments_translator PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_retains_hashprefix PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_convertdtd PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_with_template PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_without_template PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_blank_source PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_newlines_escapes PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_simple PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_escape PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_quotes PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_amp PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_merging_entries_with_spaces_removed PASSED [ 11%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces_after_value PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_duplicates PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_joinlines PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_escapedstr PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_missingaccesskey PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskeycase PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_types PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities_two PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments_translator PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_retains_hashprefix PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_convertdtd PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_with_template PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_without_template PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_blank_source PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_newlines_escapes PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_simple PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_escape PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_quotes PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_amp PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_merging_entries_with_spaces_removed PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces_after_value PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_duplicates PASSED [ 12%] 1226s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_help PASSED [ 12%] 1226s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_defaults PASSED [ 13%] 1226s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_root_name PASSED [ 13%] 1226s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_value_name PASSED [ 13%] 1226s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_key PASSED [ 13%] 1226s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_default_namespace PASSED [ 13%] 1226s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_namespace_prefix PASSED [ 13%] 1226s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_indent_eight PASSED [ 13%] 1226s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_noindent PASSED [ 13%] 1226s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXMLCommand::test_help PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2Html::test_simple PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2Html::test_linebreaks PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2Html::test_replace_substrings PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_outside_translatable_content PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_embedded_within_translatable_content PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_without_value PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2Html::test_entities PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2Html::test_escapes PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_translated PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_untranslated PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_fuzzy PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2Html::test_untranslated_attributes PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_simple PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_linebreaks PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_replace_substrings PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_outside_translatable_content PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_embedded_within_translatable_content PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_without_value PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_entities PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_escapes PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_translated PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_untranslated PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_fuzzy PASSED [ 13%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_untranslated_attributes PASSED [ 14%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_help PASSED [ 14%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_individual_files PASSED [ 14%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_fully_recursive PASSED [ 14%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_input_specified PASSED [ 14%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified PASSED [ 14%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_output_specified PASSED [ 14%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file PASSED [ 14%] 1226s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_empty_file PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_summary PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_description PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_location PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_comment PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_complex_icalendar PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_skip_fuzzy PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_include_fuzzy PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_no_template PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_template_location_not_in_source_file PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_below_threshold PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_above_threshold PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_empty_file PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_summary PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_description PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_location PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_comment PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_complex_icalendar PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_skip_fuzzy PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_include_fuzzy PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_no_template PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_template_location_not_in_source_file PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_below_threshold PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_above_threshold PASSED [ 14%] 1226s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_help PASSED [ 14%] 1226s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_help PASSED [ 15%] 1226s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_no_templates PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_simple PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_space_preservation PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_blank_entries PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_fuzzy PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_propertyless_template PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_empty_value PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_dialects_inno PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_misaligned_files PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_below_threshold PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_above_threshold PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_no_fuzzy PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_allow_fuzzy PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_missing_source PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_repeated_locations PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_no_templates PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_simple PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_space_preservation PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_blank_entries PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_fuzzy PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_propertyless_template PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_empty_value PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_dialects_inno PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_misaligned_files PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_below_threshold PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_above_threshold PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_no_fuzzy PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_allow_fuzzy PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_missing_source PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_repeated_locations PASSED [ 15%] 1226s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_help PASSED [ 15%] 1226s tests/translate/convert/test_po2json.py::TestPO2JSON::test_basic PASSED [ 16%] 1226s tests/translate/convert/test_po2json.py::TestPO2JSON::test_ordering_serialize PASSED [ 16%] 1226s tests/translate/convert/test_po2json.py::TestPO2JSON::test_dont_use_empty_translation PASSED [ 16%] 1226s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_false PASSED [ 16%] 1226s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_true PASSED [ 16%] 1226s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_false PASSED [ 16%] 1226s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_true PASSED [ 16%] 1226s tests/translate/convert/test_po2md.py::TestPO2MD::test_help PASSED [ 16%] 1226s tests/translate/convert/test_po2md.py::TestPO2MD::test_single_markdown_file_with_single_po PASSED [ 16%] 1226s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po PASSED [ 16%] 1226s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_and_directory_of_po_files PASSED [ 16%] 1226s tests/translate/convert/test_po2moz.py::TestPO2MozCommand::test_help PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_empty PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_simple PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_comment PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_ok_marker PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_below_threshold PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_above_threshold PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_skip_non_translatable_input PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_no_fuzzy PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_allow_fuzzy PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_mark_active PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_empty PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_simple PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_comment PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_ok_marker PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_below_threshold PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_above_threshold PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_skip_non_translatable_input PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_no_fuzzy PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_allow_fuzzy PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_mark_active PASSED [ 16%] 1226s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_help PASSED [ 16%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OO::test_convertoo PASSED [ 16%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OO::test_pofilter PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_simple PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_escape PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_quotes PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_spaces PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OO::test_default_timestamp PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OO::test_escape_conversion PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes2 PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_convertoo PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_pofilter PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_simple PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_quotes PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_spaces PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_escape_conversion PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes2 PASSED [ 17%] 1226s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_help PASSED [ 17%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp PASSED [ 17%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_notemplate PASSED [ 17%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_empty_template PASSED [ 17%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_simple PASSED [ 17%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_space_preservation PASSED [ 17%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_preserve_unused_statement PASSED [ 17%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_not_translated_multiline PASSED [ 17%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_blank_entries PASSED [ 17%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_fuzzy PASSED [ 17%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_locations_with_spaces PASSED [ 17%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_inline_comments PASSED [ 17%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_block_comments PASSED [ 17%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_variables PASSED [ 17%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_multiline PASSED [ 17%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_hash_comment PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_arrays PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_nested_array PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_unnamed_nested_arrays PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template XFAIL [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_notemplate PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_empty_template PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_simple PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_space_preservation PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_preserve_unused_statement PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_not_translated_multiline PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_blank_entries PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_fuzzy PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_locations_with_spaces PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_inline_comments PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_block_comments PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_variables PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_multiline PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_hash_comment PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_arrays PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_nested_array PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_unnamed_nested_arrays PASSED [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template XFAIL [ 18%] 1226s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_help PASSED [ 18%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_simple PASSED [ 18%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated PASSED [ 18%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_hard_newlines_preserved PASSED [ 18%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_space_preservation PASSED [ 18%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_value PASSED [ 18%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_separator PASSED [ 18%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank_entries PASSED [ 18%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_fuzzy PASSED [ 18%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_margin_whitespace PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_all_whitespace PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_propertyless_template PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_delimiters PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_empty_value PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_personalities PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_simple PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline2 PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_comments PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_unchanged PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gaia_plurals PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_duplicates PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gwt_plurals PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_simple PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_hard_newlines_preserved PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_space_preservation PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_value PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_separator PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank_entries PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_fuzzy PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_margin_whitespace PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_all_whitespace PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_propertyless_template PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_delimiters PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_empty_value PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_personalities PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_simple PASSED [ 19%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline PASSED [ 20%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline2 PASSED [ 20%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_comments PASSED [ 20%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_unchanged PASSED [ 20%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank PASSED [ 20%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gaia_plurals PASSED [ 20%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_duplicates PASSED [ 20%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gwt_plurals PASSED [ 20%] 1226s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_help PASSED [ 20%] 1226s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_help PASSED [ 20%] 1226s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert PASSED [ 20%] 1227s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_quotes PASSED [ 20%] 1227s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment PASSED [ 20%] 1227s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_dos_eol PASSED [ 20%] 1227s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_double_string PASSED [ 20%] 1227s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_popup PASSED [ 20%] 1227s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_discardable PASSED [ 20%] 1227s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_menuex PASSED [ 20%] 1227s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_newlines PASSED [ 20%] 1227s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_after PASSED [ 20%] 1227s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_block_language PASSED [ 20%] 1227s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_output_encoding PASSED [ 20%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_simpleunit PASSED [ 20%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_basic PASSED [ 20%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_multiline PASSED [ 20%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapednewlines PASSED [ 20%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedtabs PASSED [ 20%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedquotes PASSED [ 20%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_exclusions PASSED [ 20%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments PASSED [ 20%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingcomment PASSED [ 20%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecomment PASSED [ 20%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 20%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments PASSED [ 20%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingcomment PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingduplicatecomment PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingcomment PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_existingcomments PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_simpleunit PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_basic PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_multiline PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapednewlines PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedtabs PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedquotes PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_exclusions PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingcomment PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingcomment PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingduplicatecomment PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingcomment PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_existingcomments PASSED [ 21%] 1227s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_help PASSED [ 21%] 1227s tests/translate/convert/test_po2sub.py::TestPO2Sub::test_subrip PASSED [ 21%] 1227s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_subrip PASSED [ 21%] 1227s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_help PASSED [ 21%] 1227s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_empty PASSED [ 21%] 1227s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert PASSED [ 21%] 1227s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_marked_untranslated PASSED [ 21%] 1227s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_empty PASSED [ 21%] 1227s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert PASSED [ 21%] 1227s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_marked_untranslated PASSED [ 22%] 1227s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_help PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_basic PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcelanguage PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_targetlanguage PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_multiline PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapednewlines PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedtabs PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedquotes PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_exclusions PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonascii PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonecomments PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_otherscomments PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcecomments PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_typecomments PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_basic PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcelanguage PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_targetlanguage PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_multiline PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapednewlines PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedtabs PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedquotes PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_exclusions PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonascii PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonecomments PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_otherscomments PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcecomments PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_typecomments PASSED [ 22%] 1227s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_help PASSED [ 22%] 1227s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simpleunit PASSED [ 22%] 1227s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simple_unicode_unit PASSED [ 22%] 1227s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fullunit PASSED [ 22%] 1227s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fuzzyunit PASSED [ 22%] 1227s tests/translate/convert/test_po2ts.py::TestPO2TS::test_obsolete PASSED [ 22%] 1227s tests/translate/convert/test_po2ts.py::TestPO2TS::test_duplicates PASSED [ 23%] 1227s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak PASSED [ 23%] 1227s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak_consecutive PASSED [ 23%] 1227s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simpleunit PASSED [ 23%] 1227s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simple_unicode_unit PASSED [ 23%] 1227s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fullunit PASSED [ 23%] 1227s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fuzzyunit PASSED [ 23%] 1227s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_obsolete PASSED [ 23%] 1227s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_duplicates PASSED [ 23%] 1227s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak PASSED [ 23%] 1227s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak_consecutive PASSED [ 23%] 1227s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_help PASSED [ 23%] 1227s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_basic PASSED [ 23%] 1227s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_nonascii PASSED [ 23%] 1227s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_blank_handling PASSED [ 23%] 1227s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_fuzzy_handling PASSED [ 23%] 1227s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_obsolete_ignore PASSED [ 23%] 1227s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_header_ignore PASSED [ 23%] 1227s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_below_threshold PASSED [ 23%] 1227s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_above_threshold PASSED [ 23%] 1227s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_basic PASSED [ 23%] 1227s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_nonascii PASSED [ 23%] 1227s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_blank_handling PASSED [ 23%] 1227s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_fuzzy_handling PASSED [ 23%] 1227s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_obsolete_ignore PASSED [ 23%] 1227s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_header_ignore PASSED [ 23%] 1227s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_below_threshold PASSED [ 23%] 1227s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_above_threshold PASSED [ 23%] 1227s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_help PASSED [ 23%] 1227s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_basic PASSED [ 23%] 1227s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_unicode PASSED [ 23%] 1227s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_ordering_serialize PASSED [ 23%] 1227s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_markmin PASSED [ 23%] 1227s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_minimal PASSED [ 23%] 1227s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_basic PASSED [ 24%] 1227s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_multiline PASSED [ 24%] 1227s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapednewlines PASSED [ 24%] 1227s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedtabs PASSED [ 24%] 1227s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedquotes PASSED [ 24%] 1227s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_locationcomments PASSED [ 24%] 1227s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_othercomments PASSED [ 24%] 1227s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_automaticcomments PASSED [ 24%] 1227s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_header PASSED [ 24%] 1227s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_fuzzy PASSED [ 24%] 1227s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_germanic_plurals PASSED [ 24%] 1227s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_funny_plurals PASSED [ 24%] 1227s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_language_tags PASSED [ 24%] 1227s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_variables PASSED [ 24%] 1227s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_approved PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_empty_PO PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_no_templates PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple_output PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_translated PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_no_fuzzy PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_allow_fuzzy PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_nested PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_below_threshold PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_above_threshold PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_empty_PO PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_no_templates PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple_output PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_translated PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_no_fuzzy PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_allow_fuzzy PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_nested PASSED [ 24%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_below_threshold PASSED [ 25%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_above_threshold PASSED [ 25%] 1227s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_help PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank_plurals PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_simple PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_messages_marked_fuzzy PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals_with_fuzzy_matching PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change XFAIL [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_change PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_and_whitespace_change PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_ambiguous_with_disambiguous PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes XFAIL [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently XFAIL [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_dont_duplicate PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_new_overides_old PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments_with_blank_comment_lines PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_commentlines PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgidcomments PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_with_msgidcomment PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_obsoleting_messages PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_not_obsoleting_empty_messages PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_new_before_obsolete PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_header_initialisation PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_typecomments PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt_multiline PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_location PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_id PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_msgid PASSED [ 25%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_migrate_msgidcomment_to_msgctxt PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_obsolete_msgctxt PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_small_strings PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank_plurals PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_simple PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_messages_marked_fuzzy PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change XFAIL [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_change PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_and_whitespace_change PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_ambiguous_with_disambiguous PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes XFAIL [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently XFAIL [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_new_overides_old PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments_with_blank_comment_lines PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_commentlines PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgidcomments PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_with_msgidcomment PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_obsoleting_messages PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_not_obsoleting_empty_messages PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_new_before_obsolete PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_header_initialisation PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_typecomments PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt_multiline PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_location PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_id PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_msgid PASSED [ 26%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_migrate_msgidcomment_to_msgctxt PASSED [ 27%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_obsolete_msgctxt PASSED [ 27%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_small_strings PASSED [ 27%] 1227s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_help PASSED [ 27%] 1227s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_no_endlines_added PASSED [ 27%] 1227s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_uncomment_contributors PASSED [ 27%] 1227s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_multiline_comment_newlines PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_simpleentry PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_convertprop PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_value_entry PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_separator_entry PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_end_of_string PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_start_of_value PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unicode PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_escaping PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_comments PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_comments PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_folding_accesskeys PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_dont_translate PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty_translated PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_newlines_in_value PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_header_comments PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unassociated_comment_order PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_x_header PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gaia_plurals PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_successive_gaia_plurals PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_duplicate_keys PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gwt_plurals PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_simpleentry PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_convertprop PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_value_entry PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_separator_entry PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_end_of_string PASSED [ 27%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_start_of_value PASSED [ 28%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unicode PASSED [ 28%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_escaping PASSED [ 28%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_comments PASSED [ 28%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_comments PASSED [ 28%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_folding_accesskeys PASSED [ 28%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_dont_translate PASSED [ 28%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty PASSED [ 28%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty_translated PASSED [ 28%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_newlines_in_value PASSED [ 28%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_header_comments PASSED [ 28%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unassociated_comment_order PASSED [ 28%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_x_header PASSED [ 28%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gaia_plurals PASSED [ 28%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_successive_gaia_plurals PASSED [ 28%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_duplicate_keys PASSED [ 28%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gwt_plurals PASSED [ 28%] 1227s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_help PASSED [ 28%] 1227s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_help PASSED [ 28%] 1227s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert PASSED [ 28%] 1227s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 PASSED [ 28%] 1227s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong PASSED [ 28%] 1228s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 PASSED [ 28%] 1228s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex PASSED [ 28%] 1228s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_simple PASSED [ 28%] 1228s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_multiple_units PASSED [ 28%] 1228s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_automaticcomments PASSED [ 28%] 1228s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_translatorcomments PASSED [ 28%] 1228s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_locations PASSED [ 28%] 1228s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple PASSED [ 28%] 1228s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_multiple_units PASSED [ 28%] 1228s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_automaticcomments PASSED [ 28%] 1228s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_translatorcomments PASSED [ 28%] 1228s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_locations PASSED [ 29%] 1228s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_help PASSED [ 29%] 1228s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot PASSED [ 29%] 1228s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po PASSED [ 29%] 1228s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates PASSED [ 29%] 1228s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_convert_empty PASSED [ 29%] 1228s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_defaults PASSED [ 29%] 1228s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_includeunused PASSED [ 29%] 1228s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_convert_empty PASSED [ 29%] 1228s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_defaults PASSED [ 29%] 1228s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_includeunused PASSED [ 29%] 1228s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_help PASSED [ 29%] 1228s tests/translate/convert/test_ts2po.py::TestTS2PO::test_blank PASSED [ 29%] 1228s tests/translate/convert/test_ts2po.py::TestTS2PO::test_basic PASSED [ 29%] 1228s tests/translate/convert/test_ts2po.py::TestTS2PO::test_unfinished PASSED [ 29%] 1228s tests/translate/convert/test_ts2po.py::TestTS2PO::test_multiline PASSED [ 29%] 1228s tests/translate/convert/test_ts2po.py::TestTS2PO::test_obsolete PASSED [ 29%] 1228s tests/translate/convert/test_ts2po.py::TestTS2PO::test_comment PASSED [ 29%] 1228s tests/translate/convert/test_ts2po.py::TestTS2PO::test_extracomment PASSED [ 29%] 1228s tests/translate/convert/test_ts2po.py::TestTS2PO::test_emptycontext PASSED [ 29%] 1228s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_blank PASSED [ 29%] 1228s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_basic PASSED [ 29%] 1228s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_unfinished PASSED [ 29%] 1228s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_multiline PASSED [ 29%] 1228s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_obsolete PASSED [ 29%] 1228s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_comment PASSED [ 29%] 1228s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_extracomment PASSED [ 29%] 1228s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_emptycontext PASSED [ 29%] 1228s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_help PASSED [ 29%] 1228s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_convert_empty PASSED [ 29%] 1228s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_keep_duplicates PASSED [ 29%] 1228s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_drop_duplicates PASSED [ 29%] 1228s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_simple PASSED [ 29%] 1228s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_multiple_units PASSED [ 29%] 1228s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_carriage_return PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_merge PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_no_segmentation PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestDoku2po::test_convert_empty PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestDoku2po::test_keep_duplicates PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestDoku2po::test_drop_duplicates PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestDoku2po::test_basic PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestDoku2po::test_bullet_list PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestDoku2po::test_numbered_list PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestDoku2po::test_spacing PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestDoku2po::test_merge PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_convert_empty PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_keep_duplicates PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_drop_duplicates PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_simple PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_multiple_units PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_carriage_return PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_merge PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_no_segmentation PASSED [ 30%] 1228s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_help PASSED [ 30%] 1228s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_basic PASSED [ 30%] 1228s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_unicode PASSED [ 30%] 1228s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_markmin PASSED [ 30%] 1228s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_help PASSED [ 30%] 1228s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert PASSED [ 30%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_minimal PASSED [ 30%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_basic PASSED [ 30%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_translatorcomments PASSED [ 30%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_autocomment PASSED [ 30%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_locations PASSED [ 30%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_fuzzy PASSED [ 30%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_plurals PASSED [ 30%] 1228s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_minimal PASSED [ 30%] 1228s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_basic PASSED [ 30%] 1228s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_translatorcomments PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_autocomment PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_locations PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_fuzzy PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_plurals PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_help PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_simple_convert PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_minimal PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_basic PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_translatorcomments PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_autocomment PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_locations PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_fuzzy PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_plurals PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_help PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po PASSED [ 31%] 1228s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates PASSED [ 31%] 1228s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_empty_YAML PASSED [ 31%] 1228s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple_output PASSED [ 31%] 1228s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple PASSED [ 31%] 1228s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_nested PASSED [ 31%] 1228s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates XFAIL [ 31%] 1228s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_with_template PASSED [ 31%] 1228s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_empty_YAML PASSED [ 31%] 1228s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple_output PASSED [ 31%] 1228s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple PASSED [ 31%] 1228s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_nested PASSED [ 31%] 1228s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates XFAIL [ 31%] 1228s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_with_template PASSED [ 31%] 1228s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_help PASSED [ 31%] 1228s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_empty_target PASSED [ 31%] 1228s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_ellipsis PASSED [ 32%] 1228s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_spacestart_spaceend PASSED [ 32%] 1228s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_start_capitals PASSED [ 32%] 1228s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_end_punc PASSED [ 32%] 1228s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_combinations PASSED [ 32%] 1228s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_nothing_to_do PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_defaults PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_construct PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_accelerator_markers PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_messages PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_accelerators PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_acceleratedvariables XFAIL [ 32%] 1228s tests/translate/filters/test_checks.py::test_acronyms PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_blank PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_brackets PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_compendiumconflicts PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_doublequoting PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_doublespacing PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_doublewords PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_endpunc PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_endwhitespace PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_escapes PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_newlines PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_tabs PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_filepaths PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_kdecomments PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_long PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_musttranslatewords XFAIL [ 32%] 1228s tests/translate/filters/test_checks.py::test_notranslatewords PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_numbers PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_persian_numbers PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_bengali_numbers PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_arabic_numbers PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_assamese_numbers PASSED [ 32%] 1228s tests/translate/filters/test_checks.py::test_options PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_printf PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_pythonbraceformat PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_puncspacing PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_purepunc PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_sentencecount PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_short PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_singlequoting PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_vietnamese_singlequoting PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time XFAIL [ 33%] 1228s tests/translate/filters/test_checks.py::test_persian_quoting PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_simplecaps PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_spellcheck SKIPPED (Spe...) [ 33%] 1228s tests/translate/filters/test_checks.py::test_startcaps PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_startpunc PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_startwhitespace PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_unchanged PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_untranslated PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_validchars PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_minimalchecker PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_reducedchecker PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_variables_kde PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_variables_gnome PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_variables_mozilla PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_variables_openoffice PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_variables_cclicense PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_variables_ios PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_xmltags PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags XFAIL [ 33%] 1228s tests/translate/filters/test_checks.py::test_ooxmltags PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_functions PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_emails PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_urls PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_simpleplurals PASSED [ 33%] 1228s tests/translate/filters/test_checks.py::test_nplurals PASSED [ 34%] 1228s tests/translate/filters/test_checks.py::test_credits PASSED [ 34%] 1228s tests/translate/filters/test_checks.py::test_gconf PASSED [ 34%] 1228s tests/translate/filters/test_checks.py::test_validxml PASSED [ 34%] 1228s tests/translate/filters/test_checks.py::test_hassuggestion PASSED [ 34%] 1228s tests/translate/filters/test_checks.py::test_dialogsizes PASSED [ 34%] 1228s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers PASSED [ 34%] 1228s tests/translate/filters/test_checks.py::test_mozilla_no_accelerators_for_indic PASSED [ 34%] 1228s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker PASSED [ 34%] 1228s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source PASSED [ 34%] 1228s tests/translate/filters/test_checks.py::test_ensure_bengali_languages_script_is_correct PASSED [ 34%] 1228s tests/translate/filters/test_checks.py::test_category PASSED [ 34%] 1228s tests/translate/filters/test_decoration.py::test_spacestart PASSED [ 34%] 1228s tests/translate/filters/test_decoration.py::test_isvalidaccelerator PASSED [ 34%] 1228s tests/translate/filters/test_decoration.py::test_find_marked_variables PASSED [ 34%] 1228s tests/translate/filters/test_decoration.py::test_getnumbers PASSED [ 34%] 1228s tests/translate/filters/test_decoration.py::test_getfunctions PASSED [ 34%] 1228s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplepass PASSED [ 34%] 1228s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplefail PASSED [ 34%] 1228s tests/translate/filters/test_pofilter.py::TestPOFilter::test_variables_across_lines PASSED [ 34%] 1228s tests/translate/filters/test_pofilter.py::TestPOFilter::test_ignore_if_already_marked PASSED [ 34%] 1228s tests/translate/filters/test_pofilter.py::TestPOFilter::test_non_existant_check PASSED [ 34%] 1228s tests/translate/filters/test_pofilter.py::TestPOFilter::test_list_all_tests PASSED [ 34%] 1228s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_fuzzy PASSED [ 34%] 1228s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_review PASSED [ 34%] 1228s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isfuzzy PASSED [ 34%] 1228s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isreview PASSED [ 34%] 1228s tests/translate/filters/test_pofilter.py::TestPOFilter::test_notes PASSED [ 34%] 1228s tests/translate/filters/test_pofilter.py::TestPOFilter::test_unicode PASSED [ 34%] 1228s tests/translate/filters/test_pofilter.py::TestPOFilter::test_preconditions PASSED [ 34%] 1228s tests/translate/filters/test_pofilter.py::TestPOFilter::test_msgid_comments PASSED [ 34%] 1228s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplepass PASSED [ 34%] 1228s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplefail PASSED [ 34%] 1228s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_variables_across_lines PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_ignore_if_already_marked PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_non_existant_check PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_list_all_tests PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_fuzzy PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_review PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isfuzzy PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isreview PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_notes PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_unicode PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_preconditions PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplepass PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplefail PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_variables_across_lines PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_ignore_if_already_marked PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_non_existant_check PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_list_all_tests PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_notes PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_unicode PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_preconditions PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_fuzzy PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_review PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isfuzzy PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isreview PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplepass PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplefail PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_variables_across_lines PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_ignore_if_already_marked PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_non_existant_check PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_list_all_tests PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_fuzzy PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_review PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isfuzzy PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isreview PASSED [ 35%] 1228s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_notes PASSED [ 36%] 1228s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_unicode PASSED [ 36%] 1228s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_preconditions PASSED [ 36%] 1228s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_msgid_comments PASSED [ 36%] 1228s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_cedillas PASSED [ 36%] 1228s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_niciun PASSED [ 36%] 1228s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_nicio PASSED [ 36%] 1228s tests/translate/filters/test_prefilters.py::test_removekdecomments PASSED [ 36%] 1228s tests/translate/filters/test_prefilters.py::test_filterwordswithpunctuation PASSED [ 36%] 1228s tests/translate/lang/test_af.py::test_sentences PASSED [ 36%] 1228s tests/translate/lang/test_af.py::test_capsstart PASSED [ 36%] 1228s tests/translate/lang/test_af.py::test_transliterate_cyrillic PASSED [ 36%] 1228s tests/translate/lang/test_am.py::test_punctranslate PASSED [ 36%] 1228s tests/translate/lang/test_am.py::test_sentences PASSED [ 36%] 1228s tests/translate/lang/test_ar.py::test_punctranslate PASSED [ 36%] 1228s tests/translate/lang/test_ar.py::test_sentences PASSED [ 36%] 1228s tests/translate/lang/test_common.py::test_characters PASSED [ 36%] 1228s tests/translate/lang/test_common.py::test_words PASSED [ 36%] 1228s tests/translate/lang/test_common.py::test_word_khmer XFAIL (ZWS is n...) [ 36%] 1228s tests/translate/lang/test_common.py::test_sentences PASSED [ 36%] 1228s tests/translate/lang/test_common.py::test_capsstart PASSED [ 36%] 1228s tests/translate/lang/test_common.py::test_numstart PASSED [ 36%] 1228s tests/translate/lang/test_common.py::test_punctranslate PASSED [ 36%] 1228s tests/translate/lang/test_common.py::test_length_difference PASSED [ 36%] 1228s tests/translate/lang/test_common.py::test_alter_length PASSED [ 36%] 1228s tests/translate/lang/test_data.py::test_normalise_code PASSED [ 36%] 1228s tests/translate/lang/test_data.py::test_simplify_to_common PASSED [ 36%] 1228s tests/translate/lang/test_el.py::test_punctranslate PASSED [ 36%] 1228s tests/translate/lang/test_el.py::test_sentences PASSED [ 36%] 1228s tests/translate/lang/test_es.py::test_punctranslate PASSED [ 36%] 1228s tests/translate/lang/test_es.py::test_sentences PASSED [ 36%] 1228s tests/translate/lang/test_fa.py::test_punctranslate PASSED [ 36%] 1228s tests/translate/lang/test_fa.py::test_sentences PASSED [ 36%] 1228s tests/translate/lang/test_factory.py::test_getlanguage PASSED [ 36%] 1228s tests/translate/lang/test_factory.py::test_get_all_languages PASSED [ 37%] 1228s tests/translate/lang/test_fr.py::test_punctranslate PASSED [ 37%] 1228s tests/translate/lang/test_fr.py::test_sentences PASSED [ 37%] 1228s tests/translate/lang/test_hy.py::test_punctranslate PASSED [ 37%] 1228s tests/translate/lang/test_hy.py::test_sentences PASSED [ 37%] 1229s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_lang PASSED [ 37%] 1229s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_store PASSED [ 37%] 1229s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_bad_init_data PASSED [ 37%] 1229s tests/translate/lang/test_ja.py::test_punctranslate PASSED [ 37%] 1229s tests/translate/lang/test_ja.py::test_sentences PASSED [ 37%] 1229s tests/translate/lang/test_km.py::test_punctranslate PASSED [ 37%] 1229s tests/translate/lang/test_km.py::test_sentences PASSED [ 37%] 1229s tests/translate/lang/test_ko.py::test_punctranslate PASSED [ 37%] 1229s tests/translate/lang/test_ko.py::test_sentences PASSED [ 37%] 1229s tests/translate/lang/test_ne.py::test_punctranslate PASSED [ 37%] 1229s tests/translate/lang/test_ne.py::test_sentences PASSED [ 37%] 1229s tests/translate/lang/test_nqo.py::test_punctranslate PASSED [ 37%] 1229s tests/translate/lang/test_nqo.py::test_sentences PASSED [ 37%] 1229s tests/translate/lang/test_or.py::test_punctranslate PASSED [ 37%] 1229s tests/translate/lang/test_or.py::test_country_code PASSED [ 37%] 1229s tests/translate/lang/test_or.py::test_sentences PASSED [ 37%] 1229s tests/translate/lang/test_poedit.py::test_isocode PASSED [ 37%] 1229s tests/translate/lang/test_ro.py::test_cedillas PASSED [ 37%] 1229s tests/translate/lang/test_ro.py::test_niciun PASSED [ 37%] 1229s tests/translate/lang/test_scn.py::test_italianisms PASSED [ 37%] 1229s tests/translate/lang/test_scn.py::test_vocalism PASSED [ 37%] 1229s tests/translate/lang/test_scn.py::test_suffixes PASSED [ 37%] 1229s tests/translate/lang/test_team.py::test_simple PASSED [ 37%] 1229s tests/translate/lang/test_th.py::test_punctranslate PASSED [ 37%] 1229s tests/translate/lang/test_th.py::test_sentences PASSED [ 37%] 1229s tests/translate/lang/test_tr.py::test_sentences PASSED [ 37%] 1229s tests/translate/lang/test_uk.py::test_sentences PASSED [ 37%] 1229s tests/translate/lang/test_vi.py::test_punctranslate PASSED [ 37%] 1229s tests/translate/lang/test_vi.py::test_sentences PASSED [ 38%] 1229s tests/translate/lang/test_zh.py::test_punctranslate PASSED [ 38%] 1229s tests/translate/lang/test_zh.py::test_sentences PASSED [ 38%] 1229s tests/translate/misc/test_deprecation.py::TestDeprecation::test_deprecated_decorator PASSED [ 38%] 1229s tests/translate/misc/test_deprecation.py::TestDeprecation::test_no_deprecated_decorator PASSED [ 38%] 1229s tests/translate/misc/test_dictutils.py::test_cidict_has_key PASSED [ 38%] 1229s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor PASSED [ 38%] 1229s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor_validation PASSED [ 38%] 1229s tests/translate/misc/test_multistring.py::TestMultistring::test_repr PASSED [ 38%] 1229s tests/translate/misc/test_multistring.py::TestMultistring::test_replace PASSED [ 38%] 1229s tests/translate/misc/test_multistring.py::TestMultistring::test_comparison PASSED [ 38%] 1229s tests/translate/misc/test_multistring.py::TestMultistring::test_coercion PASSED [ 38%] 1229s tests/translate/misc/test_multistring.py::TestMultistring::test_unicode_coercion PASSED [ 38%] 1229s tests/translate/misc/test_multistring.py::TestMultistring::test_list_coercion PASSED [ 38%] 1229s tests/translate/misc/test_multistring.py::TestMultistring::test_multistring_hash PASSED [ 38%] 1229s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_splitext PASSED [ 38%] 1229s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_outputfile_receives_bytes PASSED [ 38%] 1229s tests/translate/misc/test_progressbar.py::test_hashprogressbar PASSED [ 38%] 1229s tests/translate/misc/test_quote.py::test_find_all PASSED [ 38%] 1229s tests/translate/misc/test_quote.py::test_extract PASSED [ 38%] 1229s tests/translate/misc/test_quote.py::test_extractwithoutquotes PASSED [ 38%] 1229s tests/translate/misc/test_quote.py::test_extractwithoutquotes_passfunc PASSED [ 38%] 1229s tests/translate/misc/test_quote.py::test_stripcomment PASSED [ 38%] 1229s tests/translate/misc/test_quote.py::TestEncoding::test_javapropertiesencode PASSED [ 38%] 1229s tests/translate/misc/test_quote.py::TestEncoding::test_java_utf8_properties_encode PASSED [ 38%] 1229s tests/translate/misc/test_quote.py::TestEncoding::test_escapespace PASSED [ 38%] 1229s tests/translate/misc/test_quote.py::TestEncoding::test_mozillaescapemarginspaces PASSED [ 38%] 1229s tests/translate/misc/test_quote.py::TestEncoding::test_mozilla_control_escapes PASSED [ 38%] 1229s tests/translate/misc/test_quote.py::TestEncoding::test_propertiesdecode PASSED [ 38%] 1229s tests/translate/misc/test_quote.py::TestEncoding::test_controlchars PASSED [ 38%] 1229s tests/translate/misc/test_quote.py::TestEncoding::test_properties_decode_slashu PASSED [ 38%] 1229s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding PASSED [ 38%] 1229s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_existing_entities PASSED [ 38%] 1229s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_passthrough PASSED [ 38%] 1229s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_nonentities PASSED [ 39%] 1229s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_four_spaces PASSED [ 39%] 1229s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_tab PASSED [ 39%] 1229s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_distance PASSED [ 39%] 1229s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_similarity PASSED [ 39%] 1229s tests/translate/search/test_lshtein.py::TestLevenshtein::test_long_similarity PASSED [ 39%] 1229s tests/translate/search/test_match.py::TestMatch::test_matching PASSED [ 39%] 1229s tests/translate/search/test_match.py::TestMatch::test_multiple_store PASSED [ 39%] 1229s tests/translate/search/test_match.py::TestMatch::test_extendtm PASSED [ 39%] 1229s tests/translate/search/test_match.py::TestMatch::test_terminology PASSED [ 39%] 1229s tests/translate/search/test_match.py::TestMatch::test_brackets PASSED [ 39%] 1229s tests/translate/search/test_match.py::TestMatch::test_past_tences PASSED [ 39%] 1229s tests/translate/search/test_match.py::TestMatch::test_space_mismatch PASSED [ 39%] 1229s tests/translate/search/test_match.py::TestMatch::test_hyphen_mismatch PASSED [ 39%] 1229s tests/translate/search/test_terminology.py::TestTerminology::test_basic PASSED [ 39%] 1229s tests/translate/services/test_tmserver.py::TestTMServer::test_import PASSED [ 39%] 1229s tests/translate/services/test_tmserver.py::TestTMServer::test_server PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_parse PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_tree PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_add PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_contains PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getitem PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getslice PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_iter PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_len PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_mul PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_offset PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_at_offset PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find_elems_with PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_flatten PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case1 PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case2 PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case3 PASSED [ 39%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case4 PASSED [ 40%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_insert PASSED [ 40%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_isleaf PASSED [ 40%] 1229s tests/translate/storage/placeables/test_base.py::TestStringElem::test_prune PASSED [ 40%] 1229s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_base_placeables PASSED [ 40%] 1229s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables XFAIL [ 40%] 1229s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables XFAIL [ 40%] 1229s tests/translate/storage/placeables/test_general.py::test_placeable_numbers PASSED [ 40%] 1229s tests/translate/storage/placeables/test_general.py::test_placeable_newline PASSED [ 40%] 1229s tests/translate/storage/placeables/test_general.py::test_placeable_alt_attr PASSED [ 40%] 1229s tests/translate/storage/placeables/test_general.py::test_placeable_qt_formatting PASSED [ 40%] 1229s tests/translate/storage/placeables/test_general.py::test_placeable_camelcase PASSED [ 40%] 1229s tests/translate/storage/placeables/test_general.py::test_placeable_space PASSED [ 40%] 1229s tests/translate/storage/placeables/test_general.py::test_placeable_punctuation PASSED [ 40%] 1229s tests/translate/storage/placeables/test_general.py::test_placeable_xml_entity PASSED [ 40%] 1229s tests/translate/storage/placeables/test_general.py::test_placeable_xml_tag PASSED [ 40%] 1229s tests/translate/storage/placeables/test_general.py::test_placeable_option PASSED [ 40%] 1229s tests/translate/storage/placeables/test_general.py::test_placeable_file PASSED [ 40%] 1229s tests/translate/storage/placeables/test_general.py::test_placeable_email PASSED [ 40%] 1229s tests/translate/storage/placeables/test_general.py::test_placeable_caps PASSED [ 40%] 1229s tests/translate/storage/placeables/test_general.py::test_placeable_formatting PASSED [ 40%] 1229s tests/translate/storage/placeables/test_general.py::test_placeable_doubleat PASSED [ 40%] 1229s tests/translate/storage/placeables/test_general.py::test_placeable_brace PASSED [ 40%] 1229s tests/translate/storage/placeables/test_general.py::test_python_placeable PASSED [ 40%] 1229s tests/translate/storage/placeables/test_lisa.py::test_xml_to_strelem PASSED [ 40%] 1229s tests/translate/storage/placeables/test_lisa.py::test_xml_space PASSED [ 40%] 1229s tests/translate/storage/placeables/test_lisa.py::test_chunk_list PASSED [ 40%] 1229s tests/translate/storage/placeables/test_lisa.py::test_set_strelem_to_xml PASSED [ 40%] 1229s tests/translate/storage/placeables/test_lisa.py::test_unknown_xml_placeable PASSED [ 40%] 1229s tests/translate/storage/placeables/test_terminology.py::TestTerminologyPlaceable::test_simple_terminology PASSED [ 40%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_isfuzzy PASSED [ 40%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_create PASSED [ 40%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_eq PASSED [ 40%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escapes PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_difficult_escapes PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_note_sanity PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_target PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_get PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_set PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quotes_with_newline PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline_in_xml PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_twitter PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quote PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_question PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_double_space PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_leading_space PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_tailing_space PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_xml_entities PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote_newline PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_arrows PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link_and_text PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_blank_string PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_escape_message_with_newline PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_invalid_lang PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_quote PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_leading_space PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_trailing_space PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_with_ampersand PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_double_space PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_deep_double_space PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_complex_xml PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quoted_newlines PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline PASSED [ 41%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline_in_xml PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_twitter PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_question PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quote PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_space PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_space PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_newlines PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_xml_entities PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_code PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_arrows PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link_and_text PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_space PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_spaces PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_escaped_newline PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_escaped_newline PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_spaces PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_newline PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_many_quotes PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string_again PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_quotes_string PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_newline_in_string PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_not_translatable_string PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_newline PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_comments PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_quote PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space_quoted PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space_quoted PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_with_ampersand PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_double_space_quoted PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_deep_double_space_quoted PASSED [ 42%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_complex_xml PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unicode PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_unescaped PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_alone PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_full PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_escaped_percent PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_percent PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_quote PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unparied_quote PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_slash PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_ignored PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escaped_quote_end PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_create_blank PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_remove PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_find PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_parse PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_files PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_save PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_extensions PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_mimetypes PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translate PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_nonascii PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_default_handlings PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_invalid_filename PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_namespaces PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_serialize PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add_formatting PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_invalid_entity PASSED [ 43%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_indent PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_markup PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_edit PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_noedit PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_remove PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_set PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_others PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_quotes_set PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_g PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_namespace PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_zh_hk PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_b_zh_hk PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_missing_plural PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_removeunit PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata_text PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_prefix PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_rtl PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_tail PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translatable_marking PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_escaping PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_isfuzzy PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_create PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_eq PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_escapes PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_difficult_escapes PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_note_sanity PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_target PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_get PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_set PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_create_blank PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_add PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_remove PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_find PASSED [ 44%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_parse PASSED [ 45%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_files PASSED [ 45%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_save PASSED [ 45%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_extensions PASSED [ 45%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_mimetypes PASSED [ 45%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_translate PASSED [ 45%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_markup PASSED [ 45%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_nonascii PASSED [ 45%] 1229s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_plural PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationUnit::test_isfuzzy PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationUnit::test_create PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationUnit::test_eq PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationUnit::test_target PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationUnit::test_escapes PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationUnit::test_difficult_escapes PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationUnit::test_note_sanity PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_get PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_set PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationStore::test_create_blank PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationStore::test_add PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationStore::test_remove PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationStore::test_find PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationStore::test_translate PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationStore::test_parse PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationStore::test_files PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationStore::test_save PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationStore::test_markup PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationStore::test_nonascii PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationStore::test_extensions PASSED [ 45%] 1229s tests/translate/storage/test_base.py::TestTranslationStore::test_mimetypes PASSED [ 45%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_isfuzzy PASSED [ 45%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_create PASSED [ 45%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_eq PASSED [ 45%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_target PASSED [ 45%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_escapes PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_get PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_set PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_difficult_escapes PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_newlines PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_istranslated PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_note_sanity PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_create_blank PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_add PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_remove PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_find PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_translate PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_parse PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_files PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_save PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_markup PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_nonascii PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_extensions PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_mimetypes PASSED [ 46%] 1229s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_checksum PASSED [ 46%] 1229s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_isfuzzy PASSED [ 46%] 1229s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_create PASSED [ 46%] 1229s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_eq PASSED [ 46%] 1229s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_target PASSED [ 46%] 1229s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_escapes PASSED [ 46%] 1229s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_difficult_escapes PASSED [ 46%] 1229s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_note_sanity PASSED [ 46%] 1229s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_get PASSED [ 46%] 1229s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_set PASSED [ 46%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_create_blank PASSED [ 46%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_add PASSED [ 46%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_remove PASSED [ 46%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_find PASSED [ 46%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_translate PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_files PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_save PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_markup PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_nonascii PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_extensions PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_mimetypes PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_singlequoting PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8 PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_dialect PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_sig PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_default PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_location_is_parsed PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_context_is_parsed PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_newline PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse_sample PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_detection PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding PASSED [ 47%] 1229s tests/translate/storage/test_csvl10n.py::TestCSV::test_corrupt PASSED [ 47%] 1229s tests/translate/storage/test_directory.py::TestDirectory::test_created PASSED [ 47%] 1229s tests/translate/storage/test_directory.py::TestDirectory::test_basic PASSED [ 47%] 1229s tests/translate/storage/test_directory.py::TestDirectory::test_structure PASSED [ 47%] 1229s tests/translate/storage/test_directory.py::TestDirectory::test_getunits PASSED [ 47%] 1229s tests/translate/storage/test_dtd.py::test_roundtrip_quoting PASSED [ 47%] 1229s tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases XFAIL [ 47%] 1229s tests/translate/storage/test_dtd.py::test_quotefordtd PASSED [ 47%] 1229s tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases XFAIL [ 47%] 1229s tests/translate/storage/test_dtd.py::test_unquotefromdtd PASSED [ 47%] 1229s tests/translate/storage/test_dtd.py::test_android_roundtrip_quoting PASSED [ 47%] 1229s tests/translate/storage/test_dtd.py::test_quoteforandroid PASSED [ 47%] 1229s tests/translate/storage/test_dtd.py::test_unquotefromandroid PASSED [ 47%] 1229s tests/translate/storage/test_dtd.py::test_removeinvalidamp PASSED [ 47%] 1229s tests/translate/storage/test_dtd.py::TestDTDUnit::test_isfuzzy PASSED [ 47%] 1229s tests/translate/storage/test_dtd.py::TestDTDUnit::test_create PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTDUnit::test_eq PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTDUnit::test_escapes PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTDUnit::test_difficult_escapes PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTDUnit::test_note_sanity PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTDUnit::test_target PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_get PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_set PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_create_blank PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_add PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_remove PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_find PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_parse PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_files PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_save PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_extensions PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_mimetypes PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_translate PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_markup PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_nonascii PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_blanklines PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity_source PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_hashcomment_source PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_commentclosing PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_commententity PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_newlines_in_entity PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_conflate_comments PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_localisation_notes PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_in_source PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_order_in_source PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_comment_following XFAIL [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_comment_newline_space_closing PASSED [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting XFAIL [ 48%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_missing_quotes PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping_roundtrip PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_create_blank PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_add PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_remove PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_find PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_parse PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_files PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_save PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_extensions PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_mimetypes PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_translate PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_markup PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_nonascii PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape_parse_and_convert_back PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape PASSED [ 49%] 1229s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape_parse_and_convert_back PASSED [ 49%] 1229s tests/translate/storage/test_factory.py::TestPOFactory::test_getclass PASSED [ 49%] 1229s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject_store PASSED [ 49%] 1229s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject PASSED [ 49%] 1229s tests/translate/storage/test_factory.py::TestPOFactory::test_get_noname_object PASSED [ 49%] 1229s tests/translate/storage/test_factory.py::TestPOFactory::test_gzfile PASSED [ 49%] 1229s tests/translate/storage/test_factory.py::TestPOFactory::test_bz2file PASSED [ 49%] 1229s tests/translate/storage/test_factory.py::TestPOFactory::test_directory PASSED [ 49%] 1229s tests/translate/storage/test_factory.py::TestXliffFactory::test_getclass PASSED [ 49%] 1229s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject_store PASSED [ 49%] 1229s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject PASSED [ 49%] 1229s tests/translate/storage/test_factory.py::TestXliffFactory::test_get_noname_object PASSED [ 49%] 1229s tests/translate/storage/test_factory.py::TestXliffFactory::test_gzfile PASSED [ 49%] 1229s tests/translate/storage/test_factory.py::TestXliffFactory::test_bz2file PASSED [ 49%] 1229s tests/translate/storage/test_factory.py::TestXliffFactory::test_directory PASSED [ 49%] 1229s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getclass PASSED [ 50%] 1229s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject_store PASSED [ 50%] 1229s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject PASSED [ 50%] 1229s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_get_noname_object PASSED [ 50%] 1229s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_gzfile PASSED [ 50%] 1229s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_bz2file PASSED [ 50%] 1229s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_directory PASSED [ 50%] 1229s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getclass PASSED [ 50%] 1229s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject_store PASSED [ 50%] 1229s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject PASSED [ 50%] 1229s tests/translate/storage/test_factory.py::TestWordfastFactory::test_get_noname_object PASSED [ 50%] 1229s tests/translate/storage/test_factory.py::TestWordfastFactory::test_gzfile PASSED [ 50%] 1229s tests/translate/storage/test_factory.py::TestWordfastFactory::test_bz2file PASSED [ 50%] 1229s tests/translate/storage/test_factory.py::TestWordfastFactory::test_directory PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_isfuzzy PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_create PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_eq PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_escapes PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_difficult_escapes PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_note_sanity PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_target PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_get PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_set PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_create_blank PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_add PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_remove PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_find PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_parse PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_files PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_save PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_extensions PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_mimetypes PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_translate PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_markup PASSED [ 50%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_nonascii PASSED [ 51%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_root_config_detect PASSED [ 51%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_detect PASSED [ 51%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_key_config_detect PASSED [ 51%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_mixed_ok PASSED [ 51%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_namespace_config_detect PASSED [ 51%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_four_spaces PASSED [ 51%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_tab PASSED [ 51%] 1229s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_none_linearizes PASSED [ 51%] 1229s tests/translate/storage/test_html.py::test_guess_encoding PASSED [ 51%] 1229s tests/translate/storage/test_html.py::TestHTMLParsing::test_mismatched_tags PASSED [ 51%] 1229s tests/translate/storage/test_html.py::TestHTMLParsing::test_self_closing_tags PASSED [ 51%] 1229s tests/translate/storage/test_html.py::TestHTMLParsing::test_escaping_script_and_pre PASSED [ 51%] 1229s tests/translate/storage/test_html.py::TestHTMLExtraction::test_strip_html PASSED [ 51%] 1229s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_figcaption PASSED [ 51%] 1229s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_caption_td_th PASSED [ 51%] 1229s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_alt PASSED [ 51%] 1229s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_title PASSED [ 51%] 1229s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre PASSED [ 51%] 1229s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre_code PASSED [ 51%] 1229s tests/translate/storage/test_ini.py::TestINIUnit::test_isfuzzy PASSED [ 51%] 1229s tests/translate/storage/test_ini.py::TestINIUnit::test_create PASSED [ 51%] 1229s tests/translate/storage/test_ini.py::TestINIUnit::test_eq PASSED [ 51%] 1229s tests/translate/storage/test_ini.py::TestINIUnit::test_escapes PASSED [ 51%] 1229s tests/translate/storage/test_ini.py::TestINIUnit::test_difficult_escapes PASSED [ 51%] 1229s tests/translate/storage/test_ini.py::TestINIUnit::test_note_sanity PASSED [ 51%] 1229s tests/translate/storage/test_ini.py::TestINIUnit::test_target PASSED [ 51%] 1229s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_get PASSED [ 51%] 1229s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_set PASSED [ 51%] 1229s tests/translate/storage/test_ini.py::TestINIStore::test_create_blank PASSED [ 51%] 1229s tests/translate/storage/test_ini.py::TestINIStore::test_add PASSED [ 51%] 1229s tests/translate/storage/test_ini.py::TestINIStore::test_remove PASSED [ 51%] 1229s tests/translate/storage/test_ini.py::TestINIStore::test_find PASSED [ 51%] 1229s tests/translate/storage/test_ini.py::TestINIStore::test_parse PASSED [ 51%] 1229s tests/translate/storage/test_ini.py::TestINIStore::test_files PASSED [ 52%] 1229s tests/translate/storage/test_ini.py::TestINIStore::test_save PASSED [ 52%] 1229s tests/translate/storage/test_ini.py::TestINIStore::test_extensions PASSED [ 52%] 1229s tests/translate/storage/test_ini.py::TestINIStore::test_mimetypes PASSED [ 52%] 1229s tests/translate/storage/test_ini.py::TestINIStore::test_translate PASSED [ 52%] 1229s tests/translate/storage/test_ini.py::TestINIStore::test_markup PASSED [ 52%] 1229s tests/translate/storage/test_ini.py::TestINIStore::test_nonascii PASSED [ 52%] 1229s tests/translate/storage/test_ini.py::TestINIStore::test_serialize PASSED [ 52%] 1229s tests/translate/storage/test_ini.py::TestINIStore::test_rem PASSED [ 52%] 1229s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_isfuzzy PASSED [ 52%] 1229s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_create PASSED [ 52%] 1229s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_eq PASSED [ 52%] 1229s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_escapes PASSED [ 52%] 1229s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_difficult_escapes PASSED [ 52%] 1229s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_note_sanity PASSED [ 52%] 1229s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_target PASSED [ 52%] 1229s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_get PASSED [ 52%] 1229s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_set PASSED [ 52%] 1229s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_create_blank PASSED [ 52%] 1229s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_remove PASSED [ 52%] 1229s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_find PASSED [ 52%] 1229s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_parse PASSED [ 52%] 1229s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_files PASSED [ 52%] 1229s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_save PASSED [ 52%] 1229s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_extensions PASSED [ 52%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_mimetypes PASSED [ 52%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_translate PASSED [ 52%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_markup PASSED [ 52%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_nonascii PASSED [ 52%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_serialize PASSED [ 52%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_can_not_detect PASSED [ 52%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_error PASSED [ 52%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_filter PASSED [ 52%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_ordering PASSED [ 52%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_args PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_bom PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex_array PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_list_like PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_blank PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_types PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_null PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_isfuzzy PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_create PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_eq PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_escapes PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_difficult_escapes PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_note_sanity PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_target PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_get PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_set PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_serialize PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_ordering PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_array PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index_nested PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_nested_list_mixed PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_list_to_dict PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_complex_keys PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_other PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0]-expected0] PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0]-expected1] PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0][1][2][3]-expected2] PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test]selection-expected3] PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test][0]selection-expected4] PASSED [ 53%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0][test]selection-expected5] PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[-expected6] PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_dot_keys PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_isfuzzy PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_create PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_eq PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_escapes PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_difficult_escapes PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_note_sanity PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_target PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_get PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_set PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_create_blank PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_add PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_remove PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_find PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_parse PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_files PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_save PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_extensions PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_mimetypes PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_translate PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_markup PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_nonascii PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_dot_keys PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_leading_dot_keys PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize_no_description PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_set_target PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_placeholders PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_create_blank PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_add PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_remove PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_find PASSED [ 54%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_parse PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_files PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_save PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_extensions PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_mimetypes PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_translate PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_markup PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nonascii PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_serialize PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_units PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_plurals PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nested_array PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural_id PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_create_blank PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_add PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_remove PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_find PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_parse PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_files PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_save PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_extensions PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_mimetypes PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_translate PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_markup PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_nonascii PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals_missing PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_case_no_msg PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_complex_id PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_create_blank PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_add PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_remove PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_find PASSED [ 55%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_parse PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_files PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_save PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_extensions PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_mimetypes PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_translate PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_markup PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nonascii PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_serialize PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_units PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_plurals PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nested_array PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_new_plural PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_ru PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_create_blank PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_add PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_remove PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_find PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_parse PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_files PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_save PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_extensions PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_mimetypes PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_translate PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_markup PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nonascii PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_serialize PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_units PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_plurals PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nested_array PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_new_plural PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_ru PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_create_blank PASSED [ 56%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_add PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_remove PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_find PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_parse PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_files PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_save PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_extensions PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_mimetypes PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_translate PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_markup PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_nonascii PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals_missing PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_invalid PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_dot_keys PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_create_blank PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_add PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_remove PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_find PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_parse PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_files PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_save PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_extensions PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_mimetypes PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_translate PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_markup PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_nonascii PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_1 PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_2 PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_blank PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_missing PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_simplification PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_invalid PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_dot_keys PASSED [ 57%] 1230s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_create_blank PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_add PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_remove PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_find PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_parse PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_files PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_save PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_extensions PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_mimetypes PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_translate PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_markup PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_nonascii PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_roundtrip PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_leading_dot_keys PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_create_blank PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_add PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_remove PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_find PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_parse PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_files PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_save PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_extensions PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_mimetypes PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_translate PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_markup PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_nonascii PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_roundtrip PASSED [ 58%] 1230s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_leading_dot_keys PASSED [ 58%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_atx_heading PASSED [ 58%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_autolink PASSED [ 58%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_block_quote PASSED [ 58%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_block PASSED [ 58%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_span PASSED [ 58%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_atx_heading PASSED [ 58%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_document PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_list_item PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_escaped_character PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_hard_line_break PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_block PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_character_entities PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_span PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_image_embedded_in_link PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_collapsed_reference_link PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_full_reference_link PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_shortcut_reference_link PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_merging_of_adjacent_placeholders PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_block_tokens PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_list PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_basic_markup PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_only_whitespace_and_placeholders PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_placeholder_trimming PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image_no_title PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_link PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_text_paragraph PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_remove_placeholders_from_both_ends_of_translation_units PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_setext_heading PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_table_with_header PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_thematic_break PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_hard_line_break_in_translation_unit PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_missing_placeholder PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_duplicate_placeholder PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_extraneous_placeholder PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_reordered_placeholders PASSED [ 59%] 1230s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_invalid_markdown_in_translation PASSED [ 59%] 1230s tests/translate/storage/test_mo.py::TestMOUnit::test_isfuzzy PASSED [ 59%] 1230s tests/translate/storage/test_mo.py::TestMOUnit::test_create PASSED [ 59%] 1230s tests/translate/storage/test_mo.py::TestMOUnit::test_eq PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOUnit::test_target PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOUnit::test_escapes PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOUnit::test_difficult_escapes PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOUnit::test_note_sanity PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_get PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_set PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOUnit::test_context PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOFile::test_create_blank PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOFile::test_add PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOFile::test_remove PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOFile::test_find PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOFile::test_translate PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOFile::test_parse PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOFile::test_files PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOFile::test_save PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOFile::test_markup PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOFile::test_nonascii PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOFile::test_extensions PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOFile::test_mimetypes PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOFile::test_language PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOFile::test_context PASSED [ 60%] 1230s tests/translate/storage/test_mo.py::TestMOFile::test_output PASSED [ 60%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_isfuzzy PASSED [ 60%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_create PASSED [ 60%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_eq PASSED [ 60%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_escapes PASSED [ 60%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_difficult_escapes PASSED [ 60%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_note_sanity PASSED [ 60%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_target PASSED [ 60%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_get PASSED [ 60%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_set PASSED [ 60%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_create_blank PASSED [ 60%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_add PASSED [ 60%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_remove PASSED [ 61%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_find PASSED [ 61%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_parse PASSED [ 61%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_files PASSED [ 61%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_save PASSED [ 61%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_extensions PASSED [ 61%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_mimetypes PASSED [ 61%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_translate PASSED [ 61%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_markup PASSED [ 61%] 1230s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_nonascii PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[-] PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String-String] PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {OK}-String] PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[\u015e\u0167\u0159\u012b\u019e\u0260 {ok}-\u015e\u0167\u0159\u012b\u019e\u0260] PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{ok}-String] PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{OK}-String] PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok} -String] PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_isfuzzy PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_create PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_eq PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_target PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_escapes PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_difficult_escapes PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_note_sanity PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_get PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_set PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_translate_but_same PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_untranslated PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_comments PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_copy_target PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_create_blank PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_add PASSED [ 61%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_remove PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_find PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_translate PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_parse PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_files PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_save PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_markup PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_extensions PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_mimetypes PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_nonascii PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_format_layout PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_crlf PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_active_flag PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_multiline_comments PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_template PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[--False] PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ -Source -True] PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok}-Source-True] PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok} -Source-True] PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[{ok}-Source-True] PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_headers PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_not_headers PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[0] PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[1] PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[2] PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[3] PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_tag_comments PASSED [ 62%] 1230s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_maxlength PASSED [ 62%] 1230s tests/translate/storage/test_omegat.py::TestOtUnit::test_isfuzzy PASSED [ 62%] 1230s tests/translate/storage/test_omegat.py::TestOtUnit::test_create PASSED [ 62%] 1230s tests/translate/storage/test_omegat.py::TestOtUnit::test_eq PASSED [ 62%] 1230s tests/translate/storage/test_omegat.py::TestOtUnit::test_target PASSED [ 62%] 1230s tests/translate/storage/test_omegat.py::TestOtUnit::test_escapes PASSED [ 62%] 1230s tests/translate/storage/test_omegat.py::TestOtUnit::test_difficult_escapes PASSED [ 63%] 1230s tests/translate/storage/test_omegat.py::TestOtUnit::test_note_sanity PASSED [ 63%] 1230s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_get PASSED [ 63%] 1230s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_set PASSED [ 63%] 1230s tests/translate/storage/test_omegat.py::TestOtFile::test_create_blank PASSED [ 63%] 1230s tests/translate/storage/test_omegat.py::TestOtFile::test_add PASSED [ 63%] 1230s tests/translate/storage/test_omegat.py::TestOtFile::test_remove PASSED [ 63%] 1230s tests/translate/storage/test_omegat.py::TestOtFile::test_find PASSED [ 63%] 1230s tests/translate/storage/test_omegat.py::TestOtFile::test_translate PASSED [ 63%] 1230s tests/translate/storage/test_omegat.py::TestOtFile::test_parse PASSED [ 63%] 1230s tests/translate/storage/test_omegat.py::TestOtFile::test_files PASSED [ 63%] 1230s tests/translate/storage/test_omegat.py::TestOtFile::test_save PASSED [ 63%] 1230s tests/translate/storage/test_omegat.py::TestOtFile::test_markup PASSED [ 63%] 1230s tests/translate/storage/test_omegat.py::TestOtFile::test_nonascii PASSED [ 63%] 1230s tests/translate/storage/test_omegat.py::TestOtFile::test_mimetypes PASSED [ 63%] 1230s tests/translate/storage/test_omegat.py::TestOtFile::test_extensions XFAIL [ 63%] 1230s tests/translate/storage/test_oo.py::test_makekey PASSED [ 63%] 1230s tests/translate/storage/test_oo.py::test_escape_help_text PASSED [ 63%] 1230s tests/translate/storage/test_oo.py::TestOO::test_simpleentry PASSED [ 63%] 1230s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_quickhelptest PASSED [ 63%] 1230s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_title PASSED [ 63%] 1230s tests/translate/storage/test_oo.py::TestOO::test_blankline PASSED [ 63%] 1230s tests/translate/storage/test_oo.py::TestOO::test_fieldlength PASSED [ 63%] 1230s tests/translate/storage/test_oo.py::TestOO::test_escapes PASSED [ 63%] 1230s tests/translate/storage/test_php.py::test_php_escaping_single_quote PASSED [ 63%] 1230s tests/translate/storage/test_php.py::test_php_escaping_double_quote PASSED [ 63%] 1230s tests/translate/storage/test_php.py::TestPhpUnit::test_isfuzzy PASSED [ 63%] 1230s tests/translate/storage/test_php.py::TestPhpUnit::test_create PASSED [ 63%] 1230s tests/translate/storage/test_php.py::TestPhpUnit::test_eq PASSED [ 63%] 1230s tests/translate/storage/test_php.py::TestPhpUnit::test_escapes PASSED [ 63%] 1230s tests/translate/storage/test_php.py::TestPhpUnit::test_note_sanity PASSED [ 63%] 1230s tests/translate/storage/test_php.py::TestPhpUnit::test_target PASSED [ 63%] 1230s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_get PASSED [ 63%] 1230s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_set PASSED [ 63%] 1230s tests/translate/storage/test_php.py::TestPhpUnit::test_difficult_escapes PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_create_blank PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_add PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_remove PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_find PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parse PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_files PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_save PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_extensions PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_mimetypes PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_translate PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_markup PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_nonascii PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_source PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_spaces_in_name PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_comment_definition PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_comment_blocks PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_comment_output PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_comment_add PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_multiline PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_no_array_syntax PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_spaces PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_quotes PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_number_as_value PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_non_textual PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define_with_spaces_before_key PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter_and_before_key PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equal_delimiter PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equaldel_but_before_key PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_entries_with_quotes PASSED [ 64%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_comments_at_entry_line_end PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_double_slash_comments_before_entries PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_before_end_delimiter PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simpledefinition_spaces_before_end_delimiter PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_no_trailing_comma PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_space_before_comma PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_space_before_array_declaration PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_declared_in_a_single_line PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys_assigned_to_array PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_no_keys PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_assignment_in_line_where_multiline_comment_ends PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_using_short_array_syntax PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_space_before_array_declaration PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_unnamed_nested_arrays PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_array_declaration_in_next_line PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_with_newline_after_delimiter PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_blank_entries PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_slashstar_in_string PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_heredoc_syntax PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_after_define PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_quotes PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_concatenation PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_serialize PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_space_before_comma PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_equals_in_id PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_comma_in_string PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_nowdoc PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_plain_concatenation PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_array_keys PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_double_var PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_return_array PASSED [ 65%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short_quotes PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestPhpFile::test_addunit PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_isfuzzy PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_create PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_eq PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_escapes PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_difficult_escapes PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_note_sanity PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_target PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_get PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_set PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_create_blank PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_add PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_remove PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_find PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_parse PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_files PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_save PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_extensions PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_mimetypes PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_translate PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_markup PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_nonascii PASSED [ 66%] 1230s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_plurals PASSED [ 66%] 1230s tests/translate/storage/test_po.py::test_roundtrip_quoting PASSED [ 66%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_isfuzzy PASSED [ 66%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_create PASSED [ 66%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_eq PASSED [ 66%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_target PASSED [ 66%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_escapes PASSED [ 66%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_difficult_escapes PASSED [ 66%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_note_sanity PASSED [ 66%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_rich_get PASSED [ 66%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_rich_set PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_istranslatable PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_locations PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_nongettext_location PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_adding_empty_note PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_markreview PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_errors PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_no_plural_settarget PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_wrapping_bug PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_extract_msgidcomments_from_text PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_isheader PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOUnit::test_buildfromunit PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_create_blank PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_add PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_remove PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_find PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_translate PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_parse PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_files PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_save PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_markup PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_nonascii PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_extensions PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_mimetypes PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_context_only PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_simpleentry PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_copy PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_parse_source_string PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_parse_file PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_unicode PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_plurals PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_plural_unicode PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_nongettext_location PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_percent_location PASSED [ 67%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals XFAIL [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_empty_lines_notes PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_fuzzy PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated XFAIL [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_merging_automaticcomments PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_malformed_units PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_malformed_obsolete_units PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_uniforum_po PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_obsolete PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_obsolete_with_prev_msgid PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_header_escapes PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_plural PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgctxt PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgidcomments PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_multiline_obsolete PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_merge_duplicates PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_merge_mixed_sources PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_parse_context PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_parse_advanced_context PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_kde_context PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_broken_kde_context PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_id PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments_2 PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_final_slash PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_unfinished_lines PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_encoding_change PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_istranslated PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_wrapping PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_wrapping_cjk PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_wrap_emoji PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis PASSED [ 68%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis_long PASSED [ 69%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_wrap_gettext PASSED [ 69%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_msgidcomments PASSED [ 69%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_unicode_ids PASSED [ 69%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_syntax_error PASSED [ 69%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_invalid PASSED [ 69%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_wrapped_msgid PASSED [ 69%] 1230s tests/translate/storage/test_po.py::TestPOFile::test_missing_plural PASSED [ 69%] 1230s tests/translate/storage/test_pocommon.py::test_roundtrip_quote_plus PASSED [ 69%] 1230s tests/translate/storage/test_poheader.py::test_parseheaderstring PASSED [ 69%] 1230s tests/translate/storage/test_poheader.py::test_update PASSED [ 69%] 1230s tests/translate/storage/test_poheader.py::test_po_dates PASSED [ 69%] 1230s tests/translate/storage/test_poheader.py::test_timezones PASSED [ 69%] 1230s tests/translate/storage/test_poheader.py::test_header_blank PASSED [ 69%] 1230s tests/translate/storage/test_poheader.py::test_plural_equation PASSED [ 69%] 1230s tests/translate/storage/test_poheader.py::test_plural_equation_across_lines PASSED [ 69%] 1230s tests/translate/storage/test_poheader.py::test_updatecontributor PASSED [ 69%] 1230s tests/translate/storage/test_poheader.py::test_updatecontributor_header PASSED [ 69%] 1230s tests/translate/storage/test_poheader.py::test_language PASSED [ 69%] 1230s tests/translate/storage/test_poheader.py::test_project PASSED [ 69%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_isfuzzy PASSED [ 69%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_create PASSED [ 69%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_eq PASSED [ 69%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_target PASSED [ 69%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_escapes PASSED [ 69%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_difficult_escapes PASSED [ 69%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_note_sanity PASSED [ 69%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_get PASSED [ 69%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_set PASSED [ 69%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_markreview PASSED [ 69%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_errors PASSED [ 69%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_accepted_control_chars PASSED [ 69%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_unaccepted_control_chars PASSED [ 69%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_plurals PASSED [ 69%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_ids PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_create_blank PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_remove PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_find PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_translate PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_files PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_save PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_markup PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_nonascii PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_extensions PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_mimetypes PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_basic PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_namespace PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_source PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_target PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_source PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_target PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_sourcelanguage PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage_multi PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_alttrans PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_fuzzy PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_xml_space PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parsing PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_entities PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_multiple_filenodes PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_indent PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add_target PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_closing_tags PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_context_groups PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_getlocations PASSED [ 70%] 1230s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_addlocation PASSED [ 70%] 1231s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_huge PASSED [ 71%] 1231s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve_add PASSED [ 71%] 1231s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse PASSED [ 71%] 1231s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse_plural_alpha_id PASSED [ 71%] 1231s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_notes PASSED [ 71%] 1231s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_plural PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::test_find_delimiter_pos_simple PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::test_find_delimiter_pos_multiple PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::test_find_delimiter_pos_none PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::test_find_delimiter_pos_whitespace PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::test_find_delimiter_pos_escapes PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::test_is_line_continuation PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::test_key_strip PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::test_get_comment_one_line PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::test_get_comment_start PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::test_get_comment_end PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestPropUnit::test_isfuzzy PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestPropUnit::test_create PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestPropUnit::test_eq PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestPropUnit::test_escapes PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestPropUnit::test_difficult_escapes PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestPropUnit::test_note_sanity PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestPropUnit::test_target PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_get PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_set PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_create_blank PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_add PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_remove PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_find PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_parse PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_files PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_save PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_extensions PASSED [ 71%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_mimetypes PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_translate PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_markup PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_nonascii PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_quotes PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_simpledefinition PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition_source PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_reduce PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_increase PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_extra_plurals PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_non_plurals PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_encoding PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestGwtProp::test_other_plurals PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_create_blank PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_add PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_remove PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_find PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_parse PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_files PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_save PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_extensions PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_mimetypes PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_translate PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_markup PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_nonascii PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition_source PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_controlutf8_source PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_control_source PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_unicode_escaping PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_newlines_startend PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_space PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_whitespace_handling PASSED [ 72%] 1231s tests/translate/storage/test_properties.py::TestProp::test_key_value_delimiters_simple PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_comments PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_latin1 PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_fullspec_delimiters PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_fullspec_escaped_key PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_fullspec_line_continuation PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_fullspec_key_without_value PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_mac_strings PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_utf_16_save PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_mac_multiline_strings PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_unicode PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_utf8 PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_newlines PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_multilines_comments PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments_dropping PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_quotes PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_equals PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_serialization PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_double_backslashes PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_override_encoding PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_trailing_comments PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_utf16_byte_order_mark PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_raise_ioerror_if_cannot_detect_encoding PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_utf8_byte_order_mark PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_joomla_set_target PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_joomla PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_joomla_escape PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_delimiter PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_value PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_multi_comments PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_serialize_note PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_serialize_long_note PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestProp::test_trailing_newlines PASSED [ 73%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_create_blank PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_add PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_remove PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_find PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_parse PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_files PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_save PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_extensions PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_mimetypes PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_translate PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_markup PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_nonascii PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_simpledefinition PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition_source PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote_and_argument PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_header_preserved PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_blank_line_before_comment_preserved PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWiki::test_deprecated_comments_preserved PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_create_blank PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_add PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_remove PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_find PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_parse PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_files PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_save PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_extensions PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_mimetypes PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_markup PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_nonascii PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_simpledefinition PASSED [ 74%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition_source PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote_and_argument PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_encoded_html PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_cleaning_attributes PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate_source PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_create_blank PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_add PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_find PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_extensions PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_mimetypes PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_translate PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_markup PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_nonascii PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_simpledefinition PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_parse PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_files PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_save PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_cleaning_attributes PASSED [ 75%] 1231s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove XFAIL [ 75%] 1231s tests/translate/storage/test_pypo.py::TestHelpers::test_unescape PASSED [ 75%] 1231s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo PASSED [ 75%] 1231s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo_escaped_quotes PASSED [ 75%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isfuzzy PASSED [ 75%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_create PASSED [ 75%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_eq PASSED [ 75%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_target PASSED [ 75%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_escapes PASSED [ 75%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_difficult_escapes PASSED [ 75%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_note_sanity PASSED [ 75%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_get PASSED [ 75%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_set PASSED [ 75%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_istranslatable PASSED [ 75%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_locations PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_nongettext_location PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_adding_empty_note PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_markreview PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_errors PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_no_plural_settarget PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrapping_bug PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_extract_msgidcomments_from_text PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isheader PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_buildfromunit PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plurals PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plural_reduction PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes_withcomments PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_firstlines PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_newlines PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_max_line_length PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_slash PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_spacing_max_line PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_create_blank PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_add PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_remove PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_find PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_translate PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_files PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_save PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_markup PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nonascii PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_extensions PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mimetypes PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_context_only PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_simpleentry PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_copy PASSED [ 76%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_source_string PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_file PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plurals PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plural_unicode PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nongettext_location PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_percent_location PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals XFAIL [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_empty_lines_notes PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_fuzzy PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated XFAIL [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merging_automaticcomments PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_units PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_obsolete_units PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_uniforum_po PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete_with_prev_msgid PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_header_escapes PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_plural PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgctxt PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgidcomments PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_multiline_obsolete PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_mixed_sources PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_context PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_advanced_context PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_context PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_broken_kde_context PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_id PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments_2 PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_final_slash PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unfinished_lines PASSED [ 77%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_encoding_change PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_istranslated PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping_cjk PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_emoji PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis_long PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_gettext PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_msgidcomments PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_ids PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_syntax_error PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapped_msgid PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_missing_plural PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_combine_msgidcomments PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates_msgctxt PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_blanks PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_output_str_unicode PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_posections PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_typecomments PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unassociated_comments PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_header PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_prevmsgid_parse PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_newlines PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unix_newlines PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mac_newlines PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_header PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_comment PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_bom PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_long_msgidcomments PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_incomplete PASSED [ 78%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_invalid PASSED [ 79%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_write PASSED [ 79%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment XFAIL [ 79%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_typecomment PASSED [ 79%] 1231s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_custom PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtUnit::test_isfuzzy PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtUnit::test_create PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtUnit::test_eq PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtUnit::test_target PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtUnit::test_escapes PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtUnit::test_difficult_escapes PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtUnit::test_note_sanity PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_get PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_set PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtFile::test_create_blank PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtFile::test_find PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtFile::test_translate PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtFile::test_markup PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtFile::test_extensions PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtFile::test_mimetypes PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtFile::test_parse PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtFile::test_save PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtFile::test_files PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtFile::test_nonascii PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtFile::test_add PASSED [ 79%] 1231s tests/translate/storage/test_qm.py::TestQtFile::test_remove PASSED [ 79%] 1231s tests/translate/storage/test_qph.py::TestQphUnit::test_isfuzzy PASSED [ 79%] 1231s tests/translate/storage/test_qph.py::TestQphUnit::test_create PASSED [ 79%] 1231s tests/translate/storage/test_qph.py::TestQphUnit::test_eq PASSED [ 79%] 1231s tests/translate/storage/test_qph.py::TestQphUnit::test_target PASSED [ 79%] 1231s tests/translate/storage/test_qph.py::TestQphUnit::test_escapes PASSED [ 79%] 1231s tests/translate/storage/test_qph.py::TestQphUnit::test_difficult_escapes PASSED [ 79%] 1231s tests/translate/storage/test_qph.py::TestQphUnit::test_note_sanity PASSED [ 79%] 1231s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_get PASSED [ 79%] 1231s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_set PASSED [ 80%] 1231s tests/translate/storage/test_qph.py::TestQphFile::test_create_blank PASSED [ 80%] 1231s tests/translate/storage/test_qph.py::TestQphFile::test_add PASSED [ 80%] 1231s tests/translate/storage/test_qph.py::TestQphFile::test_remove PASSED [ 80%] 1231s tests/translate/storage/test_qph.py::TestQphFile::test_find PASSED [ 80%] 1231s tests/translate/storage/test_qph.py::TestQphFile::test_translate PASSED [ 80%] 1231s tests/translate/storage/test_qph.py::TestQphFile::test_parse PASSED [ 80%] 1231s tests/translate/storage/test_qph.py::TestQphFile::test_files PASSED [ 80%] 1231s tests/translate/storage/test_qph.py::TestQphFile::test_save PASSED [ 80%] 1231s tests/translate/storage/test_qph.py::TestQphFile::test_markup PASSED [ 80%] 1231s tests/translate/storage/test_qph.py::TestQphFile::test_nonascii PASSED [ 80%] 1231s tests/translate/storage/test_qph.py::TestQphFile::test_extensions PASSED [ 80%] 1231s tests/translate/storage/test_qph.py::TestQphFile::test_mimetypes PASSED [ 80%] 1231s tests/translate/storage/test_qph.py::TestQphFile::test_basic PASSED [ 80%] 1231s tests/translate/storage/test_qph.py::TestQphFile::test_source PASSED [ 80%] 1231s tests/translate/storage/test_qph.py::TestQphFile::test_target PASSED [ 80%] 1231s tests/translate/storage/test_qph.py::TestQphFile::test_language PASSED [ 80%] 1231s tests/translate/storage/test_rc.py::test_escaping PASSED [ 80%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_comments PASSED [ 80%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_textinclude PASSED [ 80%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_parse_dialog PASSED [ 80%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_parse_stringtable PASSED [ 80%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_lf PASSED [ 80%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_crlf PASSED [ 80%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_cr PASSED [ 80%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_parse_no_language PASSED [ 80%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude PASSED [ 80%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_multiline PASSED [ 80%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_str PASSED [ 80%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_empty PASSED [ 80%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_utf_8 PASSED [ 80%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_utf_16 PASSED [ 80%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_comment PASSED [ 80%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_stringtables PASSED [ 80%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude_appstudio PASSED [ 81%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_id_whitespace PASSED [ 81%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_menu_comment PASSED [ 81%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_decompiled PASSED [ 81%] 1232s tests/translate/storage/test_rc.py::TestRcFile::test_quotes PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_isfuzzy PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_create PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_eq PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_escapes PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_difficult_escapes PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_note_sanity PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_target PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_get PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_set PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_create_blank PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_add PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_remove PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_find PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_parse PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_files PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_save PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_extensions PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_mimetypes PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_translate PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_markup PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_nonascii PASSED [ 81%] 1232s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_roundtrip PASSED [ 81%] 1232s tests/translate/storage/test_resx.py::TestRESXUnit::test_isfuzzy PASSED [ 81%] 1232s tests/translate/storage/test_resx.py::TestRESXUnit::test_create PASSED [ 81%] 1232s tests/translate/storage/test_resx.py::TestRESXUnit::test_eq PASSED [ 81%] 1232s tests/translate/storage/test_resx.py::TestRESXUnit::test_escapes PASSED [ 81%] 1232s tests/translate/storage/test_resx.py::TestRESXUnit::test_difficult_escapes PASSED [ 81%] 1232s tests/translate/storage/test_resx.py::TestRESXUnit::test_note_sanity PASSED [ 81%] 1232s tests/translate/storage/test_resx.py::TestRESXUnit::test_target PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_get PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_set PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_isfuzzy PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_create PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_eq PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_escapes PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_difficult_escapes PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_note_sanity PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_target PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_get PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_set PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit_comment PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXfile::test_create_blank PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXfile::test_add PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXfile::test_remove PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXfile::test_find PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXfile::test_parse PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXfile::test_files PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXfile::test_save PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXfile::test_extensions PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXfile::test_mimetypes PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXfile::test_translate PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXfile::test_markup PASSED [ 82%] 1232s tests/translate/storage/test_resx.py::TestRESXfile::test_nonascii PASSED [ 82%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_isfuzzy PASSED [ 82%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_create PASSED [ 82%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq PASSED [ 82%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_escapes PASSED [ 82%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_difficult_escapes PASSED [ 82%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_note_sanity PASSED [ 82%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_target PASSED [ 82%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_get PASSED [ 82%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_set PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_source PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq_formatvaluetype PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_innerkey PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_create_blank PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_remove PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_find PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_parse PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_files PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_save PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_extensions PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_mimetypes PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_translate PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_markup PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_nonascii PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_serialize PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_default_handlings PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_base_filename PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_plural_zero_always_set PASSED [ 83%] 1232s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add_unit PASSED [ 83%] 1232s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_isfuzzy PASSED [ 83%] 1232s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_create PASSED [ 83%] 1232s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_eq PASSED [ 83%] 1232s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_escapes PASSED [ 83%] 1232s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_difficult_escapes PASSED [ 83%] 1232s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_target PASSED [ 83%] 1232s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_get PASSED [ 83%] 1232s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_set PASSED [ 83%] 1232s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity XFAIL [ 83%] 1232s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_create_blank PASSED [ 83%] 1232s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_add PASSED [ 83%] 1232s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_remove PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_find PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_parse PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_files PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_save PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_extensions PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_mimetypes PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_translate PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_markup PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_nonascii PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_create_blank PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_add PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_remove PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_find PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_parse PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_files PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_save PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_extensions PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_mimetypes PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_translate PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_markup PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_nonascii PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_create_blank PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_add PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_remove PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_find PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_parse PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_files PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_save PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_extensions PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_mimetypes PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_translate PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_markup PASSED [ 84%] 1232s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_nonascii PASSED [ 85%] 1232s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_create_blank PASSED [ 85%] 1232s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_add PASSED [ 85%] 1232s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_remove PASSED [ 85%] 1232s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_find PASSED [ 85%] 1232s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_parse PASSED [ 85%] 1232s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_files PASSED [ 85%] 1232s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_save PASSED [ 85%] 1232s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_extensions PASSED [ 85%] 1232s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_mimetypes PASSED [ 85%] 1232s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_translate PASSED [ 85%] 1232s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_markup PASSED [ 85%] 1232s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_nonascii PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXUnit::test_isfuzzy PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXUnit::test_create PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXUnit::test_eq PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXUnit::test_target PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXUnit::test_escapes PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXUnit::test_difficult_escapes PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXUnit::test_note_sanity PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_get PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_set PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_create_blank PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_add PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_remove PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_find PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_translate PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_parse PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_files PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_save PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_markup PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_nonascii PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_extensions PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_mimetypes PASSED [ 85%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_basic PASSED [ 86%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_source PASSED [ 86%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_target PASSED [ 86%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_setid PASSED [ 86%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_indent PASSED [ 86%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_descrip PASSED [ 86%] 1232s tests/translate/storage/test_tbx.py::TestTBXfile::test_note_from PASSED [ 86%] 1232s tests/translate/storage/test_tiki.py::TestTikiUnit::test_locations PASSED [ 86%] 1232s tests/translate/storage/test_tiki.py::TestTikiUnit::test_to_unicode PASSED [ 86%] 1232s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_simple PASSED [ 86%] 1232s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_encode PASSED [ 86%] 1232s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_locations PASSED [ 86%] 1232s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_ignore_extras PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnit::test_isfuzzy PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnit::test_create PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnit::test_eq PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnit::test_target PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnit::test_escapes PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnit::test_difficult_escapes PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnit::test_note_sanity PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_get PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_set PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_isfuzzy PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_create PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_eq PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_target PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_escapes PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_difficult_escapes PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_note_sanity PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_get PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_set PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXfile::test_create_blank PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXfile::test_add PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXfile::test_remove PASSED [ 86%] 1232s tests/translate/storage/test_tmx.py::TestTMXfile::test_find PASSED [ 87%] 1232s tests/translate/storage/test_tmx.py::TestTMXfile::test_parse PASSED [ 87%] 1232s tests/translate/storage/test_tmx.py::TestTMXfile::test_files PASSED [ 87%] 1232s tests/translate/storage/test_tmx.py::TestTMXfile::test_save PASSED [ 87%] 1232s tests/translate/storage/test_tmx.py::TestTMXfile::test_markup PASSED [ 87%] 1232s tests/translate/storage/test_tmx.py::TestTMXfile::test_nonascii PASSED [ 87%] 1232s tests/translate/storage/test_tmx.py::TestTMXfile::test_extensions PASSED [ 87%] 1232s tests/translate/storage/test_tmx.py::TestTMXfile::test_mimetypes PASSED [ 87%] 1232s tests/translate/storage/test_tmx.py::TestTMXfile::test_translate PASSED [ 87%] 1232s tests/translate/storage/test_tmx.py::TestTMXfile::test_addtranslation PASSED [ 87%] 1232s tests/translate/storage/test_tmx.py::TestTMXfile::test_withcomment PASSED [ 87%] 1232s tests/translate/storage/test_tmx.py::TestTMXfile::test_withnewlines PASSED [ 87%] 1232s tests/translate/storage/test_tmx.py::TestTMXfile::test_xmlentities PASSED [ 87%] 1232s tests/translate/storage/test_tmx.py::TestTMXfile::test_controls_cleaning PASSED [ 87%] 1232s tests/translate/storage/test_trados.py::test_unescape PASSED [ 87%] 1232s tests/translate/storage/test_trados.py::test_escape PASSED [ 87%] 1232s tests/translate/storage/test_ts.py::TestTS::test_construct PASSED [ 87%] 1232s tests/translate/storage/test_ts2.py::TestTSUnit::test_isfuzzy PASSED [ 87%] 1232s tests/translate/storage/test_ts2.py::TestTSUnit::test_create PASSED [ 87%] 1232s tests/translate/storage/test_ts2.py::TestTSUnit::test_eq PASSED [ 87%] 1232s tests/translate/storage/test_ts2.py::TestTSUnit::test_target PASSED [ 87%] 1232s tests/translate/storage/test_ts2.py::TestTSUnit::test_escapes PASSED [ 87%] 1232s tests/translate/storage/test_ts2.py::TestTSUnit::test_difficult_escapes PASSED [ 87%] 1232s tests/translate/storage/test_ts2.py::TestTSUnit::test_note_sanity PASSED [ 87%] 1232s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_get PASSED [ 87%] 1232s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_set PASSED [ 87%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_create_blank PASSED [ 87%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_add PASSED [ 87%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_remove PASSED [ 87%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_find PASSED [ 87%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_translate PASSED [ 87%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_parse PASSED [ 87%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_files PASSED [ 87%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_save PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_markup PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_nonascii PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_extensions PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_mimetypes PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_basic PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_source PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_target PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_plurals PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_nplural PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_language PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_edit PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_obsolete PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_locations PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_merge_with_fuzzies PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_getid PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_backnforth PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_context PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_roundtrip_context PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_edit_missing_translation PASSED [ 88%] 1232s tests/translate/storage/test_ts2.py::TestTSfile::test_missing_source PASSED [ 88%] 1232s tests/translate/storage/test_txt.py::TestTxtUnit::test_isfuzzy PASSED [ 88%] 1232s tests/translate/storage/test_txt.py::TestTxtUnit::test_create PASSED [ 88%] 1232s tests/translate/storage/test_txt.py::TestTxtUnit::test_eq PASSED [ 88%] 1232s tests/translate/storage/test_txt.py::TestTxtUnit::test_escapes PASSED [ 88%] 1232s tests/translate/storage/test_txt.py::TestTxtUnit::test_difficult_escapes PASSED [ 88%] 1232s tests/translate/storage/test_txt.py::TestTxtUnit::test_note_sanity PASSED [ 88%] 1232s tests/translate/storage/test_txt.py::TestTxtUnit::test_target PASSED [ 88%] 1232s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_get PASSED [ 88%] 1232s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_set PASSED [ 88%] 1232s tests/translate/storage/test_txt.py::TestTxtFile::test_create_blank PASSED [ 88%] 1232s tests/translate/storage/test_txt.py::TestTxtFile::test_add PASSED [ 88%] 1232s tests/translate/storage/test_txt.py::TestTxtFile::test_remove PASSED [ 88%] 1232s tests/translate/storage/test_txt.py::TestTxtFile::test_find PASSED [ 88%] 1232s tests/translate/storage/test_txt.py::TestTxtFile::test_parse PASSED [ 89%] 1232s tests/translate/storage/test_txt.py::TestTxtFile::test_files PASSED [ 89%] 1232s tests/translate/storage/test_txt.py::TestTxtFile::test_save PASSED [ 89%] 1232s tests/translate/storage/test_txt.py::TestTxtFile::test_extensions PASSED [ 89%] 1232s tests/translate/storage/test_txt.py::TestTxtFile::test_mimetypes PASSED [ 89%] 1232s tests/translate/storage/test_txt.py::TestTxtFile::test_translate PASSED [ 89%] 1232s tests/translate/storage/test_txt.py::TestTxtFile::test_markup PASSED [ 89%] 1232s tests/translate/storage/test_txt.py::TestTxtFile::test_nonascii PASSED [ 89%] 1232s tests/translate/storage/test_txt.py::TestTxtFile::test_simpleblock PASSED [ 89%] 1232s tests/translate/storage/test_txt.py::TestTxtFile::test_multipleblocks PASSED [ 89%] 1232s tests/translate/storage/test_txt.py::TestTxtFile::test_no_segmentation PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxUnit::test_isfuzzy PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxUnit::test_create PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxUnit::test_eq PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxUnit::test_target PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxUnit::test_escapes PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxUnit::test_difficult_escapes PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxUnit::test_note_sanity PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_get PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_set PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxFile::test_create_blank PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxFile::test_add PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxFile::test_remove PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxFile::test_find PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxFile::test_translate PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxFile::test_parse PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxFile::test_files PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxFile::test_save PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxFile::test_markup PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxFile::test_nonascii PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxFile::test_extensions PASSED [ 89%] 1232s tests/translate/storage/test_utx.py::TestUtxFile::test_mimetypes PASSED [ 89%] 1232s tests/translate/storage/test_wordfast.py::TestWFTime::test_timestring PASSED [ 89%] 1232s tests/translate/storage/test_wordfast.py::TestWFTime::test_time PASSED [ 89%] 1232s tests/translate/storage/test_wordfast.py::TestWFUnit::test_isfuzzy PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFUnit::test_create PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFUnit::test_eq PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFUnit::test_target PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFUnit::test_escapes PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFUnit::test_note_sanity PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_get PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_set PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFUnit::test_difficult_escapes PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFUnit::test_wordfast_escaping PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFUnit::test_newlines PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFUnit::test_language_setting PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFUnit::test_istranslated PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFFile::test_create_blank PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFFile::test_add PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFFile::test_remove PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFFile::test_find PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFFile::test_translate PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFFile::test_parse PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFFile::test_files PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFFile::test_save PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFFile::test_markup PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFFile::test_nonascii PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFFile::test_extensions PASSED [ 90%] 1232s tests/translate/storage/test_wordfast.py::TestWFFile::test_mimetypes PASSED [ 90%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_isfuzzy PASSED [ 90%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_create PASSED [ 90%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_eq PASSED [ 90%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_target PASSED [ 90%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_escapes PASSED [ 90%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_difficult_escapes PASSED [ 90%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_note_sanity PASSED [ 90%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_get PASSED [ 90%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_set PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_markreview PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_errors PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_accepted_control_chars PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_unaccepted_control_chars PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_create_blank PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_remove PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_find PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_translate PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parse PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_files PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_save PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_markup PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_nonascii PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_extensions PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_mimetypes PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_basic PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_namespace PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_source PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_target PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_source PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_target PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_sourcelanguage PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage_multi PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_notes PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_alttrans PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_fuzzy PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_xml_space PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parsing PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_entities PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_multiple_filenodes PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_indent PASSED [ 91%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add_target PASSED [ 92%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve PASSED [ 92%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_closing_tags PASSED [ 92%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_context_groups PASSED [ 92%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_getlocations PASSED [ 92%] 1232s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_addlocation PASSED [ 92%] 1233s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_huge PASSED [ 92%] 1233s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve_add PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_isfuzzy PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_create PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_eq PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_escapes PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_difficult_escapes PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_note_sanity PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_target PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_get PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_set PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_getlocations PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_create_blank PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_find PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_files PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_save PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_extensions PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_mimetypes PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_translate PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_markup PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nonascii PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_serialize PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit_unicode PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse_unicode_list PASSED [ 92%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_ordering PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_initial_comments PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_string_key PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nested PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_multiline PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_boolean PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_integer PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_no_quote_strings PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_double_quote_strings PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_single_quote_strings PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_double_quote_strings PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_single_quote_strings PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_escaped_double_quotes PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_newlines PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_list PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_dictionary PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_key_nesting PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add_to_mepty PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty_key PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dict_in_list PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dump_args PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_anchors PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_tagged_scalar PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_numeric PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_remove PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_special PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_quotes_roundtrip PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_create_blank PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_remove PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_find PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_parse PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_files PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_save PASSED [ 93%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_extensions PASSED [ 94%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_mimetypes PASSED [ 94%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_translate PASSED [ 94%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_markup PASSED [ 94%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_nonascii PASSED [ 94%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_list PASSED [ 94%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby PASSED [ 94%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_wrong PASSED [ 94%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_invalid_value PASSED [ 94%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural PASSED [ 94%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_empty PASSED [ 94%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_anchors PASSED [ 94%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_type_change PASSED [ 94%] 1233s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_add PASSED [ 94%] 1233s tests/translate/storage/test_zip.py::TestZIPFile::test_created PASSED [ 94%] 1233s tests/translate/storage/test_zip.py::TestZIPFile::test_basic PASSED [ 94%] 1233s tests/translate/storage/test_zip.py::TestZIPFile::test_structure PASSED [ 94%] 1233s tests/translate/storage/test_zip.py::TestZIPFile::test_getunits PASSED [ 94%] 1233s tests/translate/storage/xml_extract/test_misc.py::test_reduce_tree PASSED [ 94%] 1233s tests/translate/storage/xml_extract/test_misc.py::test_compose_mappings PASSED [ 94%] 1233s tests/translate/storage/xml_extract/test_misc.py::test_parse_tag PASSED [ 94%] 1233s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath_component PASSED [ 94%] 1233s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath PASSED [ 94%] 1233s tests/translate/storage/xml_extract/test_unit_tree.py::test__add_unit_to_tree PASSED [ 94%] 1233s tests/translate/storage/xml_extract/test_xpath_breadcrumb.py::test_breadcrumb PASSED [ 94%] 1233s tests/translate/tools/test_help.py::test_help[build_tmdb] PASSED [ 94%] 1233s tests/translate/tools/test_help.py::test_help[phppo2pypo] PASSED [ 94%] 1233s tests/translate/tools/test_help.py::test_help[poclean] PASSED [ 94%] 1234s tests/translate/tools/test_help.py::test_help[pocompile] PASSED [ 94%] 1234s tests/translate/tools/test_help.py::test_help[poconflicts] PASSED [ 94%] 1234s tests/translate/tools/test_help.py::test_help[pocount] PASSED [ 94%] 1234s tests/translate/tools/test_help.py::test_help[podebug] PASSED [ 94%] 1234s tests/translate/tools/test_help.py::test_help[pogrep] PASSED [ 94%] 1234s tests/translate/tools/test_help.py::test_help[pomerge] PASSED [ 94%] 1234s tests/translate/tools/test_help.py::test_help[porestructure] PASSED [ 95%] 1234s tests/translate/tools/test_help.py::test_help[posegment] PASSED [ 95%] 1234s tests/translate/tools/test_help.py::test_help[poswap] PASSED [ 95%] 1234s tests/translate/tools/test_help.py::test_help[poterminology] PASSED [ 95%] 1234s tests/translate/tools/test_help.py::test_help[pretranslate] PASSED [ 95%] 1234s tests/translate/tools/test_help.py::test_help[pydiff] PASSED [ 95%] 1234s tests/translate/tools/test_help.py::test_help[pypo2phppo] PASSED [ 95%] 1234s tests/translate/tools/test_junitmsgfmt.py::test_output[failure] PASSED [ 95%] 1234s tests/translate/tools/test_junitmsgfmt.py::test_output[untranslated] PASSED [ 95%] 1234s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_single_po PASSED [ 95%] 1234s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_plural_po PASSED [ 95%] 1234s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_single_po PASSED [ 95%] 1234s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_plural_po PASSED [ 95%] 1234s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_help PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_zero PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_one PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_two PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::TestCount::test_punctuation_divides_words PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::TestCount::test_xml_tags PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::TestCount::test_newlines PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::TestCount::test_variables_are_words PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::TestCount::test_plurals PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde XFAIL [ 95%] 1234s tests/translate/tools/test_pocount.py::TestCount::test_msgid_blank PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::TestPOCount::test_translated PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzy PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslated PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::TestPOCount::test_total PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::TestPOCount::test_translatedsourcewords PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzysourcewords PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslatedsourcewords PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::TestPOCount::test_totalsourcewords PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-csv] PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-full] PASSED [ 95%] 1234s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-strings] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-words] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-csv] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-full] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-strings] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-words] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-csv] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-full] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-strings] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-words] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-csv] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-full] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-strings] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-words] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_cases[po-file] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_cases[po-file-fuzzy] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_cases[po-file-csv] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_cases[xliff-states-yes] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_cases[xliff-states-no] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_error_cases[mutually-exclusive] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_error_cases[missing-file] PASSED [ 96%] 1234s tests/translate/tools/test_pocount.py::test_error_cases[no-args] PASSED [ 96%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_ignore_gtk PASSED [ 96%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_keep_target PASSED [ 96%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_blank PASSED [ 96%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_en PASSED [ 96%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_xxx PASSED [ 96%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_bracket PASSED [ 96%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode PASSED [ 96%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_at_placeholders PASSED [ 96%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_single_brace_placeholders PASSED [ 96%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_double_brace_placeholders PASSED [ 96%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_html PASSED [ 96%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_multiple_styles_of_placeholder PASSED [ 97%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped PASSED [ 97%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_at_placeholders PASSED [ 97%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_single_brace_placeholders PASSED [ 97%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_double_brace_placeholders PASSED [ 97%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_html PASSED [ 97%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_multiple_styles_of_placeholder PASSED [ 97%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified PASSED [ 97%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_at_placeholders PASSED [ 97%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_single_brace_placeholders PASSED [ 97%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_double_brace_placeholders PASSED [ 97%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_html PASSED [ 97%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_multiple_styles_of_placeholder PASSED [ 97%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_chef PASSED [ 97%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_po_variables PASSED [ 97%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_xliff_rewrite PASSED [ 97%] 1234s tests/translate/tools/test_podebug.py::TestPODebug::test_hash PASSED [ 97%] 1234s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgid PASSED [ 97%] 1234s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgstr PASSED [ 97%] 1234s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations PASSED [ 97%] 1234s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_comments PASSED [ 97%] 1234s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations_with_comment_enabled PASSED [ 97%] 1234s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_searchstring PASSED [ 97%] 1234s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_regex_searchstring PASSED [ 97%] 1234s tests/translate/tools/test_pogrep.py::TestPOGrep::test_keep_translations PASSED [ 97%] 1234s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_normalise PASSED [ 97%] 1234s tests/translate/tools/test_pogrep.py::TestXLiffGrep::test_simplegrep PASSED [ 97%] 1234s tests/translate/tools/test_pomerge.py::test_str2bool PASSED [ 97%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_mergesore_bad_data PASSED [ 97%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge PASSED [ 97%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge_no_locations PASSED [ 97%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_replacemerge PASSED [ 97%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_blanks PASSED [ 97%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_fuzzies PASSED [ 97%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_locations PASSED [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_with_locations PASSED [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_no_locations PASSED [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_reflowed_source_comments PASSED [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_comments_with_blank_lines PASSED [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dont_delete_unassociated_comments PASSED [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_trailing_newlines PASSED [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_minor_start_and_end_of_sentence_changes PASSED [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_last_entry_in_a_file PASSED [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs XFAIL [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_comments_layout PASSED [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dos2unix PASSED [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_xliff PASSED [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_po_into_xliff PASSED [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_po PASSED [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_dont_merge_kde_comments_found_in_translation PASSED [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_untranslated_with_kde_disambiguation PASSED [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_header_entries PASSED [ 98%] 1234s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_different_locations PASSED [ 98%] 1234s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_simple PASSED [ 98%] 1234s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_punctuation PASSED [ 98%] 1235s tests/translate/tools/test_poterminology.py::TestPOTerminology::test_term_extraction PASSED [ 98%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_pretranslatepo_blank PASSED [ 98%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_simple PASSED [ 98%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_messages_marked_fuzzy PASSED [ 98%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals_with_fuzzy_matching PASSED [ 98%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change XFAIL [ 98%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_change PASSED [ 98%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_and_whitespace_change PASSED [ 98%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes XFAIL [ 98%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently XFAIL [ 98%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_dont_duplicate PASSED [ 98%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_new_overides_old PASSED [ 98%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments_with_blank_comment_lines PASSED [ 98%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_empty_commentlines PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgidcomments PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_resurect_obsolete_messages PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_typecomments PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_xliff_states PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_pretranslatepo_blank PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_simple PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_messages_marked_fuzzy PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change XFAIL [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_change PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_and_whitespace_change PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes XFAIL [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently XFAIL [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_new_overides_old PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments_with_blank_comment_lines PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_empty_commentlines PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgidcomments PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_resurect_obsolete_messages PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_typecomments PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_xliff_states PASSED [ 99%] 1235s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_help PASSED [ 99%] 1235s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_single_po PASSED [ 99%] 1235s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_plural_po PASSED [ 99%] 1235s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_single_po PASSED [ 99%] 1235s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_plural_po PASSED [ 99%] 1235s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_help PASSED [ 99%] 1235s tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff PASSED [ 99%] 1235s tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff PASSED [100%] 1235s 1235s =============================== warnings summary =============================== 1235s tests/translate/storage/test_cpo.py:15 1235s Warning: 1235s Module 'translate.storage.cpo' was found, but when imported by pytest it raised: 1235s ImportError('gettext PO library not found') 1235s In pytest 9.1 this warning will become an error by default. 1235s You can fix the underlying problem, or alternatively overwrite this behavior and silence this warning by passing exc_type=ImportError explicitly. 1235s See https://docs.pytest.org/en/stable/deprecations.html#pytest-importorskip-default-behavior-regarding-importerror 1235s 1235s tests/odf_xliff/test_odf_xliff.py::test_roundtrip 1235s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.9zB7bO/autopkgtest_tmp/tests/odf_xliff/test_2.odt'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid 1235s Warning: unclosed file <_io.TextIOWrapper name='TestAndroid2POCommand_test_convertandroid/en.po' mode='r' encoding='UTF-8'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 1235s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 1235s Warning: unclosed file <_io.TextIOWrapper name='TestCSV2POCommand_test_columnorder/test.po' mode='r' encoding='UTF-8'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot 1235s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_pot/simple.pot'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po 1235s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po 1235s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_po/simple.po'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates 1235s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_remove_duplicates/simple.po'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf 1235s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_xlf/simple.xlf'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 1235s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 1235s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_columnorder/test.csv' mode='r' encoding='UTF-8'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context 1235s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_context/test.csv' mode='r' encoding='UTF-8'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing 1235s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey 1235s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey 1235s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing 1235s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey 1235s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey 1235s Warning: Could not find accesskey for key.accesskey 1235s 1235s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 1235s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file 1235s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten 1235s Warning: unclosed file <_io.BufferedReader name='translation/file1.po'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 1235s Warning: unclosed file <_io.BufferedWriter name='translated/file1.html'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert 1235s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.9zB7bO/autopkgtest_tmp/tests/translate/convert/test.idml'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po 1235s Warning: unclosed file <_io.BufferedReader name='translation.po'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 1235s Warning: unclosed file <_io.FileIO name='input.oo' mode='rb' closefd=True> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 1235s Warning: unclosed file <_io.FileIO name='output.oo' mode='wb' closefd=True> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey 1235s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey 1235s Warning: Could not find accesskey for prop.accesskey 1235s 1235s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert 1235s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert/simple.po'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 1235s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf16/simple.po'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1235s Warning: unclosed file <_io.BufferedWriter name='simple.po'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1235s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1235s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_wrong/simple.po'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 1235s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf8/simple.po'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex 1235s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_menuex/simple.po'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot 1235s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_pot/simple.pot'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po 1235s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_po/simple.po'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates 1235s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_remove_duplicates/simple.po'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 1235s Warning: unclosed file <_io.BufferedWriter name='simple.odt'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 1235s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.9zB7bO/autopkgtest_tmp/tests/translate/convert/test.odt'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename 1235s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_preserve_filename/snippet.xlf'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot 1235s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_pot/simple.pot'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po 1235s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_po/simple.po'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates 1235s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_remove_duplicates/simple.po'> 1235s Enable tracemalloc to get traceback where the object was allocated. 1235s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1235s 1235s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 1235s Warning: DTD parse error: :1:36:FATAL:PARSER:ERR_ENTITY_NOT_FINISHED: xmlParseEntityDecl: entity test.me not terminated 1235s 1235s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 1235s Warning: DTD file '' does not validate 1235s 1235s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1235s --------------------------- snapshot report summary ---------------------------- 1235s 23 snapshots passed. 1235s =========================== short test summary info ============================ 1235s SKIPPED [1] tests/translate/storage/test_cpo.py:15: could not import 'translate.storage.cpo': gettext PO library not found 1235s SKIPPED [1] tests/translate/storage/test_fluent.py:29: could not import 'translate.storage.fluent': No module named 'fluent' 1235s SKIPPED [1] tests/translate/filters/test_checks.py:1429: Spell checking for af is not available 1235s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence - Not Implemented 1235s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence - Not Implemented 1235s XFAIL tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template - Need to review if we want this behaviour 1235s XFAIL tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template - Need to review if we want this behaviour 1235s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change - Not implemented - review if this is even correct 1235s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes - Not Implemented - needs review 1235s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently - Not Implemented - review if this is even correct 1235s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change - Not implemented - review if this is even correct 1235s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes - Not Implemented - needs review 1235s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently - Not Implemented - review if this is even correct 1235s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates - This is invalid YAML document 1235s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates - This is invalid YAML document 1235s XFAIL tests/translate/filters/test_checks.py::test_acceleratedvariables - Accelerated variables needs a better implementation 1235s XFAIL tests/translate/filters/test_checks.py::test_musttranslatewords - FIXME: All fails() tests are not working 1235s XFAIL tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time - Bug #3408 1235s XFAIL tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags - Bug #3506 1235s XFAIL tests/translate/lang/test_common.py::test_word_khmer - ZWS is not considered a space in Python 2.6+. Khmer should extend words() to include \u200b in addition to other word breakers. 1235s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables - Test needs fixing, disabled for now 1235s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables - Test needs fixing, disabled for now 1235s XFAIL tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases - Not Implemented 1235s XFAIL tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases - Not Implemented 1235s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_comment_following - Not Implemented 1235s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting - Not Implemented 1235s XFAIL tests/translate/storage/test_omegat.py::TestOtFile::test_extensions - This doesn't work, due to two store classes handling different extensions, but factory listing it as one supported file type 1235s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals - Not Implemented 1235s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 1235s XFAIL tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove - removal not working in full page 1235s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals - Not Implemented 1235s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 1235s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment - Not sure if this can not be parsed gracefully 1235s XFAIL tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity - Not Implemented 1235s XFAIL tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde - Support commented out pending removal 1235s XFAIL tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs - Not Implemented 1235s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change - Not Implemented 1235s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes - Not Implemented 1235s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently - Not Implemented 1235s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change - Not Implemented 1235s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes - Not Implemented 1235s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently - Not Implemented 1235s ========== 3328 passed, 3 skipped, 39 xfailed, 47 warnings in -69.12s ========== 1236s ============================= test session starts ============================== 1236s platform linux -- Python 3.13.2, pytest-8.3.4, pluggy-1.5.0 -- /usr/bin/python3.13 1236s cachedir: .pytest_cache 1236s rootdir: /tmp/autopkgtest.9zB7bO/autopkgtest_tmp 1236s plugins: syrupy-4.8.1, typeguard-4.4.1 1240s collecting ... collected 3368 items / 2 skipped 1240s 1240s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff PASSED [ 0%] 1240s tests/odf_xliff/test_odf_xliff.py::test_roundtrip PASSED [ 0%] 1240s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff2_inline PASSED [ 0%] 1240s tests/translate/convert/test_accesskey.py::test_get_label_and_accesskey PASSED [ 0%] 1240s tests/translate/convert/test_accesskey.py::test_extract_bad_accesskeys PASSED [ 0%] 1240s tests/translate/convert/test_accesskey.py::test_ignore_entities PASSED [ 0%] 1240s tests/translate/convert/test_accesskey.py::test_alternate_accesskey_marker PASSED [ 0%] 1240s tests/translate/convert/test_accesskey.py::test_unicode PASSED [ 0%] 1240s tests/translate/convert/test_accesskey.py::test_numeric PASSED [ 0%] 1240s tests/translate/convert/test_accesskey.py::test_empty_string PASSED [ 0%] 1240s tests/translate/convert/test_accesskey.py::test_end_of_string PASSED [ 0%] 1240s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey PASSED [ 0%] 1240s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey_different_capitals PASSED [ 0%] 1240s tests/translate/convert/test_accesskey.py::test_uncombinable PASSED [ 0%] 1240s tests/translate/convert/test_accesskey.py::test_accesskey_already_in_text PASSED [ 0%] 1240s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_no_template_units PASSED [ 0%] 1240s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_template_units PASSED [ 0%] 1240s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_no_template_units PASSED [ 0%] 1240s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_template_units PASSED [ 0%] 1240s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_help PASSED [ 0%] 1240s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid PASSED [ 0%] 1240s tests/translate/convert/test_convert.py::TestConvertCommand::test_help PASSED [ 0%] 1240s tests/translate/convert/test_csv2po.py::test_replacestrings PASSED [ 0%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity PASSED [ 0%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity_with_template PASSED [ 0%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_newlines PASSED [ 0%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_tabs PASSED [ 0%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_quotes PASSED [ 0%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_empties PASSED [ 0%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_kdecomment PASSED [ 0%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_escaped_newlines PASSED [ 0%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity PASSED [ 0%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity_with_template PASSED [ 0%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_newlines PASSED [ 1%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_tabs PASSED [ 1%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_quotes PASSED [ 1%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_empties PASSED [ 1%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_kdecomment PASSED [ 1%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_escaped_newlines PASSED [ 1%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_help PASSED [ 1%] 1240s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder PASSED [ 1%] 1240s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_simpleentity PASSED [ 1%] 1240s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_convertdtd PASSED [ 1%] 1240s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_apos PASSED [ 1%] 1240s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_quotes PASSED [ 1%] 1240s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity PASSED [ 1%] 1240s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_two_empty_entities PASSED [ 1%] 1240s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity_translated PASSED [ 1%] 1240s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisaton_note_simple PASSED [ 1%] 1240s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisation_note_merge PASSED [ 1%] 1240s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_simple PASSED [ 1%] 1240s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_label PASSED [ 1%] 1240s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_onlyentity PASSED [ 1%] 1240s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_commentedout PASSED [ 1%] 1240s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_spaces_at_start_of_dtd_lines PASSED [ 1%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_folding PASSED [ 1%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_mismatch PASSED [ 1%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_carriage_return_in_multiline_dtd PASSED [ 1%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_with_blankline PASSED [ 1%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_closing_quotes PASSED [ 1%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_preserving_spaces PASSED [ 1%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_escaping_newline_tabs PASSED [ 1%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_abandoned_accelerator PASSED [ 1%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_unassociable_accelerator PASSED [ 1%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_changed_labels_and_accelerators PASSED [ 1%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence XFAIL [ 1%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_exclude_entity_includes PASSED [ 1%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_linewraps PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merging_with_new_untranslated PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merge_without_template PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_simpleentity PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_convertdtd PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_apos PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_quotes PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_two_empty_entities PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity_translated PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisaton_note_simple PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisation_note_merge PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_simple PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_label PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_onlyentity PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_commentedout PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_spaces_at_start_of_dtd_lines PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_folding PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_mismatch PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_carriage_return_in_multiline_dtd PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_with_blankline PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_closing_quotes PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_preserving_spaces PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_escaping_newline_tabs PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_abandoned_accelerator PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_unassociable_accelerator PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_changed_labels_and_accelerators PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence XFAIL [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_exclude_entity_includes PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_linewraps PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merging_with_new_untranslated PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merge_without_template PASSED [ 2%] 1241s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_help PASSED [ 2%] 1241s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_defaults PASSED [ 2%] 1241s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_root_name PASSED [ 3%] 1241s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_value_name PASSED [ 3%] 1241s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_key PASSED [ 3%] 1241s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_default_namespace PASSED [ 3%] 1241s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_namespace_prefix PASSED [ 3%] 1241s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_all_parameters PASSED [ 3%] 1241s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_empty_file_is_empty_store PASSED [ 3%] 1241s tests/translate/convert/test_flatxml2po.py::TestFlatXML2POCommand::test_help PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_extract_lang_attribute_from_html_tag PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title_with_linebreak PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_meta PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_br PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak_and_embedded_br PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_uppercase_html PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div_with_linebreaks PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a_with_linebreak PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_sequence_of_anchor_elements PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_img_empty PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img_inside_a PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_table_summary PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_simple PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_complex PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_empty PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_address PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings_with_linebreaks PASSED [ 3%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dt PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dd PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_span PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_ul PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_lists PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_duplicates PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiline_reflow PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_tags PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_carriage_return PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_encoding_latin1 PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_strip_html PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_text PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_attributes PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_charrefs PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiple_php PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_multiline PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_with_embedded_html PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_comments PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2PO::test_attribute_without_value PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_extract_lang_attribute_from_html_tag PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title_with_linebreak PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_meta PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_br PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak_and_embedded_br PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_uppercase_html PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div_with_linebreaks PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a_with_linebreak PASSED [ 4%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_sequence_of_anchor_elements PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_img_empty PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img_inside_a PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_table_summary PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_simple PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_complex PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_empty PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_address PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings_with_linebreaks PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dt PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dd PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_span PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_ul PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_lists PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_duplicates PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiline_reflow PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_tags PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_carriage_return PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_encoding_latin1 PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_strip_html PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_text PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_attributes PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_charrefs PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiple_php PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_multiline PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_with_embedded_html PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_comments PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_attribute_without_value PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_help PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_single PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile PASSED [ 5%] 1241s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile_to_stdout PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_convert_empty_file PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_translations PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_summary PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_description PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_location PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_comment PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_template_duplicate_style PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_misaligned_files PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_blank_msgstr PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_duplicate_style PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_convert_empty_file PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_translations PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_summary PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_description PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_location PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_comment PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_template_duplicate_style PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_misaligned_files PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_blank_msgstr PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_duplicate_style PASSED [ 6%] 1241s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_help PASSED [ 6%] 1241s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_help PASSED [ 6%] 1241s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_convert PASSED [ 6%] 1241s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_empty_file PASSED [ 6%] 1241s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_no_translation PASSED [ 6%] 1241s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_simple PASSED [ 6%] 1241s tests/translate/convert/test_ini2po.py::TestIni2PO::test_no_duplicates PASSED [ 6%] 1241s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_simple PASSED [ 6%] 1241s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_misaligned_files PASSED [ 6%] 1241s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_blank_msgstr PASSED [ 6%] 1241s tests/translate/convert/test_ini2po.py::TestIni2PO::test_dialects_inno PASSED [ 7%] 1241s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_empty_file PASSED [ 7%] 1241s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_no_translation PASSED [ 7%] 1241s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_simple PASSED [ 7%] 1241s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_no_duplicates PASSED [ 7%] 1241s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_simple PASSED [ 7%] 1241s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_misaligned_files PASSED [ 7%] 1241s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_blank_msgstr PASSED [ 7%] 1241s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_dialects_inno PASSED [ 7%] 1241s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_help PASSED [ 7%] 1241s tests/translate/convert/test_json2po.py::TestJson2PO::test_simple PASSED [ 7%] 1241s tests/translate/convert/test_json2po.py::TestJson2PO::test_three_same_keys PASSED [ 7%] 1241s tests/translate/convert/test_json2po.py::TestJson2PO::test_filter PASSED [ 7%] 1241s tests/translate/convert/test_json2po.py::TestJson2PO::test_miltiple_units PASSED [ 7%] 1241s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_simple PASSED [ 7%] 1241s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_three_same_keys PASSED [ 7%] 1241s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_filter PASSED [ 7%] 1241s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_miltiple_units PASSED [ 7%] 1241s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_help PASSED [ 7%] 1241s tests/translate/convert/test_md2po.py::TestMD2PO::test_help PASSED [ 7%] 1241s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_single PASSED [ 7%] 1241s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_onefile PASSED [ 7%] 1241s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_single PASSED [ 7%] 1241s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_onefile PASSED [ 7%] 1241s tests/translate/convert/test_moz2po.py::TestMoz2POCommand::test_help PASSED [ 7%] 1241s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_simpleentry PASSED [ 7%] 1241s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_uncomment_contributors PASSED [ 7%] 1241s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_convert_empty PASSED [ 7%] 1241s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_string PASSED [ 7%] 1241s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_merge PASSED [ 7%] 1241s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_entry PASSED [ 7%] 1241s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_comment PASSED [ 7%] 1241s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_meta_tags PASSED [ 7%] 1241s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_keep_duplicates PASSED [ 7%] 1241s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_drop_duplicates PASSED [ 8%] 1241s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_convert_empty PASSED [ 8%] 1241s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_string PASSED [ 8%] 1241s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_merge PASSED [ 8%] 1241s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_entry PASSED [ 8%] 1241s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_comment PASSED [ 8%] 1241s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_meta_tags PASSED [ 8%] 1241s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_keep_duplicates PASSED [ 8%] 1241s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_drop_duplicates PASSED [ 8%] 1241s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_help PASSED [ 8%] 1241s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_help PASSED [ 8%] 1241s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_convert PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2PO::test_simpleentity PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_escape PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_whitespaceonly PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2PO::test_double_escapes PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes_helpcontent2 PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2PO::test_msgid_bug_error_address PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2PO::test_x_comment_inclusion PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simpleentity PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_double_escapes PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_help PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_preserve_filename PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 8%] 1241s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates PASSED [ 8%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_simpleentity PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_escape PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_whitespaceonly PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_double_escapes PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes_helpcontent2 PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_x_comment_inclusion PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_msgid_bug_error_address PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simpleentity PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_double_escapes PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_help PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_preserve_filename PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 1241s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 1249s tests/translate/convert/test_php2po.py::TestPhp2PO::test_simpleentry PASSED [ 9%] 1251s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphp PASSED [ 9%] 1262s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphptemplate PASSED [ 9%] 1271s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpmissing PASSED [ 9%] 1273s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpempty PASSED [ 9%] 1278s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unicode PASSED [ 9%] 1284s tests/translate/convert/test_php2po.py::TestPhp2PO::test_multiline PASSED [ 9%] 1288s tests/translate/convert/test_php2po.py::TestPhp2PO::test_comments_before PASSED [ 9%] 1293s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry PASSED [ 9%] 1299s tests/translate/convert/test_php2po.py::TestPhp2PO::test_hash_comment_with_equals PASSED [ 9%] 1309s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry_translated PASSED [ 9%] 1319s tests/translate/convert/test_php2po.py::TestPhp2PO::test_newlines_in_value PASSED [ 9%] 1328s tests/translate/convert/test_php2po.py::TestPhp2PO::test_spaces_in_name PASSED [ 10%] 1340s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_array PASSED [ 10%] 1351s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_array PASSED [ 10%] 1362s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_nested_arrays PASSED [ 10%] 1374s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_nested_arrays PASSED [ 10%] 1380s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_simpleentry PASSED [ 10%] 1385s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphp PASSED [ 10%] 1397s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphptemplate PASSED [ 10%] 1409s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpmissing PASSED [ 10%] 1412s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpempty PASSED [ 10%] 1417s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unicode PASSED [ 10%] 1423s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_multiline PASSED [ 10%] 1429s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_comments_before PASSED [ 10%] 1435s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry PASSED [ 10%] 1440s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_hash_comment_with_equals PASSED [ 10%] 1451s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry_translated PASSED [ 10%] 1461s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_newlines_in_value PASSED [ 10%] 1471s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_spaces_in_name PASSED [ 10%] 1481s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_array PASSED [ 10%] 1492s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_array PASSED [ 10%] 1501s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_nested_arrays PASSED [ 10%] 1511s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_nested_arrays PASSED [ 10%] 1511s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_help PASSED [ 10%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_simpleentity PASSED [ 10%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_multiline PASSED [ 10%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapednewlines PASSED [ 10%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedtabs PASSED [ 10%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedquotes PASSED [ 10%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedescape PASSED [ 10%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_singlequotes PASSED [ 10%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_empties PASSED [ 10%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_kdecomments PASSED [ 10%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_simpleentity PASSED [ 10%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_multiline PASSED [ 10%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapednewlines PASSED [ 11%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedtabs PASSED [ 11%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedquotes PASSED [ 11%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedescape PASSED [ 11%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_singlequotes PASSED [ 11%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_empties PASSED [ 11%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_kdecomments PASSED [ 11%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_help PASSED [ 11%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder PASSED [ 11%] 1511s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_joinlines PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_escapedstr PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_missingaccesskey PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskeycase PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_types PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities_two PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments_translator PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_retains_hashprefix PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_convertdtd PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_with_template PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_without_template PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_blank_source PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_newlines_escapes PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_simple PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_escape PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_quotes PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_amp PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_merging_entries_with_spaces_removed PASSED [ 11%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces_after_value PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_duplicates PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_joinlines PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_escapedstr PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_missingaccesskey PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskeycase PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_types PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities_two PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments_translator PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_retains_hashprefix PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_convertdtd PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_with_template PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_without_template PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_blank_source PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_newlines_escapes PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_simple PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_escape PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_quotes PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_amp PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_merging_entries_with_spaces_removed PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces_after_value PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_duplicates PASSED [ 12%] 1511s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_help PASSED [ 12%] 1511s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_defaults PASSED [ 13%] 1511s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_root_name PASSED [ 13%] 1511s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_value_name PASSED [ 13%] 1511s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_key PASSED [ 13%] 1511s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_default_namespace PASSED [ 13%] 1511s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_namespace_prefix PASSED [ 13%] 1511s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_indent_eight PASSED [ 13%] 1511s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_noindent PASSED [ 13%] 1511s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXMLCommand::test_help PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2Html::test_simple PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2Html::test_linebreaks PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2Html::test_replace_substrings PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_outside_translatable_content PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_embedded_within_translatable_content PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_without_value PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2Html::test_entities PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2Html::test_escapes PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_translated PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_untranslated PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_fuzzy PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2Html::test_untranslated_attributes PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_simple PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_linebreaks PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_replace_substrings PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_outside_translatable_content PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_embedded_within_translatable_content PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_without_value PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_entities PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_escapes PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_translated PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_untranslated PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_fuzzy PASSED [ 13%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_untranslated_attributes PASSED [ 14%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_help PASSED [ 14%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_individual_files PASSED [ 14%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_fully_recursive PASSED [ 14%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_input_specified PASSED [ 14%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified PASSED [ 14%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_output_specified PASSED [ 14%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file PASSED [ 14%] 1511s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_empty_file PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_summary PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_description PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_location PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_comment PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_complex_icalendar PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_skip_fuzzy PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_include_fuzzy PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_no_template PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_template_location_not_in_source_file PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_below_threshold PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_above_threshold PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_empty_file PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_summary PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_description PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_location PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_comment PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_complex_icalendar PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_skip_fuzzy PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_include_fuzzy PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_no_template PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_template_location_not_in_source_file PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_below_threshold PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_above_threshold PASSED [ 14%] 1511s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_help PASSED [ 14%] 1511s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_help PASSED [ 15%] 1511s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_no_templates PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_simple PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_space_preservation PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_blank_entries PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_fuzzy PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_propertyless_template PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_empty_value PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_dialects_inno PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_misaligned_files PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_below_threshold PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_above_threshold PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_no_fuzzy PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_allow_fuzzy PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_missing_source PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_repeated_locations PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_no_templates PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_simple PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_space_preservation PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_blank_entries PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_fuzzy PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_propertyless_template PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_empty_value PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_dialects_inno PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_misaligned_files PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_below_threshold PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_above_threshold PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_no_fuzzy PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_allow_fuzzy PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_missing_source PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_repeated_locations PASSED [ 15%] 1511s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_help PASSED [ 15%] 1511s tests/translate/convert/test_po2json.py::TestPO2JSON::test_basic PASSED [ 16%] 1511s tests/translate/convert/test_po2json.py::TestPO2JSON::test_ordering_serialize PASSED [ 16%] 1511s tests/translate/convert/test_po2json.py::TestPO2JSON::test_dont_use_empty_translation PASSED [ 16%] 1511s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_false PASSED [ 16%] 1511s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_true PASSED [ 16%] 1511s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_false PASSED [ 16%] 1511s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_true PASSED [ 16%] 1511s tests/translate/convert/test_po2md.py::TestPO2MD::test_help PASSED [ 16%] 1511s tests/translate/convert/test_po2md.py::TestPO2MD::test_single_markdown_file_with_single_po PASSED [ 16%] 1511s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po PASSED [ 16%] 1511s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_and_directory_of_po_files PASSED [ 16%] 1511s tests/translate/convert/test_po2moz.py::TestPO2MozCommand::test_help PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_empty PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_simple PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_comment PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_ok_marker PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_below_threshold PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_above_threshold PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_skip_non_translatable_input PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_no_fuzzy PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_allow_fuzzy PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_mark_active PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_empty PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_simple PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_comment PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_ok_marker PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_below_threshold PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_above_threshold PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_skip_non_translatable_input PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_no_fuzzy PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_allow_fuzzy PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_mark_active PASSED [ 16%] 1511s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_help PASSED [ 16%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OO::test_convertoo PASSED [ 16%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OO::test_pofilter PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_simple PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_escape PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_quotes PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_spaces PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OO::test_default_timestamp PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OO::test_escape_conversion PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes2 PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_convertoo PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_pofilter PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_simple PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_quotes PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_spaces PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_escape_conversion PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes2 PASSED [ 17%] 1511s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_help PASSED [ 17%] 1516s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp PASSED [ 17%] 1516s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_notemplate PASSED [ 17%] 1516s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_empty_template PASSED [ 17%] 1519s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_simple PASSED [ 17%] 1522s tests/translate/convert/test_po2php.py::TestPO2Php::test_space_preservation PASSED [ 17%] 1524s tests/translate/convert/test_po2php.py::TestPO2Php::test_preserve_unused_statement PASSED [ 17%] 1527s tests/translate/convert/test_po2php.py::TestPO2Php::test_not_translated_multiline PASSED [ 17%] 1529s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_blank_entries PASSED [ 17%] 1532s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_fuzzy PASSED [ 17%] 1534s tests/translate/convert/test_po2php.py::TestPO2Php::test_locations_with_spaces PASSED [ 17%] 1537s tests/translate/convert/test_po2php.py::TestPO2Php::test_inline_comments PASSED [ 17%] 1539s tests/translate/convert/test_po2php.py::TestPO2Php::test_block_comments PASSED [ 17%] 1542s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_variables PASSED [ 17%] 1544s tests/translate/convert/test_po2php.py::TestPO2Php::test_multiline PASSED [ 17%] 1546s tests/translate/convert/test_po2php.py::TestPO2Php::test_hash_comment PASSED [ 18%] 1549s tests/translate/convert/test_po2php.py::TestPO2Php::test_arrays PASSED [ 18%] 1551s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_nested_array PASSED [ 18%] 1554s tests/translate/convert/test_po2php.py::TestPO2Php::test_unnamed_nested_arrays PASSED [ 18%] 1554s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template XFAIL [ 18%] 1559s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp PASSED [ 18%] 1559s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_notemplate PASSED [ 18%] 1559s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_empty_template PASSED [ 18%] 1561s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_simple PASSED [ 18%] 1564s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_space_preservation PASSED [ 18%] 1566s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_preserve_unused_statement PASSED [ 18%] 1568s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_not_translated_multiline PASSED [ 18%] 1571s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_blank_entries PASSED [ 18%] 1573s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_fuzzy PASSED [ 18%] 1576s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_locations_with_spaces PASSED [ 18%] 1579s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_inline_comments PASSED [ 18%] 1581s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_block_comments PASSED [ 18%] 1584s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_variables PASSED [ 18%] 1586s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_multiline PASSED [ 18%] 1589s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_hash_comment PASSED [ 18%] 1591s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_arrays PASSED [ 18%] 1593s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_nested_array PASSED [ 18%] 1596s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_unnamed_nested_arrays PASSED [ 18%] 1596s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template XFAIL [ 18%] 1596s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_help PASSED [ 18%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_simple PASSED [ 18%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated PASSED [ 18%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_hard_newlines_preserved PASSED [ 18%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_space_preservation PASSED [ 18%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_value PASSED [ 18%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_separator PASSED [ 18%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank_entries PASSED [ 18%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_fuzzy PASSED [ 18%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_margin_whitespace PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_all_whitespace PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_propertyless_template PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_delimiters PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_empty_value PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_personalities PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_simple PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline2 PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_comments PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_unchanged PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gaia_plurals PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_duplicates PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gwt_plurals PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_simple PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_hard_newlines_preserved PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_space_preservation PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_value PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_separator PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank_entries PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_fuzzy PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_margin_whitespace PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_all_whitespace PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_propertyless_template PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_delimiters PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_empty_value PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_personalities PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_simple PASSED [ 19%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline PASSED [ 20%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline2 PASSED [ 20%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_comments PASSED [ 20%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_unchanged PASSED [ 20%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank PASSED [ 20%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gaia_plurals PASSED [ 20%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_duplicates PASSED [ 20%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gwt_plurals PASSED [ 20%] 1596s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_help PASSED [ 20%] 1596s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_help PASSED [ 20%] 1596s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert PASSED [ 20%] 1596s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_quotes PASSED [ 20%] 1596s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment PASSED [ 20%] 1596s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_dos_eol PASSED [ 20%] 1596s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_double_string PASSED [ 20%] 1596s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_popup PASSED [ 20%] 1596s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_discardable PASSED [ 20%] 1596s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_menuex PASSED [ 20%] 1596s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_newlines PASSED [ 20%] 1596s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_after PASSED [ 20%] 1596s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_block_language PASSED [ 20%] 1596s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_output_encoding PASSED [ 20%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_simpleunit PASSED [ 20%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_basic PASSED [ 20%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_multiline PASSED [ 20%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapednewlines PASSED [ 20%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedtabs PASSED [ 20%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedquotes PASSED [ 20%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_exclusions PASSED [ 20%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments PASSED [ 20%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingcomment PASSED [ 20%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecomment PASSED [ 20%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 20%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments PASSED [ 20%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingcomment PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingduplicatecomment PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingcomment PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_existingcomments PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_simpleunit PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_basic PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_multiline PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapednewlines PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedtabs PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedquotes PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_exclusions PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingcomment PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingcomment PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingduplicatecomment PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingcomment PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_existingcomments PASSED [ 21%] 1596s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_help PASSED [ 21%] 1596s tests/translate/convert/test_po2sub.py::TestPO2Sub::test_subrip PASSED [ 21%] 1596s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_subrip PASSED [ 21%] 1596s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_help PASSED [ 21%] 1596s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_empty PASSED [ 21%] 1596s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert PASSED [ 21%] 1596s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_marked_untranslated PASSED [ 21%] 1596s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_empty PASSED [ 21%] 1596s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert PASSED [ 21%] 1596s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_marked_untranslated PASSED [ 22%] 1596s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_help PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_basic PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcelanguage PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_targetlanguage PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_multiline PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapednewlines PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedtabs PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedquotes PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_exclusions PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonascii PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonecomments PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_otherscomments PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcecomments PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_typecomments PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_basic PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcelanguage PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_targetlanguage PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_multiline PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapednewlines PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedtabs PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedquotes PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_exclusions PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonascii PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonecomments PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_otherscomments PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcecomments PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_typecomments PASSED [ 22%] 1596s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_help PASSED [ 22%] 1596s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simpleunit PASSED [ 22%] 1596s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simple_unicode_unit PASSED [ 22%] 1596s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fullunit PASSED [ 22%] 1596s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fuzzyunit PASSED [ 22%] 1596s tests/translate/convert/test_po2ts.py::TestPO2TS::test_obsolete PASSED [ 22%] 1596s tests/translate/convert/test_po2ts.py::TestPO2TS::test_duplicates PASSED [ 23%] 1596s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak PASSED [ 23%] 1596s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak_consecutive PASSED [ 23%] 1596s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simpleunit PASSED [ 23%] 1596s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simple_unicode_unit PASSED [ 23%] 1596s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fullunit PASSED [ 23%] 1596s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fuzzyunit PASSED [ 23%] 1596s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_obsolete PASSED [ 23%] 1596s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_duplicates PASSED [ 23%] 1596s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak PASSED [ 23%] 1596s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak_consecutive PASSED [ 23%] 1596s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_help PASSED [ 23%] 1596s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_basic PASSED [ 23%] 1596s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_nonascii PASSED [ 23%] 1596s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_blank_handling PASSED [ 23%] 1596s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_fuzzy_handling PASSED [ 23%] 1596s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_obsolete_ignore PASSED [ 23%] 1596s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_header_ignore PASSED [ 23%] 1596s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_below_threshold PASSED [ 23%] 1596s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_above_threshold PASSED [ 23%] 1596s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_basic PASSED [ 23%] 1596s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_nonascii PASSED [ 23%] 1596s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_blank_handling PASSED [ 23%] 1596s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_fuzzy_handling PASSED [ 23%] 1596s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_obsolete_ignore PASSED [ 23%] 1596s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_header_ignore PASSED [ 23%] 1596s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_below_threshold PASSED [ 23%] 1596s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_above_threshold PASSED [ 23%] 1596s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_help PASSED [ 23%] 1596s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_basic PASSED [ 23%] 1596s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_unicode PASSED [ 23%] 1596s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_ordering_serialize PASSED [ 23%] 1596s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_markmin PASSED [ 23%] 1596s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_minimal PASSED [ 23%] 1596s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_basic PASSED [ 24%] 1596s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_multiline PASSED [ 24%] 1596s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapednewlines PASSED [ 24%] 1596s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedtabs PASSED [ 24%] 1596s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedquotes PASSED [ 24%] 1596s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_locationcomments PASSED [ 24%] 1596s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_othercomments PASSED [ 24%] 1596s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_automaticcomments PASSED [ 24%] 1596s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_header PASSED [ 24%] 1596s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_fuzzy PASSED [ 24%] 1596s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_germanic_plurals PASSED [ 24%] 1596s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_funny_plurals PASSED [ 24%] 1596s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_language_tags PASSED [ 24%] 1596s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_variables PASSED [ 24%] 1596s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_approved PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_empty_PO PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_no_templates PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple_output PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_translated PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_no_fuzzy PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_allow_fuzzy PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_nested PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_below_threshold PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_above_threshold PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_empty_PO PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_no_templates PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple_output PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_translated PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_no_fuzzy PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_allow_fuzzy PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_nested PASSED [ 24%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_below_threshold PASSED [ 25%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_above_threshold PASSED [ 25%] 1596s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_help PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank_plurals PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_simple PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_messages_marked_fuzzy PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals_with_fuzzy_matching PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change XFAIL [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_change PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_and_whitespace_change PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_ambiguous_with_disambiguous PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes XFAIL [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently XFAIL [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_dont_duplicate PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_new_overides_old PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments_with_blank_comment_lines PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_commentlines PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgidcomments PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_with_msgidcomment PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_obsoleting_messages PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_not_obsoleting_empty_messages PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_new_before_obsolete PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_header_initialisation PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_typecomments PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt_multiline PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_location PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_id PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_msgid PASSED [ 25%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_migrate_msgidcomment_to_msgctxt PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_obsolete_msgctxt PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_small_strings PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank_plurals PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_simple PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_messages_marked_fuzzy PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change XFAIL [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_change PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_and_whitespace_change PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_ambiguous_with_disambiguous PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes XFAIL [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently XFAIL [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_new_overides_old PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments_with_blank_comment_lines PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_commentlines PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgidcomments PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_with_msgidcomment PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_obsoleting_messages PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_not_obsoleting_empty_messages PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_new_before_obsolete PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_header_initialisation PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_typecomments PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt_multiline PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_location PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_id PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_msgid PASSED [ 26%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_migrate_msgidcomment_to_msgctxt PASSED [ 27%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_obsolete_msgctxt PASSED [ 27%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_small_strings PASSED [ 27%] 1596s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_help PASSED [ 27%] 1596s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_no_endlines_added PASSED [ 27%] 1596s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_uncomment_contributors PASSED [ 27%] 1596s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_multiline_comment_newlines PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_simpleentry PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_convertprop PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_value_entry PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_separator_entry PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_end_of_string PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_start_of_value PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unicode PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_escaping PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_comments PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_comments PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_folding_accesskeys PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_dont_translate PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty_translated PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_newlines_in_value PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_header_comments PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unassociated_comment_order PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_x_header PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gaia_plurals PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_successive_gaia_plurals PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_duplicate_keys PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gwt_plurals PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_simpleentry PASSED [ 27%] 1596s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_convertprop PASSED [ 27%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_value_entry PASSED [ 27%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_separator_entry PASSED [ 27%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_end_of_string PASSED [ 27%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_start_of_value PASSED [ 28%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unicode PASSED [ 28%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_escaping PASSED [ 28%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_comments PASSED [ 28%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_comments PASSED [ 28%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_folding_accesskeys PASSED [ 28%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_dont_translate PASSED [ 28%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty PASSED [ 28%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty_translated PASSED [ 28%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_newlines_in_value PASSED [ 28%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_header_comments PASSED [ 28%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unassociated_comment_order PASSED [ 28%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_x_header PASSED [ 28%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gaia_plurals PASSED [ 28%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_successive_gaia_plurals PASSED [ 28%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_duplicate_keys PASSED [ 28%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gwt_plurals PASSED [ 28%] 1597s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_help PASSED [ 28%] 1597s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_help PASSED [ 28%] 1597s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert PASSED [ 28%] 1597s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 PASSED [ 28%] 1597s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong PASSED [ 28%] 1597s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 PASSED [ 28%] 1597s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex PASSED [ 28%] 1597s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_simple PASSED [ 28%] 1597s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_multiple_units PASSED [ 28%] 1597s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_automaticcomments PASSED [ 28%] 1597s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_translatorcomments PASSED [ 28%] 1597s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_locations PASSED [ 28%] 1597s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple PASSED [ 28%] 1597s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_multiple_units PASSED [ 28%] 1597s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_automaticcomments PASSED [ 28%] 1597s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_translatorcomments PASSED [ 28%] 1597s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_locations PASSED [ 29%] 1597s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_help PASSED [ 29%] 1597s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot PASSED [ 29%] 1597s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po PASSED [ 29%] 1597s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates PASSED [ 29%] 1597s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_convert_empty PASSED [ 29%] 1597s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_defaults PASSED [ 29%] 1597s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_includeunused PASSED [ 29%] 1597s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_convert_empty PASSED [ 29%] 1597s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_defaults PASSED [ 29%] 1597s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_includeunused PASSED [ 29%] 1597s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_help PASSED [ 29%] 1597s tests/translate/convert/test_ts2po.py::TestTS2PO::test_blank PASSED [ 29%] 1597s tests/translate/convert/test_ts2po.py::TestTS2PO::test_basic PASSED [ 29%] 1597s tests/translate/convert/test_ts2po.py::TestTS2PO::test_unfinished PASSED [ 29%] 1597s tests/translate/convert/test_ts2po.py::TestTS2PO::test_multiline PASSED [ 29%] 1597s tests/translate/convert/test_ts2po.py::TestTS2PO::test_obsolete PASSED [ 29%] 1597s tests/translate/convert/test_ts2po.py::TestTS2PO::test_comment PASSED [ 29%] 1597s tests/translate/convert/test_ts2po.py::TestTS2PO::test_extracomment PASSED [ 29%] 1597s tests/translate/convert/test_ts2po.py::TestTS2PO::test_emptycontext PASSED [ 29%] 1597s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_blank PASSED [ 29%] 1597s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_basic PASSED [ 29%] 1597s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_unfinished PASSED [ 29%] 1597s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_multiline PASSED [ 29%] 1597s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_obsolete PASSED [ 29%] 1597s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_comment PASSED [ 29%] 1597s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_extracomment PASSED [ 29%] 1597s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_emptycontext PASSED [ 29%] 1597s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_help PASSED [ 29%] 1597s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_convert_empty PASSED [ 29%] 1597s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_keep_duplicates PASSED [ 29%] 1597s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_drop_duplicates PASSED [ 29%] 1597s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_simple PASSED [ 29%] 1597s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_multiple_units PASSED [ 29%] 1597s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_carriage_return PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_merge PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_no_segmentation PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestDoku2po::test_convert_empty PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestDoku2po::test_keep_duplicates PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestDoku2po::test_drop_duplicates PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestDoku2po::test_basic PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestDoku2po::test_bullet_list PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestDoku2po::test_numbered_list PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestDoku2po::test_spacing PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestDoku2po::test_merge PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_convert_empty PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_keep_duplicates PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_drop_duplicates PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_simple PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_multiple_units PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_carriage_return PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_merge PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_no_segmentation PASSED [ 30%] 1597s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_help PASSED [ 30%] 1597s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_basic PASSED [ 30%] 1597s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_unicode PASSED [ 30%] 1597s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_markmin PASSED [ 30%] 1597s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_help PASSED [ 30%] 1597s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert PASSED [ 30%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_minimal PASSED [ 30%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_basic PASSED [ 30%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_translatorcomments PASSED [ 30%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_autocomment PASSED [ 30%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_locations PASSED [ 30%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_fuzzy PASSED [ 30%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_plurals PASSED [ 30%] 1597s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_minimal PASSED [ 30%] 1597s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_basic PASSED [ 30%] 1597s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_translatorcomments PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_autocomment PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_locations PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_fuzzy PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_plurals PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_help PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_simple_convert PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_minimal PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_basic PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_translatorcomments PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_autocomment PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_locations PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_fuzzy PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_plurals PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_help PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po PASSED [ 31%] 1597s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates PASSED [ 31%] 1597s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_empty_YAML PASSED [ 31%] 1597s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple_output PASSED [ 31%] 1597s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple PASSED [ 31%] 1597s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_nested PASSED [ 31%] 1597s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates XFAIL [ 31%] 1597s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_with_template PASSED [ 31%] 1597s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_empty_YAML PASSED [ 31%] 1597s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple_output PASSED [ 31%] 1597s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple PASSED [ 31%] 1597s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_nested PASSED [ 31%] 1597s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates XFAIL [ 31%] 1597s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_with_template PASSED [ 31%] 1597s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_help PASSED [ 31%] 1597s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_empty_target PASSED [ 31%] 1597s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_ellipsis PASSED [ 32%] 1597s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_spacestart_spaceend PASSED [ 32%] 1597s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_start_capitals PASSED [ 32%] 1597s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_end_punc PASSED [ 32%] 1597s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_combinations PASSED [ 32%] 1597s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_nothing_to_do PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_defaults PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_construct PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_accelerator_markers PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_messages PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_accelerators PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_acceleratedvariables XFAIL [ 32%] 1597s tests/translate/filters/test_checks.py::test_acronyms PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_blank PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_brackets PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_compendiumconflicts PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_doublequoting PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_doublespacing PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_doublewords PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_endpunc PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_endwhitespace PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_escapes PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_newlines PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_tabs PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_filepaths PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_kdecomments PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_long PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_musttranslatewords XFAIL [ 32%] 1597s tests/translate/filters/test_checks.py::test_notranslatewords PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_numbers PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_persian_numbers PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_bengali_numbers PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_arabic_numbers PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_assamese_numbers PASSED [ 32%] 1597s tests/translate/filters/test_checks.py::test_options PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_printf PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_pythonbraceformat PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_puncspacing PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_purepunc PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_sentencecount PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_short PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_singlequoting PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_vietnamese_singlequoting PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time XFAIL [ 33%] 1597s tests/translate/filters/test_checks.py::test_persian_quoting PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_simplecaps PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_spellcheck SKIPPED (Spe...) [ 33%] 1597s tests/translate/filters/test_checks.py::test_startcaps PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_startpunc PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_startwhitespace PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_unchanged PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_untranslated PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_validchars PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_minimalchecker PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_reducedchecker PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_variables_kde PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_variables_gnome PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_variables_mozilla PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_variables_openoffice PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_variables_cclicense PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_variables_ios PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_xmltags PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags XFAIL [ 33%] 1597s tests/translate/filters/test_checks.py::test_ooxmltags PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_functions PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_emails PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_urls PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_simpleplurals PASSED [ 33%] 1597s tests/translate/filters/test_checks.py::test_nplurals PASSED [ 34%] 1597s tests/translate/filters/test_checks.py::test_credits PASSED [ 34%] 1597s tests/translate/filters/test_checks.py::test_gconf PASSED [ 34%] 1597s tests/translate/filters/test_checks.py::test_validxml PASSED [ 34%] 1597s tests/translate/filters/test_checks.py::test_hassuggestion PASSED [ 34%] 1597s tests/translate/filters/test_checks.py::test_dialogsizes PASSED [ 34%] 1597s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers PASSED [ 34%] 1597s tests/translate/filters/test_checks.py::test_mozilla_no_accelerators_for_indic PASSED [ 34%] 1597s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker PASSED [ 34%] 1597s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source PASSED [ 34%] 1597s tests/translate/filters/test_checks.py::test_ensure_bengali_languages_script_is_correct PASSED [ 34%] 1597s tests/translate/filters/test_checks.py::test_category PASSED [ 34%] 1597s tests/translate/filters/test_decoration.py::test_spacestart PASSED [ 34%] 1597s tests/translate/filters/test_decoration.py::test_isvalidaccelerator PASSED [ 34%] 1597s tests/translate/filters/test_decoration.py::test_find_marked_variables PASSED [ 34%] 1597s tests/translate/filters/test_decoration.py::test_getnumbers PASSED [ 34%] 1597s tests/translate/filters/test_decoration.py::test_getfunctions PASSED [ 34%] 1597s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplepass PASSED [ 34%] 1597s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplefail PASSED [ 34%] 1597s tests/translate/filters/test_pofilter.py::TestPOFilter::test_variables_across_lines PASSED [ 34%] 1597s tests/translate/filters/test_pofilter.py::TestPOFilter::test_ignore_if_already_marked PASSED [ 34%] 1597s tests/translate/filters/test_pofilter.py::TestPOFilter::test_non_existant_check PASSED [ 34%] 1597s tests/translate/filters/test_pofilter.py::TestPOFilter::test_list_all_tests PASSED [ 34%] 1597s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_fuzzy PASSED [ 34%] 1597s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_review PASSED [ 34%] 1597s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isfuzzy PASSED [ 34%] 1597s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isreview PASSED [ 34%] 1597s tests/translate/filters/test_pofilter.py::TestPOFilter::test_notes PASSED [ 34%] 1597s tests/translate/filters/test_pofilter.py::TestPOFilter::test_unicode PASSED [ 34%] 1597s tests/translate/filters/test_pofilter.py::TestPOFilter::test_preconditions PASSED [ 34%] 1597s tests/translate/filters/test_pofilter.py::TestPOFilter::test_msgid_comments PASSED [ 34%] 1597s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplepass PASSED [ 34%] 1597s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplefail PASSED [ 34%] 1597s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_variables_across_lines PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_ignore_if_already_marked PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_non_existant_check PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_list_all_tests PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_fuzzy PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_review PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isfuzzy PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isreview PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_notes PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_unicode PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_preconditions PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplepass PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplefail PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_variables_across_lines PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_ignore_if_already_marked PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_non_existant_check PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_list_all_tests PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_notes PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_unicode PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_preconditions PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_fuzzy PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_review PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isfuzzy PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isreview PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplepass PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplefail PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_variables_across_lines PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_ignore_if_already_marked PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_non_existant_check PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_list_all_tests PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_fuzzy PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_review PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isfuzzy PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isreview PASSED [ 35%] 1597s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_notes PASSED [ 36%] 1597s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_unicode PASSED [ 36%] 1597s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_preconditions PASSED [ 36%] 1597s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_msgid_comments PASSED [ 36%] 1597s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_cedillas PASSED [ 36%] 1597s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_niciun PASSED [ 36%] 1597s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_nicio PASSED [ 36%] 1597s tests/translate/filters/test_prefilters.py::test_removekdecomments PASSED [ 36%] 1597s tests/translate/filters/test_prefilters.py::test_filterwordswithpunctuation PASSED [ 36%] 1597s tests/translate/lang/test_af.py::test_sentences PASSED [ 36%] 1597s tests/translate/lang/test_af.py::test_capsstart PASSED [ 36%] 1597s tests/translate/lang/test_af.py::test_transliterate_cyrillic PASSED [ 36%] 1597s tests/translate/lang/test_am.py::test_punctranslate PASSED [ 36%] 1597s tests/translate/lang/test_am.py::test_sentences PASSED [ 36%] 1597s tests/translate/lang/test_ar.py::test_punctranslate PASSED [ 36%] 1597s tests/translate/lang/test_ar.py::test_sentences PASSED [ 36%] 1597s tests/translate/lang/test_common.py::test_characters PASSED [ 36%] 1597s tests/translate/lang/test_common.py::test_words PASSED [ 36%] 1597s tests/translate/lang/test_common.py::test_word_khmer XFAIL (ZWS is n...) [ 36%] 1597s tests/translate/lang/test_common.py::test_sentences PASSED [ 36%] 1597s tests/translate/lang/test_common.py::test_capsstart PASSED [ 36%] 1597s tests/translate/lang/test_common.py::test_numstart PASSED [ 36%] 1597s tests/translate/lang/test_common.py::test_punctranslate PASSED [ 36%] 1597s tests/translate/lang/test_common.py::test_length_difference PASSED [ 36%] 1597s tests/translate/lang/test_common.py::test_alter_length PASSED [ 36%] 1597s tests/translate/lang/test_data.py::test_normalise_code PASSED [ 36%] 1597s tests/translate/lang/test_data.py::test_simplify_to_common PASSED [ 36%] 1597s tests/translate/lang/test_el.py::test_punctranslate PASSED [ 36%] 1597s tests/translate/lang/test_el.py::test_sentences PASSED [ 36%] 1597s tests/translate/lang/test_es.py::test_punctranslate PASSED [ 36%] 1597s tests/translate/lang/test_es.py::test_sentences PASSED [ 36%] 1597s tests/translate/lang/test_fa.py::test_punctranslate PASSED [ 36%] 1597s tests/translate/lang/test_fa.py::test_sentences PASSED [ 36%] 1597s tests/translate/lang/test_factory.py::test_getlanguage PASSED [ 36%] 1597s tests/translate/lang/test_factory.py::test_get_all_languages PASSED [ 37%] 1597s tests/translate/lang/test_fr.py::test_punctranslate PASSED [ 37%] 1597s tests/translate/lang/test_fr.py::test_sentences PASSED [ 37%] 1597s tests/translate/lang/test_hy.py::test_punctranslate PASSED [ 37%] 1597s tests/translate/lang/test_hy.py::test_sentences PASSED [ 37%] 1597s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_lang PASSED [ 37%] 1597s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_store PASSED [ 37%] 1597s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_bad_init_data PASSED [ 37%] 1597s tests/translate/lang/test_ja.py::test_punctranslate PASSED [ 37%] 1597s tests/translate/lang/test_ja.py::test_sentences PASSED [ 37%] 1597s tests/translate/lang/test_km.py::test_punctranslate PASSED [ 37%] 1597s tests/translate/lang/test_km.py::test_sentences PASSED [ 37%] 1597s tests/translate/lang/test_ko.py::test_punctranslate PASSED [ 37%] 1597s tests/translate/lang/test_ko.py::test_sentences PASSED [ 37%] 1597s tests/translate/lang/test_ne.py::test_punctranslate PASSED [ 37%] 1597s tests/translate/lang/test_ne.py::test_sentences PASSED [ 37%] 1597s tests/translate/lang/test_nqo.py::test_punctranslate PASSED [ 37%] 1597s tests/translate/lang/test_nqo.py::test_sentences PASSED [ 37%] 1597s tests/translate/lang/test_or.py::test_punctranslate PASSED [ 37%] 1597s tests/translate/lang/test_or.py::test_country_code PASSED [ 37%] 1597s tests/translate/lang/test_or.py::test_sentences PASSED [ 37%] 1597s tests/translate/lang/test_poedit.py::test_isocode PASSED [ 37%] 1597s tests/translate/lang/test_ro.py::test_cedillas PASSED [ 37%] 1597s tests/translate/lang/test_ro.py::test_niciun PASSED [ 37%] 1597s tests/translate/lang/test_scn.py::test_italianisms PASSED [ 37%] 1597s tests/translate/lang/test_scn.py::test_vocalism PASSED [ 37%] 1597s tests/translate/lang/test_scn.py::test_suffixes PASSED [ 37%] 1597s tests/translate/lang/test_team.py::test_simple PASSED [ 37%] 1597s tests/translate/lang/test_th.py::test_punctranslate PASSED [ 37%] 1597s tests/translate/lang/test_th.py::test_sentences PASSED [ 37%] 1597s tests/translate/lang/test_tr.py::test_sentences PASSED [ 37%] 1597s tests/translate/lang/test_uk.py::test_sentences PASSED [ 37%] 1597s tests/translate/lang/test_vi.py::test_punctranslate PASSED [ 37%] 1597s tests/translate/lang/test_vi.py::test_sentences PASSED [ 38%] 1597s tests/translate/lang/test_zh.py::test_punctranslate PASSED [ 38%] 1597s tests/translate/lang/test_zh.py::test_sentences PASSED [ 38%] 1597s tests/translate/misc/test_deprecation.py::TestDeprecation::test_deprecated_decorator PASSED [ 38%] 1597s tests/translate/misc/test_deprecation.py::TestDeprecation::test_no_deprecated_decorator PASSED [ 38%] 1597s tests/translate/misc/test_dictutils.py::test_cidict_has_key PASSED [ 38%] 1597s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor PASSED [ 38%] 1597s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor_validation PASSED [ 38%] 1597s tests/translate/misc/test_multistring.py::TestMultistring::test_repr PASSED [ 38%] 1597s tests/translate/misc/test_multistring.py::TestMultistring::test_replace PASSED [ 38%] 1597s tests/translate/misc/test_multistring.py::TestMultistring::test_comparison PASSED [ 38%] 1597s tests/translate/misc/test_multistring.py::TestMultistring::test_coercion PASSED [ 38%] 1597s tests/translate/misc/test_multistring.py::TestMultistring::test_unicode_coercion PASSED [ 38%] 1597s tests/translate/misc/test_multistring.py::TestMultistring::test_list_coercion PASSED [ 38%] 1597s tests/translate/misc/test_multistring.py::TestMultistring::test_multistring_hash PASSED [ 38%] 1597s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_splitext PASSED [ 38%] 1597s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_outputfile_receives_bytes PASSED [ 38%] 1597s tests/translate/misc/test_progressbar.py::test_hashprogressbar PASSED [ 38%] 1597s tests/translate/misc/test_quote.py::test_find_all PASSED [ 38%] 1597s tests/translate/misc/test_quote.py::test_extract PASSED [ 38%] 1597s tests/translate/misc/test_quote.py::test_extractwithoutquotes PASSED [ 38%] 1597s tests/translate/misc/test_quote.py::test_extractwithoutquotes_passfunc PASSED [ 38%] 1597s tests/translate/misc/test_quote.py::test_stripcomment PASSED [ 38%] 1597s tests/translate/misc/test_quote.py::TestEncoding::test_javapropertiesencode PASSED [ 38%] 1597s tests/translate/misc/test_quote.py::TestEncoding::test_java_utf8_properties_encode PASSED [ 38%] 1597s tests/translate/misc/test_quote.py::TestEncoding::test_escapespace PASSED [ 38%] 1597s tests/translate/misc/test_quote.py::TestEncoding::test_mozillaescapemarginspaces PASSED [ 38%] 1597s tests/translate/misc/test_quote.py::TestEncoding::test_mozilla_control_escapes PASSED [ 38%] 1597s tests/translate/misc/test_quote.py::TestEncoding::test_propertiesdecode PASSED [ 38%] 1597s tests/translate/misc/test_quote.py::TestEncoding::test_controlchars PASSED [ 38%] 1597s tests/translate/misc/test_quote.py::TestEncoding::test_properties_decode_slashu PASSED [ 38%] 1597s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding PASSED [ 38%] 1597s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_existing_entities PASSED [ 38%] 1597s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_passthrough PASSED [ 38%] 1597s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_nonentities PASSED [ 39%] 1597s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_four_spaces PASSED [ 39%] 1597s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_tab PASSED [ 39%] 1597s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_distance PASSED [ 39%] 1597s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_similarity PASSED [ 39%] 1597s tests/translate/search/test_lshtein.py::TestLevenshtein::test_long_similarity PASSED [ 39%] 1597s tests/translate/search/test_match.py::TestMatch::test_matching PASSED [ 39%] 1597s tests/translate/search/test_match.py::TestMatch::test_multiple_store PASSED [ 39%] 1597s tests/translate/search/test_match.py::TestMatch::test_extendtm PASSED [ 39%] 1597s tests/translate/search/test_match.py::TestMatch::test_terminology PASSED [ 39%] 1597s tests/translate/search/test_match.py::TestMatch::test_brackets PASSED [ 39%] 1597s tests/translate/search/test_match.py::TestMatch::test_past_tences PASSED [ 39%] 1597s tests/translate/search/test_match.py::TestMatch::test_space_mismatch PASSED [ 39%] 1597s tests/translate/search/test_match.py::TestMatch::test_hyphen_mismatch PASSED [ 39%] 1597s tests/translate/search/test_terminology.py::TestTerminology::test_basic PASSED [ 39%] 1598s tests/translate/services/test_tmserver.py::TestTMServer::test_import PASSED [ 39%] 1598s tests/translate/services/test_tmserver.py::TestTMServer::test_server PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_parse PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_tree PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_add PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_contains PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getitem PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getslice PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_iter PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_len PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_mul PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_offset PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_at_offset PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find_elems_with PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_flatten PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case1 PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case2 PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case3 PASSED [ 39%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case4 PASSED [ 40%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_insert PASSED [ 40%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_isleaf PASSED [ 40%] 1598s tests/translate/storage/placeables/test_base.py::TestStringElem::test_prune PASSED [ 40%] 1598s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_base_placeables PASSED [ 40%] 1598s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables XFAIL [ 40%] 1598s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables XFAIL [ 40%] 1598s tests/translate/storage/placeables/test_general.py::test_placeable_numbers PASSED [ 40%] 1598s tests/translate/storage/placeables/test_general.py::test_placeable_newline PASSED [ 40%] 1598s tests/translate/storage/placeables/test_general.py::test_placeable_alt_attr PASSED [ 40%] 1598s tests/translate/storage/placeables/test_general.py::test_placeable_qt_formatting PASSED [ 40%] 1598s tests/translate/storage/placeables/test_general.py::test_placeable_camelcase PASSED [ 40%] 1598s tests/translate/storage/placeables/test_general.py::test_placeable_space PASSED [ 40%] 1598s tests/translate/storage/placeables/test_general.py::test_placeable_punctuation PASSED [ 40%] 1598s tests/translate/storage/placeables/test_general.py::test_placeable_xml_entity PASSED [ 40%] 1598s tests/translate/storage/placeables/test_general.py::test_placeable_xml_tag PASSED [ 40%] 1598s tests/translate/storage/placeables/test_general.py::test_placeable_option PASSED [ 40%] 1598s tests/translate/storage/placeables/test_general.py::test_placeable_file PASSED [ 40%] 1598s tests/translate/storage/placeables/test_general.py::test_placeable_email PASSED [ 40%] 1598s tests/translate/storage/placeables/test_general.py::test_placeable_caps PASSED [ 40%] 1598s tests/translate/storage/placeables/test_general.py::test_placeable_formatting PASSED [ 40%] 1598s tests/translate/storage/placeables/test_general.py::test_placeable_doubleat PASSED [ 40%] 1598s tests/translate/storage/placeables/test_general.py::test_placeable_brace PASSED [ 40%] 1598s tests/translate/storage/placeables/test_general.py::test_python_placeable PASSED [ 40%] 1598s tests/translate/storage/placeables/test_lisa.py::test_xml_to_strelem PASSED [ 40%] 1598s tests/translate/storage/placeables/test_lisa.py::test_xml_space PASSED [ 40%] 1598s tests/translate/storage/placeables/test_lisa.py::test_chunk_list PASSED [ 40%] 1598s tests/translate/storage/placeables/test_lisa.py::test_set_strelem_to_xml PASSED [ 40%] 1598s tests/translate/storage/placeables/test_lisa.py::test_unknown_xml_placeable PASSED [ 40%] 1598s tests/translate/storage/placeables/test_terminology.py::TestTerminologyPlaceable::test_simple_terminology PASSED [ 40%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_isfuzzy PASSED [ 40%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_create PASSED [ 40%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_eq PASSED [ 40%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escapes PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_difficult_escapes PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_note_sanity PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_target PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_get PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_set PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quotes_with_newline PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline_in_xml PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_twitter PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quote PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_question PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_double_space PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_leading_space PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_tailing_space PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_xml_entities PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote_newline PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_arrows PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link_and_text PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_blank_string PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_escape_message_with_newline PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_invalid_lang PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_quote PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_leading_space PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_trailing_space PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_with_ampersand PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_double_space PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_deep_double_space PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_complex_xml PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quoted_newlines PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline PASSED [ 41%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline_in_xml PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_twitter PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_question PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quote PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_space PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_space PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_newlines PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_xml_entities PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_code PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_arrows PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link_and_text PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_space PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_spaces PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_escaped_newline PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_escaped_newline PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_spaces PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_newline PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_many_quotes PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string_again PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_quotes_string PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_newline_in_string PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_not_translatable_string PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_newline PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_comments PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_quote PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space_quoted PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space_quoted PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_with_ampersand PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_double_space_quoted PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_deep_double_space_quoted PASSED [ 42%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_complex_xml PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unicode PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_unescaped PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_alone PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_full PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_escaped_percent PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_percent PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_quote PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unparied_quote PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_slash PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_ignored PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escaped_quote_end PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_create_blank PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_remove PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_find PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_parse PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_files PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_save PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_extensions PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_mimetypes PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translate PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_nonascii PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_default_handlings PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_invalid_filename PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_namespaces PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_serialize PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add_formatting PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_invalid_entity PASSED [ 43%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_indent PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_markup PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_edit PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_noedit PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_remove PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_set PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_others PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_quotes_set PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_g PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_namespace PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_zh_hk PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_b_zh_hk PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_missing_plural PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_removeunit PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata_text PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_prefix PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_rtl PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_tail PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translatable_marking PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_escaping PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_isfuzzy PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_create PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_eq PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_escapes PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_difficult_escapes PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_note_sanity PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_target PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_get PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_set PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_create_blank PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_add PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_remove PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_find PASSED [ 44%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_parse PASSED [ 45%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_files PASSED [ 45%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_save PASSED [ 45%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_extensions PASSED [ 45%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_mimetypes PASSED [ 45%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_translate PASSED [ 45%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_markup PASSED [ 45%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_nonascii PASSED [ 45%] 1598s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_plural PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationUnit::test_isfuzzy PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationUnit::test_create PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationUnit::test_eq PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationUnit::test_target PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationUnit::test_escapes PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationUnit::test_difficult_escapes PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationUnit::test_note_sanity PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_get PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_set PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationStore::test_create_blank PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationStore::test_add PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationStore::test_remove PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationStore::test_find PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationStore::test_translate PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationStore::test_parse PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationStore::test_files PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationStore::test_save PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationStore::test_markup PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationStore::test_nonascii PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationStore::test_extensions PASSED [ 45%] 1598s tests/translate/storage/test_base.py::TestTranslationStore::test_mimetypes PASSED [ 45%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_isfuzzy PASSED [ 45%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_create PASSED [ 45%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_eq PASSED [ 45%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_target PASSED [ 45%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_escapes PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_get PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_set PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_difficult_escapes PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_newlines PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_istranslated PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_note_sanity PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_create_blank PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_add PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_remove PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_find PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_translate PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_parse PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_files PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_save PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_markup PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_nonascii PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_extensions PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_mimetypes PASSED [ 46%] 1598s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_checksum PASSED [ 46%] 1598s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_isfuzzy PASSED [ 46%] 1598s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_create PASSED [ 46%] 1598s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_eq PASSED [ 46%] 1598s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_target PASSED [ 46%] 1598s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_escapes PASSED [ 46%] 1598s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_difficult_escapes PASSED [ 46%] 1598s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_note_sanity PASSED [ 46%] 1598s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_get PASSED [ 46%] 1598s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_set PASSED [ 46%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_create_blank PASSED [ 46%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_add PASSED [ 46%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_remove PASSED [ 46%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_find PASSED [ 46%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_translate PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_files PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_save PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_markup PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_nonascii PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_extensions PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_mimetypes PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_singlequoting PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8 PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_dialect PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_sig PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_default PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_location_is_parsed PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_context_is_parsed PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_newline PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse_sample PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_detection PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding PASSED [ 47%] 1598s tests/translate/storage/test_csvl10n.py::TestCSV::test_corrupt PASSED [ 47%] 1598s tests/translate/storage/test_directory.py::TestDirectory::test_created PASSED [ 47%] 1598s tests/translate/storage/test_directory.py::TestDirectory::test_basic PASSED [ 47%] 1598s tests/translate/storage/test_directory.py::TestDirectory::test_structure PASSED [ 47%] 1598s tests/translate/storage/test_directory.py::TestDirectory::test_getunits PASSED [ 47%] 1598s tests/translate/storage/test_dtd.py::test_roundtrip_quoting PASSED [ 47%] 1598s tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases XFAIL [ 47%] 1598s tests/translate/storage/test_dtd.py::test_quotefordtd PASSED [ 47%] 1598s tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases XFAIL [ 47%] 1598s tests/translate/storage/test_dtd.py::test_unquotefromdtd PASSED [ 47%] 1598s tests/translate/storage/test_dtd.py::test_android_roundtrip_quoting PASSED [ 47%] 1598s tests/translate/storage/test_dtd.py::test_quoteforandroid PASSED [ 47%] 1598s tests/translate/storage/test_dtd.py::test_unquotefromandroid PASSED [ 47%] 1598s tests/translate/storage/test_dtd.py::test_removeinvalidamp PASSED [ 47%] 1598s tests/translate/storage/test_dtd.py::TestDTDUnit::test_isfuzzy PASSED [ 47%] 1598s tests/translate/storage/test_dtd.py::TestDTDUnit::test_create PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTDUnit::test_eq PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTDUnit::test_escapes PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTDUnit::test_difficult_escapes PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTDUnit::test_note_sanity PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTDUnit::test_target PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_get PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_set PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_create_blank PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_add PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_remove PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_find PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_parse PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_files PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_save PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_extensions PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_mimetypes PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_translate PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_markup PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_nonascii PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_blanklines PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity_source PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_hashcomment_source PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_commentclosing PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_commententity PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_newlines_in_entity PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_conflate_comments PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_localisation_notes PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_in_source PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_order_in_source PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_comment_following XFAIL [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_comment_newline_space_closing PASSED [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting XFAIL [ 48%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_missing_quotes PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping_roundtrip PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_create_blank PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_add PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_remove PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_find PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_parse PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_files PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_save PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_extensions PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_mimetypes PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_translate PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_markup PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_nonascii PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape_parse_and_convert_back PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape PASSED [ 49%] 1598s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape_parse_and_convert_back PASSED [ 49%] 1598s tests/translate/storage/test_factory.py::TestPOFactory::test_getclass PASSED [ 49%] 1598s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject_store PASSED [ 49%] 1598s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject PASSED [ 49%] 1598s tests/translate/storage/test_factory.py::TestPOFactory::test_get_noname_object PASSED [ 49%] 1598s tests/translate/storage/test_factory.py::TestPOFactory::test_gzfile PASSED [ 49%] 1598s tests/translate/storage/test_factory.py::TestPOFactory::test_bz2file PASSED [ 49%] 1598s tests/translate/storage/test_factory.py::TestPOFactory::test_directory PASSED [ 49%] 1598s tests/translate/storage/test_factory.py::TestXliffFactory::test_getclass PASSED [ 49%] 1598s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject_store PASSED [ 49%] 1598s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject PASSED [ 49%] 1598s tests/translate/storage/test_factory.py::TestXliffFactory::test_get_noname_object PASSED [ 49%] 1598s tests/translate/storage/test_factory.py::TestXliffFactory::test_gzfile PASSED [ 49%] 1598s tests/translate/storage/test_factory.py::TestXliffFactory::test_bz2file PASSED [ 49%] 1598s tests/translate/storage/test_factory.py::TestXliffFactory::test_directory PASSED [ 49%] 1598s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getclass PASSED [ 50%] 1598s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject_store PASSED [ 50%] 1598s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject PASSED [ 50%] 1598s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_get_noname_object PASSED [ 50%] 1598s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_gzfile PASSED [ 50%] 1598s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_bz2file PASSED [ 50%] 1598s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_directory PASSED [ 50%] 1598s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getclass PASSED [ 50%] 1598s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject_store PASSED [ 50%] 1598s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject PASSED [ 50%] 1598s tests/translate/storage/test_factory.py::TestWordfastFactory::test_get_noname_object PASSED [ 50%] 1598s tests/translate/storage/test_factory.py::TestWordfastFactory::test_gzfile PASSED [ 50%] 1598s tests/translate/storage/test_factory.py::TestWordfastFactory::test_bz2file PASSED [ 50%] 1598s tests/translate/storage/test_factory.py::TestWordfastFactory::test_directory PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_isfuzzy PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_create PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_eq PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_escapes PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_difficult_escapes PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_note_sanity PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_target PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_get PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_set PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_create_blank PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_add PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_remove PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_find PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_parse PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_files PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_save PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_extensions PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_mimetypes PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_translate PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_markup PASSED [ 50%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_nonascii PASSED [ 51%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_root_config_detect PASSED [ 51%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_detect PASSED [ 51%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_key_config_detect PASSED [ 51%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_mixed_ok PASSED [ 51%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_namespace_config_detect PASSED [ 51%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_four_spaces PASSED [ 51%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_tab PASSED [ 51%] 1598s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_none_linearizes PASSED [ 51%] 1598s tests/translate/storage/test_html.py::test_guess_encoding PASSED [ 51%] 1598s tests/translate/storage/test_html.py::TestHTMLParsing::test_mismatched_tags PASSED [ 51%] 1598s tests/translate/storage/test_html.py::TestHTMLParsing::test_self_closing_tags PASSED [ 51%] 1598s tests/translate/storage/test_html.py::TestHTMLParsing::test_escaping_script_and_pre PASSED [ 51%] 1598s tests/translate/storage/test_html.py::TestHTMLExtraction::test_strip_html PASSED [ 51%] 1598s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_figcaption PASSED [ 51%] 1598s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_caption_td_th PASSED [ 51%] 1598s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_alt PASSED [ 51%] 1598s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_title PASSED [ 51%] 1598s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre PASSED [ 51%] 1598s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre_code PASSED [ 51%] 1598s tests/translate/storage/test_ini.py::TestINIUnit::test_isfuzzy PASSED [ 51%] 1598s tests/translate/storage/test_ini.py::TestINIUnit::test_create PASSED [ 51%] 1598s tests/translate/storage/test_ini.py::TestINIUnit::test_eq PASSED [ 51%] 1598s tests/translate/storage/test_ini.py::TestINIUnit::test_escapes PASSED [ 51%] 1598s tests/translate/storage/test_ini.py::TestINIUnit::test_difficult_escapes PASSED [ 51%] 1598s tests/translate/storage/test_ini.py::TestINIUnit::test_note_sanity PASSED [ 51%] 1598s tests/translate/storage/test_ini.py::TestINIUnit::test_target PASSED [ 51%] 1598s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_get PASSED [ 51%] 1598s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_set PASSED [ 51%] 1598s tests/translate/storage/test_ini.py::TestINIStore::test_create_blank PASSED [ 51%] 1598s tests/translate/storage/test_ini.py::TestINIStore::test_add PASSED [ 51%] 1598s tests/translate/storage/test_ini.py::TestINIStore::test_remove PASSED [ 51%] 1598s tests/translate/storage/test_ini.py::TestINIStore::test_find PASSED [ 51%] 1598s tests/translate/storage/test_ini.py::TestINIStore::test_parse PASSED [ 51%] 1598s tests/translate/storage/test_ini.py::TestINIStore::test_files PASSED [ 52%] 1598s tests/translate/storage/test_ini.py::TestINIStore::test_save PASSED [ 52%] 1598s tests/translate/storage/test_ini.py::TestINIStore::test_extensions PASSED [ 52%] 1598s tests/translate/storage/test_ini.py::TestINIStore::test_mimetypes PASSED [ 52%] 1598s tests/translate/storage/test_ini.py::TestINIStore::test_translate PASSED [ 52%] 1598s tests/translate/storage/test_ini.py::TestINIStore::test_markup PASSED [ 52%] 1598s tests/translate/storage/test_ini.py::TestINIStore::test_nonascii PASSED [ 52%] 1598s tests/translate/storage/test_ini.py::TestINIStore::test_serialize PASSED [ 52%] 1598s tests/translate/storage/test_ini.py::TestINIStore::test_rem PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_isfuzzy PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_create PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_eq PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_escapes PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_difficult_escapes PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_note_sanity PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_target PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_get PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_set PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_create_blank PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_remove PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_find PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_parse PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_files PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_save PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_extensions PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_mimetypes PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_translate PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_markup PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_nonascii PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_serialize PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_can_not_detect PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_error PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_filter PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_ordering PASSED [ 52%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_args PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_bom PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex_array PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_list_like PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_blank PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_types PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_null PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_isfuzzy PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_create PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_eq PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_escapes PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_difficult_escapes PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_note_sanity PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_target PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_get PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_set PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_serialize PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_ordering PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_array PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index_nested PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_nested_list_mixed PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_list_to_dict PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_complex_keys PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_other PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0]-expected0] PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0]-expected1] PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0][1][2][3]-expected2] PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test]selection-expected3] PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test][0]selection-expected4] PASSED [ 53%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0][test]selection-expected5] PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[-expected6] PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_dot_keys PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_isfuzzy PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_create PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_eq PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_escapes PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_difficult_escapes PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_note_sanity PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_target PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_get PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_set PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_create_blank PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_add PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_remove PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_find PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_parse PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_files PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_save PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_extensions PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_mimetypes PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_translate PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_markup PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_nonascii PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_dot_keys PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_leading_dot_keys PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize_no_description PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_set_target PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_placeholders PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_create_blank PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_add PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_remove PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_find PASSED [ 54%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_parse PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_files PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_save PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_extensions PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_mimetypes PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_translate PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_markup PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nonascii PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_serialize PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_units PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_plurals PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nested_array PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural_id PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_create_blank PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_add PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_remove PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_find PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_parse PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_files PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_save PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_extensions PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_mimetypes PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_translate PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_markup PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_nonascii PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals_missing PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_case_no_msg PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_complex_id PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_create_blank PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_add PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_remove PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_find PASSED [ 55%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_parse PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_files PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_save PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_extensions PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_mimetypes PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_translate PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_markup PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nonascii PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_serialize PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_units PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_plurals PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nested_array PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_new_plural PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_ru PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_create_blank PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_add PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_remove PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_find PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_parse PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_files PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_save PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_extensions PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_mimetypes PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_translate PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_markup PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nonascii PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_serialize PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_units PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_plurals PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nested_array PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_new_plural PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_ru PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_create_blank PASSED [ 56%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_add PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_remove PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_find PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_parse PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_files PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_save PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_extensions PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_mimetypes PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_translate PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_markup PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_nonascii PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals_missing PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_invalid PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_dot_keys PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_create_blank PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_add PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_remove PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_find PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_parse PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_files PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_save PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_extensions PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_mimetypes PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_translate PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_markup PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_nonascii PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_1 PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_2 PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_blank PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_missing PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_simplification PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_invalid PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_dot_keys PASSED [ 57%] 1598s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_create_blank PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_add PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_remove PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_find PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_parse PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_files PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_save PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_extensions PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_mimetypes PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_translate PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_markup PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_nonascii PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_roundtrip PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_leading_dot_keys PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_create_blank PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_add PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_remove PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_find PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_parse PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_files PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_save PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_extensions PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_mimetypes PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_translate PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_markup PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_nonascii PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_roundtrip PASSED [ 58%] 1598s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_leading_dot_keys PASSED [ 58%] 1598s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_atx_heading PASSED [ 58%] 1598s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_autolink PASSED [ 58%] 1598s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_block_quote PASSED [ 58%] 1598s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_block PASSED [ 58%] 1598s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_span PASSED [ 58%] 1598s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_atx_heading PASSED [ 58%] 1598s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_document PASSED [ 59%] 1598s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_list_item PASSED [ 59%] 1598s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_escaped_character PASSED [ 59%] 1598s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_hard_line_break PASSED [ 59%] 1598s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_block PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_character_entities PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_span PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_image_embedded_in_link PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_collapsed_reference_link PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_full_reference_link PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_shortcut_reference_link PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_merging_of_adjacent_placeholders PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_block_tokens PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_list PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_basic_markup PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_only_whitespace_and_placeholders PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_placeholder_trimming PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image_no_title PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_link PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_text_paragraph PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_remove_placeholders_from_both_ends_of_translation_units PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_setext_heading PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_table_with_header PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_thematic_break PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_hard_line_break_in_translation_unit PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_missing_placeholder PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_duplicate_placeholder PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_extraneous_placeholder PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_reordered_placeholders PASSED [ 59%] 1599s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_invalid_markdown_in_translation PASSED [ 59%] 1599s tests/translate/storage/test_mo.py::TestMOUnit::test_isfuzzy PASSED [ 59%] 1599s tests/translate/storage/test_mo.py::TestMOUnit::test_create PASSED [ 59%] 1599s tests/translate/storage/test_mo.py::TestMOUnit::test_eq PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOUnit::test_target PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOUnit::test_escapes PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOUnit::test_difficult_escapes PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOUnit::test_note_sanity PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_get PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_set PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOUnit::test_context PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOFile::test_create_blank PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOFile::test_add PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOFile::test_remove PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOFile::test_find PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOFile::test_translate PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOFile::test_parse PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOFile::test_files PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOFile::test_save PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOFile::test_markup PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOFile::test_nonascii PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOFile::test_extensions PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOFile::test_mimetypes PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOFile::test_language PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOFile::test_context PASSED [ 60%] 1599s tests/translate/storage/test_mo.py::TestMOFile::test_output PASSED [ 60%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_isfuzzy PASSED [ 60%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_create PASSED [ 60%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_eq PASSED [ 60%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_escapes PASSED [ 60%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_difficult_escapes PASSED [ 60%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_note_sanity PASSED [ 60%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_target PASSED [ 60%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_get PASSED [ 60%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_set PASSED [ 60%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_create_blank PASSED [ 60%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_add PASSED [ 60%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_remove PASSED [ 61%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_find PASSED [ 61%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_parse PASSED [ 61%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_files PASSED [ 61%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_save PASSED [ 61%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_extensions PASSED [ 61%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_mimetypes PASSED [ 61%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_translate PASSED [ 61%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_markup PASSED [ 61%] 1599s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_nonascii PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[-] PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String-String] PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {OK}-String] PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[\u015e\u0167\u0159\u012b\u019e\u0260 {ok}-\u015e\u0167\u0159\u012b\u019e\u0260] PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{ok}-String] PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{OK}-String] PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok} -String] PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_isfuzzy PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_create PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_eq PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_target PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_escapes PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_difficult_escapes PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_note_sanity PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_get PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_set PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_translate_but_same PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_untranslated PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_comments PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_copy_target PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_create_blank PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_add PASSED [ 61%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_remove PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_find PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_translate PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_parse PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_files PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_save PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_markup PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_extensions PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_mimetypes PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_nonascii PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_format_layout PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_crlf PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_active_flag PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_multiline_comments PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_template PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[--False] PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ -Source -True] PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok}-Source-True] PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok} -Source-True] PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[{ok}-Source-True] PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_headers PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_not_headers PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[0] PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[1] PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[2] PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[3] PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_tag_comments PASSED [ 62%] 1599s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_maxlength PASSED [ 62%] 1599s tests/translate/storage/test_omegat.py::TestOtUnit::test_isfuzzy PASSED [ 62%] 1599s tests/translate/storage/test_omegat.py::TestOtUnit::test_create PASSED [ 62%] 1599s tests/translate/storage/test_omegat.py::TestOtUnit::test_eq PASSED [ 62%] 1599s tests/translate/storage/test_omegat.py::TestOtUnit::test_target PASSED [ 62%] 1599s tests/translate/storage/test_omegat.py::TestOtUnit::test_escapes PASSED [ 62%] 1599s tests/translate/storage/test_omegat.py::TestOtUnit::test_difficult_escapes PASSED [ 63%] 1599s tests/translate/storage/test_omegat.py::TestOtUnit::test_note_sanity PASSED [ 63%] 1599s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_get PASSED [ 63%] 1599s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_set PASSED [ 63%] 1599s tests/translate/storage/test_omegat.py::TestOtFile::test_create_blank PASSED [ 63%] 1599s tests/translate/storage/test_omegat.py::TestOtFile::test_add PASSED [ 63%] 1599s tests/translate/storage/test_omegat.py::TestOtFile::test_remove PASSED [ 63%] 1599s tests/translate/storage/test_omegat.py::TestOtFile::test_find PASSED [ 63%] 1599s tests/translate/storage/test_omegat.py::TestOtFile::test_translate PASSED [ 63%] 1599s tests/translate/storage/test_omegat.py::TestOtFile::test_parse PASSED [ 63%] 1599s tests/translate/storage/test_omegat.py::TestOtFile::test_files PASSED [ 63%] 1599s tests/translate/storage/test_omegat.py::TestOtFile::test_save PASSED [ 63%] 1599s tests/translate/storage/test_omegat.py::TestOtFile::test_markup PASSED [ 63%] 1599s tests/translate/storage/test_omegat.py::TestOtFile::test_nonascii PASSED [ 63%] 1599s tests/translate/storage/test_omegat.py::TestOtFile::test_mimetypes PASSED [ 63%] 1599s tests/translate/storage/test_omegat.py::TestOtFile::test_extensions XFAIL [ 63%] 1599s tests/translate/storage/test_oo.py::test_makekey PASSED [ 63%] 1599s tests/translate/storage/test_oo.py::test_escape_help_text PASSED [ 63%] 1599s tests/translate/storage/test_oo.py::TestOO::test_simpleentry PASSED [ 63%] 1599s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_quickhelptest PASSED [ 63%] 1599s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_title PASSED [ 63%] 1599s tests/translate/storage/test_oo.py::TestOO::test_blankline PASSED [ 63%] 1599s tests/translate/storage/test_oo.py::TestOO::test_fieldlength PASSED [ 63%] 1599s tests/translate/storage/test_oo.py::TestOO::test_escapes PASSED [ 63%] 1599s tests/translate/storage/test_php.py::test_php_escaping_single_quote PASSED [ 63%] 1599s tests/translate/storage/test_php.py::test_php_escaping_double_quote PASSED [ 63%] 1599s tests/translate/storage/test_php.py::TestPhpUnit::test_isfuzzy PASSED [ 63%] 1599s tests/translate/storage/test_php.py::TestPhpUnit::test_create PASSED [ 63%] 1599s tests/translate/storage/test_php.py::TestPhpUnit::test_eq PASSED [ 63%] 1599s tests/translate/storage/test_php.py::TestPhpUnit::test_escapes PASSED [ 63%] 1599s tests/translate/storage/test_php.py::TestPhpUnit::test_note_sanity PASSED [ 63%] 1599s tests/translate/storage/test_php.py::TestPhpUnit::test_target PASSED [ 63%] 1599s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_get PASSED [ 63%] 1599s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_set PASSED [ 63%] 1599s tests/translate/storage/test_php.py::TestPhpUnit::test_difficult_escapes PASSED [ 64%] 1599s tests/translate/storage/test_php.py::TestPhpFile::test_create_blank PASSED [ 64%] 1599s tests/translate/storage/test_php.py::TestPhpFile::test_add PASSED [ 64%] 1599s tests/translate/storage/test_php.py::TestPhpFile::test_remove PASSED [ 64%] 1599s tests/translate/storage/test_php.py::TestPhpFile::test_find PASSED [ 64%] 1601s tests/translate/storage/test_php.py::TestPhpFile::test_parse PASSED [ 64%] 1603s tests/translate/storage/test_php.py::TestPhpFile::test_files PASSED [ 64%] 1605s tests/translate/storage/test_php.py::TestPhpFile::test_save PASSED [ 64%] 1605s tests/translate/storage/test_php.py::TestPhpFile::test_extensions PASSED [ 64%] 1605s tests/translate/storage/test_php.py::TestPhpFile::test_mimetypes PASSED [ 64%] 1605s tests/translate/storage/test_php.py::TestPhpFile::test_translate PASSED [ 64%] 1605s tests/translate/storage/test_php.py::TestPhpFile::test_markup PASSED [ 64%] 1605s tests/translate/storage/test_php.py::TestPhpFile::test_nonascii PASSED [ 64%] 1610s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition PASSED [ 64%] 1612s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_source PASSED [ 64%] 1617s tests/translate/storage/test_php.py::TestPhpFile::test_spaces_in_name PASSED [ 64%] 1622s tests/translate/storage/test_php.py::TestPhpFile::test_comment_definition PASSED [ 64%] 1626s tests/translate/storage/test_php.py::TestPhpFile::test_comment_blocks PASSED [ 64%] 1631s tests/translate/storage/test_php.py::TestPhpFile::test_comment_output PASSED [ 64%] 1636s tests/translate/storage/test_php.py::TestPhpFile::test_comment_add PASSED [ 64%] 1645s tests/translate/storage/test_php.py::TestPhpFile::test_multiline PASSED [ 64%] 1658s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays PASSED [ 64%] 1663s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_no_array_syntax PASSED [ 64%] 1668s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_spaces PASSED [ 64%] 1670s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_quotes PASSED [ 64%] 1672s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_number_as_value PASSED [ 64%] 1677s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_non_textual PASSED [ 64%] 1681s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define PASSED [ 64%] 1686s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define_with_spaces_before_key PASSED [ 64%] 1690s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter PASSED [ 64%] 1695s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter_and_before_key PASSED [ 64%] 1699s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equal_delimiter PASSED [ 64%] 1703s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equaldel_but_before_key PASSED [ 64%] 1708s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_entries_with_quotes PASSED [ 64%] 1712s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_comments_at_entry_line_end PASSED [ 65%] 1717s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_double_slash_comments_before_entries PASSED [ 65%] 1721s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_before_end_delimiter PASSED [ 65%] 1726s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simpledefinition_spaces_before_end_delimiter PASSED [ 65%] 1730s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_no_trailing_comma PASSED [ 65%] 1734s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_space_before_comma PASSED [ 65%] 1739s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_space_before_array_declaration PASSED [ 65%] 1743s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_declared_in_a_single_line PASSED [ 65%] 1745s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys PASSED [ 65%] 1748s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys_assigned_to_array PASSED [ 65%] 1752s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_no_keys PASSED [ 65%] 1754s tests/translate/storage/test_php.py::TestPhpFile::test_assignment_in_line_where_multiline_comment_ends PASSED [ 65%] 1756s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_using_short_array_syntax PASSED [ 65%] 1761s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays PASSED [ 65%] 1766s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_space_before_array_declaration PASSED [ 65%] 1770s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_unnamed_nested_arrays PASSED [ 65%] 1774s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_array_declaration_in_next_line PASSED [ 65%] 1779s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_with_newline_after_delimiter PASSED [ 65%] 1781s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_blank_entries PASSED [ 65%] 1785s tests/translate/storage/test_php.py::TestPhpFile::test_slashstar_in_string PASSED [ 65%] 1790s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_heredoc_syntax PASSED [ 65%] 1795s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_after_define PASSED [ 65%] 1797s tests/translate/storage/test_php.py::TestPhpFile::test_quotes PASSED [ 65%] 1801s tests/translate/storage/test_php.py::TestPhpFile::test_concatenation PASSED [ 65%] 1804s tests/translate/storage/test_php.py::TestPhpFile::test_serialize PASSED [ 65%] 1808s tests/translate/storage/test_php.py::TestPhpFile::test_space_before_comma PASSED [ 65%] 1813s tests/translate/storage/test_php.py::TestPhpFile::test_equals_in_id PASSED [ 65%] 1817s tests/translate/storage/test_php.py::TestPhpFile::test_comma_in_string PASSED [ 65%] 1821s tests/translate/storage/test_php.py::TestPhpFile::test_nowdoc PASSED [ 65%] 1826s tests/translate/storage/test_php.py::TestPhpFile::test_plain_concatenation PASSED [ 65%] 1830s tests/translate/storage/test_php.py::TestPhpFile::test_array_keys PASSED [ 65%] 1835s tests/translate/storage/test_php.py::TestPhpFile::test_double_var PASSED [ 65%] 1837s tests/translate/storage/test_php.py::TestPhpFile::test_return_array PASSED [ 65%] 1839s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short PASSED [ 66%] 1842s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short_quotes PASSED [ 66%] 1842s tests/translate/storage/test_php.py::TestPhpFile::test_addunit PASSED [ 66%] 1842s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_isfuzzy PASSED [ 66%] 1842s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_create PASSED [ 66%] 1842s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_eq PASSED [ 66%] 1842s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_escapes PASSED [ 66%] 1842s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_difficult_escapes PASSED [ 66%] 1842s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_note_sanity PASSED [ 66%] 1842s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_target PASSED [ 66%] 1842s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_get PASSED [ 66%] 1842s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_set PASSED [ 66%] 1842s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_create_blank PASSED [ 66%] 1842s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_add PASSED [ 66%] 1842s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_remove PASSED [ 66%] 1842s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_find PASSED [ 66%] 1844s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_parse PASSED [ 66%] 1846s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_files PASSED [ 66%] 1849s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_save PASSED [ 66%] 1849s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_extensions PASSED [ 66%] 1849s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_mimetypes PASSED [ 66%] 1849s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_translate PASSED [ 66%] 1849s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_markup PASSED [ 66%] 1849s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_nonascii PASSED [ 66%] 1851s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_plurals PASSED [ 66%] 1851s tests/translate/storage/test_po.py::test_roundtrip_quoting PASSED [ 66%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_isfuzzy PASSED [ 66%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_create PASSED [ 66%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_eq PASSED [ 66%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_target PASSED [ 66%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_escapes PASSED [ 66%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_difficult_escapes PASSED [ 66%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_note_sanity PASSED [ 66%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_rich_get PASSED [ 66%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_rich_set PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_istranslatable PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_locations PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_nongettext_location PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_adding_empty_note PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_markreview PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_errors PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_no_plural_settarget PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_wrapping_bug PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_extract_msgidcomments_from_text PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_isheader PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOUnit::test_buildfromunit PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_create_blank PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_add PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_remove PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_find PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_translate PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_parse PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_files PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_save PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_markup PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_nonascii PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_extensions PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_mimetypes PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_context_only PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_simpleentry PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_copy PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_parse_source_string PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_parse_file PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_unicode PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_plurals PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_plural_unicode PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_nongettext_location PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_percent_location PASSED [ 67%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals XFAIL [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_empty_lines_notes PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_fuzzy PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated XFAIL [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_merging_automaticcomments PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_malformed_units PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_malformed_obsolete_units PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_uniforum_po PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_obsolete PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_obsolete_with_prev_msgid PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_header_escapes PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_plural PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgctxt PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgidcomments PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_multiline_obsolete PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_merge_duplicates PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_merge_mixed_sources PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_parse_context PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_parse_advanced_context PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_kde_context PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_broken_kde_context PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_id PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments_2 PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_final_slash PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_unfinished_lines PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_encoding_change PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_istranslated PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_wrapping PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_wrapping_cjk PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_wrap_emoji PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis PASSED [ 68%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis_long PASSED [ 69%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_wrap_gettext PASSED [ 69%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_msgidcomments PASSED [ 69%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_unicode_ids PASSED [ 69%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_syntax_error PASSED [ 69%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_invalid PASSED [ 69%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_wrapped_msgid PASSED [ 69%] 1851s tests/translate/storage/test_po.py::TestPOFile::test_missing_plural PASSED [ 69%] 1851s tests/translate/storage/test_pocommon.py::test_roundtrip_quote_plus PASSED [ 69%] 1851s tests/translate/storage/test_poheader.py::test_parseheaderstring PASSED [ 69%] 1851s tests/translate/storage/test_poheader.py::test_update PASSED [ 69%] 1851s tests/translate/storage/test_poheader.py::test_po_dates PASSED [ 69%] 1851s tests/translate/storage/test_poheader.py::test_timezones PASSED [ 69%] 1851s tests/translate/storage/test_poheader.py::test_header_blank PASSED [ 69%] 1851s tests/translate/storage/test_poheader.py::test_plural_equation PASSED [ 69%] 1851s tests/translate/storage/test_poheader.py::test_plural_equation_across_lines PASSED [ 69%] 1851s tests/translate/storage/test_poheader.py::test_updatecontributor PASSED [ 69%] 1851s tests/translate/storage/test_poheader.py::test_updatecontributor_header PASSED [ 69%] 1851s tests/translate/storage/test_poheader.py::test_language PASSED [ 69%] 1851s tests/translate/storage/test_poheader.py::test_project PASSED [ 69%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_isfuzzy PASSED [ 69%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_create PASSED [ 69%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_eq PASSED [ 69%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_target PASSED [ 69%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_escapes PASSED [ 69%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_difficult_escapes PASSED [ 69%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_note_sanity PASSED [ 69%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_get PASSED [ 69%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_set PASSED [ 69%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_markreview PASSED [ 69%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_errors PASSED [ 69%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_accepted_control_chars PASSED [ 69%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_unaccepted_control_chars PASSED [ 69%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_plurals PASSED [ 69%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_ids PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_create_blank PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_remove PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_find PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_translate PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_files PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_save PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_markup PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_nonascii PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_extensions PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_mimetypes PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_basic PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_namespace PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_source PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_target PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_source PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_target PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_sourcelanguage PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage_multi PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_alttrans PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_fuzzy PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_xml_space PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parsing PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_entities PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_multiple_filenodes PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_indent PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add_target PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_closing_tags PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_context_groups PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_getlocations PASSED [ 70%] 1851s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_addlocation PASSED [ 70%] 1852s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_huge PASSED [ 71%] 1852s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve_add PASSED [ 71%] 1852s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse PASSED [ 71%] 1852s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse_plural_alpha_id PASSED [ 71%] 1852s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_notes PASSED [ 71%] 1852s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_plural PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::test_find_delimiter_pos_simple PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::test_find_delimiter_pos_multiple PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::test_find_delimiter_pos_none PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::test_find_delimiter_pos_whitespace PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::test_find_delimiter_pos_escapes PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::test_is_line_continuation PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::test_key_strip PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::test_get_comment_one_line PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::test_get_comment_start PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::test_get_comment_end PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestPropUnit::test_isfuzzy PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestPropUnit::test_create PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestPropUnit::test_eq PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestPropUnit::test_escapes PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestPropUnit::test_difficult_escapes PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestPropUnit::test_note_sanity PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestPropUnit::test_target PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_get PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_set PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_create_blank PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_add PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_remove PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_find PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_parse PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_files PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_save PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_extensions PASSED [ 71%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_mimetypes PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_translate PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_markup PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_nonascii PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_quotes PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_simpledefinition PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition_source PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_reduce PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_increase PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_extra_plurals PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_non_plurals PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_encoding PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestGwtProp::test_other_plurals PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_create_blank PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_add PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_remove PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_find PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_parse PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_files PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_save PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_extensions PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_mimetypes PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_translate PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_markup PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_nonascii PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition_source PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_controlutf8_source PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_control_source PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_unicode_escaping PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_newlines_startend PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_space PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_whitespace_handling PASSED [ 72%] 1852s tests/translate/storage/test_properties.py::TestProp::test_key_value_delimiters_simple PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_comments PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_latin1 PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_fullspec_delimiters PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_fullspec_escaped_key PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_fullspec_line_continuation PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_fullspec_key_without_value PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_mac_strings PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_utf_16_save PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_mac_multiline_strings PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_unicode PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_utf8 PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_newlines PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_multilines_comments PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments_dropping PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_quotes PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_equals PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_serialization PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_double_backslashes PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_override_encoding PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_trailing_comments PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_utf16_byte_order_mark PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_raise_ioerror_if_cannot_detect_encoding PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_utf8_byte_order_mark PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_joomla_set_target PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_joomla PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_joomla_escape PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_delimiter PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_value PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_multi_comments PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_serialize_note PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_serialize_long_note PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestProp::test_trailing_newlines PASSED [ 73%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_create_blank PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_add PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_remove PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_find PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_parse PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_files PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_save PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_extensions PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_mimetypes PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_translate PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_markup PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_nonascii PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_simpledefinition PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition_source PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote_and_argument PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_header_preserved PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_blank_line_before_comment_preserved PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWiki::test_deprecated_comments_preserved PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_create_blank PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_add PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_remove PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_find PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_parse PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_files PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_save PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_extensions PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_mimetypes PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_markup PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_nonascii PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_simpledefinition PASSED [ 74%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition_source PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote_and_argument PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_encoded_html PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_cleaning_attributes PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate_source PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_create_blank PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_add PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_find PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_extensions PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_mimetypes PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_translate PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_markup PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_nonascii PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_simpledefinition PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_parse PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_files PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_save PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_cleaning_attributes PASSED [ 75%] 1852s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove XFAIL [ 75%] 1852s tests/translate/storage/test_pypo.py::TestHelpers::test_unescape PASSED [ 75%] 1852s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo PASSED [ 75%] 1852s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo_escaped_quotes PASSED [ 75%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isfuzzy PASSED [ 75%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_create PASSED [ 75%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_eq PASSED [ 75%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_target PASSED [ 75%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_escapes PASSED [ 75%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_difficult_escapes PASSED [ 75%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_note_sanity PASSED [ 75%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_get PASSED [ 75%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_set PASSED [ 75%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_istranslatable PASSED [ 75%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_locations PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_nongettext_location PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_adding_empty_note PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_markreview PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_errors PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_no_plural_settarget PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrapping_bug PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_extract_msgidcomments_from_text PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isheader PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_buildfromunit PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plurals PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plural_reduction PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes_withcomments PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_firstlines PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_newlines PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_max_line_length PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_slash PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_spacing_max_line PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_create_blank PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_add PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_remove PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_find PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_translate PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_files PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_save PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_markup PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nonascii PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_extensions PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mimetypes PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_context_only PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_simpleentry PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_copy PASSED [ 76%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_source_string PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_file PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plurals PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plural_unicode PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nongettext_location PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_percent_location PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals XFAIL [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_empty_lines_notes PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_fuzzy PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated XFAIL [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merging_automaticcomments PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_units PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_obsolete_units PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_uniforum_po PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete_with_prev_msgid PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_header_escapes PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_plural PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgctxt PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgidcomments PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_multiline_obsolete PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_mixed_sources PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_context PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_advanced_context PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_context PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_broken_kde_context PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_id PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments_2 PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_final_slash PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unfinished_lines PASSED [ 77%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_encoding_change PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_istranslated PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping_cjk PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_emoji PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis_long PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_gettext PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_msgidcomments PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_ids PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_syntax_error PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapped_msgid PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_missing_plural PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_combine_msgidcomments PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates_msgctxt PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_blanks PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_output_str_unicode PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_posections PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_typecomments PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unassociated_comments PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_header PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_prevmsgid_parse PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_newlines PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unix_newlines PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mac_newlines PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_header PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_comment PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_bom PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_long_msgidcomments PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_incomplete PASSED [ 78%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_invalid PASSED [ 79%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_write PASSED [ 79%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment XFAIL [ 79%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_typecomment PASSED [ 79%] 1852s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_custom PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtUnit::test_isfuzzy PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtUnit::test_create PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtUnit::test_eq PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtUnit::test_target PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtUnit::test_escapes PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtUnit::test_difficult_escapes PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtUnit::test_note_sanity PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_get PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_set PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtFile::test_create_blank PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtFile::test_find PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtFile::test_translate PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtFile::test_markup PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtFile::test_extensions PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtFile::test_mimetypes PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtFile::test_parse PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtFile::test_save PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtFile::test_files PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtFile::test_nonascii PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtFile::test_add PASSED [ 79%] 1852s tests/translate/storage/test_qm.py::TestQtFile::test_remove PASSED [ 79%] 1852s tests/translate/storage/test_qph.py::TestQphUnit::test_isfuzzy PASSED [ 79%] 1852s tests/translate/storage/test_qph.py::TestQphUnit::test_create PASSED [ 79%] 1852s tests/translate/storage/test_qph.py::TestQphUnit::test_eq PASSED [ 79%] 1852s tests/translate/storage/test_qph.py::TestQphUnit::test_target PASSED [ 79%] 1852s tests/translate/storage/test_qph.py::TestQphUnit::test_escapes PASSED [ 79%] 1852s tests/translate/storage/test_qph.py::TestQphUnit::test_difficult_escapes PASSED [ 79%] 1852s tests/translate/storage/test_qph.py::TestQphUnit::test_note_sanity PASSED [ 79%] 1852s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_get PASSED [ 79%] 1852s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_set PASSED [ 80%] 1852s tests/translate/storage/test_qph.py::TestQphFile::test_create_blank PASSED [ 80%] 1852s tests/translate/storage/test_qph.py::TestQphFile::test_add PASSED [ 80%] 1852s tests/translate/storage/test_qph.py::TestQphFile::test_remove PASSED [ 80%] 1852s tests/translate/storage/test_qph.py::TestQphFile::test_find PASSED [ 80%] 1852s tests/translate/storage/test_qph.py::TestQphFile::test_translate PASSED [ 80%] 1852s tests/translate/storage/test_qph.py::TestQphFile::test_parse PASSED [ 80%] 1852s tests/translate/storage/test_qph.py::TestQphFile::test_files PASSED [ 80%] 1852s tests/translate/storage/test_qph.py::TestQphFile::test_save PASSED [ 80%] 1852s tests/translate/storage/test_qph.py::TestQphFile::test_markup PASSED [ 80%] 1852s tests/translate/storage/test_qph.py::TestQphFile::test_nonascii PASSED [ 80%] 1852s tests/translate/storage/test_qph.py::TestQphFile::test_extensions PASSED [ 80%] 1852s tests/translate/storage/test_qph.py::TestQphFile::test_mimetypes PASSED [ 80%] 1852s tests/translate/storage/test_qph.py::TestQphFile::test_basic PASSED [ 80%] 1852s tests/translate/storage/test_qph.py::TestQphFile::test_source PASSED [ 80%] 1852s tests/translate/storage/test_qph.py::TestQphFile::test_target PASSED [ 80%] 1852s tests/translate/storage/test_qph.py::TestQphFile::test_language PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::test_escaping PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_comments PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_textinclude PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_parse_dialog PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_parse_stringtable PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_lf PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_crlf PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_cr PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_parse_no_language PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_multiline PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_str PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_empty PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_utf_8 PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_utf_16 PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_comment PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_stringtables PASSED [ 80%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude_appstudio PASSED [ 81%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_id_whitespace PASSED [ 81%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_menu_comment PASSED [ 81%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_decompiled PASSED [ 81%] 1852s tests/translate/storage/test_rc.py::TestRcFile::test_quotes PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_isfuzzy PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_create PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_eq PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_escapes PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_difficult_escapes PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_note_sanity PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_target PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_get PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_set PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_create_blank PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_add PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_remove PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_find PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_parse PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_files PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_save PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_extensions PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_mimetypes PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_translate PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_markup PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_nonascii PASSED [ 81%] 1852s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_roundtrip PASSED [ 81%] 1852s tests/translate/storage/test_resx.py::TestRESXUnit::test_isfuzzy PASSED [ 81%] 1852s tests/translate/storage/test_resx.py::TestRESXUnit::test_create PASSED [ 81%] 1852s tests/translate/storage/test_resx.py::TestRESXUnit::test_eq PASSED [ 81%] 1852s tests/translate/storage/test_resx.py::TestRESXUnit::test_escapes PASSED [ 81%] 1852s tests/translate/storage/test_resx.py::TestRESXUnit::test_difficult_escapes PASSED [ 81%] 1852s tests/translate/storage/test_resx.py::TestRESXUnit::test_note_sanity PASSED [ 81%] 1852s tests/translate/storage/test_resx.py::TestRESXUnit::test_target PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_get PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_set PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_isfuzzy PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_create PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_eq PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_escapes PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_difficult_escapes PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_note_sanity PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_target PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_get PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_set PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit_comment PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXfile::test_create_blank PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXfile::test_add PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXfile::test_remove PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXfile::test_find PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXfile::test_parse PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXfile::test_files PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXfile::test_save PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXfile::test_extensions PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXfile::test_mimetypes PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXfile::test_translate PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXfile::test_markup PASSED [ 82%] 1852s tests/translate/storage/test_resx.py::TestRESXfile::test_nonascii PASSED [ 82%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_isfuzzy PASSED [ 82%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_create PASSED [ 82%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq PASSED [ 82%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_escapes PASSED [ 82%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_difficult_escapes PASSED [ 82%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_note_sanity PASSED [ 82%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_target PASSED [ 82%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_get PASSED [ 82%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_set PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_source PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq_formatvaluetype PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_innerkey PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_create_blank PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_remove PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_find PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_parse PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_files PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_save PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_extensions PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_mimetypes PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_translate PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_markup PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_nonascii PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_serialize PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_default_handlings PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_base_filename PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_plural_zero_always_set PASSED [ 83%] 1852s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add_unit PASSED [ 83%] 1852s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_isfuzzy PASSED [ 83%] 1852s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_create PASSED [ 83%] 1852s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_eq PASSED [ 83%] 1852s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_escapes PASSED [ 83%] 1852s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_difficult_escapes PASSED [ 83%] 1852s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_target PASSED [ 83%] 1852s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_get PASSED [ 83%] 1852s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_set PASSED [ 83%] 1853s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity XFAIL [ 83%] 1853s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_create_blank PASSED [ 83%] 1853s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_add PASSED [ 83%] 1853s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_remove PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_find PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_parse PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_files PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_save PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_extensions PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_mimetypes PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_translate PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_markup PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_nonascii PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_create_blank PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_add PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_remove PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_find PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_parse PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_files PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_save PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_extensions PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_mimetypes PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_translate PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_markup PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_nonascii PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_create_blank PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_add PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_remove PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_find PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_parse PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_files PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_save PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_extensions PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_mimetypes PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_translate PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_markup PASSED [ 84%] 1853s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_nonascii PASSED [ 85%] 1853s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_create_blank PASSED [ 85%] 1853s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_add PASSED [ 85%] 1853s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_remove PASSED [ 85%] 1853s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_find PASSED [ 85%] 1853s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_parse PASSED [ 85%] 1853s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_files PASSED [ 85%] 1853s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_save PASSED [ 85%] 1853s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_extensions PASSED [ 85%] 1853s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_mimetypes PASSED [ 85%] 1853s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_translate PASSED [ 85%] 1853s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_markup PASSED [ 85%] 1853s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_nonascii PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXUnit::test_isfuzzy PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXUnit::test_create PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXUnit::test_eq PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXUnit::test_target PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXUnit::test_escapes PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXUnit::test_difficult_escapes PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXUnit::test_note_sanity PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_get PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_set PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_create_blank PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_add PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_remove PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_find PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_translate PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_parse PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_files PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_save PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_markup PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_nonascii PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_extensions PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_mimetypes PASSED [ 85%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_basic PASSED [ 86%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_source PASSED [ 86%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_target PASSED [ 86%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_setid PASSED [ 86%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_indent PASSED [ 86%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_descrip PASSED [ 86%] 1853s tests/translate/storage/test_tbx.py::TestTBXfile::test_note_from PASSED [ 86%] 1853s tests/translate/storage/test_tiki.py::TestTikiUnit::test_locations PASSED [ 86%] 1853s tests/translate/storage/test_tiki.py::TestTikiUnit::test_to_unicode PASSED [ 86%] 1853s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_simple PASSED [ 86%] 1853s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_encode PASSED [ 86%] 1853s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_locations PASSED [ 86%] 1853s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_ignore_extras PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnit::test_isfuzzy PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnit::test_create PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnit::test_eq PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnit::test_target PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnit::test_escapes PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnit::test_difficult_escapes PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnit::test_note_sanity PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_get PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_set PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_isfuzzy PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_create PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_eq PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_target PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_escapes PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_difficult_escapes PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_note_sanity PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_get PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_set PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXfile::test_create_blank PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXfile::test_add PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXfile::test_remove PASSED [ 86%] 1853s tests/translate/storage/test_tmx.py::TestTMXfile::test_find PASSED [ 87%] 1853s tests/translate/storage/test_tmx.py::TestTMXfile::test_parse PASSED [ 87%] 1853s tests/translate/storage/test_tmx.py::TestTMXfile::test_files PASSED [ 87%] 1853s tests/translate/storage/test_tmx.py::TestTMXfile::test_save PASSED [ 87%] 1853s tests/translate/storage/test_tmx.py::TestTMXfile::test_markup PASSED [ 87%] 1853s tests/translate/storage/test_tmx.py::TestTMXfile::test_nonascii PASSED [ 87%] 1853s tests/translate/storage/test_tmx.py::TestTMXfile::test_extensions PASSED [ 87%] 1853s tests/translate/storage/test_tmx.py::TestTMXfile::test_mimetypes PASSED [ 87%] 1853s tests/translate/storage/test_tmx.py::TestTMXfile::test_translate PASSED [ 87%] 1853s tests/translate/storage/test_tmx.py::TestTMXfile::test_addtranslation PASSED [ 87%] 1853s tests/translate/storage/test_tmx.py::TestTMXfile::test_withcomment PASSED [ 87%] 1853s tests/translate/storage/test_tmx.py::TestTMXfile::test_withnewlines PASSED [ 87%] 1853s tests/translate/storage/test_tmx.py::TestTMXfile::test_xmlentities PASSED [ 87%] 1853s tests/translate/storage/test_tmx.py::TestTMXfile::test_controls_cleaning PASSED [ 87%] 1853s tests/translate/storage/test_trados.py::test_unescape PASSED [ 87%] 1853s tests/translate/storage/test_trados.py::test_escape PASSED [ 87%] 1853s tests/translate/storage/test_ts.py::TestTS::test_construct PASSED [ 87%] 1853s tests/translate/storage/test_ts2.py::TestTSUnit::test_isfuzzy PASSED [ 87%] 1853s tests/translate/storage/test_ts2.py::TestTSUnit::test_create PASSED [ 87%] 1853s tests/translate/storage/test_ts2.py::TestTSUnit::test_eq PASSED [ 87%] 1853s tests/translate/storage/test_ts2.py::TestTSUnit::test_target PASSED [ 87%] 1853s tests/translate/storage/test_ts2.py::TestTSUnit::test_escapes PASSED [ 87%] 1853s tests/translate/storage/test_ts2.py::TestTSUnit::test_difficult_escapes PASSED [ 87%] 1853s tests/translate/storage/test_ts2.py::TestTSUnit::test_note_sanity PASSED [ 87%] 1853s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_get PASSED [ 87%] 1853s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_set PASSED [ 87%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_create_blank PASSED [ 87%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_add PASSED [ 87%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_remove PASSED [ 87%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_find PASSED [ 87%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_translate PASSED [ 87%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_parse PASSED [ 87%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_files PASSED [ 87%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_save PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_markup PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_nonascii PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_extensions PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_mimetypes PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_basic PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_source PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_target PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_plurals PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_nplural PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_language PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_edit PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_obsolete PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_locations PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_merge_with_fuzzies PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_getid PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_backnforth PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_context PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_roundtrip_context PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_edit_missing_translation PASSED [ 88%] 1853s tests/translate/storage/test_ts2.py::TestTSfile::test_missing_source PASSED [ 88%] 1853s tests/translate/storage/test_txt.py::TestTxtUnit::test_isfuzzy PASSED [ 88%] 1853s tests/translate/storage/test_txt.py::TestTxtUnit::test_create PASSED [ 88%] 1853s tests/translate/storage/test_txt.py::TestTxtUnit::test_eq PASSED [ 88%] 1853s tests/translate/storage/test_txt.py::TestTxtUnit::test_escapes PASSED [ 88%] 1853s tests/translate/storage/test_txt.py::TestTxtUnit::test_difficult_escapes PASSED [ 88%] 1853s tests/translate/storage/test_txt.py::TestTxtUnit::test_note_sanity PASSED [ 88%] 1853s tests/translate/storage/test_txt.py::TestTxtUnit::test_target PASSED [ 88%] 1853s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_get PASSED [ 88%] 1853s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_set PASSED [ 88%] 1853s tests/translate/storage/test_txt.py::TestTxtFile::test_create_blank PASSED [ 88%] 1853s tests/translate/storage/test_txt.py::TestTxtFile::test_add PASSED [ 88%] 1853s tests/translate/storage/test_txt.py::TestTxtFile::test_remove PASSED [ 88%] 1853s tests/translate/storage/test_txt.py::TestTxtFile::test_find PASSED [ 88%] 1853s tests/translate/storage/test_txt.py::TestTxtFile::test_parse PASSED [ 89%] 1853s tests/translate/storage/test_txt.py::TestTxtFile::test_files PASSED [ 89%] 1853s tests/translate/storage/test_txt.py::TestTxtFile::test_save PASSED [ 89%] 1853s tests/translate/storage/test_txt.py::TestTxtFile::test_extensions PASSED [ 89%] 1853s tests/translate/storage/test_txt.py::TestTxtFile::test_mimetypes PASSED [ 89%] 1853s tests/translate/storage/test_txt.py::TestTxtFile::test_translate PASSED [ 89%] 1853s tests/translate/storage/test_txt.py::TestTxtFile::test_markup PASSED [ 89%] 1853s tests/translate/storage/test_txt.py::TestTxtFile::test_nonascii PASSED [ 89%] 1853s tests/translate/storage/test_txt.py::TestTxtFile::test_simpleblock PASSED [ 89%] 1853s tests/translate/storage/test_txt.py::TestTxtFile::test_multipleblocks PASSED [ 89%] 1853s tests/translate/storage/test_txt.py::TestTxtFile::test_no_segmentation PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxUnit::test_isfuzzy PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxUnit::test_create PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxUnit::test_eq PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxUnit::test_target PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxUnit::test_escapes PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxUnit::test_difficult_escapes PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxUnit::test_note_sanity PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_get PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_set PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxFile::test_create_blank PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxFile::test_add PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxFile::test_remove PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxFile::test_find PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxFile::test_translate PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxFile::test_parse PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxFile::test_files PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxFile::test_save PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxFile::test_markup PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxFile::test_nonascii PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxFile::test_extensions PASSED [ 89%] 1853s tests/translate/storage/test_utx.py::TestUtxFile::test_mimetypes PASSED [ 89%] 1853s tests/translate/storage/test_wordfast.py::TestWFTime::test_timestring PASSED [ 89%] 1853s tests/translate/storage/test_wordfast.py::TestWFTime::test_time PASSED [ 89%] 1853s tests/translate/storage/test_wordfast.py::TestWFUnit::test_isfuzzy PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFUnit::test_create PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFUnit::test_eq PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFUnit::test_target PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFUnit::test_escapes PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFUnit::test_note_sanity PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_get PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_set PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFUnit::test_difficult_escapes PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFUnit::test_wordfast_escaping PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFUnit::test_newlines PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFUnit::test_language_setting PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFUnit::test_istranslated PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFFile::test_create_blank PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFFile::test_add PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFFile::test_remove PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFFile::test_find PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFFile::test_translate PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFFile::test_parse PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFFile::test_files PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFFile::test_save PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFFile::test_markup PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFFile::test_nonascii PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFFile::test_extensions PASSED [ 90%] 1853s tests/translate/storage/test_wordfast.py::TestWFFile::test_mimetypes PASSED [ 90%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_isfuzzy PASSED [ 90%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_create PASSED [ 90%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_eq PASSED [ 90%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_target PASSED [ 90%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_escapes PASSED [ 90%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_difficult_escapes PASSED [ 90%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_note_sanity PASSED [ 90%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_get PASSED [ 90%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_set PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_markreview PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_errors PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_accepted_control_chars PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_unaccepted_control_chars PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_create_blank PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_remove PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_find PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_translate PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parse PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_files PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_save PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_markup PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_nonascii PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_extensions PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_mimetypes PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_basic PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_namespace PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_source PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_target PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_source PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_target PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_sourcelanguage PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage_multi PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_notes PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_alttrans PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_fuzzy PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_xml_space PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parsing PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_entities PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_multiple_filenodes PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_indent PASSED [ 91%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add_target PASSED [ 92%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve PASSED [ 92%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_closing_tags PASSED [ 92%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_context_groups PASSED [ 92%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_getlocations PASSED [ 92%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_addlocation PASSED [ 92%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_huge PASSED [ 92%] 1853s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve_add PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_isfuzzy PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_create PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_eq PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_escapes PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_difficult_escapes PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_note_sanity PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_target PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_get PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_set PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_getlocations PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_create_blank PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_find PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_files PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_save PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_extensions PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_mimetypes PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_translate PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_markup PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nonascii PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_serialize PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit_unicode PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse_unicode_list PASSED [ 92%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_ordering PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_initial_comments PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_string_key PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nested PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_multiline PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_boolean PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_integer PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_no_quote_strings PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_double_quote_strings PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_single_quote_strings PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_double_quote_strings PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_single_quote_strings PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_escaped_double_quotes PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_newlines PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_list PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_dictionary PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_key_nesting PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add_to_mepty PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty_key PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dict_in_list PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dump_args PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_anchors PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_tagged_scalar PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_numeric PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_remove PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_special PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_quotes_roundtrip PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_create_blank PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_remove PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_find PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_parse PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_files PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_save PASSED [ 93%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_extensions PASSED [ 94%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_mimetypes PASSED [ 94%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_translate PASSED [ 94%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_markup PASSED [ 94%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_nonascii PASSED [ 94%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_list PASSED [ 94%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby PASSED [ 94%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_wrong PASSED [ 94%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_invalid_value PASSED [ 94%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural PASSED [ 94%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_empty PASSED [ 94%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_anchors PASSED [ 94%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_type_change PASSED [ 94%] 1853s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_add PASSED [ 94%] 1853s tests/translate/storage/test_zip.py::TestZIPFile::test_created PASSED [ 94%] 1853s tests/translate/storage/test_zip.py::TestZIPFile::test_basic PASSED [ 94%] 1853s tests/translate/storage/test_zip.py::TestZIPFile::test_structure PASSED [ 94%] 1853s tests/translate/storage/test_zip.py::TestZIPFile::test_getunits PASSED [ 94%] 1853s tests/translate/storage/xml_extract/test_misc.py::test_reduce_tree PASSED [ 94%] 1853s tests/translate/storage/xml_extract/test_misc.py::test_compose_mappings PASSED [ 94%] 1853s tests/translate/storage/xml_extract/test_misc.py::test_parse_tag PASSED [ 94%] 1853s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath_component PASSED [ 94%] 1853s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath PASSED [ 94%] 1853s tests/translate/storage/xml_extract/test_unit_tree.py::test__add_unit_to_tree PASSED [ 94%] 1853s tests/translate/storage/xml_extract/test_xpath_breadcrumb.py::test_breadcrumb PASSED [ 94%] 1853s tests/translate/tools/test_help.py::test_help[build_tmdb] PASSED [ 94%] 1853s tests/translate/tools/test_help.py::test_help[phppo2pypo] PASSED [ 94%] 1854s tests/translate/tools/test_help.py::test_help[poclean] PASSED [ 94%] 1854s tests/translate/tools/test_help.py::test_help[pocompile] PASSED [ 94%] 1854s tests/translate/tools/test_help.py::test_help[poconflicts] PASSED [ 94%] 1854s tests/translate/tools/test_help.py::test_help[pocount] PASSED [ 94%] 1854s tests/translate/tools/test_help.py::test_help[podebug] PASSED [ 94%] 1854s tests/translate/tools/test_help.py::test_help[pogrep] PASSED [ 94%] 1854s tests/translate/tools/test_help.py::test_help[pomerge] PASSED [ 94%] 1854s tests/translate/tools/test_help.py::test_help[porestructure] PASSED [ 95%] 1854s tests/translate/tools/test_help.py::test_help[posegment] PASSED [ 95%] 1854s tests/translate/tools/test_help.py::test_help[poswap] PASSED [ 95%] 1854s tests/translate/tools/test_help.py::test_help[poterminology] PASSED [ 95%] 1854s tests/translate/tools/test_help.py::test_help[pretranslate] PASSED [ 95%] 1854s tests/translate/tools/test_help.py::test_help[pydiff] PASSED [ 95%] 1854s tests/translate/tools/test_help.py::test_help[pypo2phppo] PASSED [ 95%] 1854s tests/translate/tools/test_junitmsgfmt.py::test_output[failure] PASSED [ 95%] 1854s tests/translate/tools/test_junitmsgfmt.py::test_output[untranslated] PASSED [ 95%] 1854s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_single_po PASSED [ 95%] 1854s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_plural_po PASSED [ 95%] 1854s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_single_po PASSED [ 95%] 1854s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_plural_po PASSED [ 95%] 1854s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_help PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_zero PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_one PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_two PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::TestCount::test_punctuation_divides_words PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::TestCount::test_xml_tags PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::TestCount::test_newlines PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::TestCount::test_variables_are_words PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::TestCount::test_plurals PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde XFAIL [ 95%] 1854s tests/translate/tools/test_pocount.py::TestCount::test_msgid_blank PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::TestPOCount::test_translated PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzy PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslated PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::TestPOCount::test_total PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::TestPOCount::test_translatedsourcewords PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzysourcewords PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslatedsourcewords PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::TestPOCount::test_totalsourcewords PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-csv] PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-full] PASSED [ 95%] 1854s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-strings] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-words] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-csv] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-full] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-strings] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-words] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-csv] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-full] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-strings] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-words] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-csv] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-full] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-strings] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-words] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_cases[po-file] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_cases[po-file-fuzzy] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_cases[po-file-csv] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_cases[xliff-states-yes] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_cases[xliff-states-no] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_error_cases[mutually-exclusive] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_error_cases[missing-file] PASSED [ 96%] 1854s tests/translate/tools/test_pocount.py::test_error_cases[no-args] PASSED [ 96%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_ignore_gtk PASSED [ 96%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_keep_target PASSED [ 96%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_blank PASSED [ 96%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_en PASSED [ 96%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_xxx PASSED [ 96%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_bracket PASSED [ 96%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode PASSED [ 96%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_at_placeholders PASSED [ 96%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_single_brace_placeholders PASSED [ 96%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_double_brace_placeholders PASSED [ 96%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_html PASSED [ 96%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_multiple_styles_of_placeholder PASSED [ 97%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped PASSED [ 97%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_at_placeholders PASSED [ 97%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_single_brace_placeholders PASSED [ 97%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_double_brace_placeholders PASSED [ 97%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_html PASSED [ 97%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_multiple_styles_of_placeholder PASSED [ 97%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified PASSED [ 97%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_at_placeholders PASSED [ 97%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_single_brace_placeholders PASSED [ 97%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_double_brace_placeholders PASSED [ 97%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_html PASSED [ 97%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_multiple_styles_of_placeholder PASSED [ 97%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_chef PASSED [ 97%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_po_variables PASSED [ 97%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_xliff_rewrite PASSED [ 97%] 1854s tests/translate/tools/test_podebug.py::TestPODebug::test_hash PASSED [ 97%] 1854s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgid PASSED [ 97%] 1854s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgstr PASSED [ 97%] 1854s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations PASSED [ 97%] 1854s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_comments PASSED [ 97%] 1854s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations_with_comment_enabled PASSED [ 97%] 1854s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_searchstring PASSED [ 97%] 1854s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_regex_searchstring PASSED [ 97%] 1854s tests/translate/tools/test_pogrep.py::TestPOGrep::test_keep_translations PASSED [ 97%] 1854s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_normalise PASSED [ 97%] 1854s tests/translate/tools/test_pogrep.py::TestXLiffGrep::test_simplegrep PASSED [ 97%] 1854s tests/translate/tools/test_pomerge.py::test_str2bool PASSED [ 97%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_mergesore_bad_data PASSED [ 97%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge PASSED [ 97%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge_no_locations PASSED [ 97%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_replacemerge PASSED [ 97%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_blanks PASSED [ 97%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_fuzzies PASSED [ 97%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_locations PASSED [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_with_locations PASSED [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_no_locations PASSED [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_reflowed_source_comments PASSED [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_comments_with_blank_lines PASSED [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dont_delete_unassociated_comments PASSED [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_trailing_newlines PASSED [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_minor_start_and_end_of_sentence_changes PASSED [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_last_entry_in_a_file PASSED [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs XFAIL [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_comments_layout PASSED [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dos2unix PASSED [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_xliff PASSED [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_po_into_xliff PASSED [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_po PASSED [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_dont_merge_kde_comments_found_in_translation PASSED [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_untranslated_with_kde_disambiguation PASSED [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_header_entries PASSED [ 98%] 1854s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_different_locations PASSED [ 98%] 1854s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_simple PASSED [ 98%] 1854s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_punctuation PASSED [ 98%] 1854s tests/translate/tools/test_poterminology.py::TestPOTerminology::test_term_extraction PASSED [ 98%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_pretranslatepo_blank PASSED [ 98%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_simple PASSED [ 98%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_messages_marked_fuzzy PASSED [ 98%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals_with_fuzzy_matching PASSED [ 98%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change XFAIL [ 98%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_change PASSED [ 98%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_and_whitespace_change PASSED [ 98%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes XFAIL [ 98%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently XFAIL [ 98%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_dont_duplicate PASSED [ 98%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_new_overides_old PASSED [ 98%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments_with_blank_comment_lines PASSED [ 98%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_empty_commentlines PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgidcomments PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_resurect_obsolete_messages PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_typecomments PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_xliff_states PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_pretranslatepo_blank PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_simple PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_messages_marked_fuzzy PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change XFAIL [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_change PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_and_whitespace_change PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes XFAIL [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently XFAIL [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_new_overides_old PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments_with_blank_comment_lines PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_empty_commentlines PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgidcomments PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_resurect_obsolete_messages PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_typecomments PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_xliff_states PASSED [ 99%] 1854s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_help PASSED [ 99%] 1854s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_single_po PASSED [ 99%] 1854s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_plural_po PASSED [ 99%] 1854s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_single_po PASSED [ 99%] 1854s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_plural_po PASSED [ 99%] 1854s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_help PASSED [ 99%] 1855s tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff PASSED [ 99%] 1855s tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff PASSED [100%] 1855s 1855s =============================== warnings summary =============================== 1855s tests/translate/storage/test_cpo.py:15 1855s Warning: 1855s Module 'translate.storage.cpo' was found, but when imported by pytest it raised: 1855s ImportError('gettext PO library not found') 1855s In pytest 9.1 this warning will become an error by default. 1855s You can fix the underlying problem, or alternatively overwrite this behavior and silence this warning by passing exc_type=ImportError explicitly. 1855s See https://docs.pytest.org/en/stable/deprecations.html#pytest-importorskip-default-behavior-regarding-importerror 1855s 1855s tests/odf_xliff/test_odf_xliff.py::test_roundtrip 1855s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.9zB7bO/autopkgtest_tmp/tests/odf_xliff/test_2.odt'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid 1855s Warning: unclosed file <_io.TextIOWrapper name='TestAndroid2POCommand_test_convertandroid/en.po' mode='r' encoding='UTF-8'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 1855s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 1855s Warning: unclosed file <_io.TextIOWrapper name='TestCSV2POCommand_test_columnorder/test.po' mode='r' encoding='UTF-8'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot 1855s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_pot/simple.pot'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po 1855s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po 1855s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_po/simple.po'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates 1855s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_remove_duplicates/simple.po'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf 1855s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_xlf/simple.xlf'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 1855s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 1855s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_columnorder/test.csv' mode='r' encoding='UTF-8'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context 1855s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_context/test.csv' mode='r' encoding='UTF-8'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing 1855s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey 1855s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey 1855s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing 1855s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey 1855s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey 1855s Warning: Could not find accesskey for key.accesskey 1855s 1855s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 1855s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file 1855s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten 1855s Warning: unclosed file <_io.BufferedReader name='translation/file1.po'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 1855s Warning: unclosed file <_io.BufferedWriter name='translated/file1.html'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert 1855s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.9zB7bO/autopkgtest_tmp/tests/translate/convert/test.idml'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po 1855s Warning: unclosed file <_io.BufferedReader name='translation.po'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp 1855s Warning: unclosed file <_io.FileIO name='input.oo' mode='rb' closefd=True> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp 1855s Warning: unclosed file <_io.FileIO name='output.oo' mode='wb' closefd=True> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey 1855s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey 1855s Warning: Could not find accesskey for prop.accesskey 1855s 1855s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert 1855s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert/simple.po'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 1855s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf16/simple.po'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1855s Warning: unclosed file <_io.BufferedWriter name='simple.po'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1855s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1855s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_wrong/simple.po'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 1855s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf8/simple.po'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex 1855s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_menuex/simple.po'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot 1855s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_pot/simple.pot'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po 1855s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_po/simple.po'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates 1855s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_remove_duplicates/simple.po'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 1855s Warning: unclosed file <_io.BufferedWriter name='simple.odt'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 1855s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.9zB7bO/autopkgtest_tmp/tests/translate/convert/test.odt'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename 1855s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_preserve_filename/snippet.xlf'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot 1855s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_pot/simple.pot'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po 1855s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_po/simple.po'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates 1855s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_remove_duplicates/simple.po'> 1855s Enable tracemalloc to get traceback where the object was allocated. 1855s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1855s 1855s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers 1855s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers 1855s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker 1855s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source 1855s Warning: The 'u' type code is deprecated and will be removed in Python 3.16 1855s 1855s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 1855s Warning: DTD parse error: :1:36:FATAL:PARSER:ERR_ENTITY_NOT_FINISHED: xmlParseEntityDecl: entity test.me not terminated 1855s 1855s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 1855s Warning: DTD file '' does not validate 1855s 1855s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1855s --------------------------- snapshot report summary ---------------------------- 1855s 23 snapshots passed. 1855s =========================== short test summary info ============================ 1855s SKIPPED [1] tests/translate/storage/test_cpo.py:15: could not import 'translate.storage.cpo': gettext PO library not found 1855s SKIPPED [1] tests/translate/storage/test_fluent.py:29: could not import 'translate.storage.fluent': No module named 'fluent' 1855s SKIPPED [1] tests/translate/filters/test_checks.py:1429: Spell checking for af is not available 1855s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence - Not Implemented 1855s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence - Not Implemented 1855s XFAIL tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template - Need to review if we want this behaviour 1855s XFAIL tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template - Need to review if we want this behaviour 1855s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change - Not implemented - review if this is even correct 1855s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes - Not Implemented - needs review 1855s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently - Not Implemented - review if this is even correct 1855s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change - Not implemented - review if this is even correct 1855s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes - Not Implemented - needs review 1855s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently - Not Implemented - review if this is even correct 1855s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates - This is invalid YAML document 1855s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates - This is invalid YAML document 1855s XFAIL tests/translate/filters/test_checks.py::test_acceleratedvariables - Accelerated variables needs a better implementation 1855s XFAIL tests/translate/filters/test_checks.py::test_musttranslatewords - FIXME: All fails() tests are not working 1855s XFAIL tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time - Bug #3408 1855s XFAIL tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags - Bug #3506 1855s XFAIL tests/translate/lang/test_common.py::test_word_khmer - ZWS is not considered a space in Python 2.6+. Khmer should extend words() to include \u200b in addition to other word breakers. 1855s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables - Test needs fixing, disabled for now 1855s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables - Test needs fixing, disabled for now 1855s XFAIL tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases - Not Implemented 1855s XFAIL tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases - Not Implemented 1855s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_comment_following - Not Implemented 1855s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting - Not Implemented 1855s XFAIL tests/translate/storage/test_omegat.py::TestOtFile::test_extensions - This doesn't work, due to two store classes handling different extensions, but factory listing it as one supported file type 1855s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals - Not Implemented 1855s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 1855s XFAIL tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove - removal not working in full page 1855s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals - Not Implemented 1855s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 1855s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment - Not sure if this can not be parsed gracefully 1855s XFAIL tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity - Not Implemented 1855s XFAIL tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde - Support commented out pending removal 1855s XFAIL tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs - Not Implemented 1855s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change - Not Implemented 1855s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes - Not Implemented 1855s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently - Not Implemented 1855s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change - Not Implemented 1855s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes - Not Implemented 1855s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently - Not Implemented 1855s ===== 3328 passed, 3 skipped, 39 xfailed, 51 warnings in 619.18s (0:10:19) ===== 1855s /tmp/autopkgtest.9zB7bO/wrapper.sh: checking for leaked background processes... 1855s /tmp/autopkgtest.9zB7bO/wrapper.sh: waiting for tee/cat subprocesses... 1855s /tmp/autopkgtest.9zB7bO/wrapper.sh: cleaning up... 1855s /tmp/autopkgtest.9zB7bO/wrapper.sh: Exit status: 0 1855s autopkgtest: DBG: testbed command exited with code 0 1856s autopkgtest [13:36:56]: test python3-translate-commands: -----------------------] 1856s autopkgtest: DBG: testbed executing test finished with exit status 0 1856s autopkgtest: DBG: sending command to testbed: copyup /tmp/autopkgtest.9zB7bO/python3-translate-commands-stdout /tmp/autopkgtest-work.dij5uc5o/out/python3-translate-commands-stdout 1856s autopkgtest: DBG: got reply from testbed: ok 1856s autopkgtest: DBG: sending command to testbed: copyup /tmp/autopkgtest.9zB7bO/python3-translate-commands-stderr /tmp/autopkgtest-work.dij5uc5o/out/python3-translate-commands-stderr 1856s autopkgtest: DBG: got reply from testbed: ok 1856s python3-translate-commands PASS 1856s autopkgtest [13:36:56]: test python3-translate-commands: - - - - - - - - - - results - - - - - - - - - - 1856s autopkgtest: DBG: sending command to testbed: copyup /tmp/autopkgtest.9zB7bO/python3-translate-commands-artifacts/ /tmp/autopkgtest-work.dij5uc5o/out/artifacts/ 1856s autopkgtest: DBG: got reply from testbed: ok 1856s autopkgtest: DBG: testbed command ['rm', '-rf', '/tmp/autopkgtest.9zB7bO/python3-translate-commands-artifacts', '/tmp/autopkgtest.9zB7bO/autopkgtest_tmp'], kind short, sout raw, serr pipe, env [] 1856s autopkgtest: DBG: testbed command exited with code 0 1856s autopkgtest: DBG: needs_reset, previously=False, requested by run_tests() line 230 1856s autopkgtest [13:36:56]: @@@@@@@@@@@@@@@@@@@@ summary 1856s translate-toolkit PASS 1856s python3-translate PASS 1856s python3-translate-commands PASS 1856s autopkgtest: DBG: testbed stop 1856s autopkgtest: DBG: testbed close, scratch=/tmp/autopkgtest.9zB7bO 1856s autopkgtest: DBG: sending command to testbed: close 1873s autopkgtest: DBG: got reply from testbed: ok 1873s autopkgtest: DBG: sending command to testbed: quit 1873s nova [W] Using flock in prodstack6-s390x 1873s Creating nova instance adt-plucky-s390x-translate-toolkit-20250219-130559-juju-7f2275-prod-proposed-migration-environment-15-4931c363-acb1-4eaf-b327-5997055cfa58 from image adt/ubuntu-plucky-s390x-server-20250219.img (UUID 7af5aa59-4155-4177-a560-02c7dd963d23)... 1873s nova [W] Timed out waiting for 57e4f489-d5e8-4223-bdff-df91e80423b2 to get deleted. 1873s nova [W] Using flock in prodstack6-s390x 1873s flock: timeout while waiting to get lock 1873s Creating nova instance adt-plucky-s390x-translate-toolkit-20250219-130559-juju-7f2275-prod-proposed-migration-environment-15-4931c363-acb1-4eaf-b327-5997055cfa58 from image adt/ubuntu-plucky-s390x-server-20250219.img (UUID 7af5aa59-4155-4177-a560-02c7dd963d23)... 1873s nova [W] Timed out waiting for e309e0a3-78cf-418e-b7a0-85fdaf0b8b5f to get deleted. 1873s nova [W] Using flock in prodstack6-s390x 1873s flock: timeout while waiting to get lock 1873s Creating nova instance adt-plucky-s390x-translate-toolkit-20250219-130559-juju-7f2275-prod-proposed-migration-environment-15-4931c363-acb1-4eaf-b327-5997055cfa58 from image adt/ubuntu-plucky-s390x-server-20250219.img (UUID 7af5aa59-4155-4177-a560-02c7dd963d23)... 1873s nova [W] Timed out waiting for a77cb0e5-9973-4378-9a6f-187de5f20834 to get deleted.