0s autopkgtest [16:16:06]: starting date and time: 2025-02-19 16:16:06+0000 0s autopkgtest [16:16:06]: git checkout: 325255d2 Merge branch 'pin-any-arch' into 'ubuntu/production' 0s autopkgtest [16:16:06]: host juju-7f2275-prod-proposed-migration-environment-15; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.ot1izjv5/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 --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 --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-15@lcy02-3.secgroup --name adt-plucky-amd64-translate-toolkit-20250219-161606-juju-7f2275-prod-proposed-migration-environment-15-44d1c88e-f7bf-48cf-8dc0-24d7ab25d330 --image adt/ubuntu-plucky-amd64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-15 --net-id=net_prod-proposed-migration -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/ 58s autopkgtest [16:17:04]: testbed dpkg architecture: amd64 58s autopkgtest [16:17:04]: testbed apt version: 2.9.29 58s autopkgtest [16:17:04]: @@@@@@@@@@@@@@@@@@@@ test bed setup 58s autopkgtest [16:17:04]: testbed release detected to be: None 58s autopkgtest [16:17:04]: updating testbed package index (apt update) 59s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [110 kB] 59s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 59s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 59s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 59s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [744 kB] 59s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [76.1 kB] 59s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [3120 B] 59s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [13.9 kB] 59s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 Packages [111 kB] 59s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/main i386 Packages [92.7 kB] 59s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/restricted i386 Packages [2412 B] 59s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/restricted amd64 Packages [7984 B] 59s Get:13 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 Packages [711 kB] 59s Get:14 http://ftpmaster.internal/ubuntu plucky-proposed/universe i386 Packages [262 kB] 59s Get:15 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse i386 Packages [3128 B] 59s Get:16 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse amd64 Packages [11.5 kB] 59s Fetched 2150 kB in 1s (3365 kB/s) 60s Reading package lists... 60s + lsb_release --codename --short 60s + RELEASE=plucky 60s + cat 60s + [ plucky != trusty ] 60s + DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y --allow-downgrades -o Dpkg::Options::=--force-confnew dist-upgrade 60s Reading package lists... 61s Building dependency tree... 61s Reading state information... 61s Calculating upgrade... 61s The following NEW packages will be installed: 61s libapt-pkg7.0 61s The following packages will be upgraded: 61s apt apt-utils iproute2 libgpgme11t64 liblsof0 libp11-kit0 lsof rsyslog 61s sysvinit-utils 61s 9 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 61s Need to get 5425 kB of archives. 61s After this operation, 4076 kB of additional disk space will be used. 61s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 sysvinit-utils amd64 3.14-1ubuntu1 [35.7 kB] 61s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 libapt-pkg7.0 amd64 2.9.30 [1131 kB] 62s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 apt amd64 2.9.30 [1434 kB] 62s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 apt-utils amd64 2.9.30 [222 kB] 62s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 iproute2 amd64 6.13.0-1ubuntu1 [1277 kB] 62s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 libp11-kit0 amd64 0.25.5-2ubuntu3 [311 kB] 62s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 rsyslog amd64 8.2412.0-2ubuntu1 [555 kB] 62s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 lsof amd64 4.99.4+dfsg-1 [245 kB] 62s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 liblsof0 amd64 4.99.4+dfsg-1 [59.6 kB] 62s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 libgpgme11t64 amd64 1.24.2-1ubuntu1 [155 kB] 62s Preconfiguring packages ... 62s Fetched 5425 kB in 0s (22.2 MB/s) 62s (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 ... 108925 files and directories currently installed.) 62s Preparing to unpack .../sysvinit-utils_3.14-1ubuntu1_amd64.deb ... 62s Unpacking sysvinit-utils (3.14-1ubuntu1) over (3.08-6ubuntu3) ... 62s Setting up sysvinit-utils (3.14-1ubuntu1) ... 62s Selecting previously unselected package libapt-pkg7.0:amd64. 62s (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 ... 108925 files and directories currently installed.) 62s Preparing to unpack .../libapt-pkg7.0_2.9.30_amd64.deb ... 62s Unpacking libapt-pkg7.0:amd64 (2.9.30) ... 63s Setting up libapt-pkg7.0:amd64 (2.9.30) ... 63s (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 ... 108974 files and directories currently installed.) 63s Preparing to unpack .../archives/apt_2.9.30_amd64.deb ... 63s Unpacking apt (2.9.30) over (2.9.29) ... 63s Setting up apt (2.9.30) ... 64s (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 ... 108974 files and directories currently installed.) 64s Preparing to unpack .../0-apt-utils_2.9.30_amd64.deb ... 64s Unpacking apt-utils (2.9.30) over (2.9.29) ... 64s Preparing to unpack .../1-iproute2_6.13.0-1ubuntu1_amd64.deb ... 64s Unpacking iproute2 (6.13.0-1ubuntu1) over (6.10.0-2ubuntu1) ... 64s Preparing to unpack .../2-libp11-kit0_0.25.5-2ubuntu3_amd64.deb ... 64s Unpacking libp11-kit0:amd64 (0.25.5-2ubuntu3) over (0.25.5-2ubuntu2) ... 64s Preparing to unpack .../3-rsyslog_8.2412.0-2ubuntu1_amd64.deb ... 64s Unpacking rsyslog (8.2412.0-2ubuntu1) over (8.2412.0-1ubuntu1) ... 64s Preparing to unpack .../4-lsof_4.99.4+dfsg-1_amd64.deb ... 64s Unpacking lsof (4.99.4+dfsg-1) over (4.99.3+dfsg-2) ... 64s Preparing to unpack .../5-liblsof0_4.99.4+dfsg-1_amd64.deb ... 64s Unpacking liblsof0 (4.99.4+dfsg-1) over (4.99.3+dfsg-2) ... 64s Preparing to unpack .../6-libgpgme11t64_1.24.2-1ubuntu1_amd64.deb ... 64s Unpacking libgpgme11t64:amd64 (1.24.2-1ubuntu1) over (1.24.1-4ubuntu1) ... 64s Setting up apt-utils (2.9.30) ... 64s Setting up liblsof0 (4.99.4+dfsg-1) ... 64s Setting up iproute2 (6.13.0-1ubuntu1) ... 64s Setting up rsyslog (8.2412.0-2ubuntu1) ... 65s info: The user `syslog' is already a member of `adm'. 66s Setting up libp11-kit0:amd64 (0.25.5-2ubuntu3) ... 66s Setting up lsof (4.99.4+dfsg-1) ... 66s Setting up libgpgme11t64:amd64 (1.24.2-1ubuntu1) ... 66s Processing triggers for man-db (2.13.0-1) ... 67s Processing triggers for libc-bin (2.40-4ubuntu1) ... 68s + rm /etc/apt/preferences.d/force-downgrade-to-release.pref 68s + /usr/lib/apt/apt-helper analyze-pattern ?true 68s + uname -r 68s + sed s/\./\\./g 68s + running_kernel_pattern=^linux-.*6\.12\.0-15-generic.* 68s + apt list ?obsolete 68s + tail -n+2 68s + grep+ cut -d/ -f1 68s -v ^linux-.*6\.12\.0-15-generic.* 70s + true 70s + obsolete_pkgs= 70s + DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y purge --autoremove 70s Reading package lists... 70s Building dependency tree... 70s Reading state information... 71s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 71s + grep -q trusty /etc/lsb-release 71s + [ ! -d /usr/share/doc/unattended-upgrades ] 71s + [ ! -d /usr/share/doc/lxd ] 71s + [ ! -d /usr/share/doc/lxd-client ] 71s + [ ! -d /usr/share/doc/snapd ] 71s + type iptables 71s + cat 71s + chmod 755 /etc/rc.local 71s + . /etc/rc.local 71s + iptables -w -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu 71s + iptables -A OUTPUT -d 10.255.255.1/32 -p tcp -j DROP 71s + iptables -A OUTPUT -d 10.255.255.2/32 -p tcp -j DROP 71s + uname -m 71s + [ x86_64 = ppc64le ] 71s + [ -d /run/systemd/system ] 71s + systemd-detect-virt --quiet --vm 71s + mkdir -p /etc/systemd/system/systemd-random-seed.service.d/ 71s + cat 71s + grep -q lz4 /etc/initramfs-tools/initramfs.conf 71s + echo COMPRESS=lz4 71s autopkgtest [16:17:17]: upgrading testbed (apt dist-upgrade and autopurge) 71s Reading package lists... 71s Building dependency tree... 71s Reading state information... 72s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 72s Starting 2 pkgProblemResolver with broken count: 0 72s Done 73s Entering ResolveByKeep 73s 74s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 74s Reading package lists... 74s Building dependency tree... 74s Reading state information... 75s Starting pkgProblemResolver with broken count: 0 75s Starting 2 pkgProblemResolver with broken count: 0 75s Done 76s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 76s autopkgtest [16:17:22]: rebooting testbed after setup commands that affected boot 80s autopkgtest-virt-ssh: WARNING: ssh connection failed. Retrying in 3 seconds... 92s autopkgtest [16:17:38]: testbed running kernel: Linux 6.12.0-15-generic #15-Ubuntu SMP PREEMPT_DYNAMIC Tue Feb 4 16:02:16 UTC 2025 92s autopkgtest [16:17:38]: @@@@@@@@@@@@@@@@@@@@ apt-source translate-toolkit 94s Get:1 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.14.7-1 (dsc) [3193 B] 94s Get:2 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.14.7-1 (tar) [1176 kB] 94s Get:3 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.14.7-1 (diff) [24.3 kB] 94s gpgv: Signature made Mon Feb 10 10:23:38 2025 UTC 94s gpgv: using RSA key 90E2D2C1AD146A1B7EBB891DBBC17EBB1396F2F7 94s gpgv: Can't check signature: No public key 94s dpkg-source: warning: cannot verify inline signature for ./translate-toolkit_3.14.7-1.dsc: no acceptable signature found 95s autopkgtest [16:17:41]: testing package translate-toolkit version 3.14.7-1 95s autopkgtest [16:17:41]: build not needed 95s autopkgtest [16:17:41]: test translate-toolkit: preparing testbed 95s Reading package lists... 96s Building dependency tree... 96s Reading state information... 96s Starting pkgProblemResolver with broken count: 0 96s Starting 2 pkgProblemResolver with broken count: 0 96s Done 97s The following NEW packages will be installed: 97s dictionaries-common emacsen-common gettext hunspell-en-us libapr1t64 97s libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data libgomp1 97s libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 libxslt1.1 97s python3-aeidon python3-bs4 python3-charset-normalizer python3-cheroot 97s python3-cwcwidth python3-dateutil python3-diff-match-patch python3-enchant 97s python3-iniparse python3-levenshtein python3-lxml python3-mistletoe 97s python3-phply python3-ply python3-pycountry python3-pytz python3-rapidfuzz 97s python3-ruamel.yaml python3-ruamel.yaml.clib python3-soupsieve 97s python3-translate python3-tz python3-vobject python3-xapian subversion 97s translate-toolkit 97s 0 upgraded, 42 newly installed, 0 to remove and 0 not upgraded. 97s Need to get 13.8 MB of archives. 97s After this operation, 75.6 MB of additional disk space will be used. 97s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 emacsen-common all 3.0.5 [12.1 kB] 97s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 dictionaries-common all 1.30.4 [176 kB] 97s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 libgomp1 amd64 15-20250213-1ubuntu1 [148 kB] 97s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 gettext amd64 0.23.1-1 [1086 kB] 97s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 hunspell-en-us all 1:2020.12.07-3 [586 kB] 97s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 libapr1t64 amd64 1.7.5-1 [116 kB] 97s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 libaprutil1t64 amd64 1.6.3-3ubuntu2 [98.5 kB] 97s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 libaspell15 amd64 0.60.8.1-4 [353 kB] 97s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 libhunspell-1.7-0 amd64 1.7.2+really1.7.2-10build3 [294 kB] 97s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 libenchant-2-2 amd64 2.8.2+dfsg1-3 [59.0 kB] 97s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 libexttextcat-data all 3.4.7-1build1 [193 kB] 97s Get:12 http://ftpmaster.internal/ubuntu plucky/universe amd64 libserf-1-1 amd64 1.3.10-3ubuntu1 [48.2 kB] 97s Get:13 http://ftpmaster.internal/ubuntu plucky/universe amd64 libutf8proc3 amd64 2.9.0-1build1 [70.6 kB] 97s Get:14 http://ftpmaster.internal/ubuntu plucky/universe amd64 libsvn1 amd64 1.14.5-2 [1453 kB] 97s Get:15 http://ftpmaster.internal/ubuntu plucky/universe amd64 libxapian30 amd64 1.4.25-2 [796 kB] 97s Get:16 http://ftpmaster.internal/ubuntu plucky/main amd64 libxslt1.1 amd64 1.1.39-0exp1ubuntu2 [175 kB] 97s Get:17 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-aeidon all 1.15-2 [231 kB] 97s Get:18 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-soupsieve all 2.6-1 [33.0 kB] 97s Get:19 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-bs4 all 4.13.3-1 [136 kB] 97s Get:20 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-charset-normalizer amd64 3.4.1-1 [147 kB] 97s Get:21 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-cheroot all 10.0.1+ds1-3 [78.6 kB] 97s Get:22 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-cwcwidth amd64 0.1.10-1 [27.7 kB] 97s Get:23 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-dateutil all 2.9.0-3 [80.2 kB] 97s Get:24 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-diff-match-patch all 20241021-1 [33.6 kB] 97s Get:25 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-enchant all 3.3.0~rc1-1 [35.1 kB] 97s Get:26 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-rapidfuzz amd64 3.12.1+ds-1 [2755 kB] 98s Get:27 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-levenshtein amd64 0.27.0-1 [147 kB] 98s Get:28 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-lxml amd64 5.3.1-1 [1831 kB] 98s Get:29 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-mistletoe all 1.4.0-1 [38.2 kB] 98s Get:30 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-ply all 3.11-7 [45.4 kB] 98s Get:31 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-phply all 1.2.6-1 [50.5 kB] 98s Get:32 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-pytz all 2025.1-3 [162 kB] 98s Get:33 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-ruamel.yaml.clib amd64 0.2.12+ds-1 [218 kB] 98s Get:34 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-ruamel.yaml all 0.18.10+ds-1 [127 kB] 98s Get:35 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-translate all 3.14.7-1 [319 kB] 98s Get:36 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-tz all 2025.1-3 [1866 B] 98s Get:37 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-vobject all 0.9.8+dfsg-2 [41.3 kB] 98s Get:38 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-xapian amd64 1.4.25-1build4 [571 kB] 98s Get:39 http://ftpmaster.internal/ubuntu plucky/universe amd64 subversion amd64 1.14.5-2 [920 kB] 98s Get:40 http://ftpmaster.internal/ubuntu plucky/universe amd64 translate-toolkit all 3.14.7-1 [81.5 kB] 98s Get:41 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-iniparse all 0.5.1-1 [21.2 kB] 98s Get:42 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pycountry all 24.6.1+ds1-1 [30.0 kB] 98s Preconfiguring packages ... 98s Fetched 13.8 MB in 1s (21.8 MB/s) 98s Selecting previously unselected package emacsen-common. 98s (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 ... 108975 files and directories currently installed.) 98s Preparing to unpack .../00-emacsen-common_3.0.5_all.deb ... 98s Unpacking emacsen-common (3.0.5) ... 98s Selecting previously unselected package dictionaries-common. 98s Preparing to unpack .../01-dictionaries-common_1.30.4_all.deb ... 98s Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common' 98s Unpacking dictionaries-common (1.30.4) ... 99s Selecting previously unselected package libgomp1:amd64. 99s Preparing to unpack .../02-libgomp1_15-20250213-1ubuntu1_amd64.deb ... 99s Unpacking libgomp1:amd64 (15-20250213-1ubuntu1) ... 99s Selecting previously unselected package gettext. 99s Preparing to unpack .../03-gettext_0.23.1-1_amd64.deb ... 99s Unpacking gettext (0.23.1-1) ... 99s Selecting previously unselected package hunspell-en-us. 99s Preparing to unpack .../04-hunspell-en-us_1%3a2020.12.07-3_all.deb ... 99s Unpacking hunspell-en-us (1:2020.12.07-3) ... 99s Selecting previously unselected package libapr1t64:amd64. 99s Preparing to unpack .../05-libapr1t64_1.7.5-1_amd64.deb ... 99s Unpacking libapr1t64:amd64 (1.7.5-1) ... 99s Selecting previously unselected package libaprutil1t64:amd64. 99s Preparing to unpack .../06-libaprutil1t64_1.6.3-3ubuntu2_amd64.deb ... 99s Unpacking libaprutil1t64:amd64 (1.6.3-3ubuntu2) ... 99s Selecting previously unselected package libaspell15:amd64. 99s Preparing to unpack .../07-libaspell15_0.60.8.1-4_amd64.deb ... 99s Unpacking libaspell15:amd64 (0.60.8.1-4) ... 99s Selecting previously unselected package libhunspell-1.7-0:amd64. 99s Preparing to unpack .../08-libhunspell-1.7-0_1.7.2+really1.7.2-10build3_amd64.deb ... 99s Unpacking libhunspell-1.7-0:amd64 (1.7.2+really1.7.2-10build3) ... 99s Selecting previously unselected package libenchant-2-2:amd64. 99s Preparing to unpack .../09-libenchant-2-2_2.8.2+dfsg1-3_amd64.deb ... 99s Unpacking libenchant-2-2:amd64 (2.8.2+dfsg1-3) ... 99s Selecting previously unselected package libexttextcat-data. 99s Preparing to unpack .../10-libexttextcat-data_3.4.7-1build1_all.deb ... 99s Unpacking libexttextcat-data (3.4.7-1build1) ... 99s Selecting previously unselected package libserf-1-1:amd64. 99s Preparing to unpack .../11-libserf-1-1_1.3.10-3ubuntu1_amd64.deb ... 99s Unpacking libserf-1-1:amd64 (1.3.10-3ubuntu1) ... 99s Selecting previously unselected package libutf8proc3:amd64. 99s Preparing to unpack .../12-libutf8proc3_2.9.0-1build1_amd64.deb ... 99s Unpacking libutf8proc3:amd64 (2.9.0-1build1) ... 99s Selecting previously unselected package libsvn1:amd64. 99s Preparing to unpack .../13-libsvn1_1.14.5-2_amd64.deb ... 99s Unpacking libsvn1:amd64 (1.14.5-2) ... 99s Selecting previously unselected package libxapian30:amd64. 99s Preparing to unpack .../14-libxapian30_1.4.25-2_amd64.deb ... 99s Unpacking libxapian30:amd64 (1.4.25-2) ... 99s Selecting previously unselected package libxslt1.1:amd64. 99s Preparing to unpack .../15-libxslt1.1_1.1.39-0exp1ubuntu2_amd64.deb ... 99s Unpacking libxslt1.1:amd64 (1.1.39-0exp1ubuntu2) ... 99s Selecting previously unselected package python3-aeidon. 99s Preparing to unpack .../16-python3-aeidon_1.15-2_all.deb ... 99s Unpacking python3-aeidon (1.15-2) ... 99s Selecting previously unselected package python3-soupsieve. 99s Preparing to unpack .../17-python3-soupsieve_2.6-1_all.deb ... 99s Unpacking python3-soupsieve (2.6-1) ... 99s Selecting previously unselected package python3-bs4. 99s Preparing to unpack .../18-python3-bs4_4.13.3-1_all.deb ... 99s Unpacking python3-bs4 (4.13.3-1) ... 99s Selecting previously unselected package python3-charset-normalizer. 99s Preparing to unpack .../19-python3-charset-normalizer_3.4.1-1_amd64.deb ... 99s Unpacking python3-charset-normalizer (3.4.1-1) ... 99s Selecting previously unselected package python3-cheroot. 99s Preparing to unpack .../20-python3-cheroot_10.0.1+ds1-3_all.deb ... 99s Unpacking python3-cheroot (10.0.1+ds1-3) ... 99s Selecting previously unselected package python3-cwcwidth. 99s Preparing to unpack .../21-python3-cwcwidth_0.1.10-1_amd64.deb ... 99s Unpacking python3-cwcwidth (0.1.10-1) ... 99s Selecting previously unselected package python3-dateutil. 99s Preparing to unpack .../22-python3-dateutil_2.9.0-3_all.deb ... 99s Unpacking python3-dateutil (2.9.0-3) ... 100s Selecting previously unselected package python3-diff-match-patch. 100s Preparing to unpack .../23-python3-diff-match-patch_20241021-1_all.deb ... 100s Unpacking python3-diff-match-patch (20241021-1) ... 100s Selecting previously unselected package python3-enchant. 100s Preparing to unpack .../24-python3-enchant_3.3.0~rc1-1_all.deb ... 100s Unpacking python3-enchant (3.3.0~rc1-1) ... 100s Selecting previously unselected package python3-rapidfuzz. 100s Preparing to unpack .../25-python3-rapidfuzz_3.12.1+ds-1_amd64.deb ... 100s Unpacking python3-rapidfuzz (3.12.1+ds-1) ... 100s Selecting previously unselected package python3-levenshtein. 100s Preparing to unpack .../26-python3-levenshtein_0.27.0-1_amd64.deb ... 100s Unpacking python3-levenshtein (0.27.0-1) ... 100s Selecting previously unselected package python3-lxml:amd64. 100s Preparing to unpack .../27-python3-lxml_5.3.1-1_amd64.deb ... 100s Unpacking python3-lxml:amd64 (5.3.1-1) ... 100s Selecting previously unselected package python3-mistletoe. 100s Preparing to unpack .../28-python3-mistletoe_1.4.0-1_all.deb ... 100s Unpacking python3-mistletoe (1.4.0-1) ... 100s Selecting previously unselected package python3-ply. 100s Preparing to unpack .../29-python3-ply_3.11-7_all.deb ... 100s Unpacking python3-ply (3.11-7) ... 100s Selecting previously unselected package python3-phply. 100s Preparing to unpack .../30-python3-phply_1.2.6-1_all.deb ... 100s Unpacking python3-phply (1.2.6-1) ... 100s Selecting previously unselected package python3-pytz. 100s Preparing to unpack .../31-python3-pytz_2025.1-3_all.deb ... 100s Unpacking python3-pytz (2025.1-3) ... 100s Selecting previously unselected package python3-ruamel.yaml.clib. 100s Preparing to unpack .../32-python3-ruamel.yaml.clib_0.2.12+ds-1_amd64.deb ... 100s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1) ... 100s Selecting previously unselected package python3-ruamel.yaml. 100s Preparing to unpack .../33-python3-ruamel.yaml_0.18.10+ds-1_all.deb ... 100s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ... 100s Selecting previously unselected package python3-translate. 100s Preparing to unpack .../34-python3-translate_3.14.7-1_all.deb ... 100s Unpacking python3-translate (3.14.7-1) ... 100s Selecting previously unselected package python3-tz. 100s Preparing to unpack .../35-python3-tz_2025.1-3_all.deb ... 100s Unpacking python3-tz (2025.1-3) ... 100s Selecting previously unselected package python3-vobject. 100s Preparing to unpack .../36-python3-vobject_0.9.8+dfsg-2_all.deb ... 100s Unpacking python3-vobject (0.9.8+dfsg-2) ... 100s Selecting previously unselected package python3-xapian. 100s Preparing to unpack .../37-python3-xapian_1.4.25-1build4_amd64.deb ... 100s Unpacking python3-xapian (1.4.25-1build4) ... 100s Selecting previously unselected package subversion. 100s Preparing to unpack .../38-subversion_1.14.5-2_amd64.deb ... 100s Unpacking subversion (1.14.5-2) ... 101s Selecting previously unselected package translate-toolkit. 101s Preparing to unpack .../39-translate-toolkit_3.14.7-1_all.deb ... 101s Unpacking translate-toolkit (3.14.7-1) ... 101s Selecting previously unselected package python3-iniparse. 101s Preparing to unpack .../40-python3-iniparse_0.5.1-1_all.deb ... 101s Unpacking python3-iniparse (0.5.1-1) ... 101s Selecting previously unselected package python3-pycountry. 101s Preparing to unpack .../41-python3-pycountry_24.6.1+ds1-1_all.deb ... 101s Unpacking python3-pycountry (24.6.1+ds1-1) ... 101s Setting up libxapian30:amd64 (1.4.25-2) ... 101s Setting up python3-rapidfuzz (3.12.1+ds-1) ... 101s Setting up python3-diff-match-patch (20241021-1) ... 101s Setting up python3-aeidon (1.15-2) ... 101s Setting up libutf8proc3:amd64 (2.9.0-1build1) ... 101s Setting up libaspell15:amd64 (0.60.8.1-4) ... 101s Setting up python3-charset-normalizer (3.4.1-1) ... 101s Setting up python3-ply (3.11-7) ... 102s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1) ... 102s Setting up python3-pytz (2025.1-3) ... 102s Setting up libgomp1:amd64 (15-20250213-1ubuntu1) ... 102s Setting up python3-tz (2025.1-3) ... 102s Setting up emacsen-common (3.0.5) ... 102s Setting up python3-cheroot (10.0.1+ds1-3) ... 102s Setting up python3-pycountry (24.6.1+ds1-1) ... 102s Setting up python3-xapian (1.4.25-1build4) ... 102s Setting up python3-cwcwidth (0.1.10-1) ... 102s Setting up python3-ruamel.yaml (0.18.10+ds-1) ... 103s Setting up python3-mistletoe (1.4.0-1) ... 103s Setting up libexttextcat-data (3.4.7-1build1) ... 103s Setting up libapr1t64:amd64 (1.7.5-1) ... 103s Setting up libxslt1.1:amd64 (1.1.39-0exp1ubuntu2) ... 103s Setting up python3-dateutil (2.9.0-3) ... 103s Setting up python3-levenshtein (0.27.0-1) ... 103s Setting up libhunspell-1.7-0:amd64 (1.7.2+really1.7.2-10build3) ... 103s Setting up python3-soupsieve (2.6-1) ... 103s Setting up python3-iniparse (0.5.1-1) ... 103s Setting up libaprutil1t64:amd64 (1.6.3-3ubuntu2) ... 103s Setting up python3-vobject (0.9.8+dfsg-2) ... 103s Setting up gettext (0.23.1-1) ... 103s Setting up python3-phply (1.2.6-1) ... 104s Setting up dictionaries-common (1.30.4) ... 104s Setting up libserf-1-1:amd64 (1.3.10-3ubuntu1) ... 104s Setting up python3-bs4 (4.13.3-1) ... 104s Setting up python3-lxml:amd64 (5.3.1-1) ... 104s Setting up hunspell-en-us (1:2020.12.07-3) ... 104s Setting up libsvn1:amd64 (1.14.5-2) ... 104s Setting up libenchant-2-2:amd64 (2.8.2+dfsg1-3) ... 104s Setting up subversion (1.14.5-2) ... 104s Setting up python3-enchant (3.3.0~rc1-1) ... 105s Setting up python3-translate (3.14.7-1) ... 105s Setting up translate-toolkit (3.14.7-1) ... 105s Processing triggers for libc-bin (2.40-4ubuntu1) ... 105s Processing triggers for man-db (2.13.0-1) ... 107s Processing triggers for install-info (7.1.1-1) ... 107s Processing triggers for dictionaries-common (1.30.4) ... 108s autopkgtest [16:17:54]: test translate-toolkit: [----------------------- 108s ========= SMOKE TEST: /usr/bin/android2po =========== 108s Usage: android2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 108s 108s Convert Android string files to Gettext PO localization files. See: 108s http://docs.translatehouse.org/projects/translate- 108s toolkit/en/latest/commands/android2po.html for examples and usage 108s instructions. 108s 108s Options: 108s --version show program's version number and exit 108s -h, --help show this help message and exit 108s --manpage output a manpage based on the help 108s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 108s --errorlevel=ERRORLEVEL 108s show errorlevel as: none, message, exception, 108s traceback 108s -i INPUT, --input=INPUT 108s read from INPUT in xml format 108s -x EXCLUDE, --exclude=EXCLUDE 108s exclude names matching EXCLUDE from input paths 108s -o OUTPUT, --output=OUTPUT 108s write to OUTPUT in po, pot formats 108s -t TEMPLATE, --template=TEMPLATE 108s read from TEMPLATE in xml format 108s -S, --timestamp skip conversion if the output file has newer timestamp 108s --duplicates=DUPLICATESTYLE 108s what to do with duplicate strings (identical source 108s text): merge, msgctxt (default: 'msgctxt') 108s ========= SMOKE TEST: /usr/bin/build_tmdb =========== 108s usage: build_tmdb [-h] [-d TMDB_FILE] [-s SOURCE_LANG] -t TARGET_LANG 108s input files [input files ...] 108s 108s positional arguments: 108s input files 108s 108s options: 108s -h, --help show this help message and exit 108s -d, --tmdb TMDB_FILE translation memory database file (default: tm.db) 108s -s, --import-source-lang SOURCE_LANG 108s source language of translation files (default: en) 108s -t, --import-target-lang TARGET_LANG 108s target language of translation files 108s ========= SMOKE TEST: /usr/bin/csv2po =========== 108s 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] 108s 108s Convert Comma-Separated Value (.csv) files to Gettext PO localization files. 108s See: http://docs.translatehouse.org/projects/translate- 108s toolkit/en/latest/commands/csv2po.html for examples and usage instructions. 108s 108s Options: 108s --version show program's version number and exit 108s -h, --help show this help message and exit 108s --manpage output a manpage based on the help 108s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 108s --errorlevel=ERRORLEVEL 108s show errorlevel as: none, message, exception, 108s traceback 108s -i INPUT, --input=INPUT 108s read from INPUT in csv format 108s -x EXCLUDE, --exclude=EXCLUDE 108s exclude names matching EXCLUDE from input paths 108s -o OUTPUT, --output=OUTPUT 108s write to OUTPUT in po, pot formats 108s -t TEMPLATE, --template=TEMPLATE 108s read from TEMPLATE in po, pot, pot formats 108s -S, --timestamp skip conversion if the output file has newer timestamp 108s -P, --pot output PO Templates (.pot) rather than PO files (.po) 108s --charset=CHARSET set charset to decode from csv files 108s --columnorder=COLUMNORDER 108s specify the order and position of columns 108s (location,source,target,context) 108s --duplicates=DUPLICATESTYLE 108s what to do with duplicate strings (identical source 108s text): merge, msgctxt (default: 'msgctxt') 108s ========= SMOKE TEST: /usr/bin/csv2tbx =========== 108s Usage: csv2tbx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 108s 108s Convert Comma-Separated Value (.csv) files to a TermBase eXchange (.tbx) 108s glossary file. See: http://docs.translatehouse.org/projects/translate- 108s toolkit/en/latest/commands/csv2tbx.html for examples and usage instructions 108s 108s Options: 108s --version show program's version number and exit 108s -h, --help show this help message and exit 108s --manpage output a manpage based on the help 108s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 108s --errorlevel=ERRORLEVEL 108s show errorlevel as: none, message, exception, 108s traceback 108s -i INPUT, --input=INPUT 108s read from INPUT in csv format 108s -x EXCLUDE, --exclude=EXCLUDE 108s exclude names matching EXCLUDE from input paths 108s -o OUTPUT, --output=OUTPUT 108s write to OUTPUT in tbx format 108s -S, --timestamp skip conversion if the output file has newer timestamp 108s --charset=CHARSET set charset to decode from csv files 108s --columnorder=COLUMNORDER 108s specify the order and position of columns 108s (comment,source,target) 108s ========= SMOKE TEST: /usr/bin/dtd2po =========== 108s 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] 108s 108s Convert a Mozilla .dtd UTF-8 localization format to a Gettext PO localization 108s file. Uses the po and dtd modules, and the dtd2po convertor class which is in 108s this module You can convert back to .dtd using po2dtd.py. 108s 108s Options: 108s --version show program's version number and exit 108s -h, --help show this help message and exit 108s --manpage output a manpage based on the help 108s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 108s --errorlevel=ERRORLEVEL 108s show errorlevel as: none, message, exception, 108s traceback 108s -i INPUT, --input=INPUT 108s read from INPUT in dtd format 108s -x EXCLUDE, --exclude=EXCLUDE 108s exclude names matching EXCLUDE from input paths 108s -o OUTPUT, --output=OUTPUT 108s write to OUTPUT in po, pot formats 108s -t TEMPLATE, --template=TEMPLATE 108s read from TEMPLATE in dtd format 108s -S, --timestamp skip conversion if the output file has newer timestamp 108s -P, --pot output PO Templates (.pot) rather than PO files (.po) 108s --duplicates=DUPLICATESTYLE 108s what to do with duplicate strings (identical source 108s text): merge, msgctxt (default: 'msgctxt') 109s ========= SMOKE TEST: /usr/bin/flatxml2po =========== 109s Usage: flatxml2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 109s 109s Convert flat XML files to Gettext PO localization files. See: 109s http://docs.translatehouse.org/projects/translate- 109s toolkit/en/latest/commands/flatxml2po.html for examples and usage 109s instructions. 109s 109s Options: 109s --version show program's version number and exit 109s -h, --help show this help message and exit 109s --manpage output a manpage based on the help 109s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 109s --errorlevel=ERRORLEVEL 109s show errorlevel as: none, message, exception, 109s traceback 109s -i INPUT, --input=INPUT 109s read from INPUT in xml format 109s -x EXCLUDE, --exclude=EXCLUDE 109s exclude names matching EXCLUDE from input paths 109s -o OUTPUT, --output=OUTPUT 109s write to OUTPUT in po, pot formats 109s -S, --timestamp skip conversion if the output file has newer timestamp 109s -r ROOT, --root=ROOT name of the XML root element (default: "root") 109s -v VALUE, --value=VALUE 109s name of the XML value element (default: "str") 109s -k KEY, --key=KEY name of the XML key attribute (default: "key") 109s -n NS, --namespace=NS 109s XML namespace uri (default: None) 109s ========= SMOKE TEST: /usr/bin/html2po =========== 109s Usage: html2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 109s 109s Convert HTML files to Gettext PO localization files. See: 109s http://docs.translatehouse.org/projects/translate- 109s toolkit/en/latest/commands/html2po.html for examples and usage instructions. 109s 109s Options: 109s --version show program's version number and exit 109s -h, --help show this help message and exit 109s --manpage output a manpage based on the help 109s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 109s --errorlevel=ERRORLEVEL 109s show errorlevel as: none, message, exception, 109s traceback 109s -i INPUT, --input=INPUT 109s read from INPUT in htm, html, xhtml formats 109s -x EXCLUDE, --exclude=EXCLUDE 109s exclude names matching EXCLUDE from input paths 109s -o OUTPUT, --output=OUTPUT 109s write to OUTPUT in po, pot formats 109s -S, --timestamp skip conversion if the output file has newer timestamp 109s -P, --pot output PO Templates (.pot) rather than PO files (.po) 109s --keepcomments preserve html comments as translation notes in the 109s output 109s --duplicates=DUPLICATESTYLE 109s what to do with duplicate strings (identical source 109s text): merge, msgctxt (default: 'msgctxt') 109s --multifile=MULTIFILESTYLE 109s how to split po/pot files (single, toplevel or 109s onefile) 109s ========= SMOKE TEST: /usr/bin/ical2po =========== 109s 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] 109s 109s Convert iCalendar files to Gettext PO localization files. See: 109s http://docs.translatehouse.org/projects/translate- 109s toolkit/en/latest/commands/ical2po.html for examples and usage instructions. 109s 109s Options: 109s --version show program's version number and exit 109s -h, --help show this help message and exit 109s --manpage output a manpage based on the help 109s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 109s --errorlevel=ERRORLEVEL 109s show errorlevel as: none, message, exception, 109s traceback 109s -i INPUT, --input=INPUT 109s read from INPUT in ics format 109s -x EXCLUDE, --exclude=EXCLUDE 109s exclude names matching EXCLUDE from input paths 109s -o OUTPUT, --output=OUTPUT 109s write to OUTPUT in po, pot formats 109s -t TEMPLATE, --template=TEMPLATE 109s read from TEMPLATE in ics format 109s -S, --timestamp skip conversion if the output file has newer timestamp 109s -P, --pot output PO Templates (.pot) rather than PO files (.po) 109s --duplicates=DUPLICATESTYLE 109s what to do with duplicate strings (identical source 109s text): merge, msgctxt (default: 'msgctxt') 109s ========= SMOKE TEST: /usr/bin/idml2po =========== 109s Usage: idml2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 109s 109s Convert IDML files to PO localization files. 109s 109s Options: 109s --version show program's version number and exit 109s -h, --help show this help message and exit 109s --manpage output a manpage based on the help 109s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 109s --errorlevel=ERRORLEVEL 109s show errorlevel as: none, message, exception, 109s traceback 109s -i INPUT, --input=INPUT 109s read from INPUT in idml format 109s -x EXCLUDE, --exclude=EXCLUDE 109s exclude names matching EXCLUDE from input paths 109s -o OUTPUT, --output=OUTPUT 109s write to OUTPUT in po, pot formats 109s -S, --timestamp skip conversion if the output file has newer timestamp 109s ========= SMOKE TEST: /usr/bin/ini2po =========== 110s 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] 110s 110s Convert .ini files to Gettext PO localization files. See: 110s http://docs.translatehouse.org/projects/translate- 110s toolkit/en/latest/commands/ini2po.html for examples and usage instructions. 110s 110s Options: 110s --version show program's version number and exit 110s -h, --help show this help message and exit 110s --manpage output a manpage based on the help 110s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 110s --errorlevel=ERRORLEVEL 110s show errorlevel as: none, message, exception, 110s traceback 110s -i INPUT, --input=INPUT 110s read from INPUT in ini, isl, iss formats 110s -x EXCLUDE, --exclude=EXCLUDE 110s exclude names matching EXCLUDE from input paths 110s -o OUTPUT, --output=OUTPUT 110s write to OUTPUT in po, pot formats 110s -t TEMPLATE, --template=TEMPLATE 110s read from TEMPLATE in ini, isl, iss formats 110s -S, --timestamp skip conversion if the output file has newer timestamp 110s -P, --pot output PO Templates (.pot) rather than PO files (.po) 110s --duplicates=DUPLICATESTYLE 110s what to do with duplicate strings (identical source 110s text): merge, msgctxt (default: 'msgctxt') 110s ========= SMOKE TEST: /usr/bin/json2po =========== 110s 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] 110s 110s Convert JSON files to Gettext PO localization files. See: 110s http://docs.translatehouse.org/projects/translate- 110s toolkit/en/latest/commands/json2po.html for examples and usage instructions. 110s 110s Options: 110s --version show program's version number and exit 110s -h, --help show this help message and exit 110s --manpage output a manpage based on the help 110s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 110s --errorlevel=ERRORLEVEL 110s show errorlevel as: none, message, exception, 110s traceback 110s -i INPUT, --input=INPUT 110s read from INPUT in json format 110s -x EXCLUDE, --exclude=EXCLUDE 110s exclude names matching EXCLUDE from input paths 110s -o OUTPUT, --output=OUTPUT 110s write to OUTPUT in po, pot formats 110s -t TEMPLATE, --template=TEMPLATE 110s read from TEMPLATE in json format 110s -S, --timestamp skip conversion if the output file has newer timestamp 110s -P, --pot output PO Templates (.pot) rather than PO files (.po) 110s --filter=FILTER leaves to extract e.g. 'name,desc': (default: extract 110s everything) 110s --duplicates=DUPLICATESTYLE 110s what to do with duplicate strings (identical source 110s text): merge, msgctxt (default: 'msgctxt') 110s ========= SMOKE TEST: /usr/bin/md2po =========== 110s Usage: md2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 110s 110s Convert Markdown files to Gettext PO localization files. See: 110s http://docs.translatehouse.org/projects/translate- 110s toolkit/en/latest/commands/md2po.html for examples and usage instructions. 110s 110s Options: 110s --version show program's version number and exit 110s -h, --help show this help message and exit 110s --manpage output a manpage based on the help 110s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 110s --errorlevel=ERRORLEVEL 110s show errorlevel as: none, message, exception, 110s traceback 110s -i INPUT, --input=INPUT 110s read from INPUT in markdown, md, text, txt formats 110s -x EXCLUDE, --exclude=EXCLUDE 110s exclude names matching EXCLUDE from input paths 110s -o OUTPUT, --output=OUTPUT 110s write to OUTPUT in po, pot formats 110s -S, --timestamp skip conversion if the output file has newer timestamp 110s -P, --pot output PO Templates (.pot) rather than PO files (.po) 110s --duplicates=DUPLICATESTYLE 110s what to do with duplicate strings (identical source 110s text): merge, msgctxt (default: 'msgctxt') 110s --multifile=MULTIFILESTYLE 110s how to split po/pot files (single, toplevel or 110s onefile) 110s ========= SMOKE TEST: /usr/bin/moz2po =========== 110s 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] 110s 110s Convert Mozilla .dtd and .properties files to Gettext PO localization files. 110s See: http://docs.translatehouse.org/projects/translate- 110s toolkit/en/latest/commands/moz2po.html for examples and usage instructions. 110s 110s Options: 110s --version show program's version number and exit 110s -h, --help show this help message and exit 110s --manpage output a manpage based on the help 110s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 110s --errorlevel=ERRORLEVEL 110s show errorlevel as: none, message, exception, 110s traceback 110s -i INPUT, --input=INPUT 110s read from INPUT in *, dtd, inc, ini, it, js, lang, 110s manifest, properties, rdf formats 110s -x EXCLUDE, --exclude=EXCLUDE 110s exclude names matching EXCLUDE from input paths 110s -o OUTPUT, --output=OUTPUT 110s write to OUTPUT in *, dtd.po, dtd.pot, inc.po, 110s inc.pot, ini.po, ini.pot, it.po, it.pot, js, lang.po, 110s lang.pot, manifest, properties.po, properties.pot, rdf 110s formats 110s -t TEMPLATE, --template=TEMPLATE 110s read from TEMPLATE in *, dtd, inc, ini, it, js, lang, 110s manifest, properties, rdf formats 110s -S, --timestamp skip conversion if the output file has newer timestamp 110s -P, --pot output PO Templates (.pot) rather than PO files (.po) 110s --duplicates=DUPLICATESTYLE 110s what to do with duplicate strings (identical source 110s text): merge, msgctxt (default: 'msgctxt') 111s ========= SMOKE TEST: /usr/bin/mozlang2po =========== 111s Usage: mozlang2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 111s 111s Convert Mozilla .lang files to Gettext PO localization files. 111s 111s Options: 111s --version show program's version number and exit 111s -h, --help show this help message and exit 111s --manpage output a manpage based on the help 111s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 111s --errorlevel=ERRORLEVEL 111s show errorlevel as: none, message, exception, 111s traceback 111s -i INPUT, --input=INPUT 111s read from INPUT in lang format 111s -x EXCLUDE, --exclude=EXCLUDE 111s exclude names matching EXCLUDE from input paths 111s -o OUTPUT, --output=OUTPUT 111s write to OUTPUT in po, pot formats 111s -S, --timestamp skip conversion if the output file has newer timestamp 111s -P, --pot output PO Templates (.pot) rather than PO files (.po) 111s --encoding=ENCODING The encoding of the input file (default: UTF-8) 111s --duplicates=DUPLICATESTYLE 111s what to do with duplicate strings (identical source 111s text): merge, msgctxt (default: 'msgctxt') 111s ========= SMOKE TEST: /usr/bin/msghack =========== 111s Usage: /usr/bin/msghack [OPTION] file.po [ref.po] 111s This program can be used to alter .po files in ways no sane mind would think about. 111s -o result will be written to FILE 111s --invert invert a po file by switching msgid and msgstr 111s --master join any number of files in a master-formatted catalog 111s --empty empty the contents of the .po file, creating a .pot 111s --append append entries from ref.po that don't exist in file.po 111s 111s Note: It is just a replacement of msghack for backward support. 111s 111s ========= SMOKE TEST: /usr/bin/odf2xliff =========== 111s Usage: odf2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 111s 111s Convert OpenDocument (ODF) files to XLIFF localization files. See: 111s http://docs.translatehouse.org/projects/translate- 111s toolkit/en/latest/commands/odf2xliff.html for examples and usage instructions. 111s 111s Options: 111s --version show program's version number and exit 111s -h, --help show this help message and exit 111s --manpage output a manpage based on the help 111s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 111s --errorlevel=ERRORLEVEL 111s show errorlevel as: none, message, exception, 111s traceback 111s -i INPUT, --input=INPUT 111s read from INPUT in odc, odf, odg, odi, odm, odp, ods, 111s odt, otc, otf, otg, oth, oti, otp, ots, ott, sxw 111s formats 111s -x EXCLUDE, --exclude=EXCLUDE 111s exclude names matching EXCLUDE from input paths 111s -o OUTPUT, --output=OUTPUT 111s write to OUTPUT in xlf, xliff formats 111s -S, --timestamp skip conversion if the output file has newer timestamp 111s ========= SMOKE TEST: /usr/bin/oo2po =========== 111s Usage: oo2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 111s 111s Convert an OpenOffice.org (SDF) localization file to Gettext PO localization 111s files. See: http://docs.translatehouse.org/projects/translate- 111s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 111s 111s Options: 111s --version show program's version number and exit 111s -h, --help show this help message and exit 111s --manpage output a manpage based on the help 111s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 111s --errorlevel=ERRORLEVEL 111s show errorlevel as: none, message, exception, 111s traceback 111s -i INPUT, --input=INPUT 111s read from INPUT in oo, sdf formats 111s -x EXCLUDE, --exclude=EXCLUDE 111s exclude names matching EXCLUDE from input paths 111s -o OUTPUT, --output=OUTPUT 111s write to OUTPUT in po, pot formats 111s -S, --timestamp skip conversion if the output file has newer timestamp 111s -P, --pot output PO Templates (.pot) rather than PO files (.po) 111s -l LANG, --language=LANG 111s set target language to extract from oo file (e.g. af- 111s ZA) 111s --source-language=LANG 111s set source language code (default en-US) 111s --nonrecursiveinput don't treat the input oo as a recursive store 111s --duplicates=DUPLICATESTYLE 111s what to do with duplicate strings (identical source 111s text): merge, msgctxt (default: 'msgctxt') 111s --multifile=MULTIFILESTYLE 111s how to split po/pot files (single, toplevel or 111s onefile) 111s ========= SMOKE TEST: /usr/bin/oo2xliff =========== 111s Usage: oo2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 111s 111s Convert an OpenOffice.org (SDF) localization file to XLIFF localization 111s files. See: http://docs.translatehouse.org/projects/translate- 111s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 111s 111s Options: 111s --version show program's version number and exit 111s -h, --help show this help message and exit 111s --manpage output a manpage based on the help 111s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 111s --errorlevel=ERRORLEVEL 111s show errorlevel as: none, message, exception, 111s traceback 111s -i INPUT, --input=INPUT 111s read from INPUT in oo, sdf formats 111s -x EXCLUDE, --exclude=EXCLUDE 111s exclude names matching EXCLUDE from input paths 111s -o OUTPUT, --output=OUTPUT 111s write to OUTPUT in xlf, xliff formats 111s -S, --timestamp skip conversion if the output file has newer timestamp 111s -l LANG, --language=LANG 111s set target language to extract from oo file (e.g. af- 111s ZA) 111s --source-language=LANG 111s set source language code (default en-US) 111s --nonrecursiveinput don't treat the input oo as a recursive store 111s --duplicates=DUPLICATESTYLE 111s what to do with duplicate strings (identical source 111s text): merge, msgctxt (default: 'msgctxt') 111s --multifile=MULTIFILESTYLE 111s how to split po/pot files (single, toplevel or 111s onefile) 111s ========= SMOKE TEST: /usr/bin/php2po =========== 111s 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] 111s 111s Convert PHP localization files to Gettext PO localization files. See: 111s http://docs.translatehouse.org/projects/translate- 111s toolkit/en/latest/commands/php2po.html for examples and usage instructions. 111s 111s Options: 111s --version show program's version number and exit 111s -h, --help show this help message and exit 111s --manpage output a manpage based on the help 111s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 111s --errorlevel=ERRORLEVEL 111s show errorlevel as: none, message, exception, 111s traceback 111s -i INPUT, --input=INPUT 111s read from INPUT in html, php formats 111s -x EXCLUDE, --exclude=EXCLUDE 111s exclude names matching EXCLUDE from input paths 111s -o OUTPUT, --output=OUTPUT 111s write to OUTPUT in po, pot formats 111s -t TEMPLATE, --template=TEMPLATE 111s read from TEMPLATE in html, php formats 111s -S, --timestamp skip conversion if the output file has newer timestamp 111s -P, --pot output PO Templates (.pot) rather than PO files (.po) 111s --duplicates=DUPLICATESTYLE 111s what to do with duplicate strings (identical source 111s text): merge, msgctxt (default: 'msgctxt') 112s ========= SMOKE TEST: /usr/bin/phppo2pypo =========== 112s Usage: phppo2pypo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 112s 112s Convert PHP format .po files to Python format .po files. 112s 112s Options: 112s --version show program's version number and exit 112s -h, --help show this help message and exit 112s --manpage output a manpage based on the help 112s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 112s --errorlevel=ERRORLEVEL 112s show errorlevel as: none, message, exception, 112s traceback 112s -i INPUT, --input=INPUT 112s read from INPUT in po, pot formats 112s -x EXCLUDE, --exclude=EXCLUDE 112s exclude names matching EXCLUDE from input paths 112s -o OUTPUT, --output=OUTPUT 112s write to OUTPUT in po, pot formats 112s -S, --timestamp skip conversion if the output file has newer timestamp 112s ========= SMOKE TEST: /usr/bin/po2csv =========== 112s Usage: po2csv [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 112s 112s Convert Gettext PO localization files to Comma-Separated Value (.csv) files. 112s See: http://docs.translatehouse.org/projects/translate- 112s toolkit/en/latest/commands/csv2po.html for examples and usage instructions. 112s 112s Options: 112s --version show program's version number and exit 112s -h, --help show this help message and exit 112s --manpage output a manpage based on the help 112s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 112s --errorlevel=ERRORLEVEL 112s show errorlevel as: none, message, exception, 112s traceback 112s -i INPUT, --input=INPUT 112s read from INPUT in po, pot formats 112s -x EXCLUDE, --exclude=EXCLUDE 112s exclude names matching EXCLUDE from input paths 112s -o OUTPUT, --output=OUTPUT 112s write to OUTPUT in csv format 112s -S, --timestamp skip conversion if the output file has newer timestamp 112s --columnorder=COLUMNORDER 112s specify the order and position of columns 112s (location,source,target,context) 112s ========= SMOKE TEST: /usr/bin/po2dtd =========== 112s Usage: po2dtd [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 112s 112s Converts a Gettext PO file to a UTF-8 encoded Mozilla .dtd file. .. note: 112s Conversion is either done using a template plus PO file or just using the 112s .po file. 112s 112s Options: 112s --version show program's version number and exit 112s -h, --help show this help message and exit 112s --manpage output a manpage based on the help 112s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 112s --errorlevel=ERRORLEVEL 112s show errorlevel as: none, message, exception, 112s traceback 112s -i INPUT, --input=INPUT 112s read from INPUT in po, pot formats 112s -x EXCLUDE, --exclude=EXCLUDE 112s exclude names matching EXCLUDE from input paths 112s -o OUTPUT, --output=OUTPUT 112s write to OUTPUT in dtd format 112s -t TEMPLATE, --template=TEMPLATE 112s read from TEMPLATE in dtd format 112s -S, --timestamp skip conversion if the output file has newer timestamp 112s --threshold=PERCENT only convert files where the translation completion is 112s above PERCENT 112s --fuzzy use translations marked fuzzy 112s --nofuzzy don't use translations marked fuzzy (default) 112s --removeuntranslated remove untranslated strings from output 112s ========= SMOKE TEST: /usr/bin/po2flatxml =========== 112s Usage: po2flatxml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 112s 112s Convert Gettext PO localization files to flat XML files. See: 112s http://docs.translatehouse.org/projects/translate- 112s toolkit/en/latest/commands/flatxml2po.html for examples and usage 112s instructions. 112s 112s Options: 112s --version show program's version number and exit 112s -h, --help show this help message and exit 112s --manpage output a manpage based on the help 112s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 112s --errorlevel=ERRORLEVEL 112s show errorlevel as: none, message, exception, 112s traceback 112s -i INPUT, --input=INPUT 112s read from INPUT in po, pot formats 112s -x EXCLUDE, --exclude=EXCLUDE 112s exclude names matching EXCLUDE from input paths 112s -o OUTPUT, --output=OUTPUT 112s write to OUTPUT in xml format 112s -t TEMPLATE, --template=TEMPLATE 112s read from TEMPLATE in xml format 112s -S, --timestamp skip conversion if the output file has newer timestamp 112s -r ROOT, --root=ROOT name of the XML root element (default: "root") 112s -v VALUE, --value=VALUE 112s name of the XML value element (default: "str") 112s -k KEY, --key=KEY name of the XML key attribute (default: "key") 112s -n NS, --namespace=NS 112s XML namespace uri (default: None) 112s -w INDENT, --indent=INDENT 112s indent width in spaces, 0 for no indent (default: 2) 112s ========= SMOKE TEST: /usr/bin/po2html =========== 112s Usage: po2html [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 112s 112s Translate HTML files using Gettext PO localization files. See: 112s http://docs.translatehouse.org/projects/translate- 112s toolkit/en/latest/commands/html2po.html for examples and usage instructions. 112s 112s Options: 112s --version show program's version number and exit 112s -h, --help show this help message and exit 112s --manpage output a manpage based on the help 112s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 112s --errorlevel=ERRORLEVEL 112s show errorlevel as: none, message, exception, 112s traceback 112s -i INPUT, --input=INPUT 112s read from INPUT in po, pot formats 112s -x EXCLUDE, --exclude=EXCLUDE 112s exclude names matching EXCLUDE from input paths 112s -o OUTPUT, --output=OUTPUT 112s write to OUTPUT in htm, html, xhtml formats 112s -t TEMPLATE, --template=TEMPLATE 112s read from TEMPLATE in htm, html, xhtml formats 112s -S, --timestamp skip conversion if the output file has newer timestamp 112s --threshold=PERCENT only convert files where the translation completion is 112s above PERCENT 112s --fuzzy use translations marked fuzzy 112s --nofuzzy don't use translations marked fuzzy (default) 112s ========= SMOKE TEST: /usr/bin/po2ical =========== 113s Usage: po2ical [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 113s 113s Convert Gettext PO localization files to iCalendar files. See: 113s http://docs.translatehouse.org/projects/translate- 113s toolkit/en/latest/commands/ical2po.html for examples and usage instructions. 113s 113s Options: 113s --version show program's version number and exit 113s -h, --help show this help message and exit 113s --manpage output a manpage based on the help 113s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 113s --errorlevel=ERRORLEVEL 113s show errorlevel as: none, message, exception, 113s traceback 113s -i INPUT, --input=INPUT 113s read from INPUT in po, pot formats 113s -x EXCLUDE, --exclude=EXCLUDE 113s exclude names matching EXCLUDE from input paths 113s -o OUTPUT, --output=OUTPUT 113s write to OUTPUT in ics format 113s -t TEMPLATE, --template=TEMPLATE 113s read from TEMPLATE in ics format 113s -S, --timestamp skip conversion if the output file has newer timestamp 113s --threshold=PERCENT only convert files where the translation completion is 113s above PERCENT 113s --fuzzy use translations marked fuzzy 113s --nofuzzy don't use translations marked fuzzy (default) 113s ========= SMOKE TEST: /usr/bin/po2idml =========== 113s Usage: po2idml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 113s 113s Takes an IDML template file and a PO file containing translations of strings 113s in the IDML template. It creates a new IDML file using the translations of the 113s PO file. 113s 113s Options: 113s --version show program's version number and exit 113s -h, --help show this help message and exit 113s --manpage output a manpage based on the help 113s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 113s --errorlevel=ERRORLEVEL 113s show errorlevel as: none, message, exception, 113s traceback 113s -i INPUT, --input=INPUT 113s read from INPUT in po, pot formats 113s -x EXCLUDE, --exclude=EXCLUDE 113s exclude names matching EXCLUDE from input paths 113s -o OUTPUT, --output=OUTPUT 113s write to OUTPUT in idml format 113s -t TEMPLATE, --template=TEMPLATE 113s read from TEMPLATE in idml format 113s -S, --timestamp skip conversion if the output file has newer timestamp 113s ========= SMOKE TEST: /usr/bin/po2ini =========== 113s Usage: po2ini [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 113s 113s Convert Gettext PO localization files to .ini files. See: 113s http://docs.translatehouse.org/projects/translate- 113s toolkit/en/latest/commands/ini2po.html for examples and usage instructions. 113s 113s Options: 113s --version show program's version number and exit 113s -h, --help show this help message and exit 113s --manpage output a manpage based on the help 113s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 113s --errorlevel=ERRORLEVEL 113s show errorlevel as: none, message, exception, 113s traceback 113s -i INPUT, --input=INPUT 113s read from INPUT in po, pot formats 113s -x EXCLUDE, --exclude=EXCLUDE 113s exclude names matching EXCLUDE from input paths 113s -o OUTPUT, --output=OUTPUT 113s write to OUTPUT in ini, isl formats 113s -t TEMPLATE, --template=TEMPLATE 113s read from TEMPLATE in ini, isl formats 113s -S, --timestamp skip conversion if the output file has newer timestamp 113s --threshold=PERCENT only convert files where the translation completion is 113s above PERCENT 113s --fuzzy use translations marked fuzzy 113s --nofuzzy don't use translations marked fuzzy (default) 113s ========= SMOKE TEST: /usr/bin/po2json =========== 113s Usage: po2json [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 113s 113s Convert Gettext PO localization files to JSON files. See: 113s http://docs.translatehouse.org/projects/translate- 113s toolkit/en/latest/commands/json2po.html for examples and usage instructions. 113s 113s Options: 113s --version show program's version number and exit 113s -h, --help show this help message and exit 113s --manpage output a manpage based on the help 113s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 113s --errorlevel=ERRORLEVEL 113s show errorlevel as: none, message, exception, 113s traceback 113s -i INPUT, --input=INPUT 113s read from INPUT in po, pot formats 113s -x EXCLUDE, --exclude=EXCLUDE 113s exclude names matching EXCLUDE from input paths 113s -o OUTPUT, --output=OUTPUT 113s write to OUTPUT in json format 113s -t TEMPLATE, --template=TEMPLATE 113s read from TEMPLATE in json format 113s -S, --timestamp skip conversion if the output file has newer timestamp 113s --threshold=PERCENT only convert files where the translation completion is 113s above PERCENT 113s --fuzzy use translations marked fuzzy 113s --nofuzzy don't use translations marked fuzzy (default) 113s --removeuntranslated remove untranslated strings from output 113s ========= SMOKE TEST: /usr/bin/po2md =========== 113s Usage: po2md [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 113s 113s Translate Markdown files using Gettext PO localization files. See: 113s http://docs.translatehouse.org/projects/translate- 113s toolkit/en/latest/commands/md2po.html for examples and usage instructions. 113s 113s Options: 113s --version show program's version number and exit 113s -h, --help show this help message and exit 113s --manpage output a manpage based on the help 113s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 113s --errorlevel=ERRORLEVEL 113s show errorlevel as: none, message, exception, 113s traceback 113s -i INPUT, --input=INPUT 113s read from INPUT in po, pot formats 113s -x EXCLUDE, --exclude=EXCLUDE 113s exclude names matching EXCLUDE from input paths 113s -o OUTPUT, --output=OUTPUT 113s write to OUTPUT in markdown, md, text, txt formats 113s -t TEMPLATE, --template=TEMPLATE 113s read from TEMPLATE in markdown, md, text, txt formats 113s -S, --timestamp skip conversion if the output file has newer timestamp 113s -m MAXLENGTH, --maxlinelength=MAXLENGTH 113s reflow (word wrap) the output to the given maximum 113s line length. set to 0 to disable 113s --threshold=PERCENT only convert files where the translation completion is 113s above PERCENT 113s --fuzzy use translations marked fuzzy 113s --nofuzzy don't use translations marked fuzzy (default) 114s ========= SMOKE TEST: /usr/bin/po2moz =========== 114s Usage: po2moz [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 114s 114s Convert Gettext PO localization files to Mozilla .dtd and .properties files. 114s See: http://docs.translatehouse.org/projects/translate- 114s toolkit/en/latest/commands/moz2po.html for examples and usage instructions. 114s 114s Options: 114s --version show program's version number and exit 114s -h, --help show this help message and exit 114s --manpage output a manpage based on the help 114s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 114s --errorlevel=ERRORLEVEL 114s show errorlevel as: none, message, exception, 114s traceback 114s -i INPUT, --input=INPUT 114s read from INPUT in *, dtd.po, dtd.pot, inc.po, 114s inc.pot, ini.po, ini.pot, it.po, it.pot, js, lang.po, 114s lang.pot, manifest, properties.po, properties.pot, rdf 114s formats 114s -x EXCLUDE, --exclude=EXCLUDE 114s exclude names matching EXCLUDE from input paths 114s -o OUTPUT, --output=OUTPUT 114s write to OUTPUT in *, dtd, inc, ini, it, js, lang, 114s manifest, properties, rdf formats 114s -t TEMPLATE, --template=TEMPLATE 114s read from TEMPLATE in *, dtd, inc, ini, it, js, lang, 114s manifest, properties, rdf formats 114s -S, --timestamp skip conversion if the output file has newer timestamp 114s -l LOCALE, --locale=LOCALE 114s set output locale (required as this sets the directory 114s names) 114s --threshold=PERCENT only convert files where the translation completion is 114s above PERCENT 114s --fuzzy use translations marked fuzzy 114s --nofuzzy don't use translations marked fuzzy (default) 114s --removeuntranslated remove untranslated strings from output 114s ========= SMOKE TEST: /usr/bin/po2mozlang =========== 114s Usage: po2mozlang [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 114s 114s Convert Gettext PO localization files to Mozilla .lang files. 114s 114s Options: 114s --version show program's version number and exit 114s -h, --help show this help message and exit 114s --manpage output a manpage based on the help 114s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 114s --errorlevel=ERRORLEVEL 114s show errorlevel as: none, message, exception, 114s traceback 114s -i INPUT, --input=INPUT 114s read from INPUT in po, pot formats 114s -x EXCLUDE, --exclude=EXCLUDE 114s exclude names matching EXCLUDE from input paths 114s -o OUTPUT, --output=OUTPUT 114s write to OUTPUT in lang format 114s -t TEMPLATE, --template=TEMPLATE 114s read from TEMPLATE in lang format 114s -S, --timestamp skip conversion if the output file has newer timestamp 114s --mark-active mark the file as active 114s --threshold=PERCENT only convert files where the translation completion is 114s above PERCENT 114s --fuzzy use translations marked fuzzy 114s --nofuzzy don't use translations marked fuzzy (default) 114s ========= SMOKE TEST: /usr/bin/po2oo =========== 114s Usage: po2oo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 114s 114s Convert Gettext PO localization files to an OpenOffice.org (SDF) localization 114s file. See: http://docs.translatehouse.org/projects/translate- 114s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 114s 114s Options: 114s --version show program's version number and exit 114s -h, --help show this help message and exit 114s --manpage output a manpage based on the help 114s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 114s --errorlevel=ERRORLEVEL 114s show errorlevel as: none, message, exception, 114s traceback 114s -i INPUT, --input=INPUT 114s read from INPUT in po, pot, xlf, xliff formats 114s -x EXCLUDE, --exclude=EXCLUDE 114s exclude names matching EXCLUDE from input paths 114s -o OUTPUT, --output=OUTPUT 114s write to OUTPUT in oo, sdf formats 114s -t TEMPLATE, --template=TEMPLATE 114s read from TEMPLATE in oo, sdf formats 114s -S, --timestamp skip conversion if the output file has newer timestamp 114s -l LANG, --language=LANG 114s set target language code (e.g. af-ZA) [required] 114s --source-language=LANG 114s set source language code (default en-US) 114s -T, --keeptimestamp don't change the timestamps of the strings 114s --nonrecursiveoutput don't treat the output oo as a recursive store 114s --nonrecursivetemplate 114s don't treat the template oo as a recursive store 114s --skipsource don't output the source language, but fallback to it 114s where needed 114s --filteraction=ACTION 114s action on pofilter failure: none (default), warn, 114s exclude-serious, exclude-all 114s --threshold=PERCENT only convert files where the translation completion is 114s above PERCENT 114s --fuzzy use translations marked fuzzy 114s --nofuzzy don't use translations marked fuzzy (default) 114s --multifile=MULTIFILESTYLE 114s how to split po/pot files (single, toplevel or 114s onefile) 114s ========= SMOKE TEST: /usr/bin/po2php =========== 114s Usage: po2php [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 114s 114s Convert Gettext PO localization files to PHP localization files. See: 114s http://docs.translatehouse.org/projects/translate- 114s toolkit/en/latest/commands/php2po.html for examples and usage instructions. 114s 114s Options: 114s --version show program's version number and exit 114s -h, --help show this help message and exit 114s --manpage output a manpage based on the help 114s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 114s --errorlevel=ERRORLEVEL 114s show errorlevel as: none, message, exception, 114s traceback 114s -i INPUT, --input=INPUT 114s read from INPUT in po, pot formats 114s -x EXCLUDE, --exclude=EXCLUDE 114s exclude names matching EXCLUDE from input paths 114s -o OUTPUT, --output=OUTPUT 114s write to OUTPUT in html, php formats 114s -t TEMPLATE, --template=TEMPLATE 114s read from TEMPLATE in html, php formats 114s -S, --timestamp skip conversion if the output file has newer timestamp 114s --threshold=PERCENT only convert files where the translation completion is 114s above PERCENT 114s --fuzzy use translations marked fuzzy 114s --nofuzzy don't use translations marked fuzzy (default) 114s ========= SMOKE TEST: /usr/bin/po2prop =========== 115s Usage: po2prop [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 115s 115s Convert Gettext PO localization files to Java/Mozilla .properties files. 115s See: http://docs.translatehouse.org/projects/translate- 115s toolkit/en/latest/commands/prop2po.html for examples and usage instructions. 115s 115s Options: 115s --version show program's version number and exit 115s -h, --help show this help message and exit 115s --manpage output a manpage based on the help 115s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 115s --errorlevel=ERRORLEVEL 115s show errorlevel as: none, message, exception, 115s traceback 115s -i INPUT, --input=INPUT 115s read from INPUT in po, pot formats 115s -x EXCLUDE, --exclude=EXCLUDE 115s exclude names matching EXCLUDE from input paths 115s -o OUTPUT, --output=OUTPUT 115s write to OUTPUT in lang, properties, strings formats 115s -t TEMPLATE, --template=TEMPLATE 115s read from TEMPLATE in lang, properties, strings 115s formats 115s -S, --timestamp skip conversion if the output file has newer timestamp 115s --personality=TYPE override the input file format: java, java-utf8, java- 115s utf16, xwiki, flex, mozilla, gaia, gwt, skype, 115s strings, strings-utf8, joomla (for .properties files, 115s default: java) 115s --encoding=ENCODING override the encoding set by the personality 115s --threshold=PERCENT only convert files where the translation completion is 115s above PERCENT 115s --fuzzy use translations marked fuzzy 115s --nofuzzy don't use translations marked fuzzy (default) 115s --removeuntranslated remove untranslated strings from output 115s ========= SMOKE TEST: /usr/bin/po2rc =========== 115s Usage: po2rc [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 115s 115s Convert Gettext PO localization files back to Windows Resource (.rc) files. 115s See: http://docs.translatehouse.org/projects/translate- 115s toolkit/en/latest/commands/rc2po.html for examples and usage instructions. 115s 115s Options: 115s --version show program's version number and exit 115s -h, --help show this help message and exit 115s --manpage output a manpage based on the help 115s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 115s --errorlevel=ERRORLEVEL 115s show errorlevel as: none, message, exception, 115s traceback 115s -i INPUT, --input=INPUT 115s read from INPUT in po, pot formats 115s -x EXCLUDE, --exclude=EXCLUDE 115s exclude names matching EXCLUDE from input paths 115s -o OUTPUT, --output=OUTPUT 115s write to OUTPUT in rc format 115s -t TEMPLATE, --template=TEMPLATE 115s read from TEMPLATE in rc format 115s -S, --timestamp skip conversion if the output file has newer timestamp 115s --charset=CHARSET charset to use to decode the template RC files 115s (default: utf-8) 115s --charset-output=CHARSET 115s charset to use to encode the RC file (default: auto) 115s -l LANG, --lang=LANG LANG entry 115s --sublang=SUBLANG SUBLANG entry (default: SUBLANG_DEFAULT) 115s --threshold=PERCENT only convert files where the translation completion is 115s above PERCENT 115s --fuzzy use translations marked fuzzy 115s --nofuzzy don't use translations marked fuzzy (default) 115s ========= SMOKE TEST: /usr/bin/po2resx =========== 115s Usage: po2resx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 115s 115s Convert Gettext PO localisation files to .Net Resource (.resx) files. See: 115s http://docs.translatehouse.org/projects/translate- 115s toolkit/en/latest/commands/resx2po.html for examples and usage instructions. 115s 115s Options: 115s --version show program's version number and exit 115s -h, --help show this help message and exit 115s --manpage output a manpage based on the help 115s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 115s --errorlevel=ERRORLEVEL 115s show errorlevel as: none, message, exception, 115s traceback 115s -i INPUT, --input=INPUT 115s read from INPUT in po, pot formats 115s -x EXCLUDE, --exclude=EXCLUDE 115s exclude names matching EXCLUDE from input paths 115s -o OUTPUT, --output=OUTPUT 115s write to OUTPUT in resx format 115s -t TEMPLATE, --template=TEMPLATE 115s read from TEMPLATE in resx format 115s -S, --timestamp skip conversion if the output file has newer timestamp 115s --fuzzy use translations marked fuzzy 115s --nofuzzy don't use translations marked fuzzy (default) 115s ========= SMOKE TEST: /usr/bin/po2sub =========== 115s Usage: po2sub [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 115s 115s Convert Gettext PO localization files to subtitle files. See: 115s http://docs.translatehouse.org/projects/translate- 115s toolkit/en/latest/commands/sub2po.html for examples and usage instructions. 115s 115s Options: 115s --version show program's version number and exit 115s -h, --help show this help message and exit 115s --manpage output a manpage based on the help 115s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 115s --errorlevel=ERRORLEVEL 115s show errorlevel as: none, message, exception, 115s traceback 115s -i INPUT, --input=INPUT 115s read from INPUT in po, pot formats 115s -x EXCLUDE, --exclude=EXCLUDE 115s exclude names matching EXCLUDE from input paths 115s -o OUTPUT, --output=OUTPUT 115s write to OUTPUT in ass, srt, ssa, sub formats 115s -t TEMPLATE, --template=TEMPLATE 115s read from TEMPLATE in ass, srt, ssa, sub formats 115s -S, --timestamp skip conversion if the output file has newer timestamp 115s --threshold=PERCENT only convert files where the translation completion is 115s above PERCENT 115s --fuzzy use translations marked fuzzy 115s --nofuzzy don't use translations marked fuzzy (default) 115s ========= SMOKE TEST: /usr/bin/po2symb =========== 115s Usage: po2symb [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 115s 115s Convert Gettext PO localization files to Symbian translation files. See: 115s http://docs.translatehouse.org/projects/translate- 115s toolkit/en/latest/commands/symb2po.html for examples and usage instructions. 115s 115s Options: 115s --version show program's version number and exit 115s -h, --help show this help message and exit 115s --manpage output a manpage based on the help 115s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 115s --errorlevel=ERRORLEVEL 115s show errorlevel as: none, message, exception, 115s traceback 115s -i INPUT, --input=INPUT 115s read from INPUT in po, pot formats 115s -x EXCLUDE, --exclude=EXCLUDE 115s exclude names matching EXCLUDE from input paths 115s -o OUTPUT, --output=OUTPUT 115s write to OUTPUT in r0 format 115s -t TEMPLATE, --template=TEMPLATE 115s read from TEMPLATE in 115s -S, --timestamp skip conversion if the output file has newer timestamp 115s --duplicates=DUPLICATESTYLE 115s what to do with duplicate strings (identical source 115s text): merge, msgctxt (default: 'msgctxt') 115s ========= SMOKE TEST: /usr/bin/po2tiki =========== 115s Usage: po2tiki [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 115s 115s Convert Gettext PO files to TikiWiki's language.php files. See: 115s http://docs.translatehouse.org/projects/translate- 115s toolkit/en/latest/commands/tiki2po.html for examples and usage instructions. 115s 115s Options: 115s --version show program's version number and exit 115s -h, --help show this help message and exit 115s --manpage output a manpage based on the help 115s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 115s --errorlevel=ERRORLEVEL 115s show errorlevel as: none, message, exception, 115s traceback 115s -i INPUT, --input=INPUT 115s read from INPUT in po, pot formats 115s -x EXCLUDE, --exclude=EXCLUDE 115s exclude names matching EXCLUDE from input paths 115s -o OUTPUT, --output=OUTPUT 115s write to OUTPUT in tiki format 115s -S, --timestamp skip conversion if the output file has newer timestamp 116s ========= SMOKE TEST: /usr/bin/po2tmx =========== 116s Usage: po2tmx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 116s 116s Convert Gettext PO localization files to a TMX (Translation Memory eXchange) 116s file. See: http://docs.translatehouse.org/projects/translate- 116s toolkit/en/latest/commands/po2tmx.html for examples and usage instructions. 116s 116s Options: 116s --version show program's version number and exit 116s -h, --help show this help message and exit 116s --manpage output a manpage based on the help 116s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 116s --errorlevel=ERRORLEVEL 116s show errorlevel as: none, message, exception, 116s traceback 116s -i INPUT, --input=INPUT 116s read from INPUT in po, pot formats 116s -x EXCLUDE, --exclude=EXCLUDE 116s exclude names matching EXCLUDE from input paths 116s -o OUTPUT, --output=OUTPUT 116s write to OUTPUT in tmx format 116s -S, --timestamp skip conversion if the output file has newer timestamp 116s -l LANG, --language=LANG 116s set target language code (e.g. af-ZA) [required] 116s --source-language=LANG 116s set source language code (default: en) 116s --comments=COMMENT set default comment import: none, source, type or 116s others (default: none) 116s ========= SMOKE TEST: /usr/bin/po2ts =========== 116s Usage: po2ts [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 116s 116s Convert Gettext PO localization files to Qt Linguist (.ts) files. See: 116s http://docs.translatehouse.org/projects/translate- 116s toolkit/en/latest/commands/ts2po.html for examples and usage instructions. 116s 116s Options: 116s --version show program's version number and exit 116s -h, --help show this help message and exit 116s --manpage output a manpage based on the help 116s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 116s --errorlevel=ERRORLEVEL 116s show errorlevel as: none, message, exception, 116s traceback 116s -i INPUT, --input=INPUT 116s read from INPUT in po, pot formats 116s -x EXCLUDE, --exclude=EXCLUDE 116s exclude names matching EXCLUDE from input paths 116s -o OUTPUT, --output=OUTPUT 116s write to OUTPUT in ts format 116s -t TEMPLATE, --template=TEMPLATE 116s read from TEMPLATE in ts format 116s -S, --timestamp skip conversion if the output file has newer timestamp 116s -c CONTEXT, --context=CONTEXT 116s use supplied context instead of the one in the .po 116s file comment 116s ========= SMOKE TEST: /usr/bin/po2txt =========== 116s Usage: po2txt [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 116s 116s Convert Gettext PO localization files to plain text (.txt) files. See: 116s http://docs.translatehouse.org/projects/translate- 116s toolkit/en/latest/commands/txt2po.html for examples and usage instructions. 116s 116s Options: 116s --version show program's version number and exit 116s -h, --help show this help message and exit 116s --manpage output a manpage based on the help 116s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 116s --errorlevel=ERRORLEVEL 116s show errorlevel as: none, message, exception, 116s traceback 116s -i INPUT, --input=INPUT 116s read from INPUT in po, pot, xlf, xliff formats 116s -x EXCLUDE, --exclude=EXCLUDE 116s exclude names matching EXCLUDE from input paths 116s -o OUTPUT, --output=OUTPUT 116s write to OUTPUT in txt format 116s -t TEMPLATE, --template=TEMPLATE 116s read from TEMPLATE in txt format 116s -S, --timestamp skip conversion if the output file has newer timestamp 116s --encoding=ENCODING The encoding of the template file (default: UTF-8) 116s -w WRAP, --wrap=WRAP set number of columns to wrap text at 116s --threshold=PERCENT only convert files where the translation completion is 116s above PERCENT 116s --fuzzy use translations marked fuzzy 116s --nofuzzy don't use translations marked fuzzy (default) 116s ========= SMOKE TEST: /usr/bin/po2web2py =========== 116s Usage: po2web2py [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 116s 116s Convert GNU/gettext PO files to web2py translation dictionaries (.py). See: 116s http://docs.translatehouse.org/projects/translate- 116s toolkit/en/latest/commands/web2py2po.html for examples and usage instructions. 116s 116s Options: 116s --version show program's version number and exit 116s -h, --help show this help message and exit 116s --manpage output a manpage based on the help 116s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 116s --errorlevel=ERRORLEVEL 116s show errorlevel as: none, message, exception, 116s traceback 116s -i INPUT, --input=INPUT 116s read from INPUT in po, pot formats 116s -x EXCLUDE, --exclude=EXCLUDE 116s exclude names matching EXCLUDE from input paths 116s -o OUTPUT, --output=OUTPUT 116s write to OUTPUT in py format 116s -S, --timestamp skip conversion if the output file has newer timestamp 116s --threshold=PERCENT only convert files where the translation completion is 116s above PERCENT 116s --fuzzy use translations marked fuzzy 116s --nofuzzy don't use translations marked fuzzy (default) 116s ========= SMOKE TEST: /usr/bin/po2wordfast =========== 116s Usage: po2wordfast [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 116s 116s Convert Gettext PO localization files to a Wordfast translation memory file. 116s See: http://docs.translatehouse.org/projects/translate- 116s toolkit/en/latest/commands/po2wordfast.html for examples and usage 116s instructions. 116s 116s Options: 116s --version show program's version number and exit 116s -h, --help show this help message and exit 116s --manpage output a manpage based on the help 116s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 116s --errorlevel=ERRORLEVEL 116s show errorlevel as: none, message, exception, 116s traceback 116s -i INPUT, --input=INPUT 116s read from INPUT in po, pot formats 116s -x EXCLUDE, --exclude=EXCLUDE 116s exclude names matching EXCLUDE from input paths 116s -o OUTPUT, --output=OUTPUT 116s write to OUTPUT in txt format 116s -S, --timestamp skip conversion if the output file has newer timestamp 116s -l LANG, --language=LANG 116s set target language code (e.g. af-ZA) [required] 116s --source-language=LANG 116s set source language code (default: en) 116s ========= SMOKE TEST: /usr/bin/po2xliff =========== 116s Usage: po2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 116s 116s Convert Gettext PO localization files to XLIFF localization files. See: 116s http://docs.translatehouse.org/projects/translate- 116s toolkit/en/latest/commands/xliff2po.html for examples and usage instructions. 116s 116s Options: 116s --version show program's version number and exit 116s -h, --help show this help message and exit 116s --manpage output a manpage based on the help 116s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 116s --errorlevel=ERRORLEVEL 116s show errorlevel as: none, message, exception, 116s traceback 116s -i INPUT, --input=INPUT 116s read from INPUT in po, pot formats 116s -x EXCLUDE, --exclude=EXCLUDE 116s exclude names matching EXCLUDE from input paths 116s -o OUTPUT, --output=OUTPUT 116s write to OUTPUT in xlf, xliff formats 116s -t TEMPLATE, --template=TEMPLATE 116s read from TEMPLATE in xlf, xliff formats 116s -S, --timestamp skip conversion if the output file has newer timestamp 116s ========= SMOKE TEST: /usr/bin/po2yaml =========== 117s Usage: po2yaml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 117s 117s Convert Gettext PO localization files to YAML files. See: 117s http://docs.translatehouse.org/projects/translate- 117s toolkit/en/latest/commands/yaml2po.html for examples and usage instructions. 117s 117s Options: 117s --version show program's version number and exit 117s -h, --help show this help message and exit 117s --manpage output a manpage based on the help 117s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 117s --errorlevel=ERRORLEVEL 117s show errorlevel as: none, message, exception, 117s traceback 117s -i INPUT, --input=INPUT 117s read from INPUT in po, pot formats 117s -x EXCLUDE, --exclude=EXCLUDE 117s exclude names matching EXCLUDE from input paths 117s -o OUTPUT, --output=OUTPUT 117s write to OUTPUT in yaml, yml formats 117s -t TEMPLATE, --template=TEMPLATE 117s read from TEMPLATE in yaml, yml formats 117s -S, --timestamp skip conversion if the output file has newer timestamp 117s --threshold=PERCENT only convert files where the translation completion is 117s above PERCENT 117s --fuzzy use translations marked fuzzy 117s --nofuzzy don't use translations marked fuzzy (default) 117s ========= SMOKE TEST: /usr/bin/poclean =========== 117s Usage: poclean [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 117s 117s Produces a clean file from an unclean file (Trados/Wordfast) by stripping out 117s the tw4win indicators. This does not convert an RTF file to PO/XLIFF, but 117s produces the target file with only the target text in from a text version of 117s the RTF. 117s 117s Options: 117s --version show program's version number and exit 117s -h, --help show this help message and exit 117s --manpage output a manpage based on the help 117s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 117s --errorlevel=ERRORLEVEL 117s show errorlevel as: none, message, exception, 117s traceback 117s -i INPUT, --input=INPUT 117s read from INPUT in po, pot, xlf, xliff formats 117s -x EXCLUDE, --exclude=EXCLUDE 117s exclude names matching EXCLUDE from input paths 117s -o OUTPUT, --output=OUTPUT 117s write to OUTPUT in po, pot, xlf, xliff formats 117s -S, --timestamp skip conversion if the output file has newer timestamp 117s ========= SMOKE TEST: /usr/bin/pocompendium =========== 117s Usage: pocompendium [options] output.po <-d directory(s)|file(s)> 117s The first parameter is the output file, standard output if the output file is '-'. 117s Any number of directories may be specified for input files. 117s Options: 117s --invert|v Creates an inverse compendium with msgid and msgstr swapped 117s --errors|e Only ouput msg bundles that have errors 117s --correct|c Only ouput msg bundles that are correctly translated 117s --ignore-case|i Drops all strings to lowercase 117s --strip-accel-tilde|-st Strip all tilde (~) accelerator characters 117s --strip-accel-amp|-sa Strip all ampersand (&) accelerator characters 117s --strip-accel-under|-su Strip all underscore (_) accelerator characters 117s ========= SMOKE TEST: /usr/bin/pocompile =========== 117s Usage: pocompile [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 117s 117s Compile XLIFF and Gettext PO localization files into Gettext MO (Machine 117s Object) files. See: http://docs.translatehouse.org/projects/translate- 117s toolkit/en/latest/commands/pocompile.html for examples and usage instructions. 117s 117s Options: 117s --version show program's version number and exit 117s -h, --help show this help message and exit 117s --manpage output a manpage based on the help 117s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 117s --errorlevel=ERRORLEVEL 117s show errorlevel as: none, message, exception, 117s traceback 117s -i INPUT, --input=INPUT 117s read from INPUT in po, pot, xlf, xliff formats 117s -x EXCLUDE, --exclude=EXCLUDE 117s exclude names matching EXCLUDE from input paths 117s -o OUTPUT, --output=OUTPUT 117s write to OUTPUT in mo format 117s -S, --timestamp skip conversion if the output file has newer timestamp 117s --fuzzy use translations marked fuzzy 117s --nofuzzy don't use translations marked fuzzy (default) 117s ========= SMOKE TEST: /usr/bin/poconflicts =========== 117s 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] 117s input directory is searched for PO files, PO files with name of conflicting string are output in output directory 117s 117s Conflict finder for Gettext PO localization files. See: 117s http://docs.translatehouse.org/projects/translate- 117s toolkit/en/latest/commands/poconflicts.html for examples and usage 117s instructions. 117s 117s Options: 117s --version show program's version number and exit 117s -h, --help show this help message and exit 117s --manpage output a manpage based on the help 117s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 117s --errorlevel=ERRORLEVEL 117s show errorlevel as: none, message, exception, 117s traceback 117s -i INPUT, --input=INPUT 117s read from INPUT in po format 117s -x EXCLUDE, --exclude=EXCLUDE 117s exclude names matching EXCLUDE from input paths 117s -o OUTPUT, --output=OUTPUT 117s write to OUTPUT in po format 117s -I, --ignore-case ignore case distinctions 117s -v, --invert invert the conflicts thus extracting conflicting 117s destination words 117s --accelerator=ACCELERATORS 117s ignores the given accelerator characters when matching 117s ========= SMOKE TEST: /usr/bin/pocount =========== 117s usage: pocount [-h] [--incomplete] [--full | --csv | --short | 117s --short-strings | --short-words] [--no-color] 117s files [files ...] 117s 117s positional arguments: 117s files 117s 117s options: 117s -h, --help show this help message and exit 117s --incomplete skip 100% translated files. 117s 117s Output format: 117s --full (default) statistics in full, verbose format 117s --csv statistics in CSV format 117s --short same as --short-strings 117s --short-strings statistics of strings in short format - one line per file 117s --short-words statistics of words in short format - one line per file 117s --no-color show output without color 117s ========= SMOKE TEST: /usr/bin/podebug =========== 117s Usage: podebug [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 117s 117s Insert debug messages into XLIFF and Gettext PO localization files. See: 117s http://docs.translatehouse.org/projects/translate- 117s toolkit/en/latest/commands/podebug.html for examples and usage instructions. 117s 117s Options: 117s --version show program's version number and exit 117s -h, --help show this help message and exit 117s --manpage output a manpage based on the help 117s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 117s --errorlevel=ERRORLEVEL 117s show errorlevel as: none, message, exception, 117s traceback 117s -i INPUT, --input=INPUT 117s read from INPUT in po, pot, pot, tmx, xlf, xliff 117s formats 117s -x EXCLUDE, --exclude=EXCLUDE 117s exclude names matching EXCLUDE from input paths 117s -o OUTPUT, --output=OUTPUT 117s write to OUTPUT in po, pot, tmx, xlf, xliff formats 117s -S, --timestamp skip conversion if the output file has newer timestamp 117s -f FORMAT, --format=FORMAT 117s specify format string 117s --rewrite=STYLE the translation rewrite style: blank, bracket, chef, 117s classified, en, flipped, unicode, xxx 117s --ignore=APPLICATION apply tagging ignore rules for the given application: 117s gtk, kde, libreoffice, mozilla, openoffice 117s --preserveplaceholders 117s attempt to exclude characters that are part of 117s placeholders when performing character-level rewrites 117s so that consuming applications can still use the 117s placeholders to generate final output 117s ========= SMOKE TEST: /usr/bin/pofilter =========== 117s Usage: pofilter [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT 117s 117s Perform quality checks on Gettext PO, XLIFF and TMX localization files. 117s Snippet files are created whenever a test fails. These can be examined, 117s corrected and merged back into the originals using pomerge. See: 117s http://docs.translatehouse.org/projects/translate- 117s toolkit/en/latest/commands/pofilter.html for examples and usage instructions 117s and http://docs.translatehouse.org/projects/translate- 117s toolkit/en/latest/commands/pofilter_tests.html for full descriptions of all 117s tests. 117s 117s Options: 117s --version show program's version number and exit 117s -h, --help show this help message and exit 117s --manpage output a manpage based on the help 117s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 117s --errorlevel=ERRORLEVEL 117s show errorlevel as: none, message, exception, 117s traceback 117s -i INPUT, --input=INPUT 117s read from INPUT in po, pot, tmx, xlf, xliff formats 117s -x EXCLUDE, --exclude=EXCLUDE 117s exclude names matching EXCLUDE from input paths 117s -o OUTPUT, --output=OUTPUT 117s write to OUTPUT in po, pot, tmx, xlf, xliff formats 117s -l, --listfilters list filters available 117s --review include units marked for review (default) 117s --noreview exclude units marked for review 117s --fuzzy include units marked fuzzy (default) 117s --nofuzzy exclude units marked fuzzy 117s --nonotes don't add notes about the errors 117s --autocorrect output automatic corrections where possible rather 117s than describing issues 117s --language=LANG set target language code (e.g. af-ZA) [required for 117s spell check and recommended in general] 117s --openoffice use the standard checks for OpenOffice translations 117s --libreoffice use the standard checks for LibreOffice translations 117s --mozilla use the standard checks for Mozilla translations 117s --drupal use the standard checks for Drupal translations 117s --gnome use the standard checks for Gnome translations 117s --kde use the standard checks for KDE translations 117s --wx use the standard checks for wxWidgets translations 117s --excludefilter=FILTER 117s don't use FILTER when filtering 117s -t FILTER, --test=FILTER 117s only use test FILTERs specified with this option when 117s filtering 117s --notranslatefile=FILE 117s read list of untranslatable words from FILE (must not 117s be translated) 117s --musttranslatefile=FILE 117s read list of translatable words from FILE (must be 117s translated) 117s --validcharsfile=FILE 117s read list of all valid characters from FILE (must be 117s in UTF-8) 118s ========= SMOKE TEST: /usr/bin/pogrep =========== 118s 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] 118s 118s Grep XLIFF, Gettext PO and TMX localization files. Matches are output to 118s snippet files of the same type which can then be reviewed and later merged 118s using :doc:`pomerge `. See: 118s http://docs.translatehouse.org/projects/translate- 118s toolkit/en/latest/commands/pogrep.html for examples and usage instructions. 118s 118s Options: 118s --version show program's version number and exit 118s -h, --help show this help message and exit 118s --manpage output a manpage based on the help 118s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 118s --errorlevel=ERRORLEVEL 118s show errorlevel as: none, message, exception, 118s traceback 118s -i INPUT, --input=INPUT 118s read from INPUT in gmo, mo, po, pot, tmx, xlf, xlff, 118s xliff formats 118s -x EXCLUDE, --exclude=EXCLUDE 118s exclude names matching EXCLUDE from input paths 118s -o OUTPUT, --output=OUTPUT 118s write to OUTPUT in gmo, mo, po, pot, tmx, xlf, xlff, 118s xliff formats 118s --search=SEARCHPARTS searches the given parts (source, target, notes and 118s locations) 118s -I, --ignore-case ignore case distinctions 118s -e, --regexp use regular expression matching 118s -v, --invert-match select non-matching lines 118s --accelerator=ACCELERATOR 118s ignores the given accelerator when matching 118s -k, --keep-translations 118s always extract units with translations 118s ========= SMOKE TEST: /usr/bin/pomerge =========== 118s Usage: pomerge [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 118s 118s Merges XLIFF and Gettext PO localization files. Snippet file produced by 118s e.g. :doc:`pogrep ` and updated by a translator can be 118s merged back into the original files. See: 118s http://docs.translatehouse.org/projects/translate- 118s toolkit/en/latest/commands/pomerge.html for examples and usage instructions. 118s 118s Options: 118s --version show program's version number and exit 118s -h, --help show this help message and exit 118s --manpage output a manpage based on the help 118s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 118s --errorlevel=ERRORLEVEL 118s show errorlevel as: none, message, exception, 118s traceback 118s -i INPUT, --input=INPUT 118s read from INPUT in po, pot, pot, xlf, xliff formats 118s -x EXCLUDE, --exclude=EXCLUDE 118s exclude names matching EXCLUDE from input paths 118s -o OUTPUT, --output=OUTPUT 118s write to OUTPUT in po, pot, pot, xlf, xliff formats 118s -t TEMPLATE, --template=TEMPLATE 118s read from TEMPLATE in po, pot, pot, xlf, xliff formats 118s -S, --timestamp skip conversion if the output file has newer timestamp 118s --mergeblanks=MERGEBLANKS 118s whether to overwrite existing translations with blank 118s translations (yes/no). Default is yes. 118s --mergefuzzy=MERGEFUZZY 118s whether to consider fuzzy translations from input 118s (yes/no). Default is yes. 118s --mergecomments=MERGECOMMENTS 118s whether to merge comments as well as translations 118s (yes/no). Default is yes. 118s ========= SMOKE TEST: /usr/bin/pomigrate2 =========== 118s Usage pomigrate2 [options] 118s 118s Options: 118s -F|--use-fuzzy-matching - use fuzzy algorithms when merging to attempt to match strings 118s -C|--use-compendium - create and use a compendium built from the migrating files 118s -C|--use-compendium=some-compendium.po 118s - use an external compendium during the migration 118s --no-wrap - do not wrap long lines 118s --locale=lang - set locale for newly born files 118s -q|--quiet - suppress most output 118s -p|--pot2po - use pot2po instead of msgmerge to migrate 118s ========= SMOKE TEST: /usr/bin/popuretext =========== 118s Usage: popuretext ( -P pot-dir | po-dir ) file.txt [accelerator] 118s ========= SMOKE TEST: /usr/bin/poreencode =========== 118s Usage: poreencode 118s eg: poreencode UTF-8 af/ 118s ========= SMOKE TEST: /usr/bin/porestructure =========== 118s Usage: porestructure [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT 118s input directory is searched for PO files with (poconflicts) comments, all entries are written to files in a directory structure for pomerge 118s 118s Restructure Gettxt PO files produced by :doc:`poconflicts 118s ` into the original directory tree for merging using 118s :doc:`pomerge `. See: 118s http://docs.translatehouse.org/projects/translate- 118s toolkit/en/latest/commands/pomerge.html for examples and usage instructions. 118s 118s Options: 118s --version show program's version number and exit 118s -h, --help show this help message and exit 118s --manpage output a manpage based on the help 118s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 118s --errorlevel=ERRORLEVEL 118s show errorlevel as: none, message, exception, 118s traceback 118s -i INPUT, --input=INPUT 118s read from INPUT in po format 118s -x EXCLUDE, --exclude=EXCLUDE 118s exclude names matching EXCLUDE from input paths 118s -o OUTPUT, --output=OUTPUT 118s write to OUTPUT in po format 118s ========= SMOKE TEST: /usr/bin/posegment =========== 118s Usage: posegment [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 118s 118s Segment Gettext PO, XLIFF and TMX localization files at the sentence level. 118s See: http://docs.translatehouse.org/projects/translate- 118s toolkit/en/latest/commands/posegment.html for examples and usage instructions. 118s 118s Options: 118s --version show program's version number and exit 118s -h, --help show this help message and exit 118s --manpage output a manpage based on the help 118s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 118s --errorlevel=ERRORLEVEL 118s show errorlevel as: none, message, exception, 118s traceback 118s -i INPUT, --input=INPUT 118s read from INPUT in po, pot, tmx, xlf, xliff formats 118s -x EXCLUDE, --exclude=EXCLUDE 118s exclude names matching EXCLUDE from input paths 118s -o OUTPUT, --output=OUTPUT 118s write to OUTPUT in po, pot, tmx, xlf, xliff formats 118s -S, --timestamp skip conversion if the output file has newer timestamp 118s -P, --pot output PO Templates (.pot) rather than PO files (.po) 118s -l LANG, --language=LANG 118s the target language code 118s --source-language=LANG 118s the source language code (default 'en') 118s --keepspaces Disable automatic stripping of whitespace 118s --only-aligned Removes units where sentence number does not 118s correspond 118s ========= SMOKE TEST: /usr/bin/poswap =========== 118s Usage: poswap [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 118s 118s Builds a new translation file with the target of the input language as source 118s language. .. note:: Ensure that the two po files correspond 100% to the same 118s pot file before using this. To translate Kurdish (ku) through French:: 118s poswap -i fr/ -t ku -o fr-ku To convert the fr-ku files back to en-ku:: 118s poswap --reverse -i fr/ -t fr-ku -o en-ku See: 118s http://docs.translatehouse.org/projects/translate- 118s toolkit/en/latest/commands/poswap.html for examples and usage instructions. 118s 118s Options: 118s --version show program's version number and exit 118s -h, --help show this help message and exit 118s --manpage output a manpage based on the help 118s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 118s --errorlevel=ERRORLEVEL 118s show errorlevel as: none, message, exception, 118s traceback 118s -i INPUT, --input=INPUT 118s read from INPUT in po, pot formats 118s -x EXCLUDE, --exclude=EXCLUDE 118s exclude names matching EXCLUDE from input paths 118s -o OUTPUT, --output=OUTPUT 118s write to OUTPUT in po, pot formats 118s -t TEMPLATE, --template=TEMPLATE 118s read from TEMPLATE in po, pot, pot formats 118s -S, --timestamp skip conversion if the output file has newer timestamp 118s --reverse reverse the process of intermediate language 118s conversion 118s ========= SMOKE TEST: /usr/bin/pot2po =========== 118s 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] 118s 118s Convert template files (like .pot or template .xlf files) to translation 118s files, preserving existing translations. See: 118s http://docs.translatehouse.org/projects/translate- 118s toolkit/en/latest/commands/pot2po.html for examples and usage instructions. 118s 118s Options: 118s --version show program's version number and exit 118s -h, --help show this help message and exit 118s --manpage output a manpage based on the help 118s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 118s --errorlevel=ERRORLEVEL 118s show errorlevel as: none, message, exception, 118s traceback 118s -i INPUT, --input=INPUT 118s read from INPUT in catkeys, lang, pot, ts, xlf, xliff 118s formats 118s -x EXCLUDE, --exclude=EXCLUDE 118s exclude names matching EXCLUDE from input paths 118s -o OUTPUT, --output=OUTPUT 118s write to OUTPUT in catkeys, lang, po, pot, ts, xlf, 118s xliff formats 118s -t TEMPLATE, --template=TEMPLATE 118s read from TEMPLATE in catkeys, lang, po, pot, ts, xlf, 118s xliff formats 118s -S, --timestamp skip conversion if the output file has newer timestamp 118s -P, --pot output PO Templates (.pot) rather than PO files (.po) 118s --tm=TM The file to use as translation memory when fuzzy 118s matching 118s -s MIN_SIMILARITY, --similarity=MIN_SIMILARITY 118s The minimum similarity for inclusion (default: 75%) 118s --nofuzzymatching Disable fuzzy matching 118s ========= SMOKE TEST: /usr/bin/poterminology =========== 118s 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] 118s input directory is searched for PO files, terminology PO file is output file 118s 118s Create a terminology file by reading a set of .po or .pot files to produce a 118s pootle-terminology.pot. See: 118s http://docs.translatehouse.org/projects/translate- 118s toolkit/en/latest/commands/poterminology.html for examples and usage 118s instructions. 118s 118s Options: 118s --version show program's version number and exit 118s -h, --help show this help message and exit 118s --manpage output a manpage based on the help 118s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 118s --errorlevel=ERRORLEVEL 118s show errorlevel as: none, message, exception, 118s traceback 118s -i INPUT, --input=INPUT 118s read from INPUT in po, pot formats 118s -x EXCLUDE, --exclude=EXCLUDE 118s exclude names matching EXCLUDE from input paths 118s -o OUTPUT, --output=OUTPUT 118s write to OUTPUT in po, pot formats 118s -u UPDATEFILE, --update=UPDATEFILE 118s update terminology in UPDATEFILE 118s -S STOPFILE, --stopword-list=STOPFILE 118s read stopword (term exclusion) list from STOPFILE 118s (default /usr/share/pyshared/translate/share/stoplist- 118s en) 118s -F, --fold-titlecase fold "Title Case" to lowercase (default) 118s -C, --preserve-case preserve all uppercase/lowercase 118s -I, --ignore-case make all terms lowercase 118s --accelerator=ACCELERATORS 118s ignore the given accelerator characters when matching 118s -t LENGTH, --term-words=LENGTH 118s generate terms of up to LENGTH words (default 3) 118s --nonstop-needed=MIN omit terms with less than MIN nonstop words (default 118s 1) 118s --inputs-needed=MIN omit terms appearing in less than MIN input files 118s (default 2, or 1 if only one input file) 118s --fullmsg-needed=MIN omit full message terms appearing in less than MIN 118s different messages (default 1) 118s --substr-needed=MIN omit substring-only terms appearing in less than MIN 118s different messages (default 2) 118s --locs-needed=MIN omit terms appearing in less than MIN different 118s original source files (default 2) 118s --sort=ORDER output sort order(s): frequency, dictionary, length 118s (may repeat option, default is all in above order) 118s --source-language=LANG 118s the source language code (default 'en') 118s -v, --invert invert the source and target languages for terminology 119s ========= SMOKE TEST: /usr/bin/pretranslate =========== 119s Usage: pretranslate [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 119s 119s Fill localization files with suggested translations based on translation 119s memory and existing translations. See: 119s http://docs.translatehouse.org/projects/translate- 119s toolkit/en/latest/commands/pretranslate.html for examples and usage 119s instructions. 119s 119s Options: 119s --version show program's version number and exit 119s -h, --help show this help message and exit 119s --manpage output a manpage based on the help 119s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 119s --errorlevel=ERRORLEVEL 119s show errorlevel as: none, message, exception, 119s traceback 119s -i INPUT, --input=INPUT 119s read from INPUT in po, pot, pot, xlf, xliff formats 119s -x EXCLUDE, --exclude=EXCLUDE 119s exclude names matching EXCLUDE from input paths 119s -o OUTPUT, --output=OUTPUT 119s write to OUTPUT in po, pot, xlf, xliff formats 119s -t TEMPLATE, --template=TEMPLATE 119s read from TEMPLATE in po, pot, xlf, xliff formats 119s -S, --timestamp skip conversion if the output file has newer timestamp 119s --tm=TM The file to use as translation memory when fuzzy 119s matching 119s -s MIN_SIMILARITY, --similarity=MIN_SIMILARITY 119s The minimum similarity for inclusion (default: 75%) 119s --nofuzzymatching Disable fuzzy matching 119s ========= SMOKE TEST: /usr/bin/prop2po =========== 119s 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] 119s 119s Convert Java/Mozilla .properties files to Gettext PO localization files. 119s See: http://docs.translatehouse.org/projects/translate- 119s toolkit/en/latest/commands/prop2po.html for examples and usage instructions. 119s 119s Options: 119s --version show program's version number and exit 119s -h, --help show this help message and exit 119s --manpage output a manpage based on the help 119s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 119s --errorlevel=ERRORLEVEL 119s show errorlevel as: none, message, exception, 119s traceback 119s -i INPUT, --input=INPUT 119s read from INPUT in lang, properties, strings formats 119s -x EXCLUDE, --exclude=EXCLUDE 119s exclude names matching EXCLUDE from input paths 119s -o OUTPUT, --output=OUTPUT 119s write to OUTPUT in po, pot formats 119s -t TEMPLATE, --template=TEMPLATE 119s read from TEMPLATE in lang, properties, strings 119s formats 119s -S, --timestamp skip conversion if the output file has newer timestamp 119s -P, --pot output PO Templates (.pot) rather than PO files (.po) 119s --personality=TYPE override the input file format: java, java-utf8, java- 119s utf16, xwiki, flex, mozilla, gaia, gwt, skype, 119s strings, strings-utf8, joomla (for .properties files, 119s default: java) 119s --encoding=ENCODING override the encoding set by the personality 119s --duplicates=DUPLICATESTYLE 119s what to do with duplicate strings (identical source 119s text): merge, msgctxt (default: 'msgctxt') 119s ========= SMOKE TEST: /usr/bin/pydiff =========== 119s usage: pydiff [-h] [-i] [-U NUM] [-r] [-N] [--unidirectional-new-file] [-s] 119s [-x PAT] [--fromcontains TEXT] [--tocontains TEXT] 119s [--contains TEXT] [-I] [--accelerator ACCELERATORS] 119s fromfile tofile 119s 119s positional arguments: 119s fromfile 119s tofile 119s 119s options: 119s -h, --help show this help message and exit 119s -i, --ignore-case Ignore case differences in file contents. 119s -U, --unified NUM Output NUM (default 3) lines of unified context 119s -r, --recursive Recursively compare any subdirectories found. 119s -N, --new-file Treat absent files as empty. 119s --unidirectional-new-file 119s Treat absent first files as empty. 119s -s, --report-identical-files 119s Report when two files are the same. 119s -x, --exclude PAT Exclude files that match PAT. 119s --fromcontains TEXT Only show changes where fromfile contains TEXT 119s --tocontains TEXT Only show changes where tofile contains TEXT 119s --contains TEXT Only show changes where fromfile or tofile contains 119s TEXT 119s -I, --ignore-case-contains 119s Ignore case differences when matching any of the 119s changes 119s --accelerator ACCELERATORS 119s ignores the given accelerator characters when matching 119s ========= SMOKE TEST: /usr/bin/pypo2phppo =========== 119s Usage: pypo2phppo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 119s 119s Convert Python format .po files to PHP format .po files. 119s 119s Options: 119s --version show program's version number and exit 119s -h, --help show this help message and exit 119s --manpage output a manpage based on the help 119s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 119s --errorlevel=ERRORLEVEL 119s show errorlevel as: none, message, exception, 119s traceback 119s -i INPUT, --input=INPUT 119s read from INPUT in po, pot formats 119s -x EXCLUDE, --exclude=EXCLUDE 119s exclude names matching EXCLUDE from input paths 119s -o OUTPUT, --output=OUTPUT 119s write to OUTPUT in po, pot formats 119s -S, --timestamp skip conversion if the output file has newer timestamp 119s ========= SMOKE TEST: /usr/bin/rc2po =========== 119s 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] 119s 119s Convert Windows RC files to Gettext PO localization files. See: 119s http://docs.translatehouse.org/projects/translate- 119s toolkit/en/latest/commands/rc2po.html for examples and usage instructions. 119s 119s Options: 119s --version show program's version number and exit 119s -h, --help show this help message and exit 119s --manpage output a manpage based on the help 119s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 119s --errorlevel=ERRORLEVEL 119s show errorlevel as: none, message, exception, 119s traceback 119s -i INPUT, --input=INPUT 119s read from INPUT in nls, rc formats 119s -x EXCLUDE, --exclude=EXCLUDE 119s exclude names matching EXCLUDE from input paths 119s -o OUTPUT, --output=OUTPUT 119s write to OUTPUT in po, pot formats 119s -t TEMPLATE, --template=TEMPLATE 119s read from TEMPLATE in nls, rc formats 119s -S, --timestamp skip conversion if the output file has newer timestamp 119s -P, --pot output PO Templates (.pot) rather than PO files (.po) 119s --charset=CHARSET charset to use to decode the RC files (autodetection 119s is used by default) 119s -l LANG, --lang=LANG LANG entry (default: None) 119s --sublang=SUBLANG SUBLANG entry (default: None) 119s --duplicates=DUPLICATESTYLE 119s what to do with duplicate strings (identical source 119s text): merge, msgctxt (default: 'msgctxt') 120s ========= SMOKE TEST: /usr/bin/resx2po =========== 120s 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] 120s 120s Convert .Net Resource (.resx) to Gettext PO localisation files. See: 120s http://docs.translatehouse.org/projects/translate- 120s toolkit/en/latest/commands/resx2po.html for examples and usage instructions. 120s 120s Options: 120s --version show program's version number and exit 120s -h, --help show this help message and exit 120s --manpage output a manpage based on the help 120s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 120s --errorlevel=ERRORLEVEL 120s show errorlevel as: none, message, exception, 120s traceback 120s -i INPUT, --input=INPUT 120s read from INPUT in resx format 120s -x EXCLUDE, --exclude=EXCLUDE 120s exclude names matching EXCLUDE from input paths 120s -o OUTPUT, --output=OUTPUT 120s write to OUTPUT in po, pot formats 120s -t TEMPLATE, --template=TEMPLATE 120s read from TEMPLATE in resx format 120s -S, --timestamp skip conversion if the output file has newer timestamp 120s -P, --pot output PO Templates (.pot) rather than PO files (.po) 120s --filter=FILTER leaves to extract e.g. 'name,desc': (default: extract 120s everything) 120s --duplicates=DUPLICATESTYLE 120s what to do with duplicate strings (identical source 120s text): merge, msgctxt (default: 'msgctxt') 120s ========= SMOKE TEST: /usr/bin/sub2po =========== 120s 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] 120s 120s Convert subtitle files to Gettext PO localization files. See: 120s http://docs.translatehouse.org/projects/translate- 120s toolkit/en/latest/commands/sub2po.html for examples and usage instructions. 120s 120s Options: 120s --version show program's version number and exit 120s -h, --help show this help message and exit 120s --manpage output a manpage based on the help 120s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 120s --errorlevel=ERRORLEVEL 120s show errorlevel as: none, message, exception, 120s traceback 120s -i INPUT, --input=INPUT 120s read from INPUT in ass, srt, ssa, sub formats 120s -x EXCLUDE, --exclude=EXCLUDE 120s exclude names matching EXCLUDE from input paths 120s -o OUTPUT, --output=OUTPUT 120s write to OUTPUT in po, pot formats 120s -t TEMPLATE, --template=TEMPLATE 120s read from TEMPLATE in ass, srt, ssa, sub formats 120s -S, --timestamp skip conversion if the output file has newer timestamp 120s -P, --pot output PO Templates (.pot) rather than PO files (.po) 120s --duplicates=DUPLICATESTYLE 120s what to do with duplicate strings (identical source 120s text): merge, msgctxt (default: 'msgctxt') 120s ========= SMOKE TEST: /usr/bin/symb2po =========== 120s 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] 120s 120s Convert Symbian localisation files to Gettext PO localization files. See: 120s http://docs.translatehouse.org/projects/translate- 120s toolkit/en/latest/commands/symb2po.html for examples and usage instructions. 120s 120s Options: 120s --version show program's version number and exit 120s -h, --help show this help message and exit 120s --manpage output a manpage based on the help 120s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 120s --errorlevel=ERRORLEVEL 120s show errorlevel as: none, message, exception, 120s traceback 120s -i INPUT, --input=INPUT 120s read from INPUT in r01 format 120s -x EXCLUDE, --exclude=EXCLUDE 120s exclude names matching EXCLUDE from input paths 120s -o OUTPUT, --output=OUTPUT 120s write to OUTPUT in po, pot formats 120s -t TEMPLATE, --template=TEMPLATE 120s read from TEMPLATE in 120s -S, --timestamp skip conversion if the output file has newer timestamp 120s -P, --pot output PO Templates (.pot) rather than PO files (.po) 120s --duplicates=DUPLICATESTYLE 120s what to do with duplicate strings (identical source 120s text): merge, msgctxt (default: 'msgctxt') 120s ========= SMOKE TEST: /usr/bin/tbx2po =========== 120s Usage: tbx2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 120s 120s Convert TermBase eXchange (.tbx) glossary file into a Gettext PO file. See: 120s http://docs.translatehouse.org/projects/translate- 120s toolkit/en/latest/commands/tbx2po.html for examples and usage instructions 120s 120s Options: 120s --version show program's version number and exit 120s -h, --help show this help message and exit 120s --manpage output a manpage based on the help 120s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 120s --errorlevel=ERRORLEVEL 120s show errorlevel as: none, message, exception, 120s traceback 120s -i INPUT, --input=INPUT 120s read from INPUT in tbx format 120s -x EXCLUDE, --exclude=EXCLUDE 120s exclude names matching EXCLUDE from input paths 120s -o OUTPUT, --output=OUTPUT 120s write to OUTPUT in po, pot formats 120s -S, --timestamp skip conversion if the output file has newer timestamp 120s ========= SMOKE TEST: /usr/bin/tiki2po =========== 120s Usage: tiki2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 120s 120s Convert TikiWiki's language.php files to Gettext PO localization files. See: 120s http://docs.translatehouse.org/projects/translate- 120s toolkit/en/latest/commands/tiki2po.html for examples and usage instructions. 120s 120s Options: 120s --version show program's version number and exit 120s -h, --help show this help message and exit 120s --manpage output a manpage based on the help 120s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 120s --errorlevel=ERRORLEVEL 120s show errorlevel as: none, message, exception, 120s traceback 120s -i INPUT, --input=INPUT 120s read from INPUT in php format 120s -x EXCLUDE, --exclude=EXCLUDE 120s exclude names matching EXCLUDE from input paths 120s -o OUTPUT, --output=OUTPUT 120s write to OUTPUT in po, pot formats 120s -S, --timestamp skip conversion if the output file has newer timestamp 120s --include-unused Include strings in the unused section 120s ========= SMOKE TEST: /usr/bin/tmserver =========== 120s usage: tmserver [-h] [-d TMDBFILE] [-f TMFILES] [-t TARGET_LANG] 120s [-s SOURCE_LANG] [-b BIND] [-p PORT] 120s [--max-candidates MAX_CANDIDATES] 120s [--min-similarity MIN_SIMILARITY] [--max-length MAX_LENGTH] 120s [--debug] 120s 120s options: 120s -h, --help show this help message and exit 120s -d, --tmdb TMDBFILE translation memory database file 120s -f, --import-translation-file TMFILES 120s translation file to import into the database 120s -t, --import-target-lang TARGET_LANG 120s target language of translation files 120s -s, --import-source-lang SOURCE_LANG 120s source language of translation files 120s -b, --bind BIND address to bind server to (default: localhost) 120s -p, --port PORT port to listen on (default: 8888) 120s --max-candidates MAX_CANDIDATES 120s Maximum number of candidates 120s --min-similarity MIN_SIMILARITY 120s minimum similarity 120s --max-length MAX_LENGTH 120s Maxmimum string length 120s --debug enable debugging features 121s ========= SMOKE TEST: /usr/bin/ts2po =========== 121s Usage: ts2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 121s 121s Convert Qt Linguist (.ts) files to Gettext PO localization files. See: 121s http://docs.translatehouse.org/projects/translate- 121s toolkit/en/latest/commands/ts2po.html for examples and usage instructions. 121s 121s Options: 121s --version show program's version number and exit 121s -h, --help show this help message and exit 121s --manpage output a manpage based on the help 121s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 121s --errorlevel=ERRORLEVEL 121s show errorlevel as: none, message, exception, 121s traceback 121s -i INPUT, --input=INPUT 121s read from INPUT in ts format 121s -x EXCLUDE, --exclude=EXCLUDE 121s exclude names matching EXCLUDE from input paths 121s -o OUTPUT, --output=OUTPUT 121s write to OUTPUT in po, pot formats 121s -S, --timestamp skip conversion if the output file has newer timestamp 121s -P, --pot output PO Templates (.pot) rather than PO files (.po) 121s --duplicates=DUPLICATESTYLE 121s what to do with duplicate strings (identical source 121s text): merge, msgctxt (default: 'msgctxt') 121s ========= SMOKE TEST: /usr/bin/txt2po =========== 121s Usage: txt2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 121s 121s Convert plain text (.txt) files to Gettext PO localization files. See: 121s http://docs.translatehouse.org/projects/translate- 121s toolkit/en/latest/commands/txt2po.html for examples and usage instructions. 121s 121s Options: 121s --version show program's version number and exit 121s -h, --help show this help message and exit 121s --manpage output a manpage based on the help 121s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 121s --errorlevel=ERRORLEVEL 121s show errorlevel as: none, message, exception, 121s traceback 121s -i INPUT, --input=INPUT 121s read from INPUT in *, txt formats 121s -x EXCLUDE, --exclude=EXCLUDE 121s exclude names matching EXCLUDE from input paths 121s -o OUTPUT, --output=OUTPUT 121s write to OUTPUT in po, pot formats 121s -S, --timestamp skip conversion if the output file has newer timestamp 121s -P, --pot output PO Templates (.pot) rather than PO files (.po) 121s --encoding=ENCODING The encoding of the input file (default: UTF-8) 121s --flavour=FLAVOUR The flavour of text file: plain (default), dokuwiki, 121s mediawiki 121s --no-segmentation Don't segment the file, treat it like a single message 121s --duplicates=DUPLICATESTYLE 121s what to do with duplicate strings (identical source 121s text): merge, msgctxt (default: 'msgctxt') 121s ========= SMOKE TEST: /usr/bin/web2py2po =========== 121s Usage: web2py2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 121s 121s Convert web2py translation dictionaries (.py) to GNU/gettext PO files. See: 121s http://docs.translatehouse.org/projects/translate- 121s toolkit/en/latest/commands/web2py2po.html for examples and usage instructions. 121s 121s Options: 121s --version show program's version number and exit 121s -h, --help show this help message and exit 121s --manpage output a manpage based on the help 121s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 121s --errorlevel=ERRORLEVEL 121s show errorlevel as: none, message, exception, 121s traceback 121s -i INPUT, --input=INPUT 121s read from INPUT in py format 121s -x EXCLUDE, --exclude=EXCLUDE 121s exclude names matching EXCLUDE from input paths 121s -o OUTPUT, --output=OUTPUT 121s write to OUTPUT in po, pot formats 121s -S, --timestamp skip conversion if the output file has newer timestamp 121s -P, --pot output PO Templates (.pot) rather than PO files (.po) 121s --duplicates=DUPLICATESTYLE 121s what to do with duplicate strings (identical source 121s text): merge, msgctxt (default: 'msgctxt') 121s ========= SMOKE TEST: /usr/bin/xliff2odf =========== 121s Usage: xliff2odf [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 121s 121s Convert XLIFF translation files to OpenDocument (ODF) files. See: 121s http://docs.translatehouse.org/projects/translate- 121s toolkit/en/latest/commands/odf2xliff.html for examples and usage instructions. 121s 121s Options: 121s --version show program's version number and exit 121s -h, --help show this help message and exit 121s --manpage output a manpage based on the help 121s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 121s --errorlevel=ERRORLEVEL 121s show errorlevel as: none, message, exception, 121s traceback 121s -i INPUT, --input=INPUT 121s read from INPUT in xlf format 121s -x EXCLUDE, --exclude=EXCLUDE 121s exclude names matching EXCLUDE from input paths 121s -o OUTPUT, --output=OUTPUT 121s write to OUTPUT in odc, odf, odg, odi, odm, odp, ods, 121s odt, otc, otf, otg, oth, oti, otp, ots, ott formats 121s -t TEMPLATE, --template=TEMPLATE 121s read from TEMPLATE in odc, odf, odg, odi, odm, odp, 121s ods, odt, otc, otf, otg, oth, oti, otp, ots, ott 121s formats 121s -S, --timestamp skip conversion if the output file has newer timestamp 121s ========= SMOKE TEST: /usr/bin/xliff2oo =========== 121s Usage: xliff2oo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 121s 121s Convert XLIFF localization files to an OpenOffice.org (SDF) localization 121s file. See: http://docs.translatehouse.org/projects/translate- 121s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 121s 121s Options: 121s --version show program's version number and exit 121s -h, --help show this help message and exit 121s --manpage output a manpage based on the help 121s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 121s --errorlevel=ERRORLEVEL 121s show errorlevel as: none, message, exception, 121s traceback 121s -i INPUT, --input=INPUT 121s read from INPUT in po, pot, xlf, xliff formats 121s -x EXCLUDE, --exclude=EXCLUDE 121s exclude names matching EXCLUDE from input paths 121s -o OUTPUT, --output=OUTPUT 121s write to OUTPUT in oo, sdf formats 121s -t TEMPLATE, --template=TEMPLATE 121s read from TEMPLATE in oo, sdf formats 121s -S, --timestamp skip conversion if the output file has newer timestamp 121s -l LANG, --language=LANG 121s set target language code (e.g. af-ZA) [required] 121s --source-language=LANG 121s set source language code (default en-US) 121s -T, --keeptimestamp don't change the timestamps of the strings 121s --nonrecursiveoutput don't treat the output oo as a recursive store 121s --nonrecursivetemplate 121s don't treat the template oo as a recursive store 121s --skipsource don't output the source language, but fallback to it 121s where needed 121s --filteraction=ACTION 121s action on pofilter failure: none (default), warn, 121s exclude-serious, exclude-all 121s --fuzzy use translations marked fuzzy 121s --nofuzzy don't use translations marked fuzzy (default) 121s --multifile=MULTIFILESTYLE 121s how to split po/pot files (single, toplevel or 121s onefile) 121s ========= SMOKE TEST: /usr/bin/xliff2po =========== 121s Usage: xliff2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 121s 121s Convert XLIFF localization files to Gettext PO localization files. See: 121s http://docs.translatehouse.org/projects/translate- 121s toolkit/en/latest/commands/xliff2po.html for examples and usage instructions. 121s 121s Options: 121s --version show program's version number and exit 121s -h, --help show this help message and exit 121s --manpage output a manpage based on the help 121s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 121s --errorlevel=ERRORLEVEL 121s show errorlevel as: none, message, exception, 121s traceback 121s -i INPUT, --input=INPUT 121s read from INPUT in xlf, xliff formats 121s -x EXCLUDE, --exclude=EXCLUDE 121s exclude names matching EXCLUDE from input paths 121s -o OUTPUT, --output=OUTPUT 121s write to OUTPUT in po, pot formats 121s -S, --timestamp skip conversion if the output file has newer timestamp 121s -P, --pot output PO Templates (.pot) rather than PO files (.po) 121s --duplicates=DUPLICATESTYLE 121s what to do with duplicate strings (identical source 121s text): merge, msgctxt (default: 'msgctxt') 122s ========= SMOKE TEST: /usr/bin/yaml2po =========== 122s 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] 122s 122s Convert YAML files to Gettext PO localization files. See: 122s http://docs.translatehouse.org/projects/translate- 122s toolkit/en/latest/commands/yaml2po.html for examples and usage instructions. 122s 122s Options: 122s --version show program's version number and exit 122s -h, --help show this help message and exit 122s --manpage output a manpage based on the help 122s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 122s --errorlevel=ERRORLEVEL 122s show errorlevel as: none, message, exception, 122s traceback 122s -i INPUT, --input=INPUT 122s read from INPUT in yaml, yml formats 122s -x EXCLUDE, --exclude=EXCLUDE 122s exclude names matching EXCLUDE from input paths 122s -o OUTPUT, --output=OUTPUT 122s write to OUTPUT in po, pot formats 122s -t TEMPLATE, --template=TEMPLATE 122s read from TEMPLATE in yaml, yml formats 122s -S, --timestamp skip conversion if the output file has newer timestamp 122s -P, --pot output PO Templates (.pot) rather than PO files (.po) 122s --duplicates=DUPLICATESTYLE 122s what to do with duplicate strings (identical source 122s text): merge, msgctxt (default: 'msgctxt') 122s autopkgtest [16:18:08]: test translate-toolkit: -----------------------] 122s translate-toolkit PASS 122s autopkgtest [16:18:08]: test translate-toolkit: - - - - - - - - - - results - - - - - - - - - - 122s autopkgtest [16:18:08]: test python3-translate: preparing testbed 190s autopkgtest [16:19:16]: testbed dpkg architecture: amd64 190s autopkgtest [16:19:16]: testbed apt version: 2.9.29 190s autopkgtest [16:19:16]: @@@@@@@@@@@@@@@@@@@@ test bed setup 190s autopkgtest [16:19:16]: testbed release detected to be: plucky 191s autopkgtest [16:19:17]: updating testbed package index (apt update) 191s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [110 kB] 191s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 191s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 191s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 191s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [3120 B] 191s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [13.9 kB] 191s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [76.1 kB] 191s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [744 kB] 191s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 Packages [111 kB] 191s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/main i386 Packages [92.7 kB] 191s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/restricted amd64 Packages [7984 B] 191s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/restricted i386 Packages [2412 B] 191s Get:13 http://ftpmaster.internal/ubuntu plucky-proposed/universe i386 Packages [262 kB] 191s Get:14 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 Packages [711 kB] 191s Get:15 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse amd64 Packages [11.5 kB] 191s Get:16 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse i386 Packages [3128 B] 191s Fetched 2150 kB in 0s (5960 kB/s) 192s Reading package lists... 192s + lsb_release --codename --short 192s + RELEASE=plucky 192s + cat 192s + [ plucky != trusty ] 192s + DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y --allow-downgrades -o Dpkg::Options::=--force-confnew dist-upgrade 192s Reading package lists... 192s Building dependency tree... 192s Reading state information... 193s Calculating upgrade... 193s The following NEW packages will be installed: 193s libapt-pkg7.0 193s The following packages will be upgraded: 193s apt apt-utils iproute2 libgpgme11t64 liblsof0 libp11-kit0 lsof rsyslog 193s sysvinit-utils 193s 9 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 193s Need to get 5425 kB of archives. 193s After this operation, 4076 kB of additional disk space will be used. 193s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 sysvinit-utils amd64 3.14-1ubuntu1 [35.7 kB] 193s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 libapt-pkg7.0 amd64 2.9.30 [1131 kB] 193s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 apt amd64 2.9.30 [1434 kB] 193s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 apt-utils amd64 2.9.30 [222 kB] 193s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 iproute2 amd64 6.13.0-1ubuntu1 [1277 kB] 193s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 libp11-kit0 amd64 0.25.5-2ubuntu3 [311 kB] 193s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 rsyslog amd64 8.2412.0-2ubuntu1 [555 kB] 193s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 lsof amd64 4.99.4+dfsg-1 [245 kB] 193s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 liblsof0 amd64 4.99.4+dfsg-1 [59.6 kB] 193s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 libgpgme11t64 amd64 1.24.2-1ubuntu1 [155 kB] 193s Preconfiguring packages ... 194s Fetched 5425 kB in 0s (36.8 MB/s) 194s (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 ... 108925 files and directories currently installed.) 194s Preparing to unpack .../sysvinit-utils_3.14-1ubuntu1_amd64.deb ... 194s Unpacking sysvinit-utils (3.14-1ubuntu1) over (3.08-6ubuntu3) ... 194s Setting up sysvinit-utils (3.14-1ubuntu1) ... 194s Selecting previously unselected package libapt-pkg7.0:amd64. 194s (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 ... 108925 files and directories currently installed.) 194s Preparing to unpack .../libapt-pkg7.0_2.9.30_amd64.deb ... 194s Unpacking libapt-pkg7.0:amd64 (2.9.30) ... 194s Setting up libapt-pkg7.0:amd64 (2.9.30) ... 194s (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 ... 108974 files and directories currently installed.) 194s Preparing to unpack .../archives/apt_2.9.30_amd64.deb ... 194s Unpacking apt (2.9.30) over (2.9.29) ... 194s Setting up apt (2.9.30) ... 195s (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 ... 108974 files and directories currently installed.) 195s Preparing to unpack .../0-apt-utils_2.9.30_amd64.deb ... 195s Unpacking apt-utils (2.9.30) over (2.9.29) ... 195s Preparing to unpack .../1-iproute2_6.13.0-1ubuntu1_amd64.deb ... 195s Unpacking iproute2 (6.13.0-1ubuntu1) over (6.10.0-2ubuntu1) ... 195s Preparing to unpack .../2-libp11-kit0_0.25.5-2ubuntu3_amd64.deb ... 195s Unpacking libp11-kit0:amd64 (0.25.5-2ubuntu3) over (0.25.5-2ubuntu2) ... 195s Preparing to unpack .../3-rsyslog_8.2412.0-2ubuntu1_amd64.deb ... 195s Unpacking rsyslog (8.2412.0-2ubuntu1) over (8.2412.0-1ubuntu1) ... 195s Preparing to unpack .../4-lsof_4.99.4+dfsg-1_amd64.deb ... 195s Unpacking lsof (4.99.4+dfsg-1) over (4.99.3+dfsg-2) ... 195s Preparing to unpack .../5-liblsof0_4.99.4+dfsg-1_amd64.deb ... 195s Unpacking liblsof0 (4.99.4+dfsg-1) over (4.99.3+dfsg-2) ... 195s Preparing to unpack .../6-libgpgme11t64_1.24.2-1ubuntu1_amd64.deb ... 195s Unpacking libgpgme11t64:amd64 (1.24.2-1ubuntu1) over (1.24.1-4ubuntu1) ... 195s Setting up apt-utils (2.9.30) ... 195s Setting up liblsof0 (4.99.4+dfsg-1) ... 195s Setting up iproute2 (6.13.0-1ubuntu1) ... 196s Setting up rsyslog (8.2412.0-2ubuntu1) ... 196s info: The user `syslog' is already a member of `adm'. 197s Setting up libp11-kit0:amd64 (0.25.5-2ubuntu3) ... 197s Setting up lsof (4.99.4+dfsg-1) ... 197s Setting up libgpgme11t64:amd64 (1.24.2-1ubuntu1) ... 197s Processing triggers for man-db (2.13.0-1) ... 198s Processing triggers for libc-bin (2.40-4ubuntu1) ... 199s + rm /etc/apt/preferences.d/force-downgrade-to-release.pref 199s + /usr/lib/apt/apt-helper analyze-pattern ?true 199s + uname -r 199s + sed s/\./\\./g 199s + running_kernel_pattern=^linux-.*6\.12\.0-15-generic.* 199s + apt list ?obsolete 199s + tail -n+2 199s + cut -d/ -f1 199s + grep -v ^linux-.*6\.12\.0-15-generic.* 200s + true 200s + obsolete_pkgs= 200s + DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y purge --autoremove 200s Reading package lists... 200s Building dependency tree... 200s Reading state information... 200s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 200s + grep -q trusty /etc/lsb-release 200s + [ ! -d /usr/share/doc/unattended-upgrades ] 200s + [ ! -d /usr/share/doc/lxd ] 200s + [ ! -d /usr/share/doc/lxd-client ] 200s + [ ! -d /usr/share/doc/snapd ] 200s + type iptables 200s + cat 200s + chmod 755 /etc/rc.local 200s + . /etc/rc.local 200s + iptables -w -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu 200s + iptables -A OUTPUT -d 10.255.255.1/32 -p tcp -j DROP 200s + iptables -A OUTPUT -d 10.255.255.2/32 -p tcp -j DROP 200s + uname -m 200s + [ x86_64 = ppc64le ] 200s + [ -d /run/systemd/system ] 200s + systemd-detect-virt --quiet --vm 200s + mkdir -p /etc/systemd/system/systemd-random-seed.service.d/ 200s + cat 200s + grep -q lz4 /etc/initramfs-tools/initramfs.conf 200s + echo COMPRESS=lz4 200s autopkgtest [16:19:26]: upgrading testbed (apt dist-upgrade and autopurge) 200s Reading package lists... 201s Building dependency tree... 201s Reading state information... 201s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 201s Starting 2 pkgProblemResolver with broken count: 0 201s Done 202s Entering ResolveByKeep 202s 202s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 202s Reading package lists... 202s Building dependency tree... 202s Reading state information... 203s Starting pkgProblemResolver with broken count: 0 203s Starting 2 pkgProblemResolver with broken count: 0 203s Done 203s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 203s autopkgtest [16:19:29]: rebooting testbed after setup commands that affected boot 207s autopkgtest-virt-ssh: WARNING: ssh connection failed. Retrying in 3 seconds... 221s Reading package lists... 221s Building dependency tree... 221s Reading state information... 221s Starting pkgProblemResolver with broken count: 0 221s Starting 2 pkgProblemResolver with broken count: 0 221s Done 222s The following NEW packages will be installed: 222s dictionaries-common emacsen-common gettext hunspell-en-us libapr1t64 222s libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data libgomp1 222s libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 libxslt1.1 222s python3-aeidon python3-all python3-bs4 python3-charset-normalizer 222s python3-cheroot python3-cwcwidth python3-dateutil python3-diff-match-patch 222s python3-enchant python3-iniconfig python3-iniparse python3-levenshtein 222s python3-lxml python3-mistletoe python3-packaging python3-phply 222s python3-pluggy python3-ply python3-pycountry python3-pytest python3-pytz 222s python3-rapidfuzz python3-ruamel.yaml python3-ruamel.yaml.clib 222s python3-soupsieve python3-syrupy python3-translate python3-tz 222s python3-vobject python3-xapian python3.12 python3.12-minimal subversion 222s 0 upgraded, 49 newly installed, 0 to remove and 0 not upgraded. 222s Need to get 17.1 MB of archives. 222s After this operation, 86.2 MB of additional disk space will be used. 222s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.12-minimal amd64 3.12.9-1 [2348 kB] 222s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.12 amd64 3.12.9-1 [671 kB] 222s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 emacsen-common all 3.0.5 [12.1 kB] 222s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 dictionaries-common all 1.30.4 [176 kB] 222s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 libgomp1 amd64 15-20250213-1ubuntu1 [148 kB] 222s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 gettext amd64 0.23.1-1 [1086 kB] 222s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 hunspell-en-us all 1:2020.12.07-3 [586 kB] 222s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 libapr1t64 amd64 1.7.5-1 [116 kB] 222s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 libaprutil1t64 amd64 1.6.3-3ubuntu2 [98.5 kB] 222s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 libaspell15 amd64 0.60.8.1-4 [353 kB] 222s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 libhunspell-1.7-0 amd64 1.7.2+really1.7.2-10build3 [294 kB] 222s Get:12 http://ftpmaster.internal/ubuntu plucky/main amd64 libenchant-2-2 amd64 2.8.2+dfsg1-3 [59.0 kB] 222s Get:13 http://ftpmaster.internal/ubuntu plucky/main amd64 libexttextcat-data all 3.4.7-1build1 [193 kB] 222s Get:14 http://ftpmaster.internal/ubuntu plucky/universe amd64 libserf-1-1 amd64 1.3.10-3ubuntu1 [48.2 kB] 222s Get:15 http://ftpmaster.internal/ubuntu plucky/universe amd64 libutf8proc3 amd64 2.9.0-1build1 [70.6 kB] 222s Get:16 http://ftpmaster.internal/ubuntu plucky/universe amd64 libsvn1 amd64 1.14.5-2 [1453 kB] 222s Get:17 http://ftpmaster.internal/ubuntu plucky/universe amd64 libxapian30 amd64 1.4.25-2 [796 kB] 222s Get:18 http://ftpmaster.internal/ubuntu plucky/main amd64 libxslt1.1 amd64 1.1.39-0exp1ubuntu2 [175 kB] 222s Get:19 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-aeidon all 1.15-2 [231 kB] 222s Get:20 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-all amd64 3.13.1-1~exp2 [894 B] 222s Get:21 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-soupsieve all 2.6-1 [33.0 kB] 222s Get:22 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-bs4 all 4.13.3-1 [136 kB] 222s Get:23 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-charset-normalizer amd64 3.4.1-1 [147 kB] 222s Get:24 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-cheroot all 10.0.1+ds1-3 [78.6 kB] 222s Get:25 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-cwcwidth amd64 0.1.10-1 [27.7 kB] 222s Get:26 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-dateutil all 2.9.0-3 [80.2 kB] 222s Get:27 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-diff-match-patch all 20241021-1 [33.6 kB] 222s Get:28 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-enchant all 3.3.0~rc1-1 [35.1 kB] 222s Get:29 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-iniconfig all 1.1.1-2 [6024 B] 222s Get:30 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-rapidfuzz amd64 3.12.1+ds-1 [2755 kB] 222s Get:31 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-levenshtein amd64 0.27.0-1 [147 kB] 222s Get:32 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-lxml amd64 5.3.1-1 [1831 kB] 222s Get:33 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-mistletoe all 1.4.0-1 [38.2 kB] 222s Get:34 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-packaging all 24.2-1 [51.5 kB] 222s Get:35 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-ply all 3.11-7 [45.4 kB] 222s Get:36 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-phply all 1.2.6-1 [50.5 kB] 222s Get:37 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pluggy all 1.5.0-1 [21.0 kB] 222s Get:38 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pytest all 8.3.4-1 [252 kB] 222s Get:39 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-pytz all 2025.1-3 [162 kB] 222s Get:40 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-ruamel.yaml.clib amd64 0.2.12+ds-1 [218 kB] 222s Get:41 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-ruamel.yaml all 0.18.10+ds-1 [127 kB] 222s Get:42 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-syrupy all 4.8.1-1 [45.4 kB] 222s Get:43 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-translate all 3.14.7-1 [319 kB] 222s Get:44 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-tz all 2025.1-3 [1866 B] 222s Get:45 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-vobject all 0.9.8+dfsg-2 [41.3 kB] 222s Get:46 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-xapian amd64 1.4.25-1build4 [571 kB] 222s Get:47 http://ftpmaster.internal/ubuntu plucky/universe amd64 subversion amd64 1.14.5-2 [920 kB] 222s Get:48 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-iniparse all 0.5.1-1 [21.2 kB] 222s Get:49 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pycountry all 24.6.1+ds1-1 [30.0 kB] 222s Preconfiguring packages ... 222s Fetched 17.1 MB in 0s (68.1 MB/s) 222s Selecting previously unselected package python3.12-minimal. 223s (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 ... 108975 files and directories currently installed.) 223s Preparing to unpack .../00-python3.12-minimal_3.12.9-1_amd64.deb ... 223s Unpacking python3.12-minimal (3.12.9-1) ... 223s Selecting previously unselected package python3.12. 223s Preparing to unpack .../01-python3.12_3.12.9-1_amd64.deb ... 223s Unpacking python3.12 (3.12.9-1) ... 223s Selecting previously unselected package emacsen-common. 223s Preparing to unpack .../02-emacsen-common_3.0.5_all.deb ... 223s Unpacking emacsen-common (3.0.5) ... 223s Selecting previously unselected package dictionaries-common. 223s Preparing to unpack .../03-dictionaries-common_1.30.4_all.deb ... 223s Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common' 223s Unpacking dictionaries-common (1.30.4) ... 223s Selecting previously unselected package libgomp1:amd64. 223s Preparing to unpack .../04-libgomp1_15-20250213-1ubuntu1_amd64.deb ... 223s Unpacking libgomp1:amd64 (15-20250213-1ubuntu1) ... 223s Selecting previously unselected package gettext. 223s Preparing to unpack .../05-gettext_0.23.1-1_amd64.deb ... 223s Unpacking gettext (0.23.1-1) ... 223s Selecting previously unselected package hunspell-en-us. 223s Preparing to unpack .../06-hunspell-en-us_1%3a2020.12.07-3_all.deb ... 223s Unpacking hunspell-en-us (1:2020.12.07-3) ... 223s Selecting previously unselected package libapr1t64:amd64. 223s Preparing to unpack .../07-libapr1t64_1.7.5-1_amd64.deb ... 223s Unpacking libapr1t64:amd64 (1.7.5-1) ... 223s Selecting previously unselected package libaprutil1t64:amd64. 223s Preparing to unpack .../08-libaprutil1t64_1.6.3-3ubuntu2_amd64.deb ... 223s Unpacking libaprutil1t64:amd64 (1.6.3-3ubuntu2) ... 223s Selecting previously unselected package libaspell15:amd64. 223s Preparing to unpack .../09-libaspell15_0.60.8.1-4_amd64.deb ... 223s Unpacking libaspell15:amd64 (0.60.8.1-4) ... 223s Selecting previously unselected package libhunspell-1.7-0:amd64. 223s Preparing to unpack .../10-libhunspell-1.7-0_1.7.2+really1.7.2-10build3_amd64.deb ... 223s Unpacking libhunspell-1.7-0:amd64 (1.7.2+really1.7.2-10build3) ... 223s Selecting previously unselected package libenchant-2-2:amd64. 223s Preparing to unpack .../11-libenchant-2-2_2.8.2+dfsg1-3_amd64.deb ... 223s Unpacking libenchant-2-2:amd64 (2.8.2+dfsg1-3) ... 223s Selecting previously unselected package libexttextcat-data. 223s Preparing to unpack .../12-libexttextcat-data_3.4.7-1build1_all.deb ... 223s Unpacking libexttextcat-data (3.4.7-1build1) ... 223s Selecting previously unselected package libserf-1-1:amd64. 223s Preparing to unpack .../13-libserf-1-1_1.3.10-3ubuntu1_amd64.deb ... 223s Unpacking libserf-1-1:amd64 (1.3.10-3ubuntu1) ... 223s Selecting previously unselected package libutf8proc3:amd64. 223s Preparing to unpack .../14-libutf8proc3_2.9.0-1build1_amd64.deb ... 223s Unpacking libutf8proc3:amd64 (2.9.0-1build1) ... 223s Selecting previously unselected package libsvn1:amd64. 223s Preparing to unpack .../15-libsvn1_1.14.5-2_amd64.deb ... 223s Unpacking libsvn1:amd64 (1.14.5-2) ... 224s Selecting previously unselected package libxapian30:amd64. 224s Preparing to unpack .../16-libxapian30_1.4.25-2_amd64.deb ... 224s Unpacking libxapian30:amd64 (1.4.25-2) ... 224s Selecting previously unselected package libxslt1.1:amd64. 224s Preparing to unpack .../17-libxslt1.1_1.1.39-0exp1ubuntu2_amd64.deb ... 224s Unpacking libxslt1.1:amd64 (1.1.39-0exp1ubuntu2) ... 224s Selecting previously unselected package python3-aeidon. 224s Preparing to unpack .../18-python3-aeidon_1.15-2_all.deb ... 224s Unpacking python3-aeidon (1.15-2) ... 224s Selecting previously unselected package python3-all. 224s Preparing to unpack .../19-python3-all_3.13.1-1~exp2_amd64.deb ... 224s Unpacking python3-all (3.13.1-1~exp2) ... 224s Selecting previously unselected package python3-soupsieve. 224s Preparing to unpack .../20-python3-soupsieve_2.6-1_all.deb ... 224s Unpacking python3-soupsieve (2.6-1) ... 224s Selecting previously unselected package python3-bs4. 224s Preparing to unpack .../21-python3-bs4_4.13.3-1_all.deb ... 224s Unpacking python3-bs4 (4.13.3-1) ... 224s Selecting previously unselected package python3-charset-normalizer. 224s Preparing to unpack .../22-python3-charset-normalizer_3.4.1-1_amd64.deb ... 224s Unpacking python3-charset-normalizer (3.4.1-1) ... 224s Selecting previously unselected package python3-cheroot. 224s Preparing to unpack .../23-python3-cheroot_10.0.1+ds1-3_all.deb ... 224s Unpacking python3-cheroot (10.0.1+ds1-3) ... 224s Selecting previously unselected package python3-cwcwidth. 224s Preparing to unpack .../24-python3-cwcwidth_0.1.10-1_amd64.deb ... 224s Unpacking python3-cwcwidth (0.1.10-1) ... 224s Selecting previously unselected package python3-dateutil. 224s Preparing to unpack .../25-python3-dateutil_2.9.0-3_all.deb ... 224s Unpacking python3-dateutil (2.9.0-3) ... 224s Selecting previously unselected package python3-diff-match-patch. 224s Preparing to unpack .../26-python3-diff-match-patch_20241021-1_all.deb ... 224s Unpacking python3-diff-match-patch (20241021-1) ... 224s Selecting previously unselected package python3-enchant. 224s Preparing to unpack .../27-python3-enchant_3.3.0~rc1-1_all.deb ... 224s Unpacking python3-enchant (3.3.0~rc1-1) ... 224s Selecting previously unselected package python3-iniconfig. 224s Preparing to unpack .../28-python3-iniconfig_1.1.1-2_all.deb ... 224s Unpacking python3-iniconfig (1.1.1-2) ... 224s Selecting previously unselected package python3-rapidfuzz. 224s Preparing to unpack .../29-python3-rapidfuzz_3.12.1+ds-1_amd64.deb ... 224s Unpacking python3-rapidfuzz (3.12.1+ds-1) ... 224s Selecting previously unselected package python3-levenshtein. 224s Preparing to unpack .../30-python3-levenshtein_0.27.0-1_amd64.deb ... 224s Unpacking python3-levenshtein (0.27.0-1) ... 224s Selecting previously unselected package python3-lxml:amd64. 224s Preparing to unpack .../31-python3-lxml_5.3.1-1_amd64.deb ... 224s Unpacking python3-lxml:amd64 (5.3.1-1) ... 224s Selecting previously unselected package python3-mistletoe. 224s Preparing to unpack .../32-python3-mistletoe_1.4.0-1_all.deb ... 224s Unpacking python3-mistletoe (1.4.0-1) ... 224s Selecting previously unselected package python3-packaging. 224s Preparing to unpack .../33-python3-packaging_24.2-1_all.deb ... 224s Unpacking python3-packaging (24.2-1) ... 224s Selecting previously unselected package python3-ply. 224s Preparing to unpack .../34-python3-ply_3.11-7_all.deb ... 224s Unpacking python3-ply (3.11-7) ... 224s Selecting previously unselected package python3-phply. 224s Preparing to unpack .../35-python3-phply_1.2.6-1_all.deb ... 224s Unpacking python3-phply (1.2.6-1) ... 224s Selecting previously unselected package python3-pluggy. 224s Preparing to unpack .../36-python3-pluggy_1.5.0-1_all.deb ... 224s Unpacking python3-pluggy (1.5.0-1) ... 224s Selecting previously unselected package python3-pytest. 224s Preparing to unpack .../37-python3-pytest_8.3.4-1_all.deb ... 224s Unpacking python3-pytest (8.3.4-1) ... 225s Selecting previously unselected package python3-pytz. 225s Preparing to unpack .../38-python3-pytz_2025.1-3_all.deb ... 225s Unpacking python3-pytz (2025.1-3) ... 225s Selecting previously unselected package python3-ruamel.yaml.clib. 225s Preparing to unpack .../39-python3-ruamel.yaml.clib_0.2.12+ds-1_amd64.deb ... 225s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1) ... 225s Selecting previously unselected package python3-ruamel.yaml. 225s Preparing to unpack .../40-python3-ruamel.yaml_0.18.10+ds-1_all.deb ... 225s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ... 225s Selecting previously unselected package python3-syrupy. 225s Preparing to unpack .../41-python3-syrupy_4.8.1-1_all.deb ... 225s Unpacking python3-syrupy (4.8.1-1) ... 225s Selecting previously unselected package python3-translate. 225s Preparing to unpack .../42-python3-translate_3.14.7-1_all.deb ... 225s Unpacking python3-translate (3.14.7-1) ... 225s Selecting previously unselected package python3-tz. 225s Preparing to unpack .../43-python3-tz_2025.1-3_all.deb ... 225s Unpacking python3-tz (2025.1-3) ... 225s Selecting previously unselected package python3-vobject. 225s Preparing to unpack .../44-python3-vobject_0.9.8+dfsg-2_all.deb ... 225s Unpacking python3-vobject (0.9.8+dfsg-2) ... 225s Selecting previously unselected package python3-xapian. 225s Preparing to unpack .../45-python3-xapian_1.4.25-1build4_amd64.deb ... 225s Unpacking python3-xapian (1.4.25-1build4) ... 225s Selecting previously unselected package subversion. 225s Preparing to unpack .../46-subversion_1.14.5-2_amd64.deb ... 225s Unpacking subversion (1.14.5-2) ... 225s Selecting previously unselected package python3-iniparse. 225s Preparing to unpack .../47-python3-iniparse_0.5.1-1_all.deb ... 225s Unpacking python3-iniparse (0.5.1-1) ... 225s Selecting previously unselected package python3-pycountry. 225s Preparing to unpack .../48-python3-pycountry_24.6.1+ds1-1_all.deb ... 225s Unpacking python3-pycountry (24.6.1+ds1-1) ... 225s Setting up python3-iniconfig (1.1.1-2) ... 225s Setting up python3.12-minimal (3.12.9-1) ... 226s Setting up libxapian30:amd64 (1.4.25-2) ... 226s Setting up python3-rapidfuzz (3.12.1+ds-1) ... 227s Setting up python3-diff-match-patch (20241021-1) ... 227s Setting up python3-aeidon (1.15-2) ... 227s Setting up libutf8proc3:amd64 (2.9.0-1build1) ... 227s Setting up libaspell15:amd64 (0.60.8.1-4) ... 227s Setting up python3-charset-normalizer (3.4.1-1) ... 227s Setting up python3.12 (3.12.9-1) ... 228s Setting up python3-ply (3.11-7) ... 229s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1) ... 229s Setting up python3-all (3.13.1-1~exp2) ... 229s Setting up python3-pytz (2025.1-3) ... 229s Setting up libgomp1:amd64 (15-20250213-1ubuntu1) ... 229s Setting up python3-tz (2025.1-3) ... 229s Setting up python3-packaging (24.2-1) ... 229s Setting up emacsen-common (3.0.5) ... 229s Setting up python3-cheroot (10.0.1+ds1-3) ... 229s Setting up python3-pycountry (24.6.1+ds1-1) ... 229s Setting up python3-xapian (1.4.25-1build4) ... 230s Setting up python3-cwcwidth (0.1.10-1) ... 230s Setting up python3-pluggy (1.5.0-1) ... 230s Setting up python3-ruamel.yaml (0.18.10+ds-1) ... 230s Setting up python3-mistletoe (1.4.0-1) ... 231s Setting up libexttextcat-data (3.4.7-1build1) ... 231s Setting up libapr1t64:amd64 (1.7.5-1) ... 231s Setting up libxslt1.1:amd64 (1.1.39-0exp1ubuntu2) ... 231s Setting up python3-dateutil (2.9.0-3) ... 231s Setting up python3-levenshtein (0.27.0-1) ... 231s Setting up libhunspell-1.7-0:amd64 (1.7.2+really1.7.2-10build3) ... 231s Setting up python3-soupsieve (2.6-1) ... 231s Setting up python3-iniparse (0.5.1-1) ... 231s Setting up libaprutil1t64:amd64 (1.6.3-3ubuntu2) ... 231s Setting up python3-vobject (0.9.8+dfsg-2) ... 232s Setting up gettext (0.23.1-1) ... 232s Setting up python3-phply (1.2.6-1) ... 232s Setting up dictionaries-common (1.30.4) ... 232s Setting up python3-pytest (8.3.4-1) ... 233s Setting up python3-syrupy (4.8.1-1) ... 233s Setting up libserf-1-1:amd64 (1.3.10-3ubuntu1) ... 233s Setting up python3-bs4 (4.13.3-1) ... 233s Setting up python3-lxml:amd64 (5.3.1-1) ... 234s Setting up hunspell-en-us (1:2020.12.07-3) ... 234s Setting up libsvn1:amd64 (1.14.5-2) ... 234s Setting up libenchant-2-2:amd64 (2.8.2+dfsg1-3) ... 234s Setting up subversion (1.14.5-2) ... 234s Setting up python3-enchant (3.3.0~rc1-1) ... 234s Setting up python3-translate (3.14.7-1) ... 235s Processing triggers for libc-bin (2.40-4ubuntu1) ... 235s Processing triggers for systemd (257.2-3ubuntu1) ... 235s Processing triggers for man-db (2.13.0-1) ... 236s Processing triggers for install-info (7.1.1-1) ... 236s Processing triggers for dictionaries-common (1.30.4) ... 239s autopkgtest [16:20:05]: test python3-translate: [----------------------- 239s ============================= test session starts ============================== 239s platform linux -- Python 3.12.9, pytest-8.3.4, pluggy-1.5.0 -- /usr/bin/python3.12 239s cachedir: .pytest_cache 239s rootdir: /tmp/autopkgtest.TWiM34/autopkgtest_tmp 239s plugins: syrupy-4.8.1, typeguard-4.4.1 245s collecting ... collected 3368 items / 2 skipped 245s 245s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff PASSED [ 0%] 245s tests/odf_xliff/test_odf_xliff.py::test_roundtrip PASSED [ 0%] 245s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff2_inline PASSED [ 0%] 245s tests/translate/convert/test_accesskey.py::test_get_label_and_accesskey PASSED [ 0%] 245s tests/translate/convert/test_accesskey.py::test_extract_bad_accesskeys PASSED [ 0%] 245s tests/translate/convert/test_accesskey.py::test_ignore_entities PASSED [ 0%] 245s tests/translate/convert/test_accesskey.py::test_alternate_accesskey_marker PASSED [ 0%] 245s tests/translate/convert/test_accesskey.py::test_unicode PASSED [ 0%] 245s tests/translate/convert/test_accesskey.py::test_numeric PASSED [ 0%] 245s tests/translate/convert/test_accesskey.py::test_empty_string PASSED [ 0%] 245s tests/translate/convert/test_accesskey.py::test_end_of_string PASSED [ 0%] 245s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey PASSED [ 0%] 245s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey_different_capitals PASSED [ 0%] 245s tests/translate/convert/test_accesskey.py::test_uncombinable PASSED [ 0%] 245s tests/translate/convert/test_accesskey.py::test_accesskey_already_in_text PASSED [ 0%] 245s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_no_template_units PASSED [ 0%] 245s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_template_units PASSED [ 0%] 245s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_no_template_units PASSED [ 0%] 245s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_template_units PASSED [ 0%] 245s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_help PASSED [ 0%] 245s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid PASSED [ 0%] 245s tests/translate/convert/test_convert.py::TestConvertCommand::test_help PASSED [ 0%] 245s tests/translate/convert/test_csv2po.py::test_replacestrings PASSED [ 0%] 245s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity PASSED [ 0%] 245s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity_with_template PASSED [ 0%] 245s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_newlines PASSED [ 0%] 245s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_tabs PASSED [ 0%] 245s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_quotes PASSED [ 0%] 245s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_empties PASSED [ 0%] 245s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_kdecomment PASSED [ 0%] 245s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_escaped_newlines PASSED [ 0%] 245s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity PASSED [ 0%] 245s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity_with_template PASSED [ 0%] 245s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_newlines PASSED [ 1%] 245s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_tabs PASSED [ 1%] 245s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_quotes PASSED [ 1%] 245s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_empties PASSED [ 1%] 245s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_kdecomment PASSED [ 1%] 245s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_escaped_newlines PASSED [ 1%] 245s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_help PASSED [ 1%] 245s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_simpleentity PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_convertdtd PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_apos PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_quotes PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_two_empty_entities PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity_translated PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisaton_note_simple PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisation_note_merge PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_simple PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_label PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_onlyentity PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_commentedout PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_spaces_at_start_of_dtd_lines PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_folding PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_mismatch PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_carriage_return_in_multiline_dtd PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_with_blankline PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_closing_quotes PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_preserving_spaces PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_escaping_newline_tabs PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_abandoned_accelerator PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_unassociable_accelerator PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_changed_labels_and_accelerators PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence XFAIL [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_exclude_entity_includes PASSED [ 1%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_linewraps PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merging_with_new_untranslated PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merge_without_template PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_simpleentity PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_convertdtd PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_apos PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_quotes PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_two_empty_entities PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity_translated PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisaton_note_simple PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisation_note_merge PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_simple PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_label PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_onlyentity PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_commentedout PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_spaces_at_start_of_dtd_lines PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_folding PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_mismatch PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_carriage_return_in_multiline_dtd PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_with_blankline PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_closing_quotes PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_preserving_spaces PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_escaping_newline_tabs PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_abandoned_accelerator PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_unassociable_accelerator PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_changed_labels_and_accelerators PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence XFAIL [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_exclude_entity_includes PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_linewraps PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merging_with_new_untranslated PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merge_without_template PASSED [ 2%] 245s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_help PASSED [ 2%] 245s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_defaults PASSED [ 2%] 245s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_root_name PASSED [ 3%] 245s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_value_name PASSED [ 3%] 245s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_key PASSED [ 3%] 245s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_default_namespace PASSED [ 3%] 245s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_namespace_prefix PASSED [ 3%] 245s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_all_parameters PASSED [ 3%] 245s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_empty_file_is_empty_store PASSED [ 3%] 245s tests/translate/convert/test_flatxml2po.py::TestFlatXML2POCommand::test_help PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_extract_lang_attribute_from_html_tag PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title_with_linebreak PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_meta PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_br PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak_and_embedded_br PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_uppercase_html PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div_with_linebreaks PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a_with_linebreak PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_sequence_of_anchor_elements PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_img_empty PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img_inside_a PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_table_summary PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_simple PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_complex PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_empty PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_address PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings_with_linebreaks PASSED [ 3%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dt PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dd PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_span PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_ul PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_lists PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_duplicates PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiline_reflow PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_tags PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_carriage_return PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_encoding_latin1 PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_strip_html PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_text PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_attributes PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_charrefs PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiple_php PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_multiline PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_with_embedded_html PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_comments PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2PO::test_attribute_without_value PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_extract_lang_attribute_from_html_tag PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title_with_linebreak PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_meta PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_br PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak_and_embedded_br PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_uppercase_html PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div_with_linebreaks PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a_with_linebreak PASSED [ 4%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_sequence_of_anchor_elements PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_img_empty PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img_inside_a PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_table_summary PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_simple PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_complex PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_empty PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_address PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings_with_linebreaks PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dt PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dd PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_span PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_ul PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_lists PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_duplicates PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiline_reflow PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_tags PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_carriage_return PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_encoding_latin1 PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_strip_html PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_text PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_attributes PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_charrefs PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiple_php PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_multiline PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_with_embedded_html PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_comments PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_attribute_without_value PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_help PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_single PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile PASSED [ 5%] 245s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile_to_stdout PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_convert_empty_file PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_translations PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_summary PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_description PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_location PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_comment PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_template_duplicate_style PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_misaligned_files PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_blank_msgstr PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_duplicate_style PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_convert_empty_file PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_translations PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_summary PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_description PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_location PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_comment PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_template_duplicate_style PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_misaligned_files PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_blank_msgstr PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_duplicate_style PASSED [ 6%] 245s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_help PASSED [ 6%] 245s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_help PASSED [ 6%] 245s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_convert PASSED [ 6%] 245s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_empty_file PASSED [ 6%] 245s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_no_translation PASSED [ 6%] 245s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_simple PASSED [ 6%] 245s tests/translate/convert/test_ini2po.py::TestIni2PO::test_no_duplicates PASSED [ 6%] 245s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_simple PASSED [ 6%] 245s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_misaligned_files PASSED [ 6%] 245s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_blank_msgstr PASSED [ 6%] 245s tests/translate/convert/test_ini2po.py::TestIni2PO::test_dialects_inno PASSED [ 7%] 245s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_empty_file PASSED [ 7%] 245s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_no_translation PASSED [ 7%] 245s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_simple PASSED [ 7%] 245s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_no_duplicates PASSED [ 7%] 245s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_simple PASSED [ 7%] 245s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_misaligned_files PASSED [ 7%] 245s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_blank_msgstr PASSED [ 7%] 245s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_dialects_inno PASSED [ 7%] 245s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_help PASSED [ 7%] 245s tests/translate/convert/test_json2po.py::TestJson2PO::test_simple PASSED [ 7%] 245s tests/translate/convert/test_json2po.py::TestJson2PO::test_three_same_keys PASSED [ 7%] 245s tests/translate/convert/test_json2po.py::TestJson2PO::test_filter PASSED [ 7%] 245s tests/translate/convert/test_json2po.py::TestJson2PO::test_miltiple_units PASSED [ 7%] 245s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_simple PASSED [ 7%] 245s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_three_same_keys PASSED [ 7%] 245s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_filter PASSED [ 7%] 245s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_miltiple_units PASSED [ 7%] 245s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_help PASSED [ 7%] 245s tests/translate/convert/test_md2po.py::TestMD2PO::test_help PASSED [ 7%] 245s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_single PASSED [ 7%] 245s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_onefile PASSED [ 7%] 245s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_single PASSED [ 7%] 245s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_onefile PASSED [ 7%] 245s tests/translate/convert/test_moz2po.py::TestMoz2POCommand::test_help PASSED [ 7%] 245s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_simpleentry PASSED [ 7%] 245s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_uncomment_contributors PASSED [ 7%] 245s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_convert_empty PASSED [ 7%] 245s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_string PASSED [ 7%] 245s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_merge PASSED [ 7%] 245s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_entry PASSED [ 7%] 245s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_comment PASSED [ 7%] 245s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_meta_tags PASSED [ 7%] 245s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_keep_duplicates PASSED [ 7%] 245s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_drop_duplicates PASSED [ 8%] 245s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_convert_empty PASSED [ 8%] 245s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_string PASSED [ 8%] 245s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_merge PASSED [ 8%] 245s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_entry PASSED [ 8%] 245s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_comment PASSED [ 8%] 245s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_meta_tags PASSED [ 8%] 245s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_keep_duplicates PASSED [ 8%] 245s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_drop_duplicates PASSED [ 8%] 245s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_help PASSED [ 8%] 245s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_help PASSED [ 8%] 245s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_convert PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2PO::test_simpleentity PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_escape PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_whitespaceonly PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2PO::test_double_escapes PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes_helpcontent2 PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2PO::test_msgid_bug_error_address PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2PO::test_x_comment_inclusion PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simpleentity PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_double_escapes PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_help PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_preserve_filename PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 8%] 245s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates PASSED [ 8%] 245s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_simpleentity PASSED [ 9%] 245s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes PASSED [ 9%] 245s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_escape PASSED [ 9%] 245s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_whitespaceonly PASSED [ 9%] 245s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_double_escapes PASSED [ 9%] 245s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes_helpcontent2 PASSED [ 9%] 245s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_x_comment_inclusion PASSED [ 9%] 245s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_msgid_bug_error_address PASSED [ 9%] 245s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simpleentity PASSED [ 9%] 246s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes PASSED [ 9%] 246s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 9%] 246s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 9%] 246s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_double_escapes PASSED [ 9%] 246s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 9%] 246s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 9%] 246s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 9%] 246s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_help PASSED [ 9%] 246s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_preserve_filename PASSED [ 9%] 246s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf PASSED [ 9%] 246s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 246s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 246s tests/translate/convert/test_php2po.py::TestPhp2PO::test_simpleentry PASSED [ 9%] 246s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphp PASSED [ 9%] 246s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphptemplate PASSED [ 9%] 246s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpmissing PASSED [ 9%] 246s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpempty PASSED [ 9%] 246s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unicode PASSED [ 9%] 246s tests/translate/convert/test_php2po.py::TestPhp2PO::test_multiline PASSED [ 9%] 246s tests/translate/convert/test_php2po.py::TestPhp2PO::test_comments_before PASSED [ 9%] 246s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry PASSED [ 9%] 246s tests/translate/convert/test_php2po.py::TestPhp2PO::test_hash_comment_with_equals PASSED [ 9%] 246s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry_translated PASSED [ 9%] 246s tests/translate/convert/test_php2po.py::TestPhp2PO::test_newlines_in_value PASSED [ 9%] 246s tests/translate/convert/test_php2po.py::TestPhp2PO::test_spaces_in_name PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_array PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_array PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_nested_arrays PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_nested_arrays PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_simpleentry PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphp PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphptemplate PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpmissing PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpempty PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unicode PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_multiline PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_comments_before PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_hash_comment_with_equals PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry_translated PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_newlines_in_value PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_spaces_in_name PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_array PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_array PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_nested_arrays PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_nested_arrays PASSED [ 10%] 246s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_help PASSED [ 10%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_simpleentity PASSED [ 10%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_multiline PASSED [ 10%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapednewlines PASSED [ 10%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedtabs PASSED [ 10%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedquotes PASSED [ 10%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedescape PASSED [ 10%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_singlequotes PASSED [ 10%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_empties PASSED [ 10%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_kdecomments PASSED [ 10%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_simpleentity PASSED [ 10%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_multiline PASSED [ 10%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapednewlines PASSED [ 11%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedtabs PASSED [ 11%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedquotes PASSED [ 11%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedescape PASSED [ 11%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_singlequotes PASSED [ 11%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_empties PASSED [ 11%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_kdecomments PASSED [ 11%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_help PASSED [ 11%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder PASSED [ 11%] 246s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_joinlines PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_escapedstr PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_missingaccesskey PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskeycase PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_types PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities_two PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments_translator PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_retains_hashprefix PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_convertdtd PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_with_template PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_without_template PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_blank_source PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_newlines_escapes PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_simple PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_escape PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_quotes PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_amp PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_merging_entries_with_spaces_removed PASSED [ 11%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces_after_value PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_duplicates PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_joinlines PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_escapedstr PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_missingaccesskey PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskeycase PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_types PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities_two PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments_translator PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_retains_hashprefix PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_convertdtd PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_with_template PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_without_template PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_blank_source PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_newlines_escapes PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_simple PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_escape PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_quotes PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_amp PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_merging_entries_with_spaces_removed PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces_after_value PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_duplicates PASSED [ 12%] 246s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_help PASSED [ 12%] 246s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_defaults PASSED [ 13%] 246s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_root_name PASSED [ 13%] 246s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_value_name PASSED [ 13%] 246s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_key PASSED [ 13%] 246s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_default_namespace PASSED [ 13%] 246s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_namespace_prefix PASSED [ 13%] 246s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_indent_eight PASSED [ 13%] 246s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_noindent PASSED [ 13%] 246s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXMLCommand::test_help PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2Html::test_simple PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2Html::test_linebreaks PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2Html::test_replace_substrings PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_outside_translatable_content PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_embedded_within_translatable_content PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_without_value PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2Html::test_entities PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2Html::test_escapes PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_translated PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_untranslated PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_fuzzy PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2Html::test_untranslated_attributes PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_simple PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_linebreaks PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_replace_substrings PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_outside_translatable_content PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_embedded_within_translatable_content PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_without_value PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_entities PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_escapes PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_translated PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_untranslated PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_fuzzy PASSED [ 13%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_untranslated_attributes PASSED [ 14%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_help PASSED [ 14%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_individual_files PASSED [ 14%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_fully_recursive PASSED [ 14%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_input_specified PASSED [ 14%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified PASSED [ 14%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_output_specified PASSED [ 14%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file PASSED [ 14%] 246s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_empty_file PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_summary PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_description PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_location PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_comment PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_complex_icalendar PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_skip_fuzzy PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_include_fuzzy PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_no_template PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_template_location_not_in_source_file PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_below_threshold PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_above_threshold PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_empty_file PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_summary PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_description PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_location PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_comment PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_complex_icalendar PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_skip_fuzzy PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_include_fuzzy PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_no_template PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_template_location_not_in_source_file PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_below_threshold PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_above_threshold PASSED [ 14%] 246s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_help PASSED [ 14%] 246s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_help PASSED [ 15%] 246s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_no_templates PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_simple PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_space_preservation PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_blank_entries PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_fuzzy PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_propertyless_template PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_empty_value PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_dialects_inno PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_misaligned_files PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_below_threshold PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_above_threshold PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_no_fuzzy PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_allow_fuzzy PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_missing_source PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_repeated_locations PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_no_templates PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_simple PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_space_preservation PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_blank_entries PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_fuzzy PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_propertyless_template PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_empty_value PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_dialects_inno PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_misaligned_files PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_below_threshold PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_above_threshold PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_no_fuzzy PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_allow_fuzzy PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_missing_source PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_repeated_locations PASSED [ 15%] 246s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_help PASSED [ 15%] 246s tests/translate/convert/test_po2json.py::TestPO2JSON::test_basic PASSED [ 16%] 246s tests/translate/convert/test_po2json.py::TestPO2JSON::test_ordering_serialize PASSED [ 16%] 246s tests/translate/convert/test_po2json.py::TestPO2JSON::test_dont_use_empty_translation PASSED [ 16%] 246s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_false PASSED [ 16%] 246s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_true PASSED [ 16%] 246s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_false PASSED [ 16%] 246s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_true PASSED [ 16%] 246s tests/translate/convert/test_po2md.py::TestPO2MD::test_help PASSED [ 16%] 246s tests/translate/convert/test_po2md.py::TestPO2MD::test_single_markdown_file_with_single_po PASSED [ 16%] 246s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po PASSED [ 16%] 246s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_and_directory_of_po_files PASSED [ 16%] 246s tests/translate/convert/test_po2moz.py::TestPO2MozCommand::test_help PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_empty PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_simple PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_comment PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_ok_marker PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_below_threshold PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_above_threshold PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_skip_non_translatable_input PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_no_fuzzy PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_allow_fuzzy PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_mark_active PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_empty PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_simple PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_comment PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_ok_marker PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_below_threshold PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_above_threshold PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_skip_non_translatable_input PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_no_fuzzy PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_allow_fuzzy PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_mark_active PASSED [ 16%] 246s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_help PASSED [ 16%] 246s tests/translate/convert/test_po2oo.py::TestPO2OO::test_convertoo PASSED [ 16%] 246s tests/translate/convert/test_po2oo.py::TestPO2OO::test_pofilter PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_simple PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_escape PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_quotes PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_spaces PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OO::test_default_timestamp PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OO::test_escape_conversion PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes2 PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_convertoo PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_pofilter PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_simple PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_quotes PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_spaces PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_escape_conversion PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes2 PASSED [ 17%] 246s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_help PASSED [ 17%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp PASSED [ 17%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_notemplate PASSED [ 17%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_empty_template PASSED [ 17%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_simple PASSED [ 17%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_space_preservation PASSED [ 17%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_preserve_unused_statement PASSED [ 17%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_not_translated_multiline PASSED [ 17%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_blank_entries PASSED [ 17%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_fuzzy PASSED [ 17%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_locations_with_spaces PASSED [ 17%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_inline_comments PASSED [ 17%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_block_comments PASSED [ 17%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_variables PASSED [ 17%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_multiline PASSED [ 17%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_hash_comment PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_arrays PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_nested_array PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_unnamed_nested_arrays PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template XFAIL [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_notemplate PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_empty_template PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_simple PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_space_preservation PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_preserve_unused_statement PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_not_translated_multiline PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_blank_entries PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_fuzzy PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_locations_with_spaces PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_inline_comments PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_block_comments PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_variables PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_multiline PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_hash_comment PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_arrays PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_nested_array PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_unnamed_nested_arrays PASSED [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template XFAIL [ 18%] 246s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_help PASSED [ 18%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_simple PASSED [ 18%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated PASSED [ 18%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_hard_newlines_preserved PASSED [ 18%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_space_preservation PASSED [ 18%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_value PASSED [ 18%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_separator PASSED [ 18%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank_entries PASSED [ 18%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_fuzzy PASSED [ 18%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_margin_whitespace PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_all_whitespace PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_propertyless_template PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_delimiters PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_empty_value PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_personalities PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_simple PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline2 PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_comments PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_unchanged PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gaia_plurals PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_duplicates PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gwt_plurals PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_simple PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_hard_newlines_preserved PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_space_preservation PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_value PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_separator PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank_entries PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_fuzzy PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_margin_whitespace PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_all_whitespace PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_propertyless_template PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_delimiters PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_empty_value PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_personalities PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_simple PASSED [ 19%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline PASSED [ 20%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline2 PASSED [ 20%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_comments PASSED [ 20%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_unchanged PASSED [ 20%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank PASSED [ 20%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gaia_plurals PASSED [ 20%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_duplicates PASSED [ 20%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gwt_plurals PASSED [ 20%] 246s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_help PASSED [ 20%] 246s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_help PASSED [ 20%] 247s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert PASSED [ 20%] 249s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_quotes PASSED [ 20%] 249s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment PASSED [ 20%] 249s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_dos_eol PASSED [ 20%] 249s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_double_string PASSED [ 20%] 249s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_popup PASSED [ 20%] 249s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_discardable PASSED [ 20%] 249s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_menuex PASSED [ 20%] 249s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_newlines PASSED [ 20%] 249s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_after PASSED [ 20%] 249s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_block_language PASSED [ 20%] 249s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_output_encoding PASSED [ 20%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_simpleunit PASSED [ 20%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_basic PASSED [ 20%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_multiline PASSED [ 20%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapednewlines PASSED [ 20%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedtabs PASSED [ 20%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedquotes PASSED [ 20%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_exclusions PASSED [ 20%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments PASSED [ 20%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingcomment PASSED [ 20%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecomment PASSED [ 20%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 20%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments PASSED [ 20%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingcomment PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingduplicatecomment PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingcomment PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_existingcomments PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_simpleunit PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_basic PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_multiline PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapednewlines PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedtabs PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedquotes PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_exclusions PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingcomment PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingcomment PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingduplicatecomment PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingcomment PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_existingcomments PASSED [ 21%] 249s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_help PASSED [ 21%] 249s tests/translate/convert/test_po2sub.py::TestPO2Sub::test_subrip PASSED [ 21%] 249s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_subrip PASSED [ 21%] 249s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_help PASSED [ 21%] 249s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_empty PASSED [ 21%] 249s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert PASSED [ 21%] 249s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_marked_untranslated PASSED [ 21%] 249s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_empty PASSED [ 21%] 249s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert PASSED [ 21%] 249s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_marked_untranslated PASSED [ 22%] 249s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_help PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_basic PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcelanguage PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_targetlanguage PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_multiline PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapednewlines PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedtabs PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedquotes PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_exclusions PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonascii PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonecomments PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_otherscomments PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcecomments PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_typecomments PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_basic PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcelanguage PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_targetlanguage PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_multiline PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapednewlines PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedtabs PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedquotes PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_exclusions PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonascii PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonecomments PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_otherscomments PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcecomments PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_typecomments PASSED [ 22%] 249s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_help PASSED [ 22%] 249s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simpleunit PASSED [ 22%] 249s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simple_unicode_unit PASSED [ 22%] 249s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fullunit PASSED [ 22%] 249s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fuzzyunit PASSED [ 22%] 249s tests/translate/convert/test_po2ts.py::TestPO2TS::test_obsolete PASSED [ 22%] 249s tests/translate/convert/test_po2ts.py::TestPO2TS::test_duplicates PASSED [ 23%] 249s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak PASSED [ 23%] 249s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak_consecutive PASSED [ 23%] 249s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simpleunit PASSED [ 23%] 249s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simple_unicode_unit PASSED [ 23%] 249s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fullunit PASSED [ 23%] 249s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fuzzyunit PASSED [ 23%] 249s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_obsolete PASSED [ 23%] 249s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_duplicates PASSED [ 23%] 249s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak PASSED [ 23%] 249s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak_consecutive PASSED [ 23%] 249s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_help PASSED [ 23%] 249s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_basic PASSED [ 23%] 249s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_nonascii PASSED [ 23%] 249s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_blank_handling PASSED [ 23%] 249s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_fuzzy_handling PASSED [ 23%] 249s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_obsolete_ignore PASSED [ 23%] 249s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_header_ignore PASSED [ 23%] 249s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_below_threshold PASSED [ 23%] 249s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_above_threshold PASSED [ 23%] 249s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_basic PASSED [ 23%] 249s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_nonascii PASSED [ 23%] 249s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_blank_handling PASSED [ 23%] 249s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_fuzzy_handling PASSED [ 23%] 249s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_obsolete_ignore PASSED [ 23%] 249s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_header_ignore PASSED [ 23%] 249s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_below_threshold PASSED [ 23%] 249s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_above_threshold PASSED [ 23%] 249s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_help PASSED [ 23%] 249s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_basic PASSED [ 23%] 249s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_unicode PASSED [ 23%] 249s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_ordering_serialize PASSED [ 23%] 249s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_markmin PASSED [ 23%] 249s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_minimal PASSED [ 23%] 249s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_basic PASSED [ 24%] 249s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_multiline PASSED [ 24%] 249s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapednewlines PASSED [ 24%] 249s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedtabs PASSED [ 24%] 249s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedquotes PASSED [ 24%] 249s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_locationcomments PASSED [ 24%] 249s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_othercomments PASSED [ 24%] 249s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_automaticcomments PASSED [ 24%] 249s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_header PASSED [ 24%] 249s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_fuzzy PASSED [ 24%] 249s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_germanic_plurals PASSED [ 24%] 249s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_funny_plurals PASSED [ 24%] 249s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_language_tags PASSED [ 24%] 249s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_variables PASSED [ 24%] 249s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_approved PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_empty_PO PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_no_templates PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple_output PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_translated PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_no_fuzzy PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_allow_fuzzy PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_nested PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_below_threshold PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_above_threshold PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_empty_PO PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_no_templates PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple_output PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_translated PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_no_fuzzy PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_allow_fuzzy PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_nested PASSED [ 24%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_below_threshold PASSED [ 25%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_above_threshold PASSED [ 25%] 249s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_help PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank_plurals PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_simple PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_messages_marked_fuzzy PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals_with_fuzzy_matching PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change XFAIL [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_change PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_and_whitespace_change PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_ambiguous_with_disambiguous PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes XFAIL [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently XFAIL [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_dont_duplicate PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_new_overides_old PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments_with_blank_comment_lines PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_commentlines PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgidcomments PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_with_msgidcomment PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_obsoleting_messages PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_not_obsoleting_empty_messages PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_new_before_obsolete PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_header_initialisation PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_typecomments PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt_multiline PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_location PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_id PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_msgid PASSED [ 25%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_migrate_msgidcomment_to_msgctxt PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_obsolete_msgctxt PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_small_strings PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank_plurals PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_simple PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_messages_marked_fuzzy PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change XFAIL [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_change PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_and_whitespace_change PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_ambiguous_with_disambiguous PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes XFAIL [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently XFAIL [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_new_overides_old PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments_with_blank_comment_lines PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_commentlines PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgidcomments PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_with_msgidcomment PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_obsoleting_messages PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_not_obsoleting_empty_messages PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_new_before_obsolete PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_header_initialisation PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_typecomments PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt_multiline PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_location PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_id PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_msgid PASSED [ 26%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_migrate_msgidcomment_to_msgctxt PASSED [ 27%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_obsolete_msgctxt PASSED [ 27%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_small_strings PASSED [ 27%] 249s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_help PASSED [ 27%] 249s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_no_endlines_added PASSED [ 27%] 249s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_uncomment_contributors PASSED [ 27%] 249s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_multiline_comment_newlines PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_simpleentry PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_convertprop PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_value_entry PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_separator_entry PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_end_of_string PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_start_of_value PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unicode PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_escaping PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_comments PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_comments PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_folding_accesskeys PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_dont_translate PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty_translated PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_newlines_in_value PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_header_comments PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unassociated_comment_order PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_x_header PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gaia_plurals PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_successive_gaia_plurals PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_duplicate_keys PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gwt_plurals PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_simpleentry PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_convertprop PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_value_entry PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_separator_entry PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_end_of_string PASSED [ 27%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_start_of_value PASSED [ 28%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unicode PASSED [ 28%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_escaping PASSED [ 28%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_comments PASSED [ 28%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_comments PASSED [ 28%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_folding_accesskeys PASSED [ 28%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_dont_translate PASSED [ 28%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty PASSED [ 28%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty_translated PASSED [ 28%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_newlines_in_value PASSED [ 28%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_header_comments PASSED [ 28%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unassociated_comment_order PASSED [ 28%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_x_header PASSED [ 28%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gaia_plurals PASSED [ 28%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_successive_gaia_plurals PASSED [ 28%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_duplicate_keys PASSED [ 28%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gwt_plurals PASSED [ 28%] 249s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_help PASSED [ 28%] 249s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_help PASSED [ 28%] 249s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert PASSED [ 28%] 249s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 PASSED [ 28%] 249s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong PASSED [ 28%] 249s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 PASSED [ 28%] 249s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex PASSED [ 28%] 249s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_simple PASSED [ 28%] 249s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_multiple_units PASSED [ 28%] 249s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_automaticcomments PASSED [ 28%] 249s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_translatorcomments PASSED [ 28%] 249s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_locations PASSED [ 28%] 249s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple PASSED [ 28%] 249s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_multiple_units PASSED [ 28%] 249s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_automaticcomments PASSED [ 28%] 249s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_translatorcomments PASSED [ 28%] 249s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_locations PASSED [ 29%] 249s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_help PASSED [ 29%] 249s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot PASSED [ 29%] 249s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po PASSED [ 29%] 249s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates PASSED [ 29%] 249s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_convert_empty PASSED [ 29%] 249s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_defaults PASSED [ 29%] 249s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_includeunused PASSED [ 29%] 249s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_convert_empty PASSED [ 29%] 249s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_defaults PASSED [ 29%] 249s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_includeunused PASSED [ 29%] 249s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_help PASSED [ 29%] 249s tests/translate/convert/test_ts2po.py::TestTS2PO::test_blank PASSED [ 29%] 249s tests/translate/convert/test_ts2po.py::TestTS2PO::test_basic PASSED [ 29%] 249s tests/translate/convert/test_ts2po.py::TestTS2PO::test_unfinished PASSED [ 29%] 249s tests/translate/convert/test_ts2po.py::TestTS2PO::test_multiline PASSED [ 29%] 249s tests/translate/convert/test_ts2po.py::TestTS2PO::test_obsolete PASSED [ 29%] 249s tests/translate/convert/test_ts2po.py::TestTS2PO::test_comment PASSED [ 29%] 249s tests/translate/convert/test_ts2po.py::TestTS2PO::test_extracomment PASSED [ 29%] 249s tests/translate/convert/test_ts2po.py::TestTS2PO::test_emptycontext PASSED [ 29%] 249s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_blank PASSED [ 29%] 249s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_basic PASSED [ 29%] 249s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_unfinished PASSED [ 29%] 249s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_multiline PASSED [ 29%] 249s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_obsolete PASSED [ 29%] 249s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_comment PASSED [ 29%] 249s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_extracomment PASSED [ 29%] 249s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_emptycontext PASSED [ 29%] 249s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_help PASSED [ 29%] 249s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_convert_empty PASSED [ 29%] 249s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_keep_duplicates PASSED [ 29%] 249s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_drop_duplicates PASSED [ 29%] 249s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_simple PASSED [ 29%] 249s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_multiple_units PASSED [ 29%] 249s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_carriage_return PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_merge PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_no_segmentation PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestDoku2po::test_convert_empty PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestDoku2po::test_keep_duplicates PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestDoku2po::test_drop_duplicates PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestDoku2po::test_basic PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestDoku2po::test_bullet_list PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestDoku2po::test_numbered_list PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestDoku2po::test_spacing PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestDoku2po::test_merge PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_convert_empty PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_keep_duplicates PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_drop_duplicates PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_simple PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_multiple_units PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_carriage_return PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_merge PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_no_segmentation PASSED [ 30%] 249s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_help PASSED [ 30%] 249s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_basic PASSED [ 30%] 249s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_unicode PASSED [ 30%] 249s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_markmin PASSED [ 30%] 249s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_help PASSED [ 30%] 249s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert PASSED [ 30%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_minimal PASSED [ 30%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_basic PASSED [ 30%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_translatorcomments PASSED [ 30%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_autocomment PASSED [ 30%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_locations PASSED [ 30%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_fuzzy PASSED [ 30%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_plurals PASSED [ 30%] 249s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_minimal PASSED [ 30%] 249s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_basic PASSED [ 30%] 249s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_translatorcomments PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_autocomment PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_locations PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_fuzzy PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_plurals PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_help PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_simple_convert PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_minimal PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_basic PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_translatorcomments PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_autocomment PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_locations PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_fuzzy PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_plurals PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_help PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po PASSED [ 31%] 249s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates PASSED [ 31%] 249s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_empty_YAML PASSED [ 31%] 249s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple_output PASSED [ 31%] 249s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple PASSED [ 31%] 249s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_nested PASSED [ 31%] 249s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates XFAIL [ 31%] 249s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_with_template PASSED [ 31%] 249s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_empty_YAML PASSED [ 31%] 249s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple_output PASSED [ 31%] 249s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple PASSED [ 31%] 249s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_nested PASSED [ 31%] 249s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates XFAIL [ 31%] 249s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_with_template PASSED [ 31%] 249s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_help PASSED [ 31%] 249s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_empty_target PASSED [ 31%] 249s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_ellipsis PASSED [ 32%] 249s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_spacestart_spaceend PASSED [ 32%] 249s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_start_capitals PASSED [ 32%] 249s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_end_punc PASSED [ 32%] 249s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_combinations PASSED [ 32%] 249s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_nothing_to_do PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_defaults PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_construct PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_accelerator_markers PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_messages PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_accelerators PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_acceleratedvariables XFAIL [ 32%] 249s tests/translate/filters/test_checks.py::test_acronyms PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_blank PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_brackets PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_compendiumconflicts PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_doublequoting PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_doublespacing PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_doublewords PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_endpunc PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_endwhitespace PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_escapes PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_newlines PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_tabs PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_filepaths PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_kdecomments PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_long PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_musttranslatewords XFAIL [ 32%] 249s tests/translate/filters/test_checks.py::test_notranslatewords PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_numbers PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_persian_numbers PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_bengali_numbers PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_arabic_numbers PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_assamese_numbers PASSED [ 32%] 249s tests/translate/filters/test_checks.py::test_options PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_printf PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_pythonbraceformat PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_puncspacing PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_purepunc PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_sentencecount PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_short PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_singlequoting PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_vietnamese_singlequoting PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time XFAIL [ 33%] 249s tests/translate/filters/test_checks.py::test_persian_quoting PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_simplecaps PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_spellcheck SKIPPED (Spe...) [ 33%] 249s tests/translate/filters/test_checks.py::test_startcaps PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_startpunc PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_startwhitespace PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_unchanged PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_untranslated PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_validchars PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_minimalchecker PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_reducedchecker PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_variables_kde PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_variables_gnome PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_variables_mozilla PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_variables_openoffice PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_variables_cclicense PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_variables_ios PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_xmltags PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags XFAIL [ 33%] 249s tests/translate/filters/test_checks.py::test_ooxmltags PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_functions PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_emails PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_urls PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_simpleplurals PASSED [ 33%] 249s tests/translate/filters/test_checks.py::test_nplurals PASSED [ 34%] 249s tests/translate/filters/test_checks.py::test_credits PASSED [ 34%] 249s tests/translate/filters/test_checks.py::test_gconf PASSED [ 34%] 249s tests/translate/filters/test_checks.py::test_validxml PASSED [ 34%] 249s tests/translate/filters/test_checks.py::test_hassuggestion PASSED [ 34%] 249s tests/translate/filters/test_checks.py::test_dialogsizes PASSED [ 34%] 249s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers PASSED [ 34%] 249s tests/translate/filters/test_checks.py::test_mozilla_no_accelerators_for_indic PASSED [ 34%] 249s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker PASSED [ 34%] 249s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source PASSED [ 34%] 249s tests/translate/filters/test_checks.py::test_ensure_bengali_languages_script_is_correct PASSED [ 34%] 249s tests/translate/filters/test_checks.py::test_category PASSED [ 34%] 249s tests/translate/filters/test_decoration.py::test_spacestart PASSED [ 34%] 249s tests/translate/filters/test_decoration.py::test_isvalidaccelerator PASSED [ 34%] 249s tests/translate/filters/test_decoration.py::test_find_marked_variables PASSED [ 34%] 249s tests/translate/filters/test_decoration.py::test_getnumbers PASSED [ 34%] 249s tests/translate/filters/test_decoration.py::test_getfunctions PASSED [ 34%] 249s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplepass PASSED [ 34%] 249s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplefail PASSED [ 34%] 249s tests/translate/filters/test_pofilter.py::TestPOFilter::test_variables_across_lines PASSED [ 34%] 249s tests/translate/filters/test_pofilter.py::TestPOFilter::test_ignore_if_already_marked PASSED [ 34%] 249s tests/translate/filters/test_pofilter.py::TestPOFilter::test_non_existant_check PASSED [ 34%] 249s tests/translate/filters/test_pofilter.py::TestPOFilter::test_list_all_tests PASSED [ 34%] 249s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_fuzzy PASSED [ 34%] 249s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_review PASSED [ 34%] 249s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isfuzzy PASSED [ 34%] 249s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isreview PASSED [ 34%] 249s tests/translate/filters/test_pofilter.py::TestPOFilter::test_notes PASSED [ 34%] 249s tests/translate/filters/test_pofilter.py::TestPOFilter::test_unicode PASSED [ 34%] 249s tests/translate/filters/test_pofilter.py::TestPOFilter::test_preconditions PASSED [ 34%] 249s tests/translate/filters/test_pofilter.py::TestPOFilter::test_msgid_comments PASSED [ 34%] 249s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplepass PASSED [ 34%] 249s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplefail PASSED [ 34%] 249s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_variables_across_lines PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_ignore_if_already_marked PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_non_existant_check PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_list_all_tests PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_fuzzy PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_review PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isfuzzy PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isreview PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_notes PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_unicode PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_preconditions PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplepass PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplefail PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_variables_across_lines PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_ignore_if_already_marked PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_non_existant_check PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_list_all_tests PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_notes PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_unicode PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_preconditions PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_fuzzy PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_review PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isfuzzy PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isreview PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplepass PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplefail PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_variables_across_lines PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_ignore_if_already_marked PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_non_existant_check PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_list_all_tests PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_fuzzy PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_review PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isfuzzy PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isreview PASSED [ 35%] 249s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_notes PASSED [ 36%] 249s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_unicode PASSED [ 36%] 249s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_preconditions PASSED [ 36%] 249s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_msgid_comments PASSED [ 36%] 249s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_cedillas PASSED [ 36%] 249s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_niciun PASSED [ 36%] 249s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_nicio PASSED [ 36%] 249s tests/translate/filters/test_prefilters.py::test_removekdecomments PASSED [ 36%] 249s tests/translate/filters/test_prefilters.py::test_filterwordswithpunctuation PASSED [ 36%] 249s tests/translate/lang/test_af.py::test_sentences PASSED [ 36%] 249s tests/translate/lang/test_af.py::test_capsstart PASSED [ 36%] 249s tests/translate/lang/test_af.py::test_transliterate_cyrillic PASSED [ 36%] 249s tests/translate/lang/test_am.py::test_punctranslate PASSED [ 36%] 249s tests/translate/lang/test_am.py::test_sentences PASSED [ 36%] 249s tests/translate/lang/test_ar.py::test_punctranslate PASSED [ 36%] 249s tests/translate/lang/test_ar.py::test_sentences PASSED [ 36%] 249s tests/translate/lang/test_common.py::test_characters PASSED [ 36%] 249s tests/translate/lang/test_common.py::test_words PASSED [ 36%] 249s tests/translate/lang/test_common.py::test_word_khmer XFAIL (ZWS is n...) [ 36%] 249s tests/translate/lang/test_common.py::test_sentences PASSED [ 36%] 249s tests/translate/lang/test_common.py::test_capsstart PASSED [ 36%] 249s tests/translate/lang/test_common.py::test_numstart PASSED [ 36%] 249s tests/translate/lang/test_common.py::test_punctranslate PASSED [ 36%] 249s tests/translate/lang/test_common.py::test_length_difference PASSED [ 36%] 249s tests/translate/lang/test_common.py::test_alter_length PASSED [ 36%] 249s tests/translate/lang/test_data.py::test_normalise_code PASSED [ 36%] 249s tests/translate/lang/test_data.py::test_simplify_to_common PASSED [ 36%] 249s tests/translate/lang/test_el.py::test_punctranslate PASSED [ 36%] 249s tests/translate/lang/test_el.py::test_sentences PASSED [ 36%] 249s tests/translate/lang/test_es.py::test_punctranslate PASSED [ 36%] 249s tests/translate/lang/test_es.py::test_sentences PASSED [ 36%] 249s tests/translate/lang/test_fa.py::test_punctranslate PASSED [ 36%] 249s tests/translate/lang/test_fa.py::test_sentences PASSED [ 36%] 249s tests/translate/lang/test_factory.py::test_getlanguage PASSED [ 36%] 249s tests/translate/lang/test_factory.py::test_get_all_languages PASSED [ 37%] 249s tests/translate/lang/test_fr.py::test_punctranslate PASSED [ 37%] 249s tests/translate/lang/test_fr.py::test_sentences PASSED [ 37%] 249s tests/translate/lang/test_hy.py::test_punctranslate PASSED [ 37%] 249s tests/translate/lang/test_hy.py::test_sentences PASSED [ 37%] 249s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_lang PASSED [ 37%] 249s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_store PASSED [ 37%] 249s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_bad_init_data PASSED [ 37%] 249s tests/translate/lang/test_ja.py::test_punctranslate PASSED [ 37%] 249s tests/translate/lang/test_ja.py::test_sentences PASSED [ 37%] 249s tests/translate/lang/test_km.py::test_punctranslate PASSED [ 37%] 249s tests/translate/lang/test_km.py::test_sentences PASSED [ 37%] 249s tests/translate/lang/test_ko.py::test_punctranslate PASSED [ 37%] 249s tests/translate/lang/test_ko.py::test_sentences PASSED [ 37%] 249s tests/translate/lang/test_ne.py::test_punctranslate PASSED [ 37%] 249s tests/translate/lang/test_ne.py::test_sentences PASSED [ 37%] 249s tests/translate/lang/test_nqo.py::test_punctranslate PASSED [ 37%] 249s tests/translate/lang/test_nqo.py::test_sentences PASSED [ 37%] 249s tests/translate/lang/test_or.py::test_punctranslate PASSED [ 37%] 249s tests/translate/lang/test_or.py::test_country_code PASSED [ 37%] 249s tests/translate/lang/test_or.py::test_sentences PASSED [ 37%] 249s tests/translate/lang/test_poedit.py::test_isocode PASSED [ 37%] 249s tests/translate/lang/test_ro.py::test_cedillas PASSED [ 37%] 249s tests/translate/lang/test_ro.py::test_niciun PASSED [ 37%] 249s tests/translate/lang/test_scn.py::test_italianisms PASSED [ 37%] 249s tests/translate/lang/test_scn.py::test_vocalism PASSED [ 37%] 249s tests/translate/lang/test_scn.py::test_suffixes PASSED [ 37%] 249s tests/translate/lang/test_team.py::test_simple PASSED [ 37%] 249s tests/translate/lang/test_th.py::test_punctranslate PASSED [ 37%] 249s tests/translate/lang/test_th.py::test_sentences PASSED [ 37%] 249s tests/translate/lang/test_tr.py::test_sentences PASSED [ 37%] 249s tests/translate/lang/test_uk.py::test_sentences PASSED [ 37%] 249s tests/translate/lang/test_vi.py::test_punctranslate PASSED [ 37%] 249s tests/translate/lang/test_vi.py::test_sentences PASSED [ 38%] 249s tests/translate/lang/test_zh.py::test_punctranslate PASSED [ 38%] 249s tests/translate/lang/test_zh.py::test_sentences PASSED [ 38%] 249s tests/translate/misc/test_deprecation.py::TestDeprecation::test_deprecated_decorator PASSED [ 38%] 249s tests/translate/misc/test_deprecation.py::TestDeprecation::test_no_deprecated_decorator PASSED [ 38%] 249s tests/translate/misc/test_dictutils.py::test_cidict_has_key PASSED [ 38%] 249s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor PASSED [ 38%] 249s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor_validation PASSED [ 38%] 249s tests/translate/misc/test_multistring.py::TestMultistring::test_repr PASSED [ 38%] 249s tests/translate/misc/test_multistring.py::TestMultistring::test_replace PASSED [ 38%] 249s tests/translate/misc/test_multistring.py::TestMultistring::test_comparison PASSED [ 38%] 249s tests/translate/misc/test_multistring.py::TestMultistring::test_coercion PASSED [ 38%] 249s tests/translate/misc/test_multistring.py::TestMultistring::test_unicode_coercion PASSED [ 38%] 249s tests/translate/misc/test_multistring.py::TestMultistring::test_list_coercion PASSED [ 38%] 249s tests/translate/misc/test_multistring.py::TestMultistring::test_multistring_hash PASSED [ 38%] 249s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_splitext PASSED [ 38%] 249s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_outputfile_receives_bytes PASSED [ 38%] 249s tests/translate/misc/test_progressbar.py::test_hashprogressbar PASSED [ 38%] 249s tests/translate/misc/test_quote.py::test_find_all PASSED [ 38%] 249s tests/translate/misc/test_quote.py::test_extract PASSED [ 38%] 249s tests/translate/misc/test_quote.py::test_extractwithoutquotes PASSED [ 38%] 249s tests/translate/misc/test_quote.py::test_extractwithoutquotes_passfunc PASSED [ 38%] 249s tests/translate/misc/test_quote.py::test_stripcomment PASSED [ 38%] 249s tests/translate/misc/test_quote.py::TestEncoding::test_javapropertiesencode PASSED [ 38%] 249s tests/translate/misc/test_quote.py::TestEncoding::test_java_utf8_properties_encode PASSED [ 38%] 249s tests/translate/misc/test_quote.py::TestEncoding::test_escapespace PASSED [ 38%] 249s tests/translate/misc/test_quote.py::TestEncoding::test_mozillaescapemarginspaces PASSED [ 38%] 249s tests/translate/misc/test_quote.py::TestEncoding::test_mozilla_control_escapes PASSED [ 38%] 249s tests/translate/misc/test_quote.py::TestEncoding::test_propertiesdecode PASSED [ 38%] 249s tests/translate/misc/test_quote.py::TestEncoding::test_controlchars PASSED [ 38%] 249s tests/translate/misc/test_quote.py::TestEncoding::test_properties_decode_slashu PASSED [ 38%] 249s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding PASSED [ 38%] 249s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_existing_entities PASSED [ 38%] 249s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_passthrough PASSED [ 38%] 249s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_nonentities PASSED [ 39%] 249s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_four_spaces PASSED [ 39%] 249s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_tab PASSED [ 39%] 249s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_distance PASSED [ 39%] 249s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_similarity PASSED [ 39%] 249s tests/translate/search/test_lshtein.py::TestLevenshtein::test_long_similarity PASSED [ 39%] 249s tests/translate/search/test_match.py::TestMatch::test_matching PASSED [ 39%] 249s tests/translate/search/test_match.py::TestMatch::test_multiple_store PASSED [ 39%] 249s tests/translate/search/test_match.py::TestMatch::test_extendtm PASSED [ 39%] 249s tests/translate/search/test_match.py::TestMatch::test_terminology PASSED [ 39%] 249s tests/translate/search/test_match.py::TestMatch::test_brackets PASSED [ 39%] 249s tests/translate/search/test_match.py::TestMatch::test_past_tences PASSED [ 39%] 249s tests/translate/search/test_match.py::TestMatch::test_space_mismatch PASSED [ 39%] 249s tests/translate/search/test_match.py::TestMatch::test_hyphen_mismatch PASSED [ 39%] 249s tests/translate/search/test_terminology.py::TestTerminology::test_basic PASSED [ 39%] 249s tests/translate/services/test_tmserver.py::TestTMServer::test_import PASSED [ 39%] 250s tests/translate/services/test_tmserver.py::TestTMServer::test_server PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_parse PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_tree PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_add PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_contains PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getitem PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getslice PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_iter PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_len PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_mul PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_offset PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_at_offset PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find_elems_with PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_flatten PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case1 PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case2 PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case3 PASSED [ 39%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case4 PASSED [ 40%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_insert PASSED [ 40%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_isleaf PASSED [ 40%] 250s tests/translate/storage/placeables/test_base.py::TestStringElem::test_prune PASSED [ 40%] 250s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_base_placeables PASSED [ 40%] 250s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables XFAIL [ 40%] 250s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables XFAIL [ 40%] 250s tests/translate/storage/placeables/test_general.py::test_placeable_numbers PASSED [ 40%] 250s tests/translate/storage/placeables/test_general.py::test_placeable_newline PASSED [ 40%] 250s tests/translate/storage/placeables/test_general.py::test_placeable_alt_attr PASSED [ 40%] 250s tests/translate/storage/placeables/test_general.py::test_placeable_qt_formatting PASSED [ 40%] 250s tests/translate/storage/placeables/test_general.py::test_placeable_camelcase PASSED [ 40%] 250s tests/translate/storage/placeables/test_general.py::test_placeable_space PASSED [ 40%] 250s tests/translate/storage/placeables/test_general.py::test_placeable_punctuation PASSED [ 40%] 250s tests/translate/storage/placeables/test_general.py::test_placeable_xml_entity PASSED [ 40%] 250s tests/translate/storage/placeables/test_general.py::test_placeable_xml_tag PASSED [ 40%] 250s tests/translate/storage/placeables/test_general.py::test_placeable_option PASSED [ 40%] 250s tests/translate/storage/placeables/test_general.py::test_placeable_file PASSED [ 40%] 250s tests/translate/storage/placeables/test_general.py::test_placeable_email PASSED [ 40%] 250s tests/translate/storage/placeables/test_general.py::test_placeable_caps PASSED [ 40%] 250s tests/translate/storage/placeables/test_general.py::test_placeable_formatting PASSED [ 40%] 250s tests/translate/storage/placeables/test_general.py::test_placeable_doubleat PASSED [ 40%] 250s tests/translate/storage/placeables/test_general.py::test_placeable_brace PASSED [ 40%] 250s tests/translate/storage/placeables/test_general.py::test_python_placeable PASSED [ 40%] 250s tests/translate/storage/placeables/test_lisa.py::test_xml_to_strelem PASSED [ 40%] 250s tests/translate/storage/placeables/test_lisa.py::test_xml_space PASSED [ 40%] 250s tests/translate/storage/placeables/test_lisa.py::test_chunk_list PASSED [ 40%] 250s tests/translate/storage/placeables/test_lisa.py::test_set_strelem_to_xml PASSED [ 40%] 250s tests/translate/storage/placeables/test_lisa.py::test_unknown_xml_placeable PASSED [ 40%] 250s tests/translate/storage/placeables/test_terminology.py::TestTerminologyPlaceable::test_simple_terminology PASSED [ 40%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_isfuzzy PASSED [ 40%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_create PASSED [ 40%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_eq PASSED [ 40%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escapes PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_difficult_escapes PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_note_sanity PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_target PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_get PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_set PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quotes_with_newline PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline_in_xml PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_twitter PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quote PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_question PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_double_space PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_leading_space PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_tailing_space PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_xml_entities PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote_newline PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_arrows PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link_and_text PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_blank_string PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_escape_message_with_newline PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_invalid_lang PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_quote PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_leading_space PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_trailing_space PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_with_ampersand PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_double_space PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_deep_double_space PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_complex_xml PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quoted_newlines PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline PASSED [ 41%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline_in_xml PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_twitter PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_question PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quote PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_space PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_space PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_newlines PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_xml_entities PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_code PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_arrows PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link_and_text PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_space PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_spaces PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_escaped_newline PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_escaped_newline PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_spaces PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_newline PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_many_quotes PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string_again PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_quotes_string PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_newline_in_string PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_not_translatable_string PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_newline PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_comments PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_quote PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space_quoted PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space_quoted PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_with_ampersand PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_double_space_quoted PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_deep_double_space_quoted PASSED [ 42%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_complex_xml PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unicode PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_unescaped PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_alone PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_full PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_escaped_percent PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_percent PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_quote PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unparied_quote PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_slash PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_ignored PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escaped_quote_end PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_create_blank PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_remove PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_find PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_parse PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_files PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_save PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_extensions PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_mimetypes PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translate PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_nonascii PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_default_handlings PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_invalid_filename PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_namespaces PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_serialize PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add_formatting PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_invalid_entity PASSED [ 43%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_indent PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_markup PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_edit PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_noedit PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_remove PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_set PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_others PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_quotes_set PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_g PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_namespace PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_zh_hk PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_b_zh_hk PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_missing_plural PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_removeunit PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata_text PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_prefix PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_rtl PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_tail PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translatable_marking PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_escaping PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_isfuzzy PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_create PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_eq PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_escapes PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_difficult_escapes PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_note_sanity PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_target PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_get PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_set PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_create_blank PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_add PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_remove PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_find PASSED [ 44%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_parse PASSED [ 45%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_files PASSED [ 45%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_save PASSED [ 45%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_extensions PASSED [ 45%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_mimetypes PASSED [ 45%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_translate PASSED [ 45%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_markup PASSED [ 45%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_nonascii PASSED [ 45%] 250s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_plural PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationUnit::test_isfuzzy PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationUnit::test_create PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationUnit::test_eq PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationUnit::test_target PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationUnit::test_escapes PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationUnit::test_difficult_escapes PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationUnit::test_note_sanity PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_get PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_set PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationStore::test_create_blank PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationStore::test_add PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationStore::test_remove PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationStore::test_find PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationStore::test_translate PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationStore::test_parse PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationStore::test_files PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationStore::test_save PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationStore::test_markup PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationStore::test_nonascii PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationStore::test_extensions PASSED [ 45%] 250s tests/translate/storage/test_base.py::TestTranslationStore::test_mimetypes PASSED [ 45%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_isfuzzy PASSED [ 45%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_create PASSED [ 45%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_eq PASSED [ 45%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_target PASSED [ 45%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_escapes PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_get PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_set PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_difficult_escapes PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_newlines PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_istranslated PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_note_sanity PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_create_blank PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_add PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_remove PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_find PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_translate PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_parse PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_files PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_save PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_markup PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_nonascii PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_extensions PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_mimetypes PASSED [ 46%] 250s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_checksum PASSED [ 46%] 250s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_isfuzzy PASSED [ 46%] 250s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_create PASSED [ 46%] 250s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_eq PASSED [ 46%] 250s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_target PASSED [ 46%] 250s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_escapes PASSED [ 46%] 250s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_difficult_escapes PASSED [ 46%] 250s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_note_sanity PASSED [ 46%] 250s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_get PASSED [ 46%] 250s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_set PASSED [ 46%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_create_blank PASSED [ 46%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_add PASSED [ 46%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_remove PASSED [ 46%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_find PASSED [ 46%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_translate PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_files PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_save PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_markup PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_nonascii PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_extensions PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_mimetypes PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_singlequoting PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8 PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_dialect PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_sig PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_default PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_location_is_parsed PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_context_is_parsed PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_newline PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse_sample PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_detection PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding PASSED [ 47%] 250s tests/translate/storage/test_csvl10n.py::TestCSV::test_corrupt PASSED [ 47%] 250s tests/translate/storage/test_directory.py::TestDirectory::test_created PASSED [ 47%] 250s tests/translate/storage/test_directory.py::TestDirectory::test_basic PASSED [ 47%] 250s tests/translate/storage/test_directory.py::TestDirectory::test_structure PASSED [ 47%] 250s tests/translate/storage/test_directory.py::TestDirectory::test_getunits PASSED [ 47%] 250s tests/translate/storage/test_dtd.py::test_roundtrip_quoting PASSED [ 47%] 250s tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases XFAIL [ 47%] 250s tests/translate/storage/test_dtd.py::test_quotefordtd PASSED [ 47%] 250s tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases XFAIL [ 47%] 250s tests/translate/storage/test_dtd.py::test_unquotefromdtd PASSED [ 47%] 250s tests/translate/storage/test_dtd.py::test_android_roundtrip_quoting PASSED [ 47%] 250s tests/translate/storage/test_dtd.py::test_quoteforandroid PASSED [ 47%] 250s tests/translate/storage/test_dtd.py::test_unquotefromandroid PASSED [ 47%] 250s tests/translate/storage/test_dtd.py::test_removeinvalidamp PASSED [ 47%] 250s tests/translate/storage/test_dtd.py::TestDTDUnit::test_isfuzzy PASSED [ 47%] 250s tests/translate/storage/test_dtd.py::TestDTDUnit::test_create PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTDUnit::test_eq PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTDUnit::test_escapes PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTDUnit::test_difficult_escapes PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTDUnit::test_note_sanity PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTDUnit::test_target PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_get PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_set PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_create_blank PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_add PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_remove PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_find PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_parse PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_files PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_save PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_extensions PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_mimetypes PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_translate PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_markup PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_nonascii PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_blanklines PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity_source PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_hashcomment_source PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_commentclosing PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_commententity PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_newlines_in_entity PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_conflate_comments PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_localisation_notes PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_in_source PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_order_in_source PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_comment_following XFAIL [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_comment_newline_space_closing PASSED [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting XFAIL [ 48%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_missing_quotes PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping_roundtrip PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_create_blank PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_add PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_remove PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_find PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_parse PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_files PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_save PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_extensions PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_mimetypes PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_translate PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_markup PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_nonascii PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape_parse_and_convert_back PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape PASSED [ 49%] 250s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape_parse_and_convert_back PASSED [ 49%] 250s tests/translate/storage/test_factory.py::TestPOFactory::test_getclass PASSED [ 49%] 250s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject_store PASSED [ 49%] 250s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject PASSED [ 49%] 250s tests/translate/storage/test_factory.py::TestPOFactory::test_get_noname_object PASSED [ 49%] 250s tests/translate/storage/test_factory.py::TestPOFactory::test_gzfile PASSED [ 49%] 250s tests/translate/storage/test_factory.py::TestPOFactory::test_bz2file PASSED [ 49%] 250s tests/translate/storage/test_factory.py::TestPOFactory::test_directory PASSED [ 49%] 250s tests/translate/storage/test_factory.py::TestXliffFactory::test_getclass PASSED [ 49%] 250s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject_store PASSED [ 49%] 250s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject PASSED [ 49%] 250s tests/translate/storage/test_factory.py::TestXliffFactory::test_get_noname_object PASSED [ 49%] 250s tests/translate/storage/test_factory.py::TestXliffFactory::test_gzfile PASSED [ 49%] 250s tests/translate/storage/test_factory.py::TestXliffFactory::test_bz2file PASSED [ 49%] 250s tests/translate/storage/test_factory.py::TestXliffFactory::test_directory PASSED [ 49%] 250s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getclass PASSED [ 50%] 250s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject_store PASSED [ 50%] 250s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject PASSED [ 50%] 250s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_get_noname_object PASSED [ 50%] 250s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_gzfile PASSED [ 50%] 250s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_bz2file PASSED [ 50%] 250s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_directory PASSED [ 50%] 250s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getclass PASSED [ 50%] 250s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject_store PASSED [ 50%] 250s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject PASSED [ 50%] 250s tests/translate/storage/test_factory.py::TestWordfastFactory::test_get_noname_object PASSED [ 50%] 250s tests/translate/storage/test_factory.py::TestWordfastFactory::test_gzfile PASSED [ 50%] 250s tests/translate/storage/test_factory.py::TestWordfastFactory::test_bz2file PASSED [ 50%] 250s tests/translate/storage/test_factory.py::TestWordfastFactory::test_directory PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_isfuzzy PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_create PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_eq PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_escapes PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_difficult_escapes PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_note_sanity PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_target PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_get PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_set PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_create_blank PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_add PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_remove PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_find PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_parse PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_files PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_save PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_extensions PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_mimetypes PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_translate PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_markup PASSED [ 50%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_nonascii PASSED [ 51%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_root_config_detect PASSED [ 51%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_detect PASSED [ 51%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_key_config_detect PASSED [ 51%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_mixed_ok PASSED [ 51%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_namespace_config_detect PASSED [ 51%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_four_spaces PASSED [ 51%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_tab PASSED [ 51%] 250s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_none_linearizes PASSED [ 51%] 250s tests/translate/storage/test_html.py::test_guess_encoding PASSED [ 51%] 250s tests/translate/storage/test_html.py::TestHTMLParsing::test_mismatched_tags PASSED [ 51%] 250s tests/translate/storage/test_html.py::TestHTMLParsing::test_self_closing_tags PASSED [ 51%] 250s tests/translate/storage/test_html.py::TestHTMLParsing::test_escaping_script_and_pre PASSED [ 51%] 250s tests/translate/storage/test_html.py::TestHTMLExtraction::test_strip_html PASSED [ 51%] 250s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_figcaption PASSED [ 51%] 250s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_caption_td_th PASSED [ 51%] 250s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_alt PASSED [ 51%] 250s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_title PASSED [ 51%] 250s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre PASSED [ 51%] 250s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre_code PASSED [ 51%] 250s tests/translate/storage/test_ini.py::TestINIUnit::test_isfuzzy PASSED [ 51%] 250s tests/translate/storage/test_ini.py::TestINIUnit::test_create PASSED [ 51%] 250s tests/translate/storage/test_ini.py::TestINIUnit::test_eq PASSED [ 51%] 250s tests/translate/storage/test_ini.py::TestINIUnit::test_escapes PASSED [ 51%] 250s tests/translate/storage/test_ini.py::TestINIUnit::test_difficult_escapes PASSED [ 51%] 250s tests/translate/storage/test_ini.py::TestINIUnit::test_note_sanity PASSED [ 51%] 250s tests/translate/storage/test_ini.py::TestINIUnit::test_target PASSED [ 51%] 250s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_get PASSED [ 51%] 250s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_set PASSED [ 51%] 250s tests/translate/storage/test_ini.py::TestINIStore::test_create_blank PASSED [ 51%] 250s tests/translate/storage/test_ini.py::TestINIStore::test_add PASSED [ 51%] 250s tests/translate/storage/test_ini.py::TestINIStore::test_remove PASSED [ 51%] 250s tests/translate/storage/test_ini.py::TestINIStore::test_find PASSED [ 51%] 250s tests/translate/storage/test_ini.py::TestINIStore::test_parse PASSED [ 51%] 250s tests/translate/storage/test_ini.py::TestINIStore::test_files PASSED [ 52%] 250s tests/translate/storage/test_ini.py::TestINIStore::test_save PASSED [ 52%] 250s tests/translate/storage/test_ini.py::TestINIStore::test_extensions PASSED [ 52%] 250s tests/translate/storage/test_ini.py::TestINIStore::test_mimetypes PASSED [ 52%] 250s tests/translate/storage/test_ini.py::TestINIStore::test_translate PASSED [ 52%] 250s tests/translate/storage/test_ini.py::TestINIStore::test_markup PASSED [ 52%] 250s tests/translate/storage/test_ini.py::TestINIStore::test_nonascii PASSED [ 52%] 250s tests/translate/storage/test_ini.py::TestINIStore::test_serialize PASSED [ 52%] 250s tests/translate/storage/test_ini.py::TestINIStore::test_rem PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_isfuzzy PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_create PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_eq PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_escapes PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_difficult_escapes PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_note_sanity PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_target PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_get PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_set PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_create_blank PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_remove PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_find PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_parse PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_files PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_save PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_extensions PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_mimetypes PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_translate PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_markup PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_nonascii PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_serialize PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_can_not_detect PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_error PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_filter PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_ordering PASSED [ 52%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_args PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_bom PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex_array PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_list_like PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_blank PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_types PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_null PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_isfuzzy PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_create PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_eq PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_escapes PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_difficult_escapes PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_note_sanity PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_target PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_get PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_set PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_serialize PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_ordering PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_array PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index_nested PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_nested_list_mixed PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_list_to_dict PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_complex_keys PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_other PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0]-expected0] PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0]-expected1] PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0][1][2][3]-expected2] PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test]selection-expected3] PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test][0]selection-expected4] PASSED [ 53%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0][test]selection-expected5] PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[-expected6] PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_dot_keys PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_isfuzzy PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_create PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_eq PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_escapes PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_difficult_escapes PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_note_sanity PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_target PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_get PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_set PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_create_blank PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_add PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_remove PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_find PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_parse PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_files PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_save PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_extensions PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_mimetypes PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_translate PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_markup PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_nonascii PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_dot_keys PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_leading_dot_keys PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize_no_description PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_set_target PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_placeholders PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_create_blank PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_add PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_remove PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_find PASSED [ 54%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_parse PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_files PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_save PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_extensions PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_mimetypes PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_translate PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_markup PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nonascii PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_serialize PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_units PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_plurals PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nested_array PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural_id PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_create_blank PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_add PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_remove PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_find PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_parse PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_files PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_save PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_extensions PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_mimetypes PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_translate PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_markup PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_nonascii PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals_missing PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_case_no_msg PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_complex_id PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_create_blank PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_add PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_remove PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_find PASSED [ 55%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_parse PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_files PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_save PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_extensions PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_mimetypes PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_translate PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_markup PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nonascii PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_serialize PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_units PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_plurals PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nested_array PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_new_plural PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_ru PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_create_blank PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_add PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_remove PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_find PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_parse PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_files PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_save PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_extensions PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_mimetypes PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_translate PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_markup PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nonascii PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_serialize PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_units PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_plurals PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nested_array PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_new_plural PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_ru PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_create_blank PASSED [ 56%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_add PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_remove PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_find PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_parse PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_files PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_save PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_extensions PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_mimetypes PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_translate PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_markup PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_nonascii PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals_missing PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_invalid PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_dot_keys PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_create_blank PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_add PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_remove PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_find PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_parse PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_files PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_save PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_extensions PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_mimetypes PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_translate PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_markup PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_nonascii PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_1 PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_2 PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_blank PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_missing PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_simplification PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_invalid PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_dot_keys PASSED [ 57%] 250s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_create_blank PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_add PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_remove PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_find PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_parse PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_files PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_save PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_extensions PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_mimetypes PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_translate PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_markup PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_nonascii PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_roundtrip PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_leading_dot_keys PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_create_blank PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_add PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_remove PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_find PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_parse PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_files PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_save PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_extensions PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_mimetypes PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_translate PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_markup PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_nonascii PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_roundtrip PASSED [ 58%] 250s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_leading_dot_keys PASSED [ 58%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_atx_heading PASSED [ 58%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_autolink PASSED [ 58%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_block_quote PASSED [ 58%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_block PASSED [ 58%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_span PASSED [ 58%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_atx_heading PASSED [ 58%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_document PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_list_item PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_escaped_character PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_hard_line_break PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_block PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_character_entities PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_span PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_image_embedded_in_link PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_collapsed_reference_link PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_full_reference_link PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_shortcut_reference_link PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_merging_of_adjacent_placeholders PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_block_tokens PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_list PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_basic_markup PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_only_whitespace_and_placeholders PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_placeholder_trimming PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image_no_title PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_link PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_text_paragraph PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_remove_placeholders_from_both_ends_of_translation_units PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_setext_heading PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_table_with_header PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_thematic_break PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_hard_line_break_in_translation_unit PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_missing_placeholder PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_duplicate_placeholder PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_extraneous_placeholder PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_reordered_placeholders PASSED [ 59%] 250s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_invalid_markdown_in_translation PASSED [ 59%] 250s tests/translate/storage/test_mo.py::TestMOUnit::test_isfuzzy PASSED [ 59%] 250s tests/translate/storage/test_mo.py::TestMOUnit::test_create PASSED [ 59%] 250s tests/translate/storage/test_mo.py::TestMOUnit::test_eq PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOUnit::test_target PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOUnit::test_escapes PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOUnit::test_difficult_escapes PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOUnit::test_note_sanity PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_get PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_set PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOUnit::test_context PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOFile::test_create_blank PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOFile::test_add PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOFile::test_remove PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOFile::test_find PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOFile::test_translate PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOFile::test_parse PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOFile::test_files PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOFile::test_save PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOFile::test_markup PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOFile::test_nonascii PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOFile::test_extensions PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOFile::test_mimetypes PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOFile::test_language PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOFile::test_context PASSED [ 60%] 250s tests/translate/storage/test_mo.py::TestMOFile::test_output SKIPPED [ 60%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_isfuzzy PASSED [ 60%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_create PASSED [ 60%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_eq PASSED [ 60%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_escapes PASSED [ 60%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_difficult_escapes PASSED [ 60%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_note_sanity PASSED [ 60%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_target PASSED [ 60%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_get PASSED [ 60%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_set PASSED [ 60%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_create_blank PASSED [ 60%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_add PASSED [ 60%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_remove PASSED [ 61%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_find PASSED [ 61%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_parse PASSED [ 61%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_files PASSED [ 61%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_save PASSED [ 61%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_extensions PASSED [ 61%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_mimetypes PASSED [ 61%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_translate PASSED [ 61%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_markup PASSED [ 61%] 250s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_nonascii PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[-] PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String-String] PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {OK}-String] PASSED [ 61%] 250s 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%] 250s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{ok}-String] PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{OK}-String] PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok} -String] PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_isfuzzy PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_create PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_eq PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_target PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_escapes PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_difficult_escapes PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_note_sanity PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_get PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_set PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_translate_but_same PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_untranslated PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_comments PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_copy_target PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_create_blank PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_add PASSED [ 61%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_remove PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_find PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_translate PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_parse PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_files PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_save PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_markup PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_extensions PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_mimetypes PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_nonascii PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_format_layout PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_crlf PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_active_flag PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_multiline_comments PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_template PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[--False] PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ -Source -True] PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok}-Source-True] PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok} -Source-True] PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[{ok}-Source-True] PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_headers PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_not_headers PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[0] PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[1] PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[2] PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[3] PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_tag_comments PASSED [ 62%] 250s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_maxlength PASSED [ 62%] 250s tests/translate/storage/test_omegat.py::TestOtUnit::test_isfuzzy PASSED [ 62%] 250s tests/translate/storage/test_omegat.py::TestOtUnit::test_create PASSED [ 62%] 250s tests/translate/storage/test_omegat.py::TestOtUnit::test_eq PASSED [ 62%] 250s tests/translate/storage/test_omegat.py::TestOtUnit::test_target PASSED [ 62%] 250s tests/translate/storage/test_omegat.py::TestOtUnit::test_escapes PASSED [ 62%] 250s tests/translate/storage/test_omegat.py::TestOtUnit::test_difficult_escapes PASSED [ 63%] 250s tests/translate/storage/test_omegat.py::TestOtUnit::test_note_sanity PASSED [ 63%] 250s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_get PASSED [ 63%] 250s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_set PASSED [ 63%] 250s tests/translate/storage/test_omegat.py::TestOtFile::test_create_blank PASSED [ 63%] 250s tests/translate/storage/test_omegat.py::TestOtFile::test_add PASSED [ 63%] 250s tests/translate/storage/test_omegat.py::TestOtFile::test_remove PASSED [ 63%] 250s tests/translate/storage/test_omegat.py::TestOtFile::test_find PASSED [ 63%] 250s tests/translate/storage/test_omegat.py::TestOtFile::test_translate PASSED [ 63%] 250s tests/translate/storage/test_omegat.py::TestOtFile::test_parse PASSED [ 63%] 250s tests/translate/storage/test_omegat.py::TestOtFile::test_files PASSED [ 63%] 250s tests/translate/storage/test_omegat.py::TestOtFile::test_save PASSED [ 63%] 250s tests/translate/storage/test_omegat.py::TestOtFile::test_markup PASSED [ 63%] 250s tests/translate/storage/test_omegat.py::TestOtFile::test_nonascii PASSED [ 63%] 250s tests/translate/storage/test_omegat.py::TestOtFile::test_mimetypes PASSED [ 63%] 250s tests/translate/storage/test_omegat.py::TestOtFile::test_extensions XFAIL [ 63%] 250s tests/translate/storage/test_oo.py::test_makekey PASSED [ 63%] 250s tests/translate/storage/test_oo.py::test_escape_help_text PASSED [ 63%] 250s tests/translate/storage/test_oo.py::TestOO::test_simpleentry PASSED [ 63%] 250s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_quickhelptest PASSED [ 63%] 250s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_title PASSED [ 63%] 250s tests/translate/storage/test_oo.py::TestOO::test_blankline PASSED [ 63%] 250s tests/translate/storage/test_oo.py::TestOO::test_fieldlength PASSED [ 63%] 250s tests/translate/storage/test_oo.py::TestOO::test_escapes PASSED [ 63%] 250s tests/translate/storage/test_php.py::test_php_escaping_single_quote PASSED [ 63%] 250s tests/translate/storage/test_php.py::test_php_escaping_double_quote PASSED [ 63%] 250s tests/translate/storage/test_php.py::TestPhpUnit::test_isfuzzy PASSED [ 63%] 250s tests/translate/storage/test_php.py::TestPhpUnit::test_create PASSED [ 63%] 250s tests/translate/storage/test_php.py::TestPhpUnit::test_eq PASSED [ 63%] 250s tests/translate/storage/test_php.py::TestPhpUnit::test_escapes PASSED [ 63%] 250s tests/translate/storage/test_php.py::TestPhpUnit::test_note_sanity PASSED [ 63%] 250s tests/translate/storage/test_php.py::TestPhpUnit::test_target PASSED [ 63%] 250s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_get PASSED [ 63%] 250s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_set PASSED [ 63%] 250s tests/translate/storage/test_php.py::TestPhpUnit::test_difficult_escapes PASSED [ 64%] 250s tests/translate/storage/test_php.py::TestPhpFile::test_create_blank PASSED [ 64%] 250s tests/translate/storage/test_php.py::TestPhpFile::test_add PASSED [ 64%] 250s tests/translate/storage/test_php.py::TestPhpFile::test_remove PASSED [ 64%] 250s tests/translate/storage/test_php.py::TestPhpFile::test_find PASSED [ 64%] 250s tests/translate/storage/test_php.py::TestPhpFile::test_parse PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_files PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_save PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_extensions PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_mimetypes PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_translate PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_markup PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_nonascii PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_source PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_spaces_in_name PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_comment_definition PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_comment_blocks PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_comment_output PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_comment_add PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_multiline PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_no_array_syntax PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_spaces PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_quotes PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_number_as_value PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_non_textual PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define_with_spaces_before_key PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter_and_before_key PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equal_delimiter PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equaldel_but_before_key PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_entries_with_quotes PASSED [ 64%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_comments_at_entry_line_end PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_double_slash_comments_before_entries PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_before_end_delimiter PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simpledefinition_spaces_before_end_delimiter PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_no_trailing_comma PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_space_before_comma PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_space_before_array_declaration PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_declared_in_a_single_line PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys_assigned_to_array PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_no_keys PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_assignment_in_line_where_multiline_comment_ends PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_using_short_array_syntax PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_space_before_array_declaration PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_unnamed_nested_arrays PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_array_declaration_in_next_line PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_with_newline_after_delimiter PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_blank_entries PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_slashstar_in_string PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_heredoc_syntax PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_after_define PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_quotes PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_concatenation PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_serialize PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_space_before_comma PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_equals_in_id PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_comma_in_string PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_nowdoc PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_plain_concatenation PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_array_keys PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_double_var PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_return_array PASSED [ 65%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short_quotes PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestPhpFile::test_addunit PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_isfuzzy PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_create PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_eq PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_escapes PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_difficult_escapes PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_note_sanity PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_target PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_get PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_set PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_create_blank PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_add PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_remove PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_find PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_parse PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_files PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_save PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_extensions PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_mimetypes PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_translate PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_markup PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_nonascii PASSED [ 66%] 251s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_plurals PASSED [ 66%] 251s tests/translate/storage/test_po.py::test_roundtrip_quoting PASSED [ 66%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_isfuzzy PASSED [ 66%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_create PASSED [ 66%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_eq PASSED [ 66%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_target PASSED [ 66%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_escapes PASSED [ 66%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_difficult_escapes PASSED [ 66%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_note_sanity PASSED [ 66%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_rich_get PASSED [ 66%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_rich_set PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_istranslatable PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_locations PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_nongettext_location PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_adding_empty_note PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_markreview PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_errors PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_no_plural_settarget PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_wrapping_bug PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_extract_msgidcomments_from_text PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_isheader PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOUnit::test_buildfromunit PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_create_blank PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_add PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_remove PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_find PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_translate PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_parse PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_files PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_save PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_markup PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_nonascii PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_extensions PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_mimetypes PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_context_only PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_simpleentry PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_copy PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_parse_source_string PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_parse_file PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_unicode PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_plurals PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_plural_unicode PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_nongettext_location PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_percent_location PASSED [ 67%] 251s tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals XFAIL [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_empty_lines_notes PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_fuzzy PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated XFAIL [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_merging_automaticcomments PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_malformed_units PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_malformed_obsolete_units PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_uniforum_po PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_obsolete PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_obsolete_with_prev_msgid PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_header_escapes PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_plural PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgctxt PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgidcomments PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_multiline_obsolete PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_merge_duplicates PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_merge_mixed_sources PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_parse_context PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_parse_advanced_context PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_kde_context PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_broken_kde_context PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_id PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments_2 PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_final_slash PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_unfinished_lines PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_encoding_change PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_istranslated PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_wrapping PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_wrapping_cjk PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_wrap_emoji PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis PASSED [ 68%] 251s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis_long PASSED [ 69%] 251s tests/translate/storage/test_po.py::TestPOFile::test_wrap_gettext PASSED [ 69%] 251s tests/translate/storage/test_po.py::TestPOFile::test_msgidcomments PASSED [ 69%] 251s tests/translate/storage/test_po.py::TestPOFile::test_unicode_ids PASSED [ 69%] 251s tests/translate/storage/test_po.py::TestPOFile::test_syntax_error PASSED [ 69%] 251s tests/translate/storage/test_po.py::TestPOFile::test_invalid PASSED [ 69%] 251s tests/translate/storage/test_po.py::TestPOFile::test_wrapped_msgid PASSED [ 69%] 251s tests/translate/storage/test_po.py::TestPOFile::test_missing_plural PASSED [ 69%] 251s tests/translate/storage/test_pocommon.py::test_roundtrip_quote_plus PASSED [ 69%] 251s tests/translate/storage/test_poheader.py::test_parseheaderstring PASSED [ 69%] 251s tests/translate/storage/test_poheader.py::test_update PASSED [ 69%] 251s tests/translate/storage/test_poheader.py::test_po_dates PASSED [ 69%] 251s tests/translate/storage/test_poheader.py::test_timezones PASSED [ 69%] 251s tests/translate/storage/test_poheader.py::test_header_blank PASSED [ 69%] 251s tests/translate/storage/test_poheader.py::test_plural_equation PASSED [ 69%] 251s tests/translate/storage/test_poheader.py::test_plural_equation_across_lines PASSED [ 69%] 251s tests/translate/storage/test_poheader.py::test_updatecontributor PASSED [ 69%] 251s tests/translate/storage/test_poheader.py::test_updatecontributor_header PASSED [ 69%] 251s tests/translate/storage/test_poheader.py::test_language PASSED [ 69%] 251s tests/translate/storage/test_poheader.py::test_project PASSED [ 69%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_isfuzzy PASSED [ 69%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_create PASSED [ 69%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_eq PASSED [ 69%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_target PASSED [ 69%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_escapes PASSED [ 69%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_difficult_escapes PASSED [ 69%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_note_sanity PASSED [ 69%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_get PASSED [ 69%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_set PASSED [ 69%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_markreview PASSED [ 69%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_errors PASSED [ 69%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_accepted_control_chars PASSED [ 69%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_unaccepted_control_chars PASSED [ 69%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_plurals PASSED [ 69%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_ids PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_create_blank PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_remove PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_find PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_translate PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_files PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_save PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_markup PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_nonascii PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_extensions PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_mimetypes PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_basic PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_namespace PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_source PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_target PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_source PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_target PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_sourcelanguage PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage_multi PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_alttrans PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_fuzzy PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_xml_space PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parsing PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_entities PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_multiple_filenodes PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_indent PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add_target PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_closing_tags PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_context_groups PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_getlocations PASSED [ 70%] 251s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_addlocation PASSED [ 70%] 252s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_huge PASSED [ 71%] 252s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve_add PASSED [ 71%] 252s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse PASSED [ 71%] 252s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse_plural_alpha_id PASSED [ 71%] 252s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_notes PASSED [ 71%] 252s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_plural PASSED [ 71%] 252s tests/translate/storage/test_properties.py::test_find_delimiter_pos_simple PASSED [ 71%] 252s tests/translate/storage/test_properties.py::test_find_delimiter_pos_multiple PASSED [ 71%] 252s tests/translate/storage/test_properties.py::test_find_delimiter_pos_none PASSED [ 71%] 252s tests/translate/storage/test_properties.py::test_find_delimiter_pos_whitespace PASSED [ 71%] 252s tests/translate/storage/test_properties.py::test_find_delimiter_pos_escapes PASSED [ 71%] 252s tests/translate/storage/test_properties.py::test_is_line_continuation PASSED [ 71%] 252s tests/translate/storage/test_properties.py::test_key_strip PASSED [ 71%] 252s tests/translate/storage/test_properties.py::test_get_comment_one_line PASSED [ 71%] 252s tests/translate/storage/test_properties.py::test_get_comment_start PASSED [ 71%] 252s tests/translate/storage/test_properties.py::test_get_comment_end PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestPropUnit::test_isfuzzy PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestPropUnit::test_create PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestPropUnit::test_eq PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestPropUnit::test_escapes PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestPropUnit::test_difficult_escapes PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestPropUnit::test_note_sanity PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestPropUnit::test_target PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_get PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_set PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_create_blank PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_add PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_remove PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_find PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_parse PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_files PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_save PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_extensions PASSED [ 71%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_mimetypes PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_translate PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_markup PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_nonascii PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_quotes PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_simpledefinition PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition_source PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_reduce PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_increase PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_extra_plurals PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_non_plurals PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_encoding PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestGwtProp::test_other_plurals PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_create_blank PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_add PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_remove PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_find PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_parse PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_files PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_save PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_extensions PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_mimetypes PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_translate PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_markup PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_nonascii PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition_source PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_controlutf8_source PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_control_source PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_unicode_escaping PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_newlines_startend PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_space PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_whitespace_handling PASSED [ 72%] 252s tests/translate/storage/test_properties.py::TestProp::test_key_value_delimiters_simple PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_comments PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_latin1 PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_fullspec_delimiters PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_fullspec_escaped_key PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_fullspec_line_continuation PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_fullspec_key_without_value PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_mac_strings PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_utf_16_save PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_mac_multiline_strings PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_unicode PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_utf8 PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_newlines PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_multilines_comments PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments_dropping PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_quotes PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_equals PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_serialization PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_double_backslashes PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_override_encoding PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_trailing_comments PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_utf16_byte_order_mark PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_raise_ioerror_if_cannot_detect_encoding PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_utf8_byte_order_mark PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_joomla_set_target PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_joomla PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_joomla_escape PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_delimiter PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_value PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_multi_comments PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_serialize_note PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_serialize_long_note PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestProp::test_trailing_newlines PASSED [ 73%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_create_blank PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_add PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_remove PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_find PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_parse PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_files PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_save PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_extensions PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_mimetypes PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_translate PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_markup PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_nonascii PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_simpledefinition PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition_source PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote_and_argument PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_header_preserved PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_blank_line_before_comment_preserved PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWiki::test_deprecated_comments_preserved PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_create_blank PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_add PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_remove PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_find PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_parse PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_files PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_save PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_extensions PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_mimetypes PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_markup PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_nonascii PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_simpledefinition PASSED [ 74%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition_source PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote_and_argument PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_encoded_html PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_cleaning_attributes PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate_source PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_create_blank PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_add PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_find PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_extensions PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_mimetypes PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_translate PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_markup PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_nonascii PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_simpledefinition PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_parse PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_files PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_save PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_cleaning_attributes PASSED [ 75%] 252s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove XFAIL [ 75%] 252s tests/translate/storage/test_pypo.py::TestHelpers::test_unescape PASSED [ 75%] 252s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo PASSED [ 75%] 252s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo_escaped_quotes PASSED [ 75%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isfuzzy PASSED [ 75%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_create PASSED [ 75%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_eq PASSED [ 75%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_target PASSED [ 75%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_escapes PASSED [ 75%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_difficult_escapes PASSED [ 75%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_note_sanity PASSED [ 75%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_get PASSED [ 75%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_set PASSED [ 75%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_istranslatable PASSED [ 75%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_locations PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_nongettext_location PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_adding_empty_note PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_markreview PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_errors PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_no_plural_settarget PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrapping_bug PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_extract_msgidcomments_from_text PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isheader PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_buildfromunit PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plurals PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plural_reduction PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes_withcomments PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_firstlines PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_newlines PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_max_line_length PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_slash PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_spacing_max_line PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_create_blank PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_add PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_remove PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_find PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_translate PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_files PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_save PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_markup PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nonascii PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_extensions PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mimetypes PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_context_only PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_simpleentry PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_copy PASSED [ 76%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_source_string PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_file PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plurals PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plural_unicode PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nongettext_location PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_percent_location PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals XFAIL [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_empty_lines_notes PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_fuzzy PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated XFAIL [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merging_automaticcomments PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_units PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_obsolete_units PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_uniforum_po PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete_with_prev_msgid PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_header_escapes PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_plural PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgctxt PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgidcomments PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_multiline_obsolete PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_mixed_sources PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_context PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_advanced_context PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_context PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_broken_kde_context PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_id PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments_2 PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_final_slash PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unfinished_lines PASSED [ 77%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_encoding_change PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_istranslated PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping_cjk PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_emoji PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis_long PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_gettext PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_msgidcomments PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_ids PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_syntax_error PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapped_msgid PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_missing_plural PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_combine_msgidcomments PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates_msgctxt PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_blanks PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_output_str_unicode PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_posections PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_typecomments PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unassociated_comments PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_header PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_prevmsgid_parse PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_newlines PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unix_newlines PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mac_newlines PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_header PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_comment PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_bom PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_long_msgidcomments PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_incomplete PASSED [ 78%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_invalid PASSED [ 79%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_write PASSED [ 79%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment XFAIL [ 79%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_typecomment PASSED [ 79%] 252s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_custom PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtUnit::test_isfuzzy PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtUnit::test_create PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtUnit::test_eq PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtUnit::test_target PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtUnit::test_escapes PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtUnit::test_difficult_escapes PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtUnit::test_note_sanity PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_get PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_set PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtFile::test_create_blank PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtFile::test_find PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtFile::test_translate PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtFile::test_markup PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtFile::test_extensions PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtFile::test_mimetypes PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtFile::test_parse PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtFile::test_save PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtFile::test_files PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtFile::test_nonascii PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtFile::test_add PASSED [ 79%] 252s tests/translate/storage/test_qm.py::TestQtFile::test_remove PASSED [ 79%] 252s tests/translate/storage/test_qph.py::TestQphUnit::test_isfuzzy PASSED [ 79%] 252s tests/translate/storage/test_qph.py::TestQphUnit::test_create PASSED [ 79%] 252s tests/translate/storage/test_qph.py::TestQphUnit::test_eq PASSED [ 79%] 252s tests/translate/storage/test_qph.py::TestQphUnit::test_target PASSED [ 79%] 252s tests/translate/storage/test_qph.py::TestQphUnit::test_escapes PASSED [ 79%] 252s tests/translate/storage/test_qph.py::TestQphUnit::test_difficult_escapes PASSED [ 79%] 252s tests/translate/storage/test_qph.py::TestQphUnit::test_note_sanity PASSED [ 79%] 252s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_get PASSED [ 79%] 252s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_set PASSED [ 80%] 252s tests/translate/storage/test_qph.py::TestQphFile::test_create_blank PASSED [ 80%] 252s tests/translate/storage/test_qph.py::TestQphFile::test_add PASSED [ 80%] 252s tests/translate/storage/test_qph.py::TestQphFile::test_remove PASSED [ 80%] 252s tests/translate/storage/test_qph.py::TestQphFile::test_find PASSED [ 80%] 252s tests/translate/storage/test_qph.py::TestQphFile::test_translate PASSED [ 80%] 252s tests/translate/storage/test_qph.py::TestQphFile::test_parse PASSED [ 80%] 252s tests/translate/storage/test_qph.py::TestQphFile::test_files PASSED [ 80%] 252s tests/translate/storage/test_qph.py::TestQphFile::test_save PASSED [ 80%] 252s tests/translate/storage/test_qph.py::TestQphFile::test_markup PASSED [ 80%] 252s tests/translate/storage/test_qph.py::TestQphFile::test_nonascii PASSED [ 80%] 252s tests/translate/storage/test_qph.py::TestQphFile::test_extensions PASSED [ 80%] 252s tests/translate/storage/test_qph.py::TestQphFile::test_mimetypes PASSED [ 80%] 252s tests/translate/storage/test_qph.py::TestQphFile::test_basic PASSED [ 80%] 252s tests/translate/storage/test_qph.py::TestQphFile::test_source PASSED [ 80%] 252s tests/translate/storage/test_qph.py::TestQphFile::test_target PASSED [ 80%] 252s tests/translate/storage/test_qph.py::TestQphFile::test_language PASSED [ 80%] 252s tests/translate/storage/test_rc.py::test_escaping PASSED [ 80%] 252s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_comments PASSED [ 80%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_textinclude PASSED [ 80%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_parse_dialog PASSED [ 80%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_parse_stringtable PASSED [ 80%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_lf PASSED [ 80%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_crlf PASSED [ 80%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_cr PASSED [ 80%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_parse_no_language PASSED [ 80%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude PASSED [ 80%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_multiline PASSED [ 80%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_str PASSED [ 80%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_empty PASSED [ 80%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_utf_8 PASSED [ 80%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_utf_16 PASSED [ 80%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_comment PASSED [ 80%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_stringtables PASSED [ 80%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude_appstudio PASSED [ 81%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_id_whitespace PASSED [ 81%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_menu_comment PASSED [ 81%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_decompiled PASSED [ 81%] 253s tests/translate/storage/test_rc.py::TestRcFile::test_quotes PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_isfuzzy PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_create PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_eq PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_escapes PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_difficult_escapes PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_note_sanity PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_target PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_get PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_set PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_create_blank PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_add PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_remove PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_find PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_parse PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_files PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_save PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_extensions PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_mimetypes PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_translate PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_markup PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_nonascii PASSED [ 81%] 253s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_roundtrip PASSED [ 81%] 253s tests/translate/storage/test_resx.py::TestRESXUnit::test_isfuzzy PASSED [ 81%] 253s tests/translate/storage/test_resx.py::TestRESXUnit::test_create PASSED [ 81%] 253s tests/translate/storage/test_resx.py::TestRESXUnit::test_eq PASSED [ 81%] 253s tests/translate/storage/test_resx.py::TestRESXUnit::test_escapes PASSED [ 81%] 253s tests/translate/storage/test_resx.py::TestRESXUnit::test_difficult_escapes PASSED [ 81%] 253s tests/translate/storage/test_resx.py::TestRESXUnit::test_note_sanity PASSED [ 81%] 253s tests/translate/storage/test_resx.py::TestRESXUnit::test_target PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_get PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_set PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_isfuzzy PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_create PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_eq PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_escapes PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_difficult_escapes PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_note_sanity PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_target PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_get PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_set PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit_comment PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXfile::test_create_blank PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXfile::test_add PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXfile::test_remove PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXfile::test_find PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXfile::test_parse PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXfile::test_files PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXfile::test_save PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXfile::test_extensions PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXfile::test_mimetypes PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXfile::test_translate PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXfile::test_markup PASSED [ 82%] 253s tests/translate/storage/test_resx.py::TestRESXfile::test_nonascii PASSED [ 82%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_isfuzzy PASSED [ 82%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_create PASSED [ 82%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq PASSED [ 82%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_escapes PASSED [ 82%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_difficult_escapes PASSED [ 82%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_note_sanity PASSED [ 82%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_target PASSED [ 82%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_get PASSED [ 82%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_set PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_source PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq_formatvaluetype PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_innerkey PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_create_blank PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_remove PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_find PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_parse PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_files PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_save PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_extensions PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_mimetypes PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_translate PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_markup PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_nonascii PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_serialize PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_default_handlings PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_base_filename PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_plural_zero_always_set PASSED [ 83%] 253s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add_unit PASSED [ 83%] 253s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_isfuzzy PASSED [ 83%] 253s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_create PASSED [ 83%] 253s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_eq PASSED [ 83%] 253s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_escapes PASSED [ 83%] 253s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_difficult_escapes PASSED [ 83%] 253s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_target PASSED [ 83%] 253s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_get PASSED [ 83%] 253s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_set PASSED [ 83%] 253s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity XFAIL [ 83%] 253s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_create_blank PASSED [ 83%] 253s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_add PASSED [ 83%] 253s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_remove PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_find PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_parse PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_files PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_save PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_extensions PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_mimetypes PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_translate PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_markup PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_nonascii PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_create_blank PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_add PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_remove PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_find PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_parse PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_files PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_save PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_extensions PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_mimetypes PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_translate PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_markup PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_nonascii PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_create_blank PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_add PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_remove PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_find PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_parse PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_files PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_save PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_extensions PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_mimetypes PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_translate PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_markup PASSED [ 84%] 253s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_nonascii PASSED [ 85%] 253s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_create_blank PASSED [ 85%] 253s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_add PASSED [ 85%] 253s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_remove PASSED [ 85%] 253s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_find PASSED [ 85%] 253s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_parse PASSED [ 85%] 253s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_files PASSED [ 85%] 253s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_save PASSED [ 85%] 253s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_extensions PASSED [ 85%] 253s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_mimetypes PASSED [ 85%] 253s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_translate PASSED [ 85%] 253s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_markup PASSED [ 85%] 253s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_nonascii PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXUnit::test_isfuzzy PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXUnit::test_create PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXUnit::test_eq PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXUnit::test_target PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXUnit::test_escapes PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXUnit::test_difficult_escapes PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXUnit::test_note_sanity PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_get PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_set PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_create_blank PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_add PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_remove PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_find PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_translate PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_parse PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_files PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_save PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_markup PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_nonascii PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_extensions PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_mimetypes PASSED [ 85%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_basic PASSED [ 86%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_source PASSED [ 86%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_target PASSED [ 86%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_setid PASSED [ 86%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_indent PASSED [ 86%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_descrip PASSED [ 86%] 253s tests/translate/storage/test_tbx.py::TestTBXfile::test_note_from PASSED [ 86%] 253s tests/translate/storage/test_tiki.py::TestTikiUnit::test_locations PASSED [ 86%] 253s tests/translate/storage/test_tiki.py::TestTikiUnit::test_to_unicode PASSED [ 86%] 253s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_simple PASSED [ 86%] 253s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_encode PASSED [ 86%] 253s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_locations PASSED [ 86%] 253s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_ignore_extras PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnit::test_isfuzzy PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnit::test_create PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnit::test_eq PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnit::test_target PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnit::test_escapes PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnit::test_difficult_escapes PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnit::test_note_sanity PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_get PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_set PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_isfuzzy PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_create PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_eq PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_target PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_escapes PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_difficult_escapes PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_note_sanity PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_get PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_set PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXfile::test_create_blank PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXfile::test_add PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXfile::test_remove PASSED [ 86%] 253s tests/translate/storage/test_tmx.py::TestTMXfile::test_find PASSED [ 87%] 253s tests/translate/storage/test_tmx.py::TestTMXfile::test_parse PASSED [ 87%] 253s tests/translate/storage/test_tmx.py::TestTMXfile::test_files PASSED [ 87%] 253s tests/translate/storage/test_tmx.py::TestTMXfile::test_save PASSED [ 87%] 253s tests/translate/storage/test_tmx.py::TestTMXfile::test_markup PASSED [ 87%] 253s tests/translate/storage/test_tmx.py::TestTMXfile::test_nonascii PASSED [ 87%] 253s tests/translate/storage/test_tmx.py::TestTMXfile::test_extensions PASSED [ 87%] 253s tests/translate/storage/test_tmx.py::TestTMXfile::test_mimetypes PASSED [ 87%] 253s tests/translate/storage/test_tmx.py::TestTMXfile::test_translate PASSED [ 87%] 253s tests/translate/storage/test_tmx.py::TestTMXfile::test_addtranslation PASSED [ 87%] 253s tests/translate/storage/test_tmx.py::TestTMXfile::test_withcomment PASSED [ 87%] 253s tests/translate/storage/test_tmx.py::TestTMXfile::test_withnewlines PASSED [ 87%] 253s tests/translate/storage/test_tmx.py::TestTMXfile::test_xmlentities PASSED [ 87%] 253s tests/translate/storage/test_tmx.py::TestTMXfile::test_controls_cleaning PASSED [ 87%] 253s tests/translate/storage/test_trados.py::test_unescape PASSED [ 87%] 253s tests/translate/storage/test_trados.py::test_escape PASSED [ 87%] 253s tests/translate/storage/test_ts.py::TestTS::test_construct PASSED [ 87%] 253s tests/translate/storage/test_ts2.py::TestTSUnit::test_isfuzzy PASSED [ 87%] 253s tests/translate/storage/test_ts2.py::TestTSUnit::test_create PASSED [ 87%] 253s tests/translate/storage/test_ts2.py::TestTSUnit::test_eq PASSED [ 87%] 253s tests/translate/storage/test_ts2.py::TestTSUnit::test_target PASSED [ 87%] 253s tests/translate/storage/test_ts2.py::TestTSUnit::test_escapes PASSED [ 87%] 253s tests/translate/storage/test_ts2.py::TestTSUnit::test_difficult_escapes PASSED [ 87%] 253s tests/translate/storage/test_ts2.py::TestTSUnit::test_note_sanity PASSED [ 87%] 253s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_get PASSED [ 87%] 253s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_set PASSED [ 87%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_create_blank PASSED [ 87%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_add PASSED [ 87%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_remove PASSED [ 87%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_find PASSED [ 87%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_translate PASSED [ 87%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_parse PASSED [ 87%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_files PASSED [ 87%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_save PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_markup PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_nonascii PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_extensions PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_mimetypes PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_basic PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_source PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_target PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_plurals PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_nplural PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_language PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_edit PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_obsolete PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_locations PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_merge_with_fuzzies PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_getid PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_backnforth PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_context PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_roundtrip_context PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_edit_missing_translation PASSED [ 88%] 253s tests/translate/storage/test_ts2.py::TestTSfile::test_missing_source PASSED [ 88%] 253s tests/translate/storage/test_txt.py::TestTxtUnit::test_isfuzzy PASSED [ 88%] 253s tests/translate/storage/test_txt.py::TestTxtUnit::test_create PASSED [ 88%] 253s tests/translate/storage/test_txt.py::TestTxtUnit::test_eq PASSED [ 88%] 253s tests/translate/storage/test_txt.py::TestTxtUnit::test_escapes PASSED [ 88%] 253s tests/translate/storage/test_txt.py::TestTxtUnit::test_difficult_escapes PASSED [ 88%] 253s tests/translate/storage/test_txt.py::TestTxtUnit::test_note_sanity PASSED [ 88%] 253s tests/translate/storage/test_txt.py::TestTxtUnit::test_target PASSED [ 88%] 253s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_get PASSED [ 88%] 253s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_set PASSED [ 88%] 253s tests/translate/storage/test_txt.py::TestTxtFile::test_create_blank PASSED [ 88%] 253s tests/translate/storage/test_txt.py::TestTxtFile::test_add PASSED [ 88%] 253s tests/translate/storage/test_txt.py::TestTxtFile::test_remove PASSED [ 88%] 253s tests/translate/storage/test_txt.py::TestTxtFile::test_find PASSED [ 88%] 253s tests/translate/storage/test_txt.py::TestTxtFile::test_parse PASSED [ 89%] 253s tests/translate/storage/test_txt.py::TestTxtFile::test_files PASSED [ 89%] 253s tests/translate/storage/test_txt.py::TestTxtFile::test_save PASSED [ 89%] 253s tests/translate/storage/test_txt.py::TestTxtFile::test_extensions PASSED [ 89%] 253s tests/translate/storage/test_txt.py::TestTxtFile::test_mimetypes PASSED [ 89%] 253s tests/translate/storage/test_txt.py::TestTxtFile::test_translate PASSED [ 89%] 253s tests/translate/storage/test_txt.py::TestTxtFile::test_markup PASSED [ 89%] 253s tests/translate/storage/test_txt.py::TestTxtFile::test_nonascii PASSED [ 89%] 253s tests/translate/storage/test_txt.py::TestTxtFile::test_simpleblock PASSED [ 89%] 253s tests/translate/storage/test_txt.py::TestTxtFile::test_multipleblocks PASSED [ 89%] 253s tests/translate/storage/test_txt.py::TestTxtFile::test_no_segmentation PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxUnit::test_isfuzzy PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxUnit::test_create PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxUnit::test_eq PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxUnit::test_target PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxUnit::test_escapes PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxUnit::test_difficult_escapes PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxUnit::test_note_sanity PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_get PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_set PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxFile::test_create_blank PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxFile::test_add PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxFile::test_remove PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxFile::test_find PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxFile::test_translate PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxFile::test_parse PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxFile::test_files PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxFile::test_save PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxFile::test_markup PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxFile::test_nonascii PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxFile::test_extensions PASSED [ 89%] 253s tests/translate/storage/test_utx.py::TestUtxFile::test_mimetypes PASSED [ 89%] 253s tests/translate/storage/test_wordfast.py::TestWFTime::test_timestring PASSED [ 89%] 253s tests/translate/storage/test_wordfast.py::TestWFTime::test_time PASSED [ 89%] 253s tests/translate/storage/test_wordfast.py::TestWFUnit::test_isfuzzy PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFUnit::test_create PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFUnit::test_eq PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFUnit::test_target PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFUnit::test_escapes PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFUnit::test_note_sanity PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_get PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_set PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFUnit::test_difficult_escapes PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFUnit::test_wordfast_escaping PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFUnit::test_newlines PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFUnit::test_language_setting PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFUnit::test_istranslated PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFFile::test_create_blank PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFFile::test_add PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFFile::test_remove PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFFile::test_find PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFFile::test_translate PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFFile::test_parse PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFFile::test_files PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFFile::test_save PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFFile::test_markup PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFFile::test_nonascii PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFFile::test_extensions PASSED [ 90%] 253s tests/translate/storage/test_wordfast.py::TestWFFile::test_mimetypes PASSED [ 90%] 253s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_isfuzzy PASSED [ 90%] 253s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_create PASSED [ 90%] 253s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_eq PASSED [ 90%] 253s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_target PASSED [ 90%] 253s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_escapes PASSED [ 90%] 253s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_difficult_escapes PASSED [ 90%] 253s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_note_sanity PASSED [ 90%] 253s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_get PASSED [ 90%] 253s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_set PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_markreview PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_errors PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_accepted_control_chars PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_unaccepted_control_chars PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_create_blank PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_remove PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_find PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_translate PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parse PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_files PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_save PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_markup PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_nonascii PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_extensions PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_mimetypes PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_basic PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_namespace PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_source PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_target PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_source PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_target PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_sourcelanguage PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage_multi PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_notes PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_alttrans PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_fuzzy PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_xml_space PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parsing PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_entities PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_multiple_filenodes PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_indent PASSED [ 91%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add_target PASSED [ 92%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve PASSED [ 92%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_closing_tags PASSED [ 92%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_context_groups PASSED [ 92%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_getlocations PASSED [ 92%] 253s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_addlocation PASSED [ 92%] 254s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_huge PASSED [ 92%] 254s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve_add PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_isfuzzy PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_create PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_eq PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_escapes PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_difficult_escapes PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_note_sanity PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_target PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_get PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_set PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_getlocations PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_create_blank PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_find PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_files PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_save PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_extensions PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_mimetypes PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_translate PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_markup PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nonascii PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_serialize PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit_unicode PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse_unicode_list PASSED [ 92%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_ordering PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_initial_comments PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_string_key PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nested PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_multiline PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_boolean PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_integer PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_no_quote_strings PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_double_quote_strings PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_single_quote_strings PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_double_quote_strings PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_single_quote_strings PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_escaped_double_quotes PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_newlines PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_list PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_dictionary PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_key_nesting PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add_to_mepty PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty_key PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dict_in_list PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dump_args PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_anchors PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_tagged_scalar PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_numeric PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_remove PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_special PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_quotes_roundtrip PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_create_blank PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_remove PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_find PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_parse PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_files PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_save PASSED [ 93%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_extensions PASSED [ 94%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_mimetypes PASSED [ 94%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_translate PASSED [ 94%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_markup PASSED [ 94%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_nonascii PASSED [ 94%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_list PASSED [ 94%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby PASSED [ 94%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_wrong PASSED [ 94%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_invalid_value PASSED [ 94%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural PASSED [ 94%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_empty PASSED [ 94%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_anchors PASSED [ 94%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_type_change PASSED [ 94%] 254s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_add PASSED [ 94%] 254s tests/translate/storage/test_zip.py::TestZIPFile::test_created PASSED [ 94%] 254s tests/translate/storage/test_zip.py::TestZIPFile::test_basic PASSED [ 94%] 254s tests/translate/storage/test_zip.py::TestZIPFile::test_structure PASSED [ 94%] 254s tests/translate/storage/test_zip.py::TestZIPFile::test_getunits PASSED [ 94%] 254s tests/translate/storage/xml_extract/test_misc.py::test_reduce_tree PASSED [ 94%] 254s tests/translate/storage/xml_extract/test_misc.py::test_compose_mappings PASSED [ 94%] 254s tests/translate/storage/xml_extract/test_misc.py::test_parse_tag PASSED [ 94%] 254s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath_component PASSED [ 94%] 254s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath PASSED [ 94%] 254s tests/translate/storage/xml_extract/test_unit_tree.py::test__add_unit_to_tree PASSED [ 94%] 254s tests/translate/storage/xml_extract/test_xpath_breadcrumb.py::test_breadcrumb PASSED [ 94%] 254s tests/translate/tools/test_help.py::test_help[build_tmdb] SKIPPED (S...) [ 94%] 254s tests/translate/tools/test_help.py::test_help[phppo2pypo] SKIPPED (S...) [ 94%] 254s tests/translate/tools/test_help.py::test_help[poclean] SKIPPED (Skip...) [ 94%] 254s tests/translate/tools/test_help.py::test_help[pocompile] SKIPPED (Sk...) [ 94%] 254s tests/translate/tools/test_help.py::test_help[poconflicts] SKIPPED (...) [ 94%] 254s tests/translate/tools/test_help.py::test_help[pocount] SKIPPED (Skip...) [ 94%] 254s tests/translate/tools/test_help.py::test_help[podebug] SKIPPED (Skip...) [ 94%] 254s tests/translate/tools/test_help.py::test_help[pogrep] SKIPPED (Skip ...) [ 94%] 254s tests/translate/tools/test_help.py::test_help[pomerge] SKIPPED (Skip...) [ 94%] 254s tests/translate/tools/test_help.py::test_help[porestructure] SKIPPED [ 95%] 254s tests/translate/tools/test_help.py::test_help[posegment] SKIPPED (Sk...) [ 95%] 254s tests/translate/tools/test_help.py::test_help[poswap] SKIPPED (Skip ...) [ 95%] 254s tests/translate/tools/test_help.py::test_help[poterminology] SKIPPED [ 95%] 254s tests/translate/tools/test_help.py::test_help[pretranslate] SKIPPED [ 95%] 254s tests/translate/tools/test_help.py::test_help[pydiff] SKIPPED (Skip ...) [ 95%] 254s tests/translate/tools/test_help.py::test_help[pypo2phppo] SKIPPED (S...) [ 95%] 254s tests/translate/tools/test_junitmsgfmt.py::test_output[failure] PASSED [ 95%] 255s tests/translate/tools/test_junitmsgfmt.py::test_output[untranslated] PASSED [ 95%] 255s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_single_po PASSED [ 95%] 255s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_plural_po PASSED [ 95%] 255s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_single_po PASSED [ 95%] 255s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_plural_po PASSED [ 95%] 255s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_help PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_zero PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_one PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_two PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::TestCount::test_punctuation_divides_words PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::TestCount::test_xml_tags PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::TestCount::test_newlines PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::TestCount::test_variables_are_words PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::TestCount::test_plurals PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde XFAIL [ 95%] 255s tests/translate/tools/test_pocount.py::TestCount::test_msgid_blank PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::TestPOCount::test_translated PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzy PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslated PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::TestPOCount::test_total PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::TestPOCount::test_translatedsourcewords PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzysourcewords PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslatedsourcewords PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::TestPOCount::test_totalsourcewords PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-csv] PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-full] PASSED [ 95%] 255s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-strings] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-words] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-csv] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-full] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-strings] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-words] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-csv] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-full] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-strings] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-words] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-csv] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-full] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-strings] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-words] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_cases[po-file] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_cases[po-file-fuzzy] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_cases[po-file-csv] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_cases[xliff-states-yes] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_cases[xliff-states-no] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_error_cases[mutually-exclusive] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_error_cases[missing-file] PASSED [ 96%] 255s tests/translate/tools/test_pocount.py::test_error_cases[no-args] PASSED [ 96%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_ignore_gtk PASSED [ 96%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_keep_target PASSED [ 96%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_blank PASSED [ 96%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_en PASSED [ 96%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_xxx PASSED [ 96%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_bracket PASSED [ 96%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode PASSED [ 96%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_at_placeholders PASSED [ 96%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_single_brace_placeholders PASSED [ 96%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_double_brace_placeholders PASSED [ 96%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_html PASSED [ 96%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_multiple_styles_of_placeholder PASSED [ 97%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped PASSED [ 97%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_at_placeholders PASSED [ 97%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_single_brace_placeholders PASSED [ 97%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_double_brace_placeholders PASSED [ 97%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_html PASSED [ 97%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_multiple_styles_of_placeholder PASSED [ 97%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified PASSED [ 97%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_at_placeholders PASSED [ 97%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_single_brace_placeholders PASSED [ 97%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_double_brace_placeholders PASSED [ 97%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_html PASSED [ 97%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_multiple_styles_of_placeholder PASSED [ 97%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_chef PASSED [ 97%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_po_variables PASSED [ 97%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_xliff_rewrite PASSED [ 97%] 255s tests/translate/tools/test_podebug.py::TestPODebug::test_hash PASSED [ 97%] 255s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgid PASSED [ 97%] 255s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgstr PASSED [ 97%] 255s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations PASSED [ 97%] 255s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_comments PASSED [ 97%] 255s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations_with_comment_enabled PASSED [ 97%] 255s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_searchstring PASSED [ 97%] 255s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_regex_searchstring PASSED [ 97%] 255s tests/translate/tools/test_pogrep.py::TestPOGrep::test_keep_translations PASSED [ 97%] 255s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_normalise PASSED [ 97%] 255s tests/translate/tools/test_pogrep.py::TestXLiffGrep::test_simplegrep PASSED [ 97%] 255s tests/translate/tools/test_pomerge.py::test_str2bool PASSED [ 97%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_mergesore_bad_data PASSED [ 97%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge PASSED [ 97%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge_no_locations PASSED [ 97%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_replacemerge PASSED [ 97%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_blanks PASSED [ 97%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_fuzzies PASSED [ 97%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_locations PASSED [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_with_locations PASSED [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_no_locations PASSED [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_reflowed_source_comments PASSED [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_comments_with_blank_lines PASSED [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dont_delete_unassociated_comments PASSED [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_trailing_newlines PASSED [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_minor_start_and_end_of_sentence_changes PASSED [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_last_entry_in_a_file PASSED [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs XFAIL [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_comments_layout PASSED [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dos2unix PASSED [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_xliff PASSED [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_po_into_xliff PASSED [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_po PASSED [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_dont_merge_kde_comments_found_in_translation PASSED [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_untranslated_with_kde_disambiguation PASSED [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_header_entries PASSED [ 98%] 255s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_different_locations PASSED [ 98%] 255s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_simple PASSED [ 98%] 255s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_punctuation PASSED [ 98%] 255s tests/translate/tools/test_poterminology.py::TestPOTerminology::test_term_extraction PASSED [ 98%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_pretranslatepo_blank PASSED [ 98%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_simple PASSED [ 98%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_messages_marked_fuzzy PASSED [ 98%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals_with_fuzzy_matching PASSED [ 98%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change XFAIL [ 98%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_change PASSED [ 98%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_and_whitespace_change PASSED [ 98%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes XFAIL [ 98%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently XFAIL [ 98%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_dont_duplicate PASSED [ 98%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_new_overides_old PASSED [ 98%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments_with_blank_comment_lines PASSED [ 98%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_empty_commentlines PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgidcomments PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_resurect_obsolete_messages PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_typecomments PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_xliff_states PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_pretranslatepo_blank PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_simple PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_messages_marked_fuzzy PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change XFAIL [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_change PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_and_whitespace_change PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes XFAIL [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently XFAIL [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_new_overides_old PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments_with_blank_comment_lines PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_empty_commentlines PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgidcomments PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_resurect_obsolete_messages PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_typecomments PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_xliff_states PASSED [ 99%] 255s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_help PASSED [ 99%] 255s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_single_po PASSED [ 99%] 255s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_plural_po PASSED [ 99%] 255s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_single_po PASSED [ 99%] 255s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_plural_po PASSED [ 99%] 255s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_help PASSED [ 99%] 255s tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff SKIPPED [ 99%] 255s tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff SKIPPED [100%] 255s 255s =============================== warnings summary =============================== 255s tests/translate/storage/test_cpo.py:15 255s Warning: 255s Module 'translate.storage.cpo' was found, but when imported by pytest it raised: 255s ImportError('gettext PO library not found') 255s In pytest 9.1 this warning will become an error by default. 255s You can fix the underlying problem, or alternatively overwrite this behavior and silence this warning by passing exc_type=ImportError explicitly. 255s See https://docs.pytest.org/en/stable/deprecations.html#pytest-importorskip-default-behavior-regarding-importerror 255s 255s tests/odf_xliff/test_odf_xliff.py::test_roundtrip 255s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.TWiM34/autopkgtest_tmp/tests/odf_xliff/test_2.odt'> 255s Enable tracemalloc to get traceback where the object was allocated. 255s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 255s 255s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid 255s Warning: unclosed file <_io.TextIOWrapper name='TestAndroid2POCommand_test_convertandroid/en.po' mode='r' encoding='UTF-8'> 255s Enable tracemalloc to get traceback where the object was allocated. 255s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 255s 255s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 255s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 255s Warning: unclosed file <_io.TextIOWrapper name='TestCSV2POCommand_test_columnorder/test.po' mode='r' encoding='UTF-8'> 255s Enable tracemalloc to get traceback where the object was allocated. 255s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 255s 255s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot 255s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_pot/simple.pot'> 255s Enable tracemalloc to get traceback where the object was allocated. 255s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 255s 255s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po 255s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po 255s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_po/simple.po'> 255s Enable tracemalloc to get traceback where the object was allocated. 255s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 255s 255s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates 255s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_remove_duplicates/simple.po'> 255s Enable tracemalloc to get traceback where the object was allocated. 255s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 255s 255s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf 255s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_xlf/simple.xlf'> 255s Enable tracemalloc to get traceback where the object was allocated. 255s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 255s 255s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 255s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 255s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_columnorder/test.csv' mode='r' encoding='UTF-8'> 255s Enable tracemalloc to get traceback where the object was allocated. 255s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 255s 255s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context 255s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_context/test.csv' mode='r' encoding='UTF-8'> 255s Enable tracemalloc to get traceback where the object was allocated. 255s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 255s 255s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing 255s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey 255s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey 255s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing 255s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey 255s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey 255s Warning: Could not find accesskey for key.accesskey 255s 255s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 255s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file 255s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten 255s Warning: unclosed file <_io.BufferedReader name='translation/file1.po'> 255s Enable tracemalloc to get traceback where the object was allocated. 255s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 255s 255s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 255s Warning: unclosed file <_io.BufferedWriter name='translated/file1.html'> 255s Enable tracemalloc to get traceback where the object was allocated. 255s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 255s 255s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert 255s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.TWiM34/autopkgtest_tmp/tests/translate/convert/test.idml'> 255s Enable tracemalloc to get traceback where the object was allocated. 255s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 255s 255s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po 255s Warning: unclosed file <_io.BufferedReader name='translation.po'> 255s Enable tracemalloc to get traceback where the object was allocated. 255s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 255s 255s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 255s Warning: unclosed file <_io.FileIO name='input.oo' mode='rb' closefd=True> 255s Enable tracemalloc to get traceback where the object was allocated. 255s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 255s 255s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 255s Warning: unclosed file <_io.FileIO name='output.oo' mode='wb' closefd=True> 255s Enable tracemalloc to get traceback where the object was allocated. 255s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 255s 255s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey 255s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey 255s Warning: Could not find accesskey for prop.accesskey 255s 255s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert 255s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert/simple.po'> 255s Enable tracemalloc to get traceback where the object was allocated. 255s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 255s 255s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 255s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf16/simple.po'> 255s Enable tracemalloc to get traceback where the object was allocated. 255s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 255s 255s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 255s Warning: unclosed file <_io.BufferedWriter name='simple.po'> 255s Enable tracemalloc to get traceback where the object was allocated. 256s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 256s 256s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 256s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 256s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_wrong/simple.po'> 256s Enable tracemalloc to get traceback where the object was allocated. 256s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 256s 256s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 256s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf8/simple.po'> 256s Enable tracemalloc to get traceback where the object was allocated. 256s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 256s 256s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex 256s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_menuex/simple.po'> 256s Enable tracemalloc to get traceback where the object was allocated. 256s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 256s 256s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot 256s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_pot/simple.pot'> 256s Enable tracemalloc to get traceback where the object was allocated. 256s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 256s 256s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po 256s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_po/simple.po'> 256s Enable tracemalloc to get traceback where the object was allocated. 256s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 256s 256s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates 256s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_remove_duplicates/simple.po'> 256s Enable tracemalloc to get traceback where the object was allocated. 256s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 256s 256s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 256s Warning: unclosed file <_io.BufferedWriter name='simple.odt'> 256s Enable tracemalloc to get traceback where the object was allocated. 256s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 256s 256s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 256s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.TWiM34/autopkgtest_tmp/tests/translate/convert/test.odt'> 256s Enable tracemalloc to get traceback where the object was allocated. 256s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 256s 256s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename 256s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_preserve_filename/snippet.xlf'> 256s Enable tracemalloc to get traceback where the object was allocated. 256s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 256s 256s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot 256s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_pot/simple.pot'> 256s Enable tracemalloc to get traceback where the object was allocated. 256s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 256s 256s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po 256s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_po/simple.po'> 256s Enable tracemalloc to get traceback where the object was allocated. 256s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 256s 256s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates 256s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_remove_duplicates/simple.po'> 256s Enable tracemalloc to get traceback where the object was allocated. 256s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 256s 256s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 256s Warning: DTD parse error: :1:36:FATAL:PARSER:ERR_ENTITY_NOT_FINISHED: xmlParseEntityDecl: entity test.me not terminated 256s 256s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 256s Warning: DTD file '' does not validate 256s 256s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 256s --------------------------- snapshot report summary ---------------------------- 256s 23 snapshots passed. 256s =========================== short test summary info ============================ 256s SKIPPED [1] tests/translate/storage/test_cpo.py:15: could not import 'translate.storage.cpo': gettext PO library not found 256s SKIPPED [1] tests/translate/storage/test_fluent.py:29: could not import 'translate.storage.fluent': No module named 'fluent' 256s SKIPPED [1] tests/translate/filters/test_checks.py:1429: Spell checking for af is not available 256s SKIPPED [1] tests/translate/storage/test_mo.py:498: Skip testing command line tools 256s SKIPPED [16] tests/translate/tools/test_help.py:16: Skip testing command line tools 256s SKIPPED [1] tests/xliff_conformance/test_xliff_conformance.py:49: Skip testing command line tools 256s SKIPPED [1] tests/xliff_conformance/test_xliff_conformance.py:58: Skip testing command line tools 256s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence - Not Implemented 256s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence - Not Implemented 256s XFAIL tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template - Need to review if we want this behaviour 256s XFAIL tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template - Need to review if we want this behaviour 256s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change - Not implemented - review if this is even correct 256s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes - Not Implemented - needs review 256s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently - Not Implemented - review if this is even correct 256s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change - Not implemented - review if this is even correct 256s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes - Not Implemented - needs review 256s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently - Not Implemented - review if this is even correct 256s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates - This is invalid YAML document 256s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates - This is invalid YAML document 256s XFAIL tests/translate/filters/test_checks.py::test_acceleratedvariables - Accelerated variables needs a better implementation 256s XFAIL tests/translate/filters/test_checks.py::test_musttranslatewords - FIXME: All fails() tests are not working 256s XFAIL tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time - Bug #3408 256s XFAIL tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags - Bug #3506 256s 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. 256s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables - Test needs fixing, disabled for now 256s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables - Test needs fixing, disabled for now 256s XFAIL tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases - Not Implemented 256s XFAIL tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases - Not Implemented 256s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_comment_following - Not Implemented 256s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting - Not Implemented 256s 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 256s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals - Not Implemented 256s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 256s XFAIL tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove - removal not working in full page 256s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals - Not Implemented 256s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 256s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment - Not sure if this can not be parsed gracefully 256s XFAIL tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity - Not Implemented 256s XFAIL tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde - Support commented out pending removal 256s XFAIL tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs - Not Implemented 256s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change - Not Implemented 256s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes - Not Implemented 256s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently - Not Implemented 256s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change - Not Implemented 256s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes - Not Implemented 256s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently - Not Implemented 256s ========== 3309 passed, 22 skipped, 39 xfailed, 47 warnings in 16.24s ========== 256s ============================= test session starts ============================== 256s platform linux -- Python 3.13.2, pytest-8.3.4, pluggy-1.5.0 -- /usr/bin/python3.13 256s cachedir: .pytest_cache 256s rootdir: /tmp/autopkgtest.TWiM34/autopkgtest_tmp 256s plugins: syrupy-4.8.1, typeguard-4.4.1 261s collecting ... collected 3368 items / 2 skipped 261s 261s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff PASSED [ 0%] 261s tests/odf_xliff/test_odf_xliff.py::test_roundtrip PASSED [ 0%] 261s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff2_inline PASSED [ 0%] 261s tests/translate/convert/test_accesskey.py::test_get_label_and_accesskey PASSED [ 0%] 261s tests/translate/convert/test_accesskey.py::test_extract_bad_accesskeys PASSED [ 0%] 261s tests/translate/convert/test_accesskey.py::test_ignore_entities PASSED [ 0%] 261s tests/translate/convert/test_accesskey.py::test_alternate_accesskey_marker PASSED [ 0%] 261s tests/translate/convert/test_accesskey.py::test_unicode PASSED [ 0%] 261s tests/translate/convert/test_accesskey.py::test_numeric PASSED [ 0%] 261s tests/translate/convert/test_accesskey.py::test_empty_string PASSED [ 0%] 261s tests/translate/convert/test_accesskey.py::test_end_of_string PASSED [ 0%] 261s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey PASSED [ 0%] 261s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey_different_capitals PASSED [ 0%] 261s tests/translate/convert/test_accesskey.py::test_uncombinable PASSED [ 0%] 261s tests/translate/convert/test_accesskey.py::test_accesskey_already_in_text PASSED [ 0%] 261s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_no_template_units PASSED [ 0%] 261s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_template_units PASSED [ 0%] 261s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_no_template_units PASSED [ 0%] 261s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_template_units PASSED [ 0%] 261s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_help PASSED [ 0%] 261s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid PASSED [ 0%] 261s tests/translate/convert/test_convert.py::TestConvertCommand::test_help PASSED [ 0%] 261s tests/translate/convert/test_csv2po.py::test_replacestrings PASSED [ 0%] 261s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity PASSED [ 0%] 261s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity_with_template PASSED [ 0%] 261s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_newlines PASSED [ 0%] 261s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_tabs PASSED [ 0%] 261s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_quotes PASSED [ 0%] 261s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_empties PASSED [ 0%] 261s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_kdecomment PASSED [ 0%] 261s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_escaped_newlines PASSED [ 0%] 261s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity PASSED [ 0%] 261s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity_with_template PASSED [ 0%] 261s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_newlines PASSED [ 1%] 261s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_tabs PASSED [ 1%] 261s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_quotes PASSED [ 1%] 261s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_empties PASSED [ 1%] 261s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_kdecomment PASSED [ 1%] 261s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_escaped_newlines PASSED [ 1%] 261s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_help PASSED [ 1%] 261s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_simpleentity PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_convertdtd PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_apos PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_quotes PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_two_empty_entities PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity_translated PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisaton_note_simple PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisation_note_merge PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_simple PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_label PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_onlyentity PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_commentedout PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_spaces_at_start_of_dtd_lines PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_folding PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_mismatch PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_carriage_return_in_multiline_dtd PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_with_blankline PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_closing_quotes PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_preserving_spaces PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_escaping_newline_tabs PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_abandoned_accelerator PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_unassociable_accelerator PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_changed_labels_and_accelerators PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence XFAIL [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_exclude_entity_includes PASSED [ 1%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_linewraps PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merging_with_new_untranslated PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merge_without_template PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_simpleentity PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_convertdtd PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_apos PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_quotes PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_two_empty_entities PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity_translated PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisaton_note_simple PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisation_note_merge PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_simple PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_label PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_onlyentity PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_commentedout PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_spaces_at_start_of_dtd_lines PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_folding PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_mismatch PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_carriage_return_in_multiline_dtd PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_with_blankline PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_closing_quotes PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_preserving_spaces PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_escaping_newline_tabs PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_abandoned_accelerator PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_unassociable_accelerator PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_changed_labels_and_accelerators PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence XFAIL [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_exclude_entity_includes PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_linewraps PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merging_with_new_untranslated PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merge_without_template PASSED [ 2%] 261s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_help PASSED [ 2%] 261s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_defaults PASSED [ 2%] 261s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_root_name PASSED [ 3%] 261s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_value_name PASSED [ 3%] 261s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_key PASSED [ 3%] 261s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_default_namespace PASSED [ 3%] 261s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_namespace_prefix PASSED [ 3%] 261s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_all_parameters PASSED [ 3%] 261s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_empty_file_is_empty_store PASSED [ 3%] 261s tests/translate/convert/test_flatxml2po.py::TestFlatXML2POCommand::test_help PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_extract_lang_attribute_from_html_tag PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title_with_linebreak PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_meta PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_br PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak_and_embedded_br PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_uppercase_html PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div_with_linebreaks PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a_with_linebreak PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_sequence_of_anchor_elements PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_img_empty PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img_inside_a PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_table_summary PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_simple PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_complex PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_empty PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_address PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings_with_linebreaks PASSED [ 3%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dt PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dd PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_span PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_ul PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_lists PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_duplicates PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiline_reflow PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_tags PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_carriage_return PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_encoding_latin1 PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_strip_html PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_text PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_attributes PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_charrefs PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiple_php PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_multiline PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_with_embedded_html PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_comments PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2PO::test_attribute_without_value PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_extract_lang_attribute_from_html_tag PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title_with_linebreak PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_meta PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_br PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak_and_embedded_br PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_uppercase_html PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div_with_linebreaks PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a_with_linebreak PASSED [ 4%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_sequence_of_anchor_elements PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_img_empty PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img_inside_a PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_table_summary PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_simple PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_complex PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_empty PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_address PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings_with_linebreaks PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dt PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dd PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_span PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_ul PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_lists PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_duplicates PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiline_reflow PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_tags PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_carriage_return PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_encoding_latin1 PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_strip_html PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_text PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_attributes PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_charrefs PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiple_php PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_multiline PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_with_embedded_html PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_comments PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_attribute_without_value PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_help PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_single PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile PASSED [ 5%] 261s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile_to_stdout PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_convert_empty_file PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_translations PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_summary PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_description PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_location PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_comment PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_template_duplicate_style PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_misaligned_files PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_blank_msgstr PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_duplicate_style PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_convert_empty_file PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_translations PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_summary PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_description PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_location PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_comment PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_template_duplicate_style PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_misaligned_files PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_blank_msgstr PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_duplicate_style PASSED [ 6%] 261s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_help PASSED [ 6%] 261s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_help PASSED [ 6%] 261s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_convert PASSED [ 6%] 261s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_empty_file PASSED [ 6%] 261s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_no_translation PASSED [ 6%] 261s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_simple PASSED [ 6%] 261s tests/translate/convert/test_ini2po.py::TestIni2PO::test_no_duplicates PASSED [ 6%] 261s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_simple PASSED [ 6%] 261s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_misaligned_files PASSED [ 6%] 261s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_blank_msgstr PASSED [ 6%] 261s tests/translate/convert/test_ini2po.py::TestIni2PO::test_dialects_inno PASSED [ 7%] 261s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_empty_file PASSED [ 7%] 261s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_no_translation PASSED [ 7%] 261s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_simple PASSED [ 7%] 261s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_no_duplicates PASSED [ 7%] 261s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_simple PASSED [ 7%] 261s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_misaligned_files PASSED [ 7%] 261s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_blank_msgstr PASSED [ 7%] 261s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_dialects_inno PASSED [ 7%] 261s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_help PASSED [ 7%] 261s tests/translate/convert/test_json2po.py::TestJson2PO::test_simple PASSED [ 7%] 261s tests/translate/convert/test_json2po.py::TestJson2PO::test_three_same_keys PASSED [ 7%] 261s tests/translate/convert/test_json2po.py::TestJson2PO::test_filter PASSED [ 7%] 261s tests/translate/convert/test_json2po.py::TestJson2PO::test_miltiple_units PASSED [ 7%] 261s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_simple PASSED [ 7%] 261s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_three_same_keys PASSED [ 7%] 261s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_filter PASSED [ 7%] 261s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_miltiple_units PASSED [ 7%] 261s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_help PASSED [ 7%] 261s tests/translate/convert/test_md2po.py::TestMD2PO::test_help PASSED [ 7%] 261s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_single PASSED [ 7%] 261s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_onefile PASSED [ 7%] 261s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_single PASSED [ 7%] 261s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_onefile PASSED [ 7%] 261s tests/translate/convert/test_moz2po.py::TestMoz2POCommand::test_help PASSED [ 7%] 261s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_simpleentry PASSED [ 7%] 261s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_uncomment_contributors PASSED [ 7%] 261s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_convert_empty PASSED [ 7%] 261s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_string PASSED [ 7%] 261s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_merge PASSED [ 7%] 261s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_entry PASSED [ 7%] 261s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_comment PASSED [ 7%] 261s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_meta_tags PASSED [ 7%] 261s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_keep_duplicates PASSED [ 7%] 261s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_drop_duplicates PASSED [ 8%] 261s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_convert_empty PASSED [ 8%] 261s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_string PASSED [ 8%] 261s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_merge PASSED [ 8%] 261s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_entry PASSED [ 8%] 261s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_comment PASSED [ 8%] 261s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_meta_tags PASSED [ 8%] 261s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_keep_duplicates PASSED [ 8%] 261s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_drop_duplicates PASSED [ 8%] 261s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_help PASSED [ 8%] 261s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_help PASSED [ 8%] 261s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_convert PASSED [ 8%] 261s tests/translate/convert/test_oo2po.py::TestOO2PO::test_simpleentity PASSED [ 8%] 261s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes PASSED [ 8%] 261s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_escape PASSED [ 8%] 261s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_whitespaceonly PASSED [ 8%] 261s tests/translate/convert/test_oo2po.py::TestOO2PO::test_double_escapes PASSED [ 8%] 261s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes_helpcontent2 PASSED [ 8%] 261s tests/translate/convert/test_oo2po.py::TestOO2PO::test_msgid_bug_error_address PASSED [ 8%] 261s tests/translate/convert/test_oo2po.py::TestOO2PO::test_x_comment_inclusion PASSED [ 8%] 261s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simpleentity PASSED [ 8%] 261s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes PASSED [ 8%] 262s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 8%] 262s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 8%] 262s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_double_escapes PASSED [ 8%] 262s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 8%] 262s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 8%] 262s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 8%] 262s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_help PASSED [ 8%] 262s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_preserve_filename PASSED [ 8%] 262s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot PASSED [ 8%] 262s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po PASSED [ 8%] 262s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 8%] 262s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates PASSED [ 8%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_simpleentity PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_escape PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_whitespaceonly PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_double_escapes PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes_helpcontent2 PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_x_comment_inclusion PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_msgid_bug_error_address PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simpleentity PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_double_escapes PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_help PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_preserve_filename PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 262s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 267s tests/translate/convert/test_php2po.py::TestPhp2PO::test_simpleentry PASSED [ 9%] 272s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphp PASSED [ 9%] 282s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphptemplate PASSED [ 9%] 293s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpmissing PASSED [ 9%] 295s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpempty PASSED [ 9%] 301s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unicode PASSED [ 9%] 306s tests/translate/convert/test_php2po.py::TestPhp2PO::test_multiline PASSED [ 9%] 311s tests/translate/convert/test_php2po.py::TestPhp2PO::test_comments_before PASSED [ 9%] 316s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry PASSED [ 9%] 321s tests/translate/convert/test_php2po.py::TestPhp2PO::test_hash_comment_with_equals PASSED [ 9%] 332s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry_translated PASSED [ 9%] 342s tests/translate/convert/test_php2po.py::TestPhp2PO::test_newlines_in_value PASSED [ 9%] 352s tests/translate/convert/test_php2po.py::TestPhp2PO::test_spaces_in_name PASSED [ 10%] 362s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_array PASSED [ 10%] 373s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_array PASSED [ 10%] 383s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_nested_arrays PASSED [ 10%] 394s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_nested_arrays PASSED [ 10%] 399s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_simpleentry PASSED [ 10%] 404s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphp PASSED [ 10%] 414s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphptemplate PASSED [ 10%] 425s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpmissing PASSED [ 10%] 427s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpempty PASSED [ 10%] 432s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unicode PASSED [ 10%] 438s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_multiline PASSED [ 10%] 443s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_comments_before PASSED [ 10%] 448s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry PASSED [ 10%] 453s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_hash_comment_with_equals PASSED [ 10%] 464s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry_translated PASSED [ 10%] 474s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_newlines_in_value PASSED [ 10%] 485s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_spaces_in_name PASSED [ 10%] 495s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_array PASSED [ 10%] 506s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_array PASSED [ 10%] 516s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_nested_arrays PASSED [ 10%] 527s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_nested_arrays PASSED [ 10%] 527s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_help PASSED [ 10%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_simpleentity PASSED [ 10%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_multiline PASSED [ 10%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapednewlines PASSED [ 10%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedtabs PASSED [ 10%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedquotes PASSED [ 10%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedescape PASSED [ 10%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_singlequotes PASSED [ 10%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_empties PASSED [ 10%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_kdecomments PASSED [ 10%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_simpleentity PASSED [ 10%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_multiline PASSED [ 10%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapednewlines PASSED [ 11%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedtabs PASSED [ 11%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedquotes PASSED [ 11%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedescape PASSED [ 11%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_singlequotes PASSED [ 11%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_empties PASSED [ 11%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_kdecomments PASSED [ 11%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_help PASSED [ 11%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder PASSED [ 11%] 527s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_joinlines PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_escapedstr PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_missingaccesskey PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskeycase PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_types PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities_two PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments_translator PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_retains_hashprefix PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_convertdtd PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_with_template PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_without_template PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_blank_source PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_newlines_escapes PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_simple PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_escape PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_quotes PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_amp PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_merging_entries_with_spaces_removed PASSED [ 11%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces_after_value PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_duplicates PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_joinlines PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_escapedstr PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_missingaccesskey PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskeycase PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_types PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities_two PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments_translator PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_retains_hashprefix PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_convertdtd PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_with_template PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_without_template PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_blank_source PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_newlines_escapes PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_simple PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_escape PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_quotes PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_amp PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_merging_entries_with_spaces_removed PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces_after_value PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_duplicates PASSED [ 12%] 527s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_help PASSED [ 12%] 527s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_defaults PASSED [ 13%] 527s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_root_name PASSED [ 13%] 527s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_value_name PASSED [ 13%] 527s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_key PASSED [ 13%] 527s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_default_namespace PASSED [ 13%] 527s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_namespace_prefix PASSED [ 13%] 527s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_indent_eight PASSED [ 13%] 527s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_noindent PASSED [ 13%] 527s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXMLCommand::test_help PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2Html::test_simple PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2Html::test_linebreaks PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2Html::test_replace_substrings PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_outside_translatable_content PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_embedded_within_translatable_content PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_without_value PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2Html::test_entities PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2Html::test_escapes PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_translated PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_untranslated PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_fuzzy PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2Html::test_untranslated_attributes PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_simple PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_linebreaks PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_replace_substrings PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_outside_translatable_content PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_embedded_within_translatable_content PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_without_value PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_entities PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_escapes PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_translated PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_untranslated PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_fuzzy PASSED [ 13%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_untranslated_attributes PASSED [ 14%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_help PASSED [ 14%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_individual_files PASSED [ 14%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_fully_recursive PASSED [ 14%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_input_specified PASSED [ 14%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified PASSED [ 14%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_output_specified PASSED [ 14%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file PASSED [ 14%] 527s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_empty_file PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_summary PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_description PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_location PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_comment PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_complex_icalendar PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_skip_fuzzy PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_include_fuzzy PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_no_template PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_template_location_not_in_source_file PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_below_threshold PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_above_threshold PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_empty_file PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_summary PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_description PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_location PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_comment PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_complex_icalendar PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_skip_fuzzy PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_include_fuzzy PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_no_template PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_template_location_not_in_source_file PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_below_threshold PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_above_threshold PASSED [ 14%] 527s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_help PASSED [ 14%] 527s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_help PASSED [ 15%] 527s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_no_templates PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_simple PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_space_preservation PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_blank_entries PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_fuzzy PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_propertyless_template PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_empty_value PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_dialects_inno PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_misaligned_files PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_below_threshold PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_above_threshold PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_no_fuzzy PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_allow_fuzzy PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_missing_source PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_repeated_locations PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_no_templates PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_simple PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_space_preservation PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_blank_entries PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_fuzzy PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_propertyless_template PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_empty_value PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_dialects_inno PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_misaligned_files PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_below_threshold PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_above_threshold PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_no_fuzzy PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_allow_fuzzy PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_missing_source PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_repeated_locations PASSED [ 15%] 527s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_help PASSED [ 15%] 527s tests/translate/convert/test_po2json.py::TestPO2JSON::test_basic PASSED [ 16%] 527s tests/translate/convert/test_po2json.py::TestPO2JSON::test_ordering_serialize PASSED [ 16%] 527s tests/translate/convert/test_po2json.py::TestPO2JSON::test_dont_use_empty_translation PASSED [ 16%] 527s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_false PASSED [ 16%] 527s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_true PASSED [ 16%] 527s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_false PASSED [ 16%] 527s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_true PASSED [ 16%] 527s tests/translate/convert/test_po2md.py::TestPO2MD::test_help PASSED [ 16%] 527s tests/translate/convert/test_po2md.py::TestPO2MD::test_single_markdown_file_with_single_po PASSED [ 16%] 527s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po PASSED [ 16%] 527s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_and_directory_of_po_files PASSED [ 16%] 527s tests/translate/convert/test_po2moz.py::TestPO2MozCommand::test_help PASSED [ 16%] 527s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_empty PASSED [ 16%] 527s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_simple PASSED [ 16%] 527s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_comment PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_ok_marker PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_below_threshold PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_above_threshold PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_skip_non_translatable_input PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_no_fuzzy PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_allow_fuzzy PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_mark_active PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_empty PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_simple PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_comment PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_ok_marker PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_below_threshold PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_above_threshold PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_skip_non_translatable_input PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_no_fuzzy PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_allow_fuzzy PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_mark_active PASSED [ 16%] 528s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_help PASSED [ 16%] 528s tests/translate/convert/test_po2oo.py::TestPO2OO::test_convertoo PASSED [ 16%] 528s tests/translate/convert/test_po2oo.py::TestPO2OO::test_pofilter PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_simple PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_escape PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_quotes PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_spaces PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OO::test_default_timestamp PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OO::test_escape_conversion PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes2 PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_convertoo PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_pofilter PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_simple PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_quotes PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_spaces PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_escape_conversion PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes2 PASSED [ 17%] 528s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_help PASSED [ 17%] 533s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp PASSED [ 17%] 533s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_notemplate PASSED [ 17%] 533s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_empty_template PASSED [ 17%] 536s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_simple PASSED [ 17%] 538s tests/translate/convert/test_po2php.py::TestPO2Php::test_space_preservation PASSED [ 17%] 541s tests/translate/convert/test_po2php.py::TestPO2Php::test_preserve_unused_statement PASSED [ 17%] 544s tests/translate/convert/test_po2php.py::TestPO2Php::test_not_translated_multiline PASSED [ 17%] 546s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_blank_entries PASSED [ 17%] 549s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_fuzzy PASSED [ 17%] 552s tests/translate/convert/test_po2php.py::TestPO2Php::test_locations_with_spaces PASSED [ 17%] 554s tests/translate/convert/test_po2php.py::TestPO2Php::test_inline_comments PASSED [ 17%] 557s tests/translate/convert/test_po2php.py::TestPO2Php::test_block_comments PASSED [ 17%] 560s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_variables PASSED [ 17%] 562s tests/translate/convert/test_po2php.py::TestPO2Php::test_multiline PASSED [ 17%] 565s tests/translate/convert/test_po2php.py::TestPO2Php::test_hash_comment PASSED [ 18%] 568s tests/translate/convert/test_po2php.py::TestPO2Php::test_arrays PASSED [ 18%] 570s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_nested_array PASSED [ 18%] 573s tests/translate/convert/test_po2php.py::TestPO2Php::test_unnamed_nested_arrays PASSED [ 18%] 573s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template XFAIL [ 18%] 578s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp PASSED [ 18%] 578s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_notemplate PASSED [ 18%] 578s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_empty_template PASSED [ 18%] 581s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_simple PASSED [ 18%] 583s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_space_preservation PASSED [ 18%] 586s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_preserve_unused_statement PASSED [ 18%] 589s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_not_translated_multiline PASSED [ 18%] 591s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_blank_entries PASSED [ 18%] 594s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_fuzzy PASSED [ 18%] 597s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_locations_with_spaces PASSED [ 18%] 599s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_inline_comments PASSED [ 18%] 602s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_block_comments PASSED [ 18%] 605s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_variables PASSED [ 18%] 607s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_multiline PASSED [ 18%] 610s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_hash_comment PASSED [ 18%] 612s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_arrays PASSED [ 18%] 615s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_nested_array PASSED [ 18%] 618s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_unnamed_nested_arrays PASSED [ 18%] 618s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template XFAIL [ 18%] 618s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_help PASSED [ 18%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_simple PASSED [ 18%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated PASSED [ 18%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_hard_newlines_preserved PASSED [ 18%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_space_preservation PASSED [ 18%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_value PASSED [ 18%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_separator PASSED [ 18%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank_entries PASSED [ 18%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_fuzzy PASSED [ 18%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_margin_whitespace PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_all_whitespace PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_propertyless_template PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_delimiters PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_empty_value PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_personalities PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_simple PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline2 PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_comments PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_unchanged PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gaia_plurals PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_duplicates PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gwt_plurals PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_simple PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_hard_newlines_preserved PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_space_preservation PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_value PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_separator PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank_entries PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_fuzzy PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_margin_whitespace PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_all_whitespace PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_propertyless_template PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_delimiters PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_empty_value PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_personalities PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_simple PASSED [ 19%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline PASSED [ 20%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline2 PASSED [ 20%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_comments PASSED [ 20%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_unchanged PASSED [ 20%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank PASSED [ 20%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gaia_plurals PASSED [ 20%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_duplicates PASSED [ 20%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gwt_plurals PASSED [ 20%] 618s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_help PASSED [ 20%] 618s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_help PASSED [ 20%] 618s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert PASSED [ 20%] 618s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_quotes PASSED [ 20%] 618s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment PASSED [ 20%] 618s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_dos_eol PASSED [ 20%] 618s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_double_string PASSED [ 20%] 618s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_popup PASSED [ 20%] 618s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_discardable PASSED [ 20%] 618s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_menuex PASSED [ 20%] 618s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_newlines PASSED [ 20%] 618s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_after PASSED [ 20%] 618s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_block_language PASSED [ 20%] 619s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_output_encoding PASSED [ 20%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_simpleunit PASSED [ 20%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_basic PASSED [ 20%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_multiline PASSED [ 20%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapednewlines PASSED [ 20%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedtabs PASSED [ 20%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedquotes PASSED [ 20%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_exclusions PASSED [ 20%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments PASSED [ 20%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingcomment PASSED [ 20%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecomment PASSED [ 20%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 20%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments PASSED [ 20%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingcomment PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingduplicatecomment PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingcomment PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_existingcomments PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_simpleunit PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_basic PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_multiline PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapednewlines PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedtabs PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedquotes PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_exclusions PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingcomment PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingcomment PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingduplicatecomment PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingcomment PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_existingcomments PASSED [ 21%] 619s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_help PASSED [ 21%] 619s tests/translate/convert/test_po2sub.py::TestPO2Sub::test_subrip PASSED [ 21%] 619s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_subrip PASSED [ 21%] 619s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_help PASSED [ 21%] 619s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_empty PASSED [ 21%] 619s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert PASSED [ 21%] 619s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_marked_untranslated PASSED [ 21%] 619s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_empty PASSED [ 21%] 619s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert PASSED [ 21%] 619s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_marked_untranslated PASSED [ 22%] 619s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_help PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_basic PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcelanguage PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_targetlanguage PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_multiline PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapednewlines PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedtabs PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedquotes PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_exclusions PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonascii PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonecomments PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_otherscomments PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcecomments PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_typecomments PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_basic PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcelanguage PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_targetlanguage PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_multiline PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapednewlines PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedtabs PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedquotes PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_exclusions PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonascii PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonecomments PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_otherscomments PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcecomments PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_typecomments PASSED [ 22%] 619s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_help PASSED [ 22%] 619s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simpleunit PASSED [ 22%] 619s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simple_unicode_unit PASSED [ 22%] 619s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fullunit PASSED [ 22%] 619s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fuzzyunit PASSED [ 22%] 619s tests/translate/convert/test_po2ts.py::TestPO2TS::test_obsolete PASSED [ 22%] 619s tests/translate/convert/test_po2ts.py::TestPO2TS::test_duplicates PASSED [ 23%] 619s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak PASSED [ 23%] 619s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak_consecutive PASSED [ 23%] 619s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simpleunit PASSED [ 23%] 619s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simple_unicode_unit PASSED [ 23%] 619s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fullunit PASSED [ 23%] 619s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fuzzyunit PASSED [ 23%] 619s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_obsolete PASSED [ 23%] 619s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_duplicates PASSED [ 23%] 619s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak PASSED [ 23%] 619s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak_consecutive PASSED [ 23%] 619s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_help PASSED [ 23%] 619s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_basic PASSED [ 23%] 619s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_nonascii PASSED [ 23%] 619s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_blank_handling PASSED [ 23%] 619s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_fuzzy_handling PASSED [ 23%] 619s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_obsolete_ignore PASSED [ 23%] 619s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_header_ignore PASSED [ 23%] 619s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_below_threshold PASSED [ 23%] 619s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_above_threshold PASSED [ 23%] 619s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_basic PASSED [ 23%] 619s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_nonascii PASSED [ 23%] 619s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_blank_handling PASSED [ 23%] 619s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_fuzzy_handling PASSED [ 23%] 619s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_obsolete_ignore PASSED [ 23%] 619s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_header_ignore PASSED [ 23%] 619s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_below_threshold PASSED [ 23%] 619s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_above_threshold PASSED [ 23%] 619s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_help PASSED [ 23%] 619s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_basic PASSED [ 23%] 619s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_unicode PASSED [ 23%] 619s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_ordering_serialize PASSED [ 23%] 619s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_markmin PASSED [ 23%] 619s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_minimal PASSED [ 23%] 619s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_basic PASSED [ 24%] 619s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_multiline PASSED [ 24%] 619s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapednewlines PASSED [ 24%] 619s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedtabs PASSED [ 24%] 619s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedquotes PASSED [ 24%] 619s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_locationcomments PASSED [ 24%] 619s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_othercomments PASSED [ 24%] 619s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_automaticcomments PASSED [ 24%] 619s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_header PASSED [ 24%] 619s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_fuzzy PASSED [ 24%] 619s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_germanic_plurals PASSED [ 24%] 619s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_funny_plurals PASSED [ 24%] 619s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_language_tags PASSED [ 24%] 619s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_variables PASSED [ 24%] 619s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_approved PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_empty_PO PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_no_templates PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple_output PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_translated PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_no_fuzzy PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_allow_fuzzy PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_nested PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_below_threshold PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_above_threshold PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_empty_PO PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_no_templates PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple_output PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_translated PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_no_fuzzy PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_allow_fuzzy PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_nested PASSED [ 24%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_below_threshold PASSED [ 25%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_above_threshold PASSED [ 25%] 619s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_help PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank_plurals PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_simple PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_messages_marked_fuzzy PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals_with_fuzzy_matching PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change XFAIL [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_change PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_and_whitespace_change PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_ambiguous_with_disambiguous PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes XFAIL [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently XFAIL [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_dont_duplicate PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_new_overides_old PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments_with_blank_comment_lines PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_commentlines PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgidcomments PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_with_msgidcomment PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_obsoleting_messages PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_not_obsoleting_empty_messages PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_new_before_obsolete PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_header_initialisation PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_typecomments PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt_multiline PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_location PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_id PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_msgid PASSED [ 25%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_migrate_msgidcomment_to_msgctxt PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_obsolete_msgctxt PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_small_strings PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank_plurals PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_simple PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_messages_marked_fuzzy PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change XFAIL [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_change PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_and_whitespace_change PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_ambiguous_with_disambiguous PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes XFAIL [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently XFAIL [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_new_overides_old PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments_with_blank_comment_lines PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_commentlines PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgidcomments PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_with_msgidcomment PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_obsoleting_messages PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_not_obsoleting_empty_messages PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_new_before_obsolete PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_header_initialisation PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_typecomments PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt_multiline PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_location PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_id PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_msgid PASSED [ 26%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_migrate_msgidcomment_to_msgctxt PASSED [ 27%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_obsolete_msgctxt PASSED [ 27%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_small_strings PASSED [ 27%] 619s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_help PASSED [ 27%] 619s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_no_endlines_added PASSED [ 27%] 619s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_uncomment_contributors PASSED [ 27%] 619s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_multiline_comment_newlines PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_simpleentry PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_convertprop PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_value_entry PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_separator_entry PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_end_of_string PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_start_of_value PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unicode PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_escaping PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_comments PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_comments PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_folding_accesskeys PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_dont_translate PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty_translated PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_newlines_in_value PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_header_comments PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unassociated_comment_order PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_x_header PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gaia_plurals PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_successive_gaia_plurals PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_duplicate_keys PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gwt_plurals PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_simpleentry PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_convertprop PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_value_entry PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_separator_entry PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_end_of_string PASSED [ 27%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_start_of_value PASSED [ 28%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unicode PASSED [ 28%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_escaping PASSED [ 28%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_comments PASSED [ 28%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_comments PASSED [ 28%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_folding_accesskeys PASSED [ 28%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_dont_translate PASSED [ 28%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty PASSED [ 28%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty_translated PASSED [ 28%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_newlines_in_value PASSED [ 28%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_header_comments PASSED [ 28%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unassociated_comment_order PASSED [ 28%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_x_header PASSED [ 28%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gaia_plurals PASSED [ 28%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_successive_gaia_plurals PASSED [ 28%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_duplicate_keys PASSED [ 28%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gwt_plurals PASSED [ 28%] 619s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_help PASSED [ 28%] 619s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_help PASSED [ 28%] 619s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert PASSED [ 28%] 619s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 PASSED [ 28%] 619s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong PASSED [ 28%] 619s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 PASSED [ 28%] 619s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex PASSED [ 28%] 619s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_simple PASSED [ 28%] 619s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_multiple_units PASSED [ 28%] 619s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_automaticcomments PASSED [ 28%] 619s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_translatorcomments PASSED [ 28%] 619s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_locations PASSED [ 28%] 619s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple PASSED [ 28%] 619s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_multiple_units PASSED [ 28%] 619s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_automaticcomments PASSED [ 28%] 619s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_translatorcomments PASSED [ 28%] 619s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_locations PASSED [ 29%] 619s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_help PASSED [ 29%] 619s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot PASSED [ 29%] 619s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po PASSED [ 29%] 619s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates PASSED [ 29%] 619s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_convert_empty PASSED [ 29%] 619s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_defaults PASSED [ 29%] 619s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_includeunused PASSED [ 29%] 619s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_convert_empty PASSED [ 29%] 619s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_defaults PASSED [ 29%] 619s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_includeunused PASSED [ 29%] 619s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_help PASSED [ 29%] 619s tests/translate/convert/test_ts2po.py::TestTS2PO::test_blank PASSED [ 29%] 619s tests/translate/convert/test_ts2po.py::TestTS2PO::test_basic PASSED [ 29%] 619s tests/translate/convert/test_ts2po.py::TestTS2PO::test_unfinished PASSED [ 29%] 619s tests/translate/convert/test_ts2po.py::TestTS2PO::test_multiline PASSED [ 29%] 619s tests/translate/convert/test_ts2po.py::TestTS2PO::test_obsolete PASSED [ 29%] 619s tests/translate/convert/test_ts2po.py::TestTS2PO::test_comment PASSED [ 29%] 619s tests/translate/convert/test_ts2po.py::TestTS2PO::test_extracomment PASSED [ 29%] 619s tests/translate/convert/test_ts2po.py::TestTS2PO::test_emptycontext PASSED [ 29%] 619s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_blank PASSED [ 29%] 619s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_basic PASSED [ 29%] 619s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_unfinished PASSED [ 29%] 619s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_multiline PASSED [ 29%] 619s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_obsolete PASSED [ 29%] 619s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_comment PASSED [ 29%] 619s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_extracomment PASSED [ 29%] 619s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_emptycontext PASSED [ 29%] 619s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_help PASSED [ 29%] 619s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_convert_empty PASSED [ 29%] 619s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_keep_duplicates PASSED [ 29%] 619s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_drop_duplicates PASSED [ 29%] 619s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_simple PASSED [ 29%] 619s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_multiple_units PASSED [ 29%] 619s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_carriage_return PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_merge PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_no_segmentation PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestDoku2po::test_convert_empty PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestDoku2po::test_keep_duplicates PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestDoku2po::test_drop_duplicates PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestDoku2po::test_basic PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestDoku2po::test_bullet_list PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestDoku2po::test_numbered_list PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestDoku2po::test_spacing PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestDoku2po::test_merge PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_convert_empty PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_keep_duplicates PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_drop_duplicates PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_simple PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_multiple_units PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_carriage_return PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_merge PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_no_segmentation PASSED [ 30%] 619s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_help PASSED [ 30%] 619s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_basic PASSED [ 30%] 619s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_unicode PASSED [ 30%] 619s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_markmin PASSED [ 30%] 619s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_help PASSED [ 30%] 619s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert PASSED [ 30%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_minimal PASSED [ 30%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_basic PASSED [ 30%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_translatorcomments PASSED [ 30%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_autocomment PASSED [ 30%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_locations PASSED [ 30%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_fuzzy PASSED [ 30%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_plurals PASSED [ 30%] 619s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_minimal PASSED [ 30%] 619s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_basic PASSED [ 30%] 619s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_translatorcomments PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_autocomment PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_locations PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_fuzzy PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_plurals PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_help PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_simple_convert PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_minimal PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_basic PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_translatorcomments PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_autocomment PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_locations PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_fuzzy PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_plurals PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_help PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po PASSED [ 31%] 619s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates PASSED [ 31%] 619s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_empty_YAML PASSED [ 31%] 619s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple_output PASSED [ 31%] 619s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple PASSED [ 31%] 619s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_nested PASSED [ 31%] 620s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates XFAIL [ 31%] 620s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_with_template PASSED [ 31%] 620s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_empty_YAML PASSED [ 31%] 620s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple_output PASSED [ 31%] 620s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple PASSED [ 31%] 620s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_nested PASSED [ 31%] 620s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates XFAIL [ 31%] 620s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_with_template PASSED [ 31%] 620s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_help PASSED [ 31%] 620s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_empty_target PASSED [ 31%] 620s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_ellipsis PASSED [ 32%] 620s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_spacestart_spaceend PASSED [ 32%] 620s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_start_capitals PASSED [ 32%] 620s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_end_punc PASSED [ 32%] 620s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_combinations PASSED [ 32%] 620s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_nothing_to_do PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_defaults PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_construct PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_accelerator_markers PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_messages PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_accelerators PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_acceleratedvariables XFAIL [ 32%] 620s tests/translate/filters/test_checks.py::test_acronyms PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_blank PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_brackets PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_compendiumconflicts PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_doublequoting PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_doublespacing PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_doublewords PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_endpunc PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_endwhitespace PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_escapes PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_newlines PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_tabs PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_filepaths PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_kdecomments PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_long PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_musttranslatewords XFAIL [ 32%] 620s tests/translate/filters/test_checks.py::test_notranslatewords PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_numbers PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_persian_numbers PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_bengali_numbers PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_arabic_numbers PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_assamese_numbers PASSED [ 32%] 620s tests/translate/filters/test_checks.py::test_options PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_printf PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_pythonbraceformat PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_puncspacing PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_purepunc PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_sentencecount PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_short PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_singlequoting PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_vietnamese_singlequoting PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time XFAIL [ 33%] 620s tests/translate/filters/test_checks.py::test_persian_quoting PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_simplecaps PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_spellcheck SKIPPED (Spe...) [ 33%] 620s tests/translate/filters/test_checks.py::test_startcaps PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_startpunc PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_startwhitespace PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_unchanged PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_untranslated PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_validchars PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_minimalchecker PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_reducedchecker PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_variables_kde PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_variables_gnome PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_variables_mozilla PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_variables_openoffice PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_variables_cclicense PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_variables_ios PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_xmltags PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags XFAIL [ 33%] 620s tests/translate/filters/test_checks.py::test_ooxmltags PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_functions PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_emails PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_urls PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_simpleplurals PASSED [ 33%] 620s tests/translate/filters/test_checks.py::test_nplurals PASSED [ 34%] 620s tests/translate/filters/test_checks.py::test_credits PASSED [ 34%] 620s tests/translate/filters/test_checks.py::test_gconf PASSED [ 34%] 620s tests/translate/filters/test_checks.py::test_validxml PASSED [ 34%] 620s tests/translate/filters/test_checks.py::test_hassuggestion PASSED [ 34%] 620s tests/translate/filters/test_checks.py::test_dialogsizes PASSED [ 34%] 620s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers PASSED [ 34%] 620s tests/translate/filters/test_checks.py::test_mozilla_no_accelerators_for_indic PASSED [ 34%] 620s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker PASSED [ 34%] 620s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source PASSED [ 34%] 620s tests/translate/filters/test_checks.py::test_ensure_bengali_languages_script_is_correct PASSED [ 34%] 620s tests/translate/filters/test_checks.py::test_category PASSED [ 34%] 620s tests/translate/filters/test_decoration.py::test_spacestart PASSED [ 34%] 620s tests/translate/filters/test_decoration.py::test_isvalidaccelerator PASSED [ 34%] 620s tests/translate/filters/test_decoration.py::test_find_marked_variables PASSED [ 34%] 620s tests/translate/filters/test_decoration.py::test_getnumbers PASSED [ 34%] 620s tests/translate/filters/test_decoration.py::test_getfunctions PASSED [ 34%] 620s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplepass PASSED [ 34%] 620s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplefail PASSED [ 34%] 620s tests/translate/filters/test_pofilter.py::TestPOFilter::test_variables_across_lines PASSED [ 34%] 620s tests/translate/filters/test_pofilter.py::TestPOFilter::test_ignore_if_already_marked PASSED [ 34%] 620s tests/translate/filters/test_pofilter.py::TestPOFilter::test_non_existant_check PASSED [ 34%] 620s tests/translate/filters/test_pofilter.py::TestPOFilter::test_list_all_tests PASSED [ 34%] 620s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_fuzzy PASSED [ 34%] 620s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_review PASSED [ 34%] 620s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isfuzzy PASSED [ 34%] 620s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isreview PASSED [ 34%] 620s tests/translate/filters/test_pofilter.py::TestPOFilter::test_notes PASSED [ 34%] 620s tests/translate/filters/test_pofilter.py::TestPOFilter::test_unicode PASSED [ 34%] 620s tests/translate/filters/test_pofilter.py::TestPOFilter::test_preconditions PASSED [ 34%] 620s tests/translate/filters/test_pofilter.py::TestPOFilter::test_msgid_comments PASSED [ 34%] 620s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplepass PASSED [ 34%] 620s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplefail PASSED [ 34%] 620s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_variables_across_lines PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_ignore_if_already_marked PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_non_existant_check PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_list_all_tests PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_fuzzy PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_review PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isfuzzy PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isreview PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_notes PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_unicode PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_preconditions PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplepass PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplefail PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_variables_across_lines PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_ignore_if_already_marked PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_non_existant_check PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_list_all_tests PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_notes PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_unicode PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_preconditions PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_fuzzy PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_review PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isfuzzy PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isreview PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplepass PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplefail PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_variables_across_lines PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_ignore_if_already_marked PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_non_existant_check PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_list_all_tests PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_fuzzy PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_review PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isfuzzy PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isreview PASSED [ 35%] 620s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_notes PASSED [ 36%] 620s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_unicode PASSED [ 36%] 620s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_preconditions PASSED [ 36%] 620s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_msgid_comments PASSED [ 36%] 620s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_cedillas PASSED [ 36%] 620s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_niciun PASSED [ 36%] 620s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_nicio PASSED [ 36%] 620s tests/translate/filters/test_prefilters.py::test_removekdecomments PASSED [ 36%] 620s tests/translate/filters/test_prefilters.py::test_filterwordswithpunctuation PASSED [ 36%] 620s tests/translate/lang/test_af.py::test_sentences PASSED [ 36%] 620s tests/translate/lang/test_af.py::test_capsstart PASSED [ 36%] 620s tests/translate/lang/test_af.py::test_transliterate_cyrillic PASSED [ 36%] 620s tests/translate/lang/test_am.py::test_punctranslate PASSED [ 36%] 620s tests/translate/lang/test_am.py::test_sentences PASSED [ 36%] 620s tests/translate/lang/test_ar.py::test_punctranslate PASSED [ 36%] 620s tests/translate/lang/test_ar.py::test_sentences PASSED [ 36%] 620s tests/translate/lang/test_common.py::test_characters PASSED [ 36%] 620s tests/translate/lang/test_common.py::test_words PASSED [ 36%] 620s tests/translate/lang/test_common.py::test_word_khmer XFAIL (ZWS is n...) [ 36%] 620s tests/translate/lang/test_common.py::test_sentences PASSED [ 36%] 620s tests/translate/lang/test_common.py::test_capsstart PASSED [ 36%] 620s tests/translate/lang/test_common.py::test_numstart PASSED [ 36%] 620s tests/translate/lang/test_common.py::test_punctranslate PASSED [ 36%] 620s tests/translate/lang/test_common.py::test_length_difference PASSED [ 36%] 620s tests/translate/lang/test_common.py::test_alter_length PASSED [ 36%] 620s tests/translate/lang/test_data.py::test_normalise_code PASSED [ 36%] 620s tests/translate/lang/test_data.py::test_simplify_to_common PASSED [ 36%] 620s tests/translate/lang/test_el.py::test_punctranslate PASSED [ 36%] 620s tests/translate/lang/test_el.py::test_sentences PASSED [ 36%] 620s tests/translate/lang/test_es.py::test_punctranslate PASSED [ 36%] 620s tests/translate/lang/test_es.py::test_sentences PASSED [ 36%] 620s tests/translate/lang/test_fa.py::test_punctranslate PASSED [ 36%] 620s tests/translate/lang/test_fa.py::test_sentences PASSED [ 36%] 620s tests/translate/lang/test_factory.py::test_getlanguage PASSED [ 36%] 620s tests/translate/lang/test_factory.py::test_get_all_languages PASSED [ 37%] 620s tests/translate/lang/test_fr.py::test_punctranslate PASSED [ 37%] 620s tests/translate/lang/test_fr.py::test_sentences PASSED [ 37%] 620s tests/translate/lang/test_hy.py::test_punctranslate PASSED [ 37%] 620s tests/translate/lang/test_hy.py::test_sentences PASSED [ 37%] 620s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_lang PASSED [ 37%] 620s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_store PASSED [ 37%] 620s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_bad_init_data PASSED [ 37%] 620s tests/translate/lang/test_ja.py::test_punctranslate PASSED [ 37%] 620s tests/translate/lang/test_ja.py::test_sentences PASSED [ 37%] 620s tests/translate/lang/test_km.py::test_punctranslate PASSED [ 37%] 620s tests/translate/lang/test_km.py::test_sentences PASSED [ 37%] 620s tests/translate/lang/test_ko.py::test_punctranslate PASSED [ 37%] 620s tests/translate/lang/test_ko.py::test_sentences PASSED [ 37%] 620s tests/translate/lang/test_ne.py::test_punctranslate PASSED [ 37%] 620s tests/translate/lang/test_ne.py::test_sentences PASSED [ 37%] 620s tests/translate/lang/test_nqo.py::test_punctranslate PASSED [ 37%] 620s tests/translate/lang/test_nqo.py::test_sentences PASSED [ 37%] 620s tests/translate/lang/test_or.py::test_punctranslate PASSED [ 37%] 620s tests/translate/lang/test_or.py::test_country_code PASSED [ 37%] 620s tests/translate/lang/test_or.py::test_sentences PASSED [ 37%] 620s tests/translate/lang/test_poedit.py::test_isocode PASSED [ 37%] 620s tests/translate/lang/test_ro.py::test_cedillas PASSED [ 37%] 620s tests/translate/lang/test_ro.py::test_niciun PASSED [ 37%] 620s tests/translate/lang/test_scn.py::test_italianisms PASSED [ 37%] 620s tests/translate/lang/test_scn.py::test_vocalism PASSED [ 37%] 620s tests/translate/lang/test_scn.py::test_suffixes PASSED [ 37%] 620s tests/translate/lang/test_team.py::test_simple PASSED [ 37%] 620s tests/translate/lang/test_th.py::test_punctranslate PASSED [ 37%] 620s tests/translate/lang/test_th.py::test_sentences PASSED [ 37%] 620s tests/translate/lang/test_tr.py::test_sentences PASSED [ 37%] 620s tests/translate/lang/test_uk.py::test_sentences PASSED [ 37%] 620s tests/translate/lang/test_vi.py::test_punctranslate PASSED [ 37%] 620s tests/translate/lang/test_vi.py::test_sentences PASSED [ 38%] 620s tests/translate/lang/test_zh.py::test_punctranslate PASSED [ 38%] 620s tests/translate/lang/test_zh.py::test_sentences PASSED [ 38%] 620s tests/translate/misc/test_deprecation.py::TestDeprecation::test_deprecated_decorator PASSED [ 38%] 620s tests/translate/misc/test_deprecation.py::TestDeprecation::test_no_deprecated_decorator PASSED [ 38%] 620s tests/translate/misc/test_dictutils.py::test_cidict_has_key PASSED [ 38%] 620s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor PASSED [ 38%] 620s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor_validation PASSED [ 38%] 620s tests/translate/misc/test_multistring.py::TestMultistring::test_repr PASSED [ 38%] 620s tests/translate/misc/test_multistring.py::TestMultistring::test_replace PASSED [ 38%] 620s tests/translate/misc/test_multistring.py::TestMultistring::test_comparison PASSED [ 38%] 620s tests/translate/misc/test_multistring.py::TestMultistring::test_coercion PASSED [ 38%] 620s tests/translate/misc/test_multistring.py::TestMultistring::test_unicode_coercion PASSED [ 38%] 620s tests/translate/misc/test_multistring.py::TestMultistring::test_list_coercion PASSED [ 38%] 620s tests/translate/misc/test_multistring.py::TestMultistring::test_multistring_hash PASSED [ 38%] 620s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_splitext PASSED [ 38%] 620s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_outputfile_receives_bytes PASSED [ 38%] 620s tests/translate/misc/test_progressbar.py::test_hashprogressbar PASSED [ 38%] 620s tests/translate/misc/test_quote.py::test_find_all PASSED [ 38%] 620s tests/translate/misc/test_quote.py::test_extract PASSED [ 38%] 620s tests/translate/misc/test_quote.py::test_extractwithoutquotes PASSED [ 38%] 620s tests/translate/misc/test_quote.py::test_extractwithoutquotes_passfunc PASSED [ 38%] 620s tests/translate/misc/test_quote.py::test_stripcomment PASSED [ 38%] 620s tests/translate/misc/test_quote.py::TestEncoding::test_javapropertiesencode PASSED [ 38%] 620s tests/translate/misc/test_quote.py::TestEncoding::test_java_utf8_properties_encode PASSED [ 38%] 620s tests/translate/misc/test_quote.py::TestEncoding::test_escapespace PASSED [ 38%] 620s tests/translate/misc/test_quote.py::TestEncoding::test_mozillaescapemarginspaces PASSED [ 38%] 620s tests/translate/misc/test_quote.py::TestEncoding::test_mozilla_control_escapes PASSED [ 38%] 620s tests/translate/misc/test_quote.py::TestEncoding::test_propertiesdecode PASSED [ 38%] 620s tests/translate/misc/test_quote.py::TestEncoding::test_controlchars PASSED [ 38%] 620s tests/translate/misc/test_quote.py::TestEncoding::test_properties_decode_slashu PASSED [ 38%] 620s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding PASSED [ 38%] 620s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_existing_entities PASSED [ 38%] 620s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_passthrough PASSED [ 38%] 620s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_nonentities PASSED [ 39%] 620s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_four_spaces PASSED [ 39%] 620s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_tab PASSED [ 39%] 620s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_distance PASSED [ 39%] 620s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_similarity PASSED [ 39%] 620s tests/translate/search/test_lshtein.py::TestLevenshtein::test_long_similarity PASSED [ 39%] 620s tests/translate/search/test_match.py::TestMatch::test_matching PASSED [ 39%] 620s tests/translate/search/test_match.py::TestMatch::test_multiple_store PASSED [ 39%] 620s tests/translate/search/test_match.py::TestMatch::test_extendtm PASSED [ 39%] 620s tests/translate/search/test_match.py::TestMatch::test_terminology PASSED [ 39%] 620s tests/translate/search/test_match.py::TestMatch::test_brackets PASSED [ 39%] 620s tests/translate/search/test_match.py::TestMatch::test_past_tences PASSED [ 39%] 620s tests/translate/search/test_match.py::TestMatch::test_space_mismatch PASSED [ 39%] 620s tests/translate/search/test_match.py::TestMatch::test_hyphen_mismatch PASSED [ 39%] 620s tests/translate/search/test_terminology.py::TestTerminology::test_basic PASSED [ 39%] 620s tests/translate/services/test_tmserver.py::TestTMServer::test_import PASSED [ 39%] 621s tests/translate/services/test_tmserver.py::TestTMServer::test_server PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_parse PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_tree PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_add PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_contains PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getitem PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getslice PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_iter PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_len PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_mul PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_offset PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_at_offset PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find_elems_with PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_flatten PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case1 PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case2 PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case3 PASSED [ 39%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case4 PASSED [ 40%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_insert PASSED [ 40%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_isleaf PASSED [ 40%] 621s tests/translate/storage/placeables/test_base.py::TestStringElem::test_prune PASSED [ 40%] 621s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_base_placeables PASSED [ 40%] 621s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables XFAIL [ 40%] 621s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables XFAIL [ 40%] 621s tests/translate/storage/placeables/test_general.py::test_placeable_numbers PASSED [ 40%] 621s tests/translate/storage/placeables/test_general.py::test_placeable_newline PASSED [ 40%] 621s tests/translate/storage/placeables/test_general.py::test_placeable_alt_attr PASSED [ 40%] 621s tests/translate/storage/placeables/test_general.py::test_placeable_qt_formatting PASSED [ 40%] 621s tests/translate/storage/placeables/test_general.py::test_placeable_camelcase PASSED [ 40%] 621s tests/translate/storage/placeables/test_general.py::test_placeable_space PASSED [ 40%] 621s tests/translate/storage/placeables/test_general.py::test_placeable_punctuation PASSED [ 40%] 621s tests/translate/storage/placeables/test_general.py::test_placeable_xml_entity PASSED [ 40%] 621s tests/translate/storage/placeables/test_general.py::test_placeable_xml_tag PASSED [ 40%] 621s tests/translate/storage/placeables/test_general.py::test_placeable_option PASSED [ 40%] 621s tests/translate/storage/placeables/test_general.py::test_placeable_file PASSED [ 40%] 621s tests/translate/storage/placeables/test_general.py::test_placeable_email PASSED [ 40%] 621s tests/translate/storage/placeables/test_general.py::test_placeable_caps PASSED [ 40%] 621s tests/translate/storage/placeables/test_general.py::test_placeable_formatting PASSED [ 40%] 621s tests/translate/storage/placeables/test_general.py::test_placeable_doubleat PASSED [ 40%] 621s tests/translate/storage/placeables/test_general.py::test_placeable_brace PASSED [ 40%] 621s tests/translate/storage/placeables/test_general.py::test_python_placeable PASSED [ 40%] 621s tests/translate/storage/placeables/test_lisa.py::test_xml_to_strelem PASSED [ 40%] 621s tests/translate/storage/placeables/test_lisa.py::test_xml_space PASSED [ 40%] 621s tests/translate/storage/placeables/test_lisa.py::test_chunk_list PASSED [ 40%] 621s tests/translate/storage/placeables/test_lisa.py::test_set_strelem_to_xml PASSED [ 40%] 621s tests/translate/storage/placeables/test_lisa.py::test_unknown_xml_placeable PASSED [ 40%] 621s tests/translate/storage/placeables/test_terminology.py::TestTerminologyPlaceable::test_simple_terminology PASSED [ 40%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_isfuzzy PASSED [ 40%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_create PASSED [ 40%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_eq PASSED [ 40%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escapes PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_difficult_escapes PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_note_sanity PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_target PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_get PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_set PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quotes_with_newline PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline_in_xml PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_twitter PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quote PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_question PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_double_space PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_leading_space PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_tailing_space PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_xml_entities PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote_newline PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_arrows PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link_and_text PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_blank_string PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_escape_message_with_newline PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_invalid_lang PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_quote PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_leading_space PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_trailing_space PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_with_ampersand PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_double_space PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_deep_double_space PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_complex_xml PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quoted_newlines PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline PASSED [ 41%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline_in_xml PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_twitter PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_question PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quote PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_space PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_space PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_newlines PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_xml_entities PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_code PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_arrows PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link_and_text PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_space PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_spaces PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_escaped_newline PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_escaped_newline PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_spaces PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_newline PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_many_quotes PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string_again PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_quotes_string PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_newline_in_string PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_not_translatable_string PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_newline PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_comments PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_quote PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space_quoted PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space_quoted PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_with_ampersand PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_double_space_quoted PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_deep_double_space_quoted PASSED [ 42%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_complex_xml PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unicode PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_unescaped PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_alone PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_full PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_escaped_percent PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_percent PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_quote PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unparied_quote PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_slash PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_ignored PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escaped_quote_end PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_create_blank PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_remove PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_find PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_parse PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_files PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_save PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_extensions PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_mimetypes PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translate PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_nonascii PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_default_handlings PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_invalid_filename PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_namespaces PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_serialize PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add_formatting PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_invalid_entity PASSED [ 43%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_indent PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_markup PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_edit PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_noedit PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_remove PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_set PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_others PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_quotes_set PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_g PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_namespace PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_zh_hk PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_b_zh_hk PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_missing_plural PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_removeunit PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata_text PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_prefix PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_rtl PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_tail PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translatable_marking PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_escaping PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_isfuzzy PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_create PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_eq PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_escapes PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_difficult_escapes PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_note_sanity PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_target PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_get PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_set PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_create_blank PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_add PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_remove PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_find PASSED [ 44%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_parse PASSED [ 45%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_files PASSED [ 45%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_save PASSED [ 45%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_extensions PASSED [ 45%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_mimetypes PASSED [ 45%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_translate PASSED [ 45%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_markup PASSED [ 45%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_nonascii PASSED [ 45%] 621s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_plural PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationUnit::test_isfuzzy PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationUnit::test_create PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationUnit::test_eq PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationUnit::test_target PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationUnit::test_escapes PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationUnit::test_difficult_escapes PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationUnit::test_note_sanity PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_get PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_set PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationStore::test_create_blank PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationStore::test_add PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationStore::test_remove PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationStore::test_find PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationStore::test_translate PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationStore::test_parse PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationStore::test_files PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationStore::test_save PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationStore::test_markup PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationStore::test_nonascii PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationStore::test_extensions PASSED [ 45%] 621s tests/translate/storage/test_base.py::TestTranslationStore::test_mimetypes PASSED [ 45%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_isfuzzy PASSED [ 45%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_create PASSED [ 45%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_eq PASSED [ 45%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_target PASSED [ 45%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_escapes PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_get PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_set PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_difficult_escapes PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_newlines PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_istranslated PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_note_sanity PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_create_blank PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_add PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_remove PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_find PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_translate PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_parse PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_files PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_save PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_markup PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_nonascii PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_extensions PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_mimetypes PASSED [ 46%] 621s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_checksum PASSED [ 46%] 621s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_isfuzzy PASSED [ 46%] 621s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_create PASSED [ 46%] 621s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_eq PASSED [ 46%] 621s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_target PASSED [ 46%] 621s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_escapes PASSED [ 46%] 621s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_difficult_escapes PASSED [ 46%] 621s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_note_sanity PASSED [ 46%] 621s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_get PASSED [ 46%] 621s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_set PASSED [ 46%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_create_blank PASSED [ 46%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_add PASSED [ 46%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_remove PASSED [ 46%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_find PASSED [ 46%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_translate PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_files PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_save PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_markup PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_nonascii PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_extensions PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_mimetypes PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_singlequoting PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8 PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_dialect PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_sig PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_default PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_location_is_parsed PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_context_is_parsed PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_newline PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse_sample PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_detection PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding PASSED [ 47%] 621s tests/translate/storage/test_csvl10n.py::TestCSV::test_corrupt PASSED [ 47%] 621s tests/translate/storage/test_directory.py::TestDirectory::test_created PASSED [ 47%] 621s tests/translate/storage/test_directory.py::TestDirectory::test_basic PASSED [ 47%] 621s tests/translate/storage/test_directory.py::TestDirectory::test_structure PASSED [ 47%] 621s tests/translate/storage/test_directory.py::TestDirectory::test_getunits PASSED [ 47%] 621s tests/translate/storage/test_dtd.py::test_roundtrip_quoting PASSED [ 47%] 621s tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases XFAIL [ 47%] 621s tests/translate/storage/test_dtd.py::test_quotefordtd PASSED [ 47%] 621s tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases XFAIL [ 47%] 621s tests/translate/storage/test_dtd.py::test_unquotefromdtd PASSED [ 47%] 621s tests/translate/storage/test_dtd.py::test_android_roundtrip_quoting PASSED [ 47%] 621s tests/translate/storage/test_dtd.py::test_quoteforandroid PASSED [ 47%] 621s tests/translate/storage/test_dtd.py::test_unquotefromandroid PASSED [ 47%] 621s tests/translate/storage/test_dtd.py::test_removeinvalidamp PASSED [ 47%] 621s tests/translate/storage/test_dtd.py::TestDTDUnit::test_isfuzzy PASSED [ 47%] 621s tests/translate/storage/test_dtd.py::TestDTDUnit::test_create PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTDUnit::test_eq PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTDUnit::test_escapes PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTDUnit::test_difficult_escapes PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTDUnit::test_note_sanity PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTDUnit::test_target PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_get PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_set PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_create_blank PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_add PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_remove PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_find PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_parse PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_files PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_save PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_extensions PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_mimetypes PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_translate PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_markup PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_nonascii PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_blanklines PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity_source PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_hashcomment_source PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_commentclosing PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_commententity PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_newlines_in_entity PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_conflate_comments PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_localisation_notes PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_in_source PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_order_in_source PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_comment_following XFAIL [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_comment_newline_space_closing PASSED [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting XFAIL [ 48%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_missing_quotes PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping_roundtrip PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_create_blank PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_add PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_remove PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_find PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_parse PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_files PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_save PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_extensions PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_mimetypes PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_translate PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_markup PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_nonascii PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape_parse_and_convert_back PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape PASSED [ 49%] 621s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape_parse_and_convert_back PASSED [ 49%] 621s tests/translate/storage/test_factory.py::TestPOFactory::test_getclass PASSED [ 49%] 621s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject_store PASSED [ 49%] 621s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject PASSED [ 49%] 621s tests/translate/storage/test_factory.py::TestPOFactory::test_get_noname_object PASSED [ 49%] 621s tests/translate/storage/test_factory.py::TestPOFactory::test_gzfile PASSED [ 49%] 621s tests/translate/storage/test_factory.py::TestPOFactory::test_bz2file PASSED [ 49%] 621s tests/translate/storage/test_factory.py::TestPOFactory::test_directory PASSED [ 49%] 621s tests/translate/storage/test_factory.py::TestXliffFactory::test_getclass PASSED [ 49%] 621s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject_store PASSED [ 49%] 621s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject PASSED [ 49%] 621s tests/translate/storage/test_factory.py::TestXliffFactory::test_get_noname_object PASSED [ 49%] 621s tests/translate/storage/test_factory.py::TestXliffFactory::test_gzfile PASSED [ 49%] 621s tests/translate/storage/test_factory.py::TestXliffFactory::test_bz2file PASSED [ 49%] 621s tests/translate/storage/test_factory.py::TestXliffFactory::test_directory PASSED [ 49%] 621s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getclass PASSED [ 50%] 621s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject_store PASSED [ 50%] 621s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject PASSED [ 50%] 621s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_get_noname_object PASSED [ 50%] 621s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_gzfile PASSED [ 50%] 621s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_bz2file PASSED [ 50%] 621s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_directory PASSED [ 50%] 621s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getclass PASSED [ 50%] 621s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject_store PASSED [ 50%] 621s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject PASSED [ 50%] 621s tests/translate/storage/test_factory.py::TestWordfastFactory::test_get_noname_object PASSED [ 50%] 621s tests/translate/storage/test_factory.py::TestWordfastFactory::test_gzfile PASSED [ 50%] 621s tests/translate/storage/test_factory.py::TestWordfastFactory::test_bz2file PASSED [ 50%] 621s tests/translate/storage/test_factory.py::TestWordfastFactory::test_directory PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_isfuzzy PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_create PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_eq PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_escapes PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_difficult_escapes PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_note_sanity PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_target PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_get PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_set PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_create_blank PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_add PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_remove PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_find PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_parse PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_files PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_save PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_extensions PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_mimetypes PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_translate PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_markup PASSED [ 50%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_nonascii PASSED [ 51%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_root_config_detect PASSED [ 51%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_detect PASSED [ 51%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_key_config_detect PASSED [ 51%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_mixed_ok PASSED [ 51%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_namespace_config_detect PASSED [ 51%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_four_spaces PASSED [ 51%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_tab PASSED [ 51%] 621s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_none_linearizes PASSED [ 51%] 621s tests/translate/storage/test_html.py::test_guess_encoding PASSED [ 51%] 621s tests/translate/storage/test_html.py::TestHTMLParsing::test_mismatched_tags PASSED [ 51%] 621s tests/translate/storage/test_html.py::TestHTMLParsing::test_self_closing_tags PASSED [ 51%] 621s tests/translate/storage/test_html.py::TestHTMLParsing::test_escaping_script_and_pre PASSED [ 51%] 621s tests/translate/storage/test_html.py::TestHTMLExtraction::test_strip_html PASSED [ 51%] 621s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_figcaption PASSED [ 51%] 621s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_caption_td_th PASSED [ 51%] 621s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_alt PASSED [ 51%] 621s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_title PASSED [ 51%] 621s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre PASSED [ 51%] 621s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre_code PASSED [ 51%] 621s tests/translate/storage/test_ini.py::TestINIUnit::test_isfuzzy PASSED [ 51%] 621s tests/translate/storage/test_ini.py::TestINIUnit::test_create PASSED [ 51%] 621s tests/translate/storage/test_ini.py::TestINIUnit::test_eq PASSED [ 51%] 621s tests/translate/storage/test_ini.py::TestINIUnit::test_escapes PASSED [ 51%] 621s tests/translate/storage/test_ini.py::TestINIUnit::test_difficult_escapes PASSED [ 51%] 621s tests/translate/storage/test_ini.py::TestINIUnit::test_note_sanity PASSED [ 51%] 621s tests/translate/storage/test_ini.py::TestINIUnit::test_target PASSED [ 51%] 621s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_get PASSED [ 51%] 621s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_set PASSED [ 51%] 621s tests/translate/storage/test_ini.py::TestINIStore::test_create_blank PASSED [ 51%] 621s tests/translate/storage/test_ini.py::TestINIStore::test_add PASSED [ 51%] 621s tests/translate/storage/test_ini.py::TestINIStore::test_remove PASSED [ 51%] 621s tests/translate/storage/test_ini.py::TestINIStore::test_find PASSED [ 51%] 621s tests/translate/storage/test_ini.py::TestINIStore::test_parse PASSED [ 51%] 621s tests/translate/storage/test_ini.py::TestINIStore::test_files PASSED [ 52%] 621s tests/translate/storage/test_ini.py::TestINIStore::test_save PASSED [ 52%] 621s tests/translate/storage/test_ini.py::TestINIStore::test_extensions PASSED [ 52%] 621s tests/translate/storage/test_ini.py::TestINIStore::test_mimetypes PASSED [ 52%] 621s tests/translate/storage/test_ini.py::TestINIStore::test_translate PASSED [ 52%] 621s tests/translate/storage/test_ini.py::TestINIStore::test_markup PASSED [ 52%] 621s tests/translate/storage/test_ini.py::TestINIStore::test_nonascii PASSED [ 52%] 621s tests/translate/storage/test_ini.py::TestINIStore::test_serialize PASSED [ 52%] 621s tests/translate/storage/test_ini.py::TestINIStore::test_rem PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_isfuzzy PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_create PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_eq PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_escapes PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_difficult_escapes PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_note_sanity PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_target PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_get PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_set PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_create_blank PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_remove PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_find PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_parse PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_files PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_save PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_extensions PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_mimetypes PASSED [ 52%] 621s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_translate PASSED [ 52%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_markup PASSED [ 52%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_nonascii PASSED [ 52%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_serialize PASSED [ 52%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_can_not_detect PASSED [ 52%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_error PASSED [ 52%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_filter PASSED [ 52%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_ordering PASSED [ 52%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_args PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_bom PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex_array PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_list_like PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_blank PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_types PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_null PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_isfuzzy PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_create PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_eq PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_escapes PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_difficult_escapes PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_note_sanity PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_target PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_get PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_set PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_serialize PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_ordering PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_array PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index_nested PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_nested_list_mixed PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_list_to_dict PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_complex_keys PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_other PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0]-expected0] PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0]-expected1] PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0][1][2][3]-expected2] PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test]selection-expected3] PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test][0]selection-expected4] PASSED [ 53%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0][test]selection-expected5] PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[-expected6] PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_dot_keys PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_isfuzzy PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_create PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_eq PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_escapes PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_difficult_escapes PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_note_sanity PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_target PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_get PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_set PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_create_blank PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_add PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_remove PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_find PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_parse PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_files PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_save PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_extensions PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_mimetypes PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_translate PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_markup PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_nonascii PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_dot_keys PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_leading_dot_keys PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize_no_description PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_set_target PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_placeholders PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_create_blank PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_add PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_remove PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_find PASSED [ 54%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_parse PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_files PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_save PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_extensions PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_mimetypes PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_translate PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_markup PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nonascii PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_serialize PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_units PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_plurals PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nested_array PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural_id PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_create_blank PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_add PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_remove PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_find PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_parse PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_files PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_save PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_extensions PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_mimetypes PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_translate PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_markup PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_nonascii PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals_missing PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_case_no_msg PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_complex_id PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_create_blank PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_add PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_remove PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_find PASSED [ 55%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_parse PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_files PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_save PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_extensions PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_mimetypes PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_translate PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_markup PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nonascii PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_serialize PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_units PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_plurals PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nested_array PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_new_plural PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_ru PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_create_blank PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_add PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_remove PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_find PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_parse PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_files PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_save PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_extensions PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_mimetypes PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_translate PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_markup PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nonascii PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_serialize PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_units PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_plurals PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nested_array PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_new_plural PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_ru PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_create_blank PASSED [ 56%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_add PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_remove PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_find PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_parse PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_files PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_save PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_extensions PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_mimetypes PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_translate PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_markup PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_nonascii PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals_missing PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_invalid PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_dot_keys PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_create_blank PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_add PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_remove PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_find PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_parse PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_files PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_save PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_extensions PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_mimetypes PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_translate PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_markup PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_nonascii PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_1 PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_2 PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_blank PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_missing PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_simplification PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_invalid PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_dot_keys PASSED [ 57%] 622s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_create_blank PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_add PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_remove PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_find PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_parse PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_files PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_save PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_extensions PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_mimetypes PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_translate PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_markup PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_nonascii PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_roundtrip PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_leading_dot_keys PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_create_blank PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_add PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_remove PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_find PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_parse PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_files PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_save PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_extensions PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_mimetypes PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_translate PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_markup PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_nonascii PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_roundtrip PASSED [ 58%] 622s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_leading_dot_keys PASSED [ 58%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_atx_heading PASSED [ 58%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_autolink PASSED [ 58%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_block_quote PASSED [ 58%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_block PASSED [ 58%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_span PASSED [ 58%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_atx_heading PASSED [ 58%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_document PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_list_item PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_escaped_character PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_hard_line_break PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_block PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_character_entities PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_span PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_image_embedded_in_link PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_collapsed_reference_link PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_full_reference_link PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_shortcut_reference_link PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_merging_of_adjacent_placeholders PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_block_tokens PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_list PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_basic_markup PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_only_whitespace_and_placeholders PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_placeholder_trimming PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image_no_title PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_link PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_text_paragraph PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_remove_placeholders_from_both_ends_of_translation_units PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_setext_heading PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_table_with_header PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_thematic_break PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_hard_line_break_in_translation_unit PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_missing_placeholder PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_duplicate_placeholder PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_extraneous_placeholder PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_reordered_placeholders PASSED [ 59%] 622s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_invalid_markdown_in_translation PASSED [ 59%] 622s tests/translate/storage/test_mo.py::TestMOUnit::test_isfuzzy PASSED [ 59%] 622s tests/translate/storage/test_mo.py::TestMOUnit::test_create PASSED [ 59%] 622s tests/translate/storage/test_mo.py::TestMOUnit::test_eq PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOUnit::test_target PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOUnit::test_escapes PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOUnit::test_difficult_escapes PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOUnit::test_note_sanity PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_get PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_set PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOUnit::test_context PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOFile::test_create_blank PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOFile::test_add PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOFile::test_remove PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOFile::test_find PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOFile::test_translate PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOFile::test_parse PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOFile::test_files PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOFile::test_save PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOFile::test_markup PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOFile::test_nonascii PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOFile::test_extensions PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOFile::test_mimetypes PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOFile::test_language PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOFile::test_context PASSED [ 60%] 622s tests/translate/storage/test_mo.py::TestMOFile::test_output SKIPPED [ 60%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_isfuzzy PASSED [ 60%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_create PASSED [ 60%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_eq PASSED [ 60%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_escapes PASSED [ 60%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_difficult_escapes PASSED [ 60%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_note_sanity PASSED [ 60%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_target PASSED [ 60%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_get PASSED [ 60%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_set PASSED [ 60%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_create_blank PASSED [ 60%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_add PASSED [ 60%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_remove PASSED [ 61%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_find PASSED [ 61%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_parse PASSED [ 61%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_files PASSED [ 61%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_save PASSED [ 61%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_extensions PASSED [ 61%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_mimetypes PASSED [ 61%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_translate PASSED [ 61%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_markup PASSED [ 61%] 622s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_nonascii PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[-] PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String-String] PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {OK}-String] PASSED [ 61%] 622s 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%] 622s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{ok}-String] PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{OK}-String] PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok} -String] PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_isfuzzy PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_create PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_eq PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_target PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_escapes PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_difficult_escapes PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_note_sanity PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_get PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_set PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_translate_but_same PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_untranslated PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_comments PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_copy_target PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_create_blank PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_add PASSED [ 61%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_remove PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_find PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_translate PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_parse PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_files PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_save PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_markup PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_extensions PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_mimetypes PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_nonascii PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_format_layout PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_crlf PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_active_flag PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_multiline_comments PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_template PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[--False] PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ -Source -True] PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok}-Source-True] PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok} -Source-True] PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[{ok}-Source-True] PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_headers PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_not_headers PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[0] PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[1] PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[2] PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[3] PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_tag_comments PASSED [ 62%] 622s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_maxlength PASSED [ 62%] 622s tests/translate/storage/test_omegat.py::TestOtUnit::test_isfuzzy PASSED [ 62%] 622s tests/translate/storage/test_omegat.py::TestOtUnit::test_create PASSED [ 62%] 622s tests/translate/storage/test_omegat.py::TestOtUnit::test_eq PASSED [ 62%] 622s tests/translate/storage/test_omegat.py::TestOtUnit::test_target PASSED [ 62%] 622s tests/translate/storage/test_omegat.py::TestOtUnit::test_escapes PASSED [ 62%] 622s tests/translate/storage/test_omegat.py::TestOtUnit::test_difficult_escapes PASSED [ 63%] 622s tests/translate/storage/test_omegat.py::TestOtUnit::test_note_sanity PASSED [ 63%] 622s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_get PASSED [ 63%] 622s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_set PASSED [ 63%] 622s tests/translate/storage/test_omegat.py::TestOtFile::test_create_blank PASSED [ 63%] 622s tests/translate/storage/test_omegat.py::TestOtFile::test_add PASSED [ 63%] 622s tests/translate/storage/test_omegat.py::TestOtFile::test_remove PASSED [ 63%] 622s tests/translate/storage/test_omegat.py::TestOtFile::test_find PASSED [ 63%] 622s tests/translate/storage/test_omegat.py::TestOtFile::test_translate PASSED [ 63%] 622s tests/translate/storage/test_omegat.py::TestOtFile::test_parse PASSED [ 63%] 622s tests/translate/storage/test_omegat.py::TestOtFile::test_files PASSED [ 63%] 622s tests/translate/storage/test_omegat.py::TestOtFile::test_save PASSED [ 63%] 622s tests/translate/storage/test_omegat.py::TestOtFile::test_markup PASSED [ 63%] 622s tests/translate/storage/test_omegat.py::TestOtFile::test_nonascii PASSED [ 63%] 622s tests/translate/storage/test_omegat.py::TestOtFile::test_mimetypes PASSED [ 63%] 622s tests/translate/storage/test_omegat.py::TestOtFile::test_extensions XFAIL [ 63%] 622s tests/translate/storage/test_oo.py::test_makekey PASSED [ 63%] 622s tests/translate/storage/test_oo.py::test_escape_help_text PASSED [ 63%] 622s tests/translate/storage/test_oo.py::TestOO::test_simpleentry PASSED [ 63%] 622s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_quickhelptest PASSED [ 63%] 622s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_title PASSED [ 63%] 622s tests/translate/storage/test_oo.py::TestOO::test_blankline PASSED [ 63%] 622s tests/translate/storage/test_oo.py::TestOO::test_fieldlength PASSED [ 63%] 622s tests/translate/storage/test_oo.py::TestOO::test_escapes PASSED [ 63%] 622s tests/translate/storage/test_php.py::test_php_escaping_single_quote PASSED [ 63%] 622s tests/translate/storage/test_php.py::test_php_escaping_double_quote PASSED [ 63%] 622s tests/translate/storage/test_php.py::TestPhpUnit::test_isfuzzy PASSED [ 63%] 622s tests/translate/storage/test_php.py::TestPhpUnit::test_create PASSED [ 63%] 622s tests/translate/storage/test_php.py::TestPhpUnit::test_eq PASSED [ 63%] 622s tests/translate/storage/test_php.py::TestPhpUnit::test_escapes PASSED [ 63%] 622s tests/translate/storage/test_php.py::TestPhpUnit::test_note_sanity PASSED [ 63%] 622s tests/translate/storage/test_php.py::TestPhpUnit::test_target PASSED [ 63%] 622s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_get PASSED [ 63%] 622s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_set PASSED [ 63%] 622s tests/translate/storage/test_php.py::TestPhpUnit::test_difficult_escapes PASSED [ 64%] 622s tests/translate/storage/test_php.py::TestPhpFile::test_create_blank PASSED [ 64%] 622s tests/translate/storage/test_php.py::TestPhpFile::test_add PASSED [ 64%] 622s tests/translate/storage/test_php.py::TestPhpFile::test_remove PASSED [ 64%] 622s tests/translate/storage/test_php.py::TestPhpFile::test_find PASSED [ 64%] 624s tests/translate/storage/test_php.py::TestPhpFile::test_parse PASSED [ 64%] 627s tests/translate/storage/test_php.py::TestPhpFile::test_files PASSED [ 64%] 630s tests/translate/storage/test_php.py::TestPhpFile::test_save PASSED [ 64%] 630s tests/translate/storage/test_php.py::TestPhpFile::test_extensions PASSED [ 64%] 630s tests/translate/storage/test_php.py::TestPhpFile::test_mimetypes PASSED [ 64%] 630s tests/translate/storage/test_php.py::TestPhpFile::test_translate PASSED [ 64%] 630s tests/translate/storage/test_php.py::TestPhpFile::test_markup PASSED [ 64%] 630s tests/translate/storage/test_php.py::TestPhpFile::test_nonascii PASSED [ 64%] 635s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_source PASSED [ 64%] 643s tests/translate/storage/test_php.py::TestPhpFile::test_spaces_in_name PASSED [ 64%] 648s tests/translate/storage/test_php.py::TestPhpFile::test_comment_definition PASSED [ 64%] 653s tests/translate/storage/test_php.py::TestPhpFile::test_comment_blocks PASSED [ 64%] 659s tests/translate/storage/test_php.py::TestPhpFile::test_comment_output PASSED [ 64%] 664s tests/translate/storage/test_php.py::TestPhpFile::test_comment_add PASSED [ 64%] 675s tests/translate/storage/test_php.py::TestPhpFile::test_multiline PASSED [ 64%] 691s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays PASSED [ 64%] 696s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_no_array_syntax PASSED [ 64%] 703s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_spaces PASSED [ 64%] 704s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_quotes PASSED [ 64%] 707s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_number_as_value PASSED [ 64%] 712s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_non_textual PASSED [ 64%] 717s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define PASSED [ 64%] 723s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define_with_spaces_before_key PASSED [ 64%] 728s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter PASSED [ 64%] 733s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter_and_before_key PASSED [ 64%] 738s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equal_delimiter PASSED [ 64%] 743s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equaldel_but_before_key PASSED [ 64%] 749s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_entries_with_quotes PASSED [ 64%] 754s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_comments_at_entry_line_end PASSED [ 65%] 759s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_double_slash_comments_before_entries PASSED [ 65%] 764s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_before_end_delimiter PASSED [ 65%] 770s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simpledefinition_spaces_before_end_delimiter PASSED [ 65%] 775s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_no_trailing_comma PASSED [ 65%] 780s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_space_before_comma PASSED [ 65%] 785s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_space_before_array_declaration PASSED [ 65%] 790s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_declared_in_a_single_line PASSED [ 65%] 793s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys PASSED [ 65%] 796s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys_assigned_to_array PASSED [ 65%] 801s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_no_keys PASSED [ 65%] 804s tests/translate/storage/test_php.py::TestPhpFile::test_assignment_in_line_where_multiline_comment_ends PASSED [ 65%] 807s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_using_short_array_syntax PASSED [ 65%] 812s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays PASSED [ 65%] 817s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_space_before_array_declaration PASSED [ 65%] 822s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_unnamed_nested_arrays PASSED [ 65%] 828s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_array_declaration_in_next_line PASSED [ 65%] 833s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_with_newline_after_delimiter PASSED [ 65%] 836s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_blank_entries PASSED [ 65%] 841s tests/translate/storage/test_php.py::TestPhpFile::test_slashstar_in_string PASSED [ 65%] 847s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_heredoc_syntax PASSED [ 65%] 852s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_after_define PASSED [ 65%] 854s tests/translate/storage/test_php.py::TestPhpFile::test_quotes PASSED [ 65%] 860s tests/translate/storage/test_php.py::TestPhpFile::test_concatenation PASSED [ 65%] 863s tests/translate/storage/test_php.py::TestPhpFile::test_serialize PASSED [ 65%] 868s tests/translate/storage/test_php.py::TestPhpFile::test_space_before_comma PASSED [ 65%] 873s tests/translate/storage/test_php.py::TestPhpFile::test_equals_in_id PASSED [ 65%] 878s tests/translate/storage/test_php.py::TestPhpFile::test_comma_in_string PASSED [ 65%] 884s tests/translate/storage/test_php.py::TestPhpFile::test_nowdoc PASSED [ 65%] 889s tests/translate/storage/test_php.py::TestPhpFile::test_plain_concatenation PASSED [ 65%] 894s tests/translate/storage/test_php.py::TestPhpFile::test_array_keys PASSED [ 65%] 899s tests/translate/storage/test_php.py::TestPhpFile::test_double_var PASSED [ 65%] 902s tests/translate/storage/test_php.py::TestPhpFile::test_return_array PASSED [ 65%] 905s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short PASSED [ 66%] 908s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short_quotes PASSED [ 66%] 908s tests/translate/storage/test_php.py::TestPhpFile::test_addunit PASSED [ 66%] 908s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_isfuzzy PASSED [ 66%] 908s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_create PASSED [ 66%] 908s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_eq PASSED [ 66%] 908s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_escapes PASSED [ 66%] 908s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_difficult_escapes PASSED [ 66%] 908s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_note_sanity PASSED [ 66%] 908s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_target PASSED [ 66%] 908s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_get PASSED [ 66%] 908s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_set PASSED [ 66%] 908s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_create_blank PASSED [ 66%] 908s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_add PASSED [ 66%] 908s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_remove PASSED [ 66%] 908s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_find PASSED [ 66%] 910s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_parse PASSED [ 66%] 913s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_files PASSED [ 66%] 915s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_save PASSED [ 66%] 915s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_extensions PASSED [ 66%] 915s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_mimetypes PASSED [ 66%] 915s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_translate PASSED [ 66%] 915s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_markup PASSED [ 66%] 915s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_nonascii PASSED [ 66%] 919s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_plurals PASSED [ 66%] 919s tests/translate/storage/test_po.py::test_roundtrip_quoting PASSED [ 66%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_isfuzzy PASSED [ 66%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_create PASSED [ 66%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_eq PASSED [ 66%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_target PASSED [ 66%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_escapes PASSED [ 66%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_difficult_escapes PASSED [ 66%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_note_sanity PASSED [ 66%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_rich_get PASSED [ 66%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_rich_set PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_istranslatable PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_locations PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_nongettext_location PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_adding_empty_note PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_markreview PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_errors PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_no_plural_settarget PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_wrapping_bug PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_extract_msgidcomments_from_text PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_isheader PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOUnit::test_buildfromunit PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_create_blank PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_add PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_remove PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_find PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_translate PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_parse PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_files PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_save PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_markup PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_nonascii PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_extensions PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_mimetypes PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_context_only PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_simpleentry PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_copy PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_parse_source_string PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_parse_file PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_unicode PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_plurals PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_plural_unicode PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_nongettext_location PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_percent_location PASSED [ 67%] 919s tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals XFAIL [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_empty_lines_notes PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_fuzzy PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated XFAIL [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_merging_automaticcomments PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_malformed_units PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_malformed_obsolete_units PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_uniforum_po PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_obsolete PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_obsolete_with_prev_msgid PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_header_escapes PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_plural PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgctxt PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgidcomments PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_multiline_obsolete PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_merge_duplicates PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_merge_mixed_sources PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_parse_context PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_parse_advanced_context PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_kde_context PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_broken_kde_context PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_id PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments_2 PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_final_slash PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_unfinished_lines PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_encoding_change PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_istranslated PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_wrapping PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_wrapping_cjk PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_wrap_emoji PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis PASSED [ 68%] 919s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis_long PASSED [ 69%] 919s tests/translate/storage/test_po.py::TestPOFile::test_wrap_gettext PASSED [ 69%] 919s tests/translate/storage/test_po.py::TestPOFile::test_msgidcomments PASSED [ 69%] 919s tests/translate/storage/test_po.py::TestPOFile::test_unicode_ids PASSED [ 69%] 919s tests/translate/storage/test_po.py::TestPOFile::test_syntax_error PASSED [ 69%] 919s tests/translate/storage/test_po.py::TestPOFile::test_invalid PASSED [ 69%] 919s tests/translate/storage/test_po.py::TestPOFile::test_wrapped_msgid PASSED [ 69%] 919s tests/translate/storage/test_po.py::TestPOFile::test_missing_plural PASSED [ 69%] 919s tests/translate/storage/test_pocommon.py::test_roundtrip_quote_plus PASSED [ 69%] 919s tests/translate/storage/test_poheader.py::test_parseheaderstring PASSED [ 69%] 919s tests/translate/storage/test_poheader.py::test_update PASSED [ 69%] 919s tests/translate/storage/test_poheader.py::test_po_dates PASSED [ 69%] 919s tests/translate/storage/test_poheader.py::test_timezones PASSED [ 69%] 919s tests/translate/storage/test_poheader.py::test_header_blank PASSED [ 69%] 919s tests/translate/storage/test_poheader.py::test_plural_equation PASSED [ 69%] 919s tests/translate/storage/test_poheader.py::test_plural_equation_across_lines PASSED [ 69%] 919s tests/translate/storage/test_poheader.py::test_updatecontributor PASSED [ 69%] 919s tests/translate/storage/test_poheader.py::test_updatecontributor_header PASSED [ 69%] 919s tests/translate/storage/test_poheader.py::test_language PASSED [ 69%] 919s tests/translate/storage/test_poheader.py::test_project PASSED [ 69%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_isfuzzy PASSED [ 69%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_create PASSED [ 69%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_eq PASSED [ 69%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_target PASSED [ 69%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_escapes PASSED [ 69%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_difficult_escapes PASSED [ 69%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_note_sanity PASSED [ 69%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_get PASSED [ 69%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_set PASSED [ 69%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_markreview PASSED [ 69%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_errors PASSED [ 69%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_accepted_control_chars PASSED [ 69%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_unaccepted_control_chars PASSED [ 69%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_plurals PASSED [ 69%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_ids PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_create_blank PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_remove PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_find PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_translate PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_files PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_save PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_markup PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_nonascii PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_extensions PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_mimetypes PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_basic PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_namespace PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_source PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_target PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_source PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_target PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_sourcelanguage PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage_multi PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_alttrans PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_fuzzy PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_xml_space PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parsing PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_entities PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_multiple_filenodes PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_indent PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add_target PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_closing_tags PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_context_groups PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_getlocations PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_addlocation PASSED [ 70%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_huge PASSED [ 71%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve_add PASSED [ 71%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse PASSED [ 71%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse_plural_alpha_id PASSED [ 71%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_notes PASSED [ 71%] 919s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_plural PASSED [ 71%] 919s tests/translate/storage/test_properties.py::test_find_delimiter_pos_simple PASSED [ 71%] 919s tests/translate/storage/test_properties.py::test_find_delimiter_pos_multiple PASSED [ 71%] 919s tests/translate/storage/test_properties.py::test_find_delimiter_pos_none PASSED [ 71%] 919s tests/translate/storage/test_properties.py::test_find_delimiter_pos_whitespace PASSED [ 71%] 919s tests/translate/storage/test_properties.py::test_find_delimiter_pos_escapes PASSED [ 71%] 919s tests/translate/storage/test_properties.py::test_is_line_continuation PASSED [ 71%] 919s tests/translate/storage/test_properties.py::test_key_strip PASSED [ 71%] 919s tests/translate/storage/test_properties.py::test_get_comment_one_line PASSED [ 71%] 919s tests/translate/storage/test_properties.py::test_get_comment_start PASSED [ 71%] 919s tests/translate/storage/test_properties.py::test_get_comment_end PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestPropUnit::test_isfuzzy PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestPropUnit::test_create PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestPropUnit::test_eq PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestPropUnit::test_escapes PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestPropUnit::test_difficult_escapes PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestPropUnit::test_note_sanity PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestPropUnit::test_target PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_get PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_set PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_create_blank PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_add PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_remove PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_find PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_parse PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_files PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_save PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_extensions PASSED [ 71%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_mimetypes PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_translate PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_markup PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_nonascii PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_quotes PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_simpledefinition PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition_source PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_reduce PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_increase PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_extra_plurals PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_non_plurals PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_encoding PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestGwtProp::test_other_plurals PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_create_blank PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_add PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_remove PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_find PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_parse PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_files PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_save PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_extensions PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_mimetypes PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_translate PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_markup PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_nonascii PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition_source PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_controlutf8_source PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_control_source PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_unicode_escaping PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_newlines_startend PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_space PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_whitespace_handling PASSED [ 72%] 919s tests/translate/storage/test_properties.py::TestProp::test_key_value_delimiters_simple PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_comments PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_latin1 PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_fullspec_delimiters PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_fullspec_escaped_key PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_fullspec_line_continuation PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_fullspec_key_without_value PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_mac_strings PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_utf_16_save PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_mac_multiline_strings PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_unicode PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_utf8 PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_newlines PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_multilines_comments PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments_dropping PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_quotes PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_equals PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_serialization PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_double_backslashes PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_override_encoding PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_trailing_comments PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_utf16_byte_order_mark PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_raise_ioerror_if_cannot_detect_encoding PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_utf8_byte_order_mark PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_joomla_set_target PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_joomla PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_joomla_escape PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_delimiter PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_value PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_multi_comments PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_serialize_note PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_serialize_long_note PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestProp::test_trailing_newlines PASSED [ 73%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_create_blank PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_add PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_remove PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_find PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_parse PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_files PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_save PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_extensions PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_mimetypes PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_translate PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_markup PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_nonascii PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_simpledefinition PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition_source PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote_and_argument PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_header_preserved PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_blank_line_before_comment_preserved PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWiki::test_deprecated_comments_preserved PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_create_blank PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_add PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_remove PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_find PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_parse PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_files PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_save PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_extensions PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_mimetypes PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_markup PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_nonascii PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_simpledefinition PASSED [ 74%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition_source PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote_and_argument PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_encoded_html PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_cleaning_attributes PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate_source PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_create_blank PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_add PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_find PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_extensions PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_mimetypes PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_translate PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_markup PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_nonascii PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_simpledefinition PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_parse PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_files PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_save PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_cleaning_attributes PASSED [ 75%] 919s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove XFAIL [ 75%] 919s tests/translate/storage/test_pypo.py::TestHelpers::test_unescape PASSED [ 75%] 919s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo PASSED [ 75%] 919s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo_escaped_quotes PASSED [ 75%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isfuzzy PASSED [ 75%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_create PASSED [ 75%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_eq PASSED [ 75%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_target PASSED [ 75%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_escapes PASSED [ 75%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_difficult_escapes PASSED [ 75%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_note_sanity PASSED [ 75%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_get PASSED [ 75%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_set PASSED [ 75%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_istranslatable PASSED [ 75%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_locations PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_nongettext_location PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_adding_empty_note PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_markreview PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_errors PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_no_plural_settarget PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrapping_bug PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_extract_msgidcomments_from_text PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isheader PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_buildfromunit PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plurals PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plural_reduction PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes_withcomments PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_firstlines PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_newlines PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_max_line_length PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_slash PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_spacing_max_line PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_create_blank PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_add PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_remove PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_find PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_translate PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_files PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_save PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_markup PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nonascii PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_extensions PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mimetypes PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_context_only PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_simpleentry PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_copy PASSED [ 76%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_source_string PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_file PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plurals PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plural_unicode PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nongettext_location PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_percent_location PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals XFAIL [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_empty_lines_notes PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_fuzzy PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated XFAIL [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merging_automaticcomments PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_units PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_obsolete_units PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_uniforum_po PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete_with_prev_msgid PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_header_escapes PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_plural PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgctxt PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgidcomments PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_multiline_obsolete PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_mixed_sources PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_context PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_advanced_context PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_context PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_broken_kde_context PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_id PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments_2 PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_final_slash PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unfinished_lines PASSED [ 77%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_encoding_change PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_istranslated PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping_cjk PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_emoji PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis_long PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_gettext PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_msgidcomments PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_ids PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_syntax_error PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapped_msgid PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_missing_plural PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_combine_msgidcomments PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates_msgctxt PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_blanks PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_output_str_unicode PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_posections PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_typecomments PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unassociated_comments PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_header PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_prevmsgid_parse PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_newlines PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unix_newlines PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mac_newlines PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_header PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_comment PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_bom PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_long_msgidcomments PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_incomplete PASSED [ 78%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_invalid PASSED [ 79%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_write PASSED [ 79%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment XFAIL [ 79%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_typecomment PASSED [ 79%] 919s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_custom PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtUnit::test_isfuzzy PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtUnit::test_create PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtUnit::test_eq PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtUnit::test_target PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtUnit::test_escapes PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtUnit::test_difficult_escapes PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtUnit::test_note_sanity PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_get PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_set PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtFile::test_create_blank PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtFile::test_find PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtFile::test_translate PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtFile::test_markup PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtFile::test_extensions PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtFile::test_mimetypes PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtFile::test_parse PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtFile::test_save PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtFile::test_files PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtFile::test_nonascii PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtFile::test_add PASSED [ 79%] 919s tests/translate/storage/test_qm.py::TestQtFile::test_remove PASSED [ 79%] 919s tests/translate/storage/test_qph.py::TestQphUnit::test_isfuzzy PASSED [ 79%] 919s tests/translate/storage/test_qph.py::TestQphUnit::test_create PASSED [ 79%] 919s tests/translate/storage/test_qph.py::TestQphUnit::test_eq PASSED [ 79%] 919s tests/translate/storage/test_qph.py::TestQphUnit::test_target PASSED [ 79%] 919s tests/translate/storage/test_qph.py::TestQphUnit::test_escapes PASSED [ 79%] 919s tests/translate/storage/test_qph.py::TestQphUnit::test_difficult_escapes PASSED [ 79%] 919s tests/translate/storage/test_qph.py::TestQphUnit::test_note_sanity PASSED [ 79%] 919s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_get PASSED [ 79%] 919s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_set PASSED [ 80%] 919s tests/translate/storage/test_qph.py::TestQphFile::test_create_blank PASSED [ 80%] 919s tests/translate/storage/test_qph.py::TestQphFile::test_add PASSED [ 80%] 919s tests/translate/storage/test_qph.py::TestQphFile::test_remove PASSED [ 80%] 919s tests/translate/storage/test_qph.py::TestQphFile::test_find PASSED [ 80%] 919s tests/translate/storage/test_qph.py::TestQphFile::test_translate PASSED [ 80%] 919s tests/translate/storage/test_qph.py::TestQphFile::test_parse PASSED [ 80%] 919s tests/translate/storage/test_qph.py::TestQphFile::test_files PASSED [ 80%] 919s tests/translate/storage/test_qph.py::TestQphFile::test_save PASSED [ 80%] 919s tests/translate/storage/test_qph.py::TestQphFile::test_markup PASSED [ 80%] 919s tests/translate/storage/test_qph.py::TestQphFile::test_nonascii PASSED [ 80%] 919s tests/translate/storage/test_qph.py::TestQphFile::test_extensions PASSED [ 80%] 919s tests/translate/storage/test_qph.py::TestQphFile::test_mimetypes PASSED [ 80%] 919s tests/translate/storage/test_qph.py::TestQphFile::test_basic PASSED [ 80%] 919s tests/translate/storage/test_qph.py::TestQphFile::test_source PASSED [ 80%] 919s tests/translate/storage/test_qph.py::TestQphFile::test_target PASSED [ 80%] 919s tests/translate/storage/test_qph.py::TestQphFile::test_language PASSED [ 80%] 919s tests/translate/storage/test_rc.py::test_escaping PASSED [ 80%] 919s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_comments PASSED [ 80%] 919s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_textinclude PASSED [ 80%] 919s tests/translate/storage/test_rc.py::TestRcFile::test_parse_dialog PASSED [ 80%] 919s tests/translate/storage/test_rc.py::TestRcFile::test_parse_stringtable PASSED [ 80%] 919s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_lf PASSED [ 80%] 919s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_crlf PASSED [ 80%] 919s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_cr PASSED [ 80%] 919s tests/translate/storage/test_rc.py::TestRcFile::test_parse_no_language PASSED [ 80%] 920s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude PASSED [ 80%] 920s tests/translate/storage/test_rc.py::TestRcFile::test_multiline PASSED [ 80%] 920s tests/translate/storage/test_rc.py::TestRcFile::test_str PASSED [ 80%] 920s tests/translate/storage/test_rc.py::TestRcFile::test_empty PASSED [ 80%] 920s tests/translate/storage/test_rc.py::TestRcFile::test_utf_8 PASSED [ 80%] 920s tests/translate/storage/test_rc.py::TestRcFile::test_utf_16 PASSED [ 80%] 920s tests/translate/storage/test_rc.py::TestRcFile::test_comment PASSED [ 80%] 920s tests/translate/storage/test_rc.py::TestRcFile::test_stringtables PASSED [ 80%] 920s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude_appstudio PASSED [ 81%] 920s tests/translate/storage/test_rc.py::TestRcFile::test_id_whitespace PASSED [ 81%] 920s tests/translate/storage/test_rc.py::TestRcFile::test_menu_comment PASSED [ 81%] 920s tests/translate/storage/test_rc.py::TestRcFile::test_decompiled PASSED [ 81%] 920s tests/translate/storage/test_rc.py::TestRcFile::test_quotes PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_isfuzzy PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_create PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_eq PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_escapes PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_difficult_escapes PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_note_sanity PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_target PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_get PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_set PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_create_blank PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_add PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_remove PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_find PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_parse PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_files PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_save PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_extensions PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_mimetypes PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_translate PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_markup PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_nonascii PASSED [ 81%] 920s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_roundtrip PASSED [ 81%] 920s tests/translate/storage/test_resx.py::TestRESXUnit::test_isfuzzy PASSED [ 81%] 920s tests/translate/storage/test_resx.py::TestRESXUnit::test_create PASSED [ 81%] 920s tests/translate/storage/test_resx.py::TestRESXUnit::test_eq PASSED [ 81%] 920s tests/translate/storage/test_resx.py::TestRESXUnit::test_escapes PASSED [ 81%] 920s tests/translate/storage/test_resx.py::TestRESXUnit::test_difficult_escapes PASSED [ 81%] 920s tests/translate/storage/test_resx.py::TestRESXUnit::test_note_sanity PASSED [ 81%] 920s tests/translate/storage/test_resx.py::TestRESXUnit::test_target PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_get PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_set PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_isfuzzy PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_create PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_eq PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_escapes PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_difficult_escapes PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_note_sanity PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_target PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_get PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_set PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit_comment PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXfile::test_create_blank PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXfile::test_add PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXfile::test_remove PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXfile::test_find PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXfile::test_parse PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXfile::test_files PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXfile::test_save PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXfile::test_extensions PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXfile::test_mimetypes PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXfile::test_translate PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXfile::test_markup PASSED [ 82%] 920s tests/translate/storage/test_resx.py::TestRESXfile::test_nonascii PASSED [ 82%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_isfuzzy PASSED [ 82%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_create PASSED [ 82%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq PASSED [ 82%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_escapes PASSED [ 82%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_difficult_escapes PASSED [ 82%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_note_sanity PASSED [ 82%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_target PASSED [ 82%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_get PASSED [ 82%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_set PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_source PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq_formatvaluetype PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_innerkey PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_create_blank PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_remove PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_find PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_parse PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_files PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_save PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_extensions PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_mimetypes PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_translate PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_markup PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_nonascii PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_serialize PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_default_handlings PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_base_filename PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_plural_zero_always_set PASSED [ 83%] 920s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add_unit PASSED [ 83%] 920s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_isfuzzy PASSED [ 83%] 920s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_create PASSED [ 83%] 920s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_eq PASSED [ 83%] 920s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_escapes PASSED [ 83%] 920s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_difficult_escapes PASSED [ 83%] 920s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_target PASSED [ 83%] 920s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_get PASSED [ 83%] 920s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_set PASSED [ 83%] 920s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity XFAIL [ 83%] 920s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_create_blank PASSED [ 83%] 920s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_add PASSED [ 83%] 920s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_remove PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_find PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_parse PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_files PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_save PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_extensions PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_mimetypes PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_translate PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_markup PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_nonascii PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_create_blank PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_add PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_remove PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_find PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_parse PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_files PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_save PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_extensions PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_mimetypes PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_translate PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_markup PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_nonascii PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_create_blank PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_add PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_remove PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_find PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_parse PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_files PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_save PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_extensions PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_mimetypes PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_translate PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_markup PASSED [ 84%] 920s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_nonascii PASSED [ 85%] 920s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_create_blank PASSED [ 85%] 920s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_add PASSED [ 85%] 920s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_remove PASSED [ 85%] 920s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_find PASSED [ 85%] 920s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_parse PASSED [ 85%] 920s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_files PASSED [ 85%] 920s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_save PASSED [ 85%] 920s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_extensions PASSED [ 85%] 920s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_mimetypes PASSED [ 85%] 920s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_translate PASSED [ 85%] 920s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_markup PASSED [ 85%] 920s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_nonascii PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXUnit::test_isfuzzy PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXUnit::test_create PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXUnit::test_eq PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXUnit::test_target PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXUnit::test_escapes PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXUnit::test_difficult_escapes PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXUnit::test_note_sanity PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_get PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_set PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_create_blank PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_add PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_remove PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_find PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_translate PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_parse PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_files PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_save PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_markup PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_nonascii PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_extensions PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_mimetypes PASSED [ 85%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_basic PASSED [ 86%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_source PASSED [ 86%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_target PASSED [ 86%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_setid PASSED [ 86%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_indent PASSED [ 86%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_descrip PASSED [ 86%] 920s tests/translate/storage/test_tbx.py::TestTBXfile::test_note_from PASSED [ 86%] 920s tests/translate/storage/test_tiki.py::TestTikiUnit::test_locations PASSED [ 86%] 920s tests/translate/storage/test_tiki.py::TestTikiUnit::test_to_unicode PASSED [ 86%] 920s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_simple PASSED [ 86%] 920s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_encode PASSED [ 86%] 920s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_locations PASSED [ 86%] 920s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_ignore_extras PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnit::test_isfuzzy PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnit::test_create PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnit::test_eq PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnit::test_target PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnit::test_escapes PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnit::test_difficult_escapes PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnit::test_note_sanity PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_get PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_set PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_isfuzzy PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_create PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_eq PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_target PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_escapes PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_difficult_escapes PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_note_sanity PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_get PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_set PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXfile::test_create_blank PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXfile::test_add PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXfile::test_remove PASSED [ 86%] 920s tests/translate/storage/test_tmx.py::TestTMXfile::test_find PASSED [ 87%] 920s tests/translate/storage/test_tmx.py::TestTMXfile::test_parse PASSED [ 87%] 920s tests/translate/storage/test_tmx.py::TestTMXfile::test_files PASSED [ 87%] 920s tests/translate/storage/test_tmx.py::TestTMXfile::test_save PASSED [ 87%] 920s tests/translate/storage/test_tmx.py::TestTMXfile::test_markup PASSED [ 87%] 920s tests/translate/storage/test_tmx.py::TestTMXfile::test_nonascii PASSED [ 87%] 920s tests/translate/storage/test_tmx.py::TestTMXfile::test_extensions PASSED [ 87%] 920s tests/translate/storage/test_tmx.py::TestTMXfile::test_mimetypes PASSED [ 87%] 920s tests/translate/storage/test_tmx.py::TestTMXfile::test_translate PASSED [ 87%] 920s tests/translate/storage/test_tmx.py::TestTMXfile::test_addtranslation PASSED [ 87%] 920s tests/translate/storage/test_tmx.py::TestTMXfile::test_withcomment PASSED [ 87%] 920s tests/translate/storage/test_tmx.py::TestTMXfile::test_withnewlines PASSED [ 87%] 920s tests/translate/storage/test_tmx.py::TestTMXfile::test_xmlentities PASSED [ 87%] 920s tests/translate/storage/test_tmx.py::TestTMXfile::test_controls_cleaning PASSED [ 87%] 920s tests/translate/storage/test_trados.py::test_unescape PASSED [ 87%] 920s tests/translate/storage/test_trados.py::test_escape PASSED [ 87%] 920s tests/translate/storage/test_ts.py::TestTS::test_construct PASSED [ 87%] 920s tests/translate/storage/test_ts2.py::TestTSUnit::test_isfuzzy PASSED [ 87%] 920s tests/translate/storage/test_ts2.py::TestTSUnit::test_create PASSED [ 87%] 920s tests/translate/storage/test_ts2.py::TestTSUnit::test_eq PASSED [ 87%] 920s tests/translate/storage/test_ts2.py::TestTSUnit::test_target PASSED [ 87%] 920s tests/translate/storage/test_ts2.py::TestTSUnit::test_escapes PASSED [ 87%] 920s tests/translate/storage/test_ts2.py::TestTSUnit::test_difficult_escapes PASSED [ 87%] 920s tests/translate/storage/test_ts2.py::TestTSUnit::test_note_sanity PASSED [ 87%] 920s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_get PASSED [ 87%] 920s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_set PASSED [ 87%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_create_blank PASSED [ 87%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_add PASSED [ 87%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_remove PASSED [ 87%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_find PASSED [ 87%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_translate PASSED [ 87%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_parse PASSED [ 87%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_files PASSED [ 87%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_save PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_markup PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_nonascii PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_extensions PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_mimetypes PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_basic PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_source PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_target PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_plurals PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_nplural PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_language PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_edit PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_obsolete PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_locations PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_merge_with_fuzzies PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_getid PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_backnforth PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_context PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_roundtrip_context PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_edit_missing_translation PASSED [ 88%] 920s tests/translate/storage/test_ts2.py::TestTSfile::test_missing_source PASSED [ 88%] 920s tests/translate/storage/test_txt.py::TestTxtUnit::test_isfuzzy PASSED [ 88%] 920s tests/translate/storage/test_txt.py::TestTxtUnit::test_create PASSED [ 88%] 920s tests/translate/storage/test_txt.py::TestTxtUnit::test_eq PASSED [ 88%] 920s tests/translate/storage/test_txt.py::TestTxtUnit::test_escapes PASSED [ 88%] 920s tests/translate/storage/test_txt.py::TestTxtUnit::test_difficult_escapes PASSED [ 88%] 920s tests/translate/storage/test_txt.py::TestTxtUnit::test_note_sanity PASSED [ 88%] 920s tests/translate/storage/test_txt.py::TestTxtUnit::test_target PASSED [ 88%] 920s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_get PASSED [ 88%] 920s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_set PASSED [ 88%] 920s tests/translate/storage/test_txt.py::TestTxtFile::test_create_blank PASSED [ 88%] 920s tests/translate/storage/test_txt.py::TestTxtFile::test_add PASSED [ 88%] 920s tests/translate/storage/test_txt.py::TestTxtFile::test_remove PASSED [ 88%] 920s tests/translate/storage/test_txt.py::TestTxtFile::test_find PASSED [ 88%] 920s tests/translate/storage/test_txt.py::TestTxtFile::test_parse PASSED [ 89%] 920s tests/translate/storage/test_txt.py::TestTxtFile::test_files PASSED [ 89%] 920s tests/translate/storage/test_txt.py::TestTxtFile::test_save PASSED [ 89%] 920s tests/translate/storage/test_txt.py::TestTxtFile::test_extensions PASSED [ 89%] 920s tests/translate/storage/test_txt.py::TestTxtFile::test_mimetypes PASSED [ 89%] 920s tests/translate/storage/test_txt.py::TestTxtFile::test_translate PASSED [ 89%] 920s tests/translate/storage/test_txt.py::TestTxtFile::test_markup PASSED [ 89%] 920s tests/translate/storage/test_txt.py::TestTxtFile::test_nonascii PASSED [ 89%] 920s tests/translate/storage/test_txt.py::TestTxtFile::test_simpleblock PASSED [ 89%] 920s tests/translate/storage/test_txt.py::TestTxtFile::test_multipleblocks PASSED [ 89%] 920s tests/translate/storage/test_txt.py::TestTxtFile::test_no_segmentation PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxUnit::test_isfuzzy PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxUnit::test_create PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxUnit::test_eq PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxUnit::test_target PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxUnit::test_escapes PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxUnit::test_difficult_escapes PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxUnit::test_note_sanity PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_get PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_set PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxFile::test_create_blank PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxFile::test_add PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxFile::test_remove PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxFile::test_find PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxFile::test_translate PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxFile::test_parse PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxFile::test_files PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxFile::test_save PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxFile::test_markup PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxFile::test_nonascii PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxFile::test_extensions PASSED [ 89%] 920s tests/translate/storage/test_utx.py::TestUtxFile::test_mimetypes PASSED [ 89%] 920s tests/translate/storage/test_wordfast.py::TestWFTime::test_timestring PASSED [ 89%] 920s tests/translate/storage/test_wordfast.py::TestWFTime::test_time PASSED [ 89%] 920s tests/translate/storage/test_wordfast.py::TestWFUnit::test_isfuzzy PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFUnit::test_create PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFUnit::test_eq PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFUnit::test_target PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFUnit::test_escapes PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFUnit::test_note_sanity PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_get PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_set PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFUnit::test_difficult_escapes PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFUnit::test_wordfast_escaping PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFUnit::test_newlines PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFUnit::test_language_setting PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFUnit::test_istranslated PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFFile::test_create_blank PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFFile::test_add PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFFile::test_remove PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFFile::test_find PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFFile::test_translate PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFFile::test_parse PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFFile::test_files PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFFile::test_save PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFFile::test_markup PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFFile::test_nonascii PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFFile::test_extensions PASSED [ 90%] 920s tests/translate/storage/test_wordfast.py::TestWFFile::test_mimetypes PASSED [ 90%] 920s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_isfuzzy PASSED [ 90%] 920s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_create PASSED [ 90%] 920s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_eq PASSED [ 90%] 920s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_target PASSED [ 90%] 920s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_escapes PASSED [ 90%] 920s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_difficult_escapes PASSED [ 90%] 920s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_note_sanity PASSED [ 90%] 920s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_get PASSED [ 90%] 920s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_set PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_markreview PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_errors PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_accepted_control_chars PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_unaccepted_control_chars PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_create_blank PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_remove PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_find PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_translate PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parse PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_files PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_save PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_markup PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_nonascii PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_extensions PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_mimetypes PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_basic PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_namespace PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_source PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_target PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_source PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_target PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_sourcelanguage PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage_multi PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_notes PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_alttrans PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_fuzzy PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_xml_space PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parsing PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_entities PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_multiple_filenodes PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_indent PASSED [ 91%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add_target PASSED [ 92%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve PASSED [ 92%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_closing_tags PASSED [ 92%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_context_groups PASSED [ 92%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_getlocations PASSED [ 92%] 920s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_addlocation PASSED [ 92%] 921s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_huge PASSED [ 92%] 921s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve_add PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_isfuzzy PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_create PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_eq PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_escapes PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_difficult_escapes PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_note_sanity PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_target PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_get PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_set PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_getlocations PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_create_blank PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_find PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_files PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_save PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_extensions PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_mimetypes PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_translate PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_markup PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nonascii PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_serialize PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit_unicode PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse_unicode_list PASSED [ 92%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_ordering PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_initial_comments PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_string_key PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nested PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_multiline PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_boolean PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_integer PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_no_quote_strings PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_double_quote_strings PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_single_quote_strings PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_double_quote_strings PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_single_quote_strings PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_escaped_double_quotes PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_newlines PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_list PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_dictionary PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_key_nesting PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add_to_mepty PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty_key PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dict_in_list PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dump_args PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_anchors PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_tagged_scalar PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_numeric PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_remove PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_special PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_quotes_roundtrip PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_create_blank PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_remove PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_find PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_parse PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_files PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_save PASSED [ 93%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_extensions PASSED [ 94%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_mimetypes PASSED [ 94%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_translate PASSED [ 94%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_markup PASSED [ 94%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_nonascii PASSED [ 94%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_list PASSED [ 94%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby PASSED [ 94%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_wrong PASSED [ 94%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_invalid_value PASSED [ 94%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural PASSED [ 94%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_empty PASSED [ 94%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_anchors PASSED [ 94%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_type_change PASSED [ 94%] 921s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_add PASSED [ 94%] 921s tests/translate/storage/test_zip.py::TestZIPFile::test_created PASSED [ 94%] 921s tests/translate/storage/test_zip.py::TestZIPFile::test_basic PASSED [ 94%] 921s tests/translate/storage/test_zip.py::TestZIPFile::test_structure PASSED [ 94%] 921s tests/translate/storage/test_zip.py::TestZIPFile::test_getunits PASSED [ 94%] 921s tests/translate/storage/xml_extract/test_misc.py::test_reduce_tree PASSED [ 94%] 921s tests/translate/storage/xml_extract/test_misc.py::test_compose_mappings PASSED [ 94%] 921s tests/translate/storage/xml_extract/test_misc.py::test_parse_tag PASSED [ 94%] 921s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath_component PASSED [ 94%] 921s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath PASSED [ 94%] 921s tests/translate/storage/xml_extract/test_unit_tree.py::test__add_unit_to_tree PASSED [ 94%] 921s tests/translate/storage/xml_extract/test_xpath_breadcrumb.py::test_breadcrumb PASSED [ 94%] 921s tests/translate/tools/test_help.py::test_help[build_tmdb] SKIPPED (S...) [ 94%] 921s tests/translate/tools/test_help.py::test_help[phppo2pypo] SKIPPED (S...) [ 94%] 921s tests/translate/tools/test_help.py::test_help[poclean] SKIPPED (Skip...) [ 94%] 921s tests/translate/tools/test_help.py::test_help[pocompile] SKIPPED (Sk...) [ 94%] 921s tests/translate/tools/test_help.py::test_help[poconflicts] SKIPPED (...) [ 94%] 921s tests/translate/tools/test_help.py::test_help[pocount] SKIPPED (Skip...) [ 94%] 921s tests/translate/tools/test_help.py::test_help[podebug] SKIPPED (Skip...) [ 94%] 921s tests/translate/tools/test_help.py::test_help[pogrep] SKIPPED (Skip ...) [ 94%] 921s tests/translate/tools/test_help.py::test_help[pomerge] SKIPPED (Skip...) [ 94%] 921s tests/translate/tools/test_help.py::test_help[porestructure] SKIPPED [ 95%] 921s tests/translate/tools/test_help.py::test_help[posegment] SKIPPED (Sk...) [ 95%] 921s tests/translate/tools/test_help.py::test_help[poswap] SKIPPED (Skip ...) [ 95%] 921s tests/translate/tools/test_help.py::test_help[poterminology] SKIPPED [ 95%] 921s tests/translate/tools/test_help.py::test_help[pretranslate] SKIPPED [ 95%] 921s tests/translate/tools/test_help.py::test_help[pydiff] SKIPPED (Skip ...) [ 95%] 921s tests/translate/tools/test_help.py::test_help[pypo2phppo] SKIPPED (S...) [ 95%] 921s tests/translate/tools/test_junitmsgfmt.py::test_output[failure] PASSED [ 95%] 921s tests/translate/tools/test_junitmsgfmt.py::test_output[untranslated] PASSED [ 95%] 921s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_single_po PASSED [ 95%] 921s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_plural_po PASSED [ 95%] 921s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_single_po PASSED [ 95%] 921s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_plural_po PASSED [ 95%] 921s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_help PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_zero PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_one PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_two PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::TestCount::test_punctuation_divides_words PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::TestCount::test_xml_tags PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::TestCount::test_newlines PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::TestCount::test_variables_are_words PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::TestCount::test_plurals PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde XFAIL [ 95%] 921s tests/translate/tools/test_pocount.py::TestCount::test_msgid_blank PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::TestPOCount::test_translated PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzy PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslated PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::TestPOCount::test_total PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::TestPOCount::test_translatedsourcewords PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzysourcewords PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslatedsourcewords PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::TestPOCount::test_totalsourcewords PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-csv] PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-full] PASSED [ 95%] 921s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-strings] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-words] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-csv] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-full] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-strings] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-words] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-csv] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-full] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-strings] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-words] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-csv] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-full] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-strings] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-words] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_cases[po-file] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_cases[po-file-fuzzy] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_cases[po-file-csv] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_cases[xliff-states-yes] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_cases[xliff-states-no] PASSED [ 96%] 921s tests/translate/tools/test_pocount.py::test_error_cases[mutually-exclusive] PASSED [ 96%] 922s tests/translate/tools/test_pocount.py::test_error_cases[missing-file] PASSED [ 96%] 922s tests/translate/tools/test_pocount.py::test_error_cases[no-args] PASSED [ 96%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_ignore_gtk PASSED [ 96%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_keep_target PASSED [ 96%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_blank PASSED [ 96%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_en PASSED [ 96%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_xxx PASSED [ 96%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_bracket PASSED [ 96%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode PASSED [ 96%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_at_placeholders PASSED [ 96%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_single_brace_placeholders PASSED [ 96%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_double_brace_placeholders PASSED [ 96%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_html PASSED [ 96%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_multiple_styles_of_placeholder PASSED [ 97%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped PASSED [ 97%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_at_placeholders PASSED [ 97%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_single_brace_placeholders PASSED [ 97%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_double_brace_placeholders PASSED [ 97%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_html PASSED [ 97%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_multiple_styles_of_placeholder PASSED [ 97%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified PASSED [ 97%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_at_placeholders PASSED [ 97%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_single_brace_placeholders PASSED [ 97%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_double_brace_placeholders PASSED [ 97%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_html PASSED [ 97%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_multiple_styles_of_placeholder PASSED [ 97%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_chef PASSED [ 97%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_po_variables PASSED [ 97%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_xliff_rewrite PASSED [ 97%] 922s tests/translate/tools/test_podebug.py::TestPODebug::test_hash PASSED [ 97%] 922s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgid PASSED [ 97%] 922s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgstr PASSED [ 97%] 922s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations PASSED [ 97%] 922s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_comments PASSED [ 97%] 922s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations_with_comment_enabled PASSED [ 97%] 922s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_searchstring PASSED [ 97%] 922s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_regex_searchstring PASSED [ 97%] 922s tests/translate/tools/test_pogrep.py::TestPOGrep::test_keep_translations PASSED [ 97%] 922s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_normalise PASSED [ 97%] 922s tests/translate/tools/test_pogrep.py::TestXLiffGrep::test_simplegrep PASSED [ 97%] 922s tests/translate/tools/test_pomerge.py::test_str2bool PASSED [ 97%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_mergesore_bad_data PASSED [ 97%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge PASSED [ 97%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge_no_locations PASSED [ 97%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_replacemerge PASSED [ 97%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_blanks PASSED [ 97%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_fuzzies PASSED [ 97%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_locations PASSED [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_with_locations PASSED [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_no_locations PASSED [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_reflowed_source_comments PASSED [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_comments_with_blank_lines PASSED [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dont_delete_unassociated_comments PASSED [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_trailing_newlines PASSED [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_minor_start_and_end_of_sentence_changes PASSED [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_last_entry_in_a_file PASSED [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs XFAIL [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_comments_layout PASSED [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dos2unix PASSED [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_xliff PASSED [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_po_into_xliff PASSED [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_po PASSED [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_dont_merge_kde_comments_found_in_translation PASSED [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_untranslated_with_kde_disambiguation PASSED [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_header_entries PASSED [ 98%] 922s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_different_locations PASSED [ 98%] 922s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_simple PASSED [ 98%] 922s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_punctuation PASSED [ 98%] 922s tests/translate/tools/test_poterminology.py::TestPOTerminology::test_term_extraction PASSED [ 98%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_pretranslatepo_blank PASSED [ 98%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_simple PASSED [ 98%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_messages_marked_fuzzy PASSED [ 98%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals_with_fuzzy_matching PASSED [ 98%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change XFAIL [ 98%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_change PASSED [ 98%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_and_whitespace_change PASSED [ 98%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes XFAIL [ 98%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently XFAIL [ 98%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_dont_duplicate PASSED [ 98%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_new_overides_old PASSED [ 98%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments_with_blank_comment_lines PASSED [ 98%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_empty_commentlines PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgidcomments PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_resurect_obsolete_messages PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_typecomments PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_xliff_states PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_pretranslatepo_blank PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_simple PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_messages_marked_fuzzy PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change XFAIL [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_change PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_and_whitespace_change PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes XFAIL [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently XFAIL [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_new_overides_old PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments_with_blank_comment_lines PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_empty_commentlines PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgidcomments PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_resurect_obsolete_messages PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_typecomments PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_xliff_states PASSED [ 99%] 922s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_help PASSED [ 99%] 922s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_single_po PASSED [ 99%] 922s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_plural_po PASSED [ 99%] 922s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_single_po PASSED [ 99%] 922s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_plural_po PASSED [ 99%] 922s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_help PASSED [ 99%] 922s tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff SKIPPED [ 99%] 922s tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff SKIPPED [100%] 922s 922s =============================== warnings summary =============================== 922s tests/translate/storage/test_cpo.py:15 922s Warning: 922s Module 'translate.storage.cpo' was found, but when imported by pytest it raised: 922s ImportError('gettext PO library not found') 922s In pytest 9.1 this warning will become an error by default. 922s You can fix the underlying problem, or alternatively overwrite this behavior and silence this warning by passing exc_type=ImportError explicitly. 922s See https://docs.pytest.org/en/stable/deprecations.html#pytest-importorskip-default-behavior-regarding-importerror 922s 922s tests/odf_xliff/test_odf_xliff.py::test_roundtrip 922s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.TWiM34/autopkgtest_tmp/tests/odf_xliff/test_2.odt'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid 922s Warning: unclosed file <_io.TextIOWrapper name='TestAndroid2POCommand_test_convertandroid/en.po' mode='r' encoding='UTF-8'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 922s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 922s Warning: unclosed file <_io.TextIOWrapper name='TestCSV2POCommand_test_columnorder/test.po' mode='r' encoding='UTF-8'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot 922s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_pot/simple.pot'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po 922s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po 922s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_po/simple.po'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates 922s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_remove_duplicates/simple.po'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf 922s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_xlf/simple.xlf'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 922s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 922s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_columnorder/test.csv' mode='r' encoding='UTF-8'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context 922s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_context/test.csv' mode='r' encoding='UTF-8'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing 922s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey 922s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey 922s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing 922s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey 922s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey 922s Warning: Could not find accesskey for key.accesskey 922s 922s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 922s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file 922s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten 922s Warning: unclosed file <_io.BufferedReader name='translation/file1.po'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 922s Warning: unclosed file <_io.BufferedWriter name='translated/file1.html'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert 922s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.TWiM34/autopkgtest_tmp/tests/translate/convert/test.idml'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po 922s Warning: unclosed file <_io.BufferedReader name='translation.po'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp 922s Warning: unclosed file <_io.FileIO name='input.oo' mode='rb' closefd=True> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp 922s Warning: unclosed file <_io.FileIO name='output.oo' mode='wb' closefd=True> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey 922s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey 922s Warning: Could not find accesskey for prop.accesskey 922s 922s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert 922s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert/simple.po'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 922s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf16/simple.po'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 922s Warning: unclosed file <_io.BufferedWriter name='simple.po'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 922s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 922s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_wrong/simple.po'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 922s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf8/simple.po'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex 922s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_menuex/simple.po'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot 922s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_pot/simple.pot'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po 922s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_po/simple.po'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates 922s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_remove_duplicates/simple.po'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 922s Warning: unclosed file <_io.BufferedWriter name='simple.odt'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 922s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.TWiM34/autopkgtest_tmp/tests/translate/convert/test.odt'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename 922s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_preserve_filename/snippet.xlf'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot 922s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_pot/simple.pot'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po 922s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_po/simple.po'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates 922s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_remove_duplicates/simple.po'> 922s Enable tracemalloc to get traceback where the object was allocated. 922s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 922s 922s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers 922s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers 922s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker 922s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source 922s Warning: The 'u' type code is deprecated and will be removed in Python 3.16 922s 922s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 922s Warning: DTD parse error: :1:36:FATAL:PARSER:ERR_ENTITY_NOT_FINISHED: xmlParseEntityDecl: entity test.me not terminated 922s 922s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 922s Warning: DTD file '' does not validate 922s 922s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 922s --------------------------- snapshot report summary ---------------------------- 922s 23 snapshots passed. 922s =========================== short test summary info ============================ 922s SKIPPED [1] tests/translate/storage/test_cpo.py:15: could not import 'translate.storage.cpo': gettext PO library not found 922s SKIPPED [1] tests/translate/storage/test_fluent.py:29: could not import 'translate.storage.fluent': No module named 'fluent' 922s SKIPPED [1] tests/translate/filters/test_checks.py:1429: Spell checking for af is not available 922s SKIPPED [1] tests/translate/storage/test_mo.py:498: Skip testing command line tools 922s SKIPPED [16] tests/translate/tools/test_help.py:16: Skip testing command line tools 922s SKIPPED [1] tests/xliff_conformance/test_xliff_conformance.py:49: Skip testing command line tools 922s SKIPPED [1] tests/xliff_conformance/test_xliff_conformance.py:58: Skip testing command line tools 922s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence - Not Implemented 922s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence - Not Implemented 922s XFAIL tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template - Need to review if we want this behaviour 922s XFAIL tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template - Need to review if we want this behaviour 922s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change - Not implemented - review if this is even correct 922s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes - Not Implemented - needs review 922s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently - Not Implemented - review if this is even correct 922s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change - Not implemented - review if this is even correct 922s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes - Not Implemented - needs review 922s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently - Not Implemented - review if this is even correct 922s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates - This is invalid YAML document 922s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates - This is invalid YAML document 922s XFAIL tests/translate/filters/test_checks.py::test_acceleratedvariables - Accelerated variables needs a better implementation 922s XFAIL tests/translate/filters/test_checks.py::test_musttranslatewords - FIXME: All fails() tests are not working 922s XFAIL tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time - Bug #3408 922s XFAIL tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags - Bug #3506 922s 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. 922s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables - Test needs fixing, disabled for now 922s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables - Test needs fixing, disabled for now 922s XFAIL tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases - Not Implemented 922s XFAIL tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases - Not Implemented 922s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_comment_following - Not Implemented 922s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting - Not Implemented 922s 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 922s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals - Not Implemented 922s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 922s XFAIL tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove - removal not working in full page 922s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals - Not Implemented 922s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 922s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment - Not sure if this can not be parsed gracefully 922s XFAIL tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity - Not Implemented 922s XFAIL tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde - Support commented out pending removal 922s XFAIL tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs - Not Implemented 922s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change - Not Implemented 922s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes - Not Implemented 922s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently - Not Implemented 922s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change - Not Implemented 922s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes - Not Implemented 922s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently - Not Implemented 922s ==== 3309 passed, 22 skipped, 39 xfailed, 51 warnings in 666.04s (0:11:06) ===== 923s autopkgtest [16:31:29]: test python3-translate: -----------------------] 923s python3-translate PASS 923s autopkgtest [16:31:29]: test python3-translate: - - - - - - - - - - results - - - - - - - - - - 923s autopkgtest [16:31:29]: test python3-translate-commands: preparing testbed 979s autopkgtest [16:32:25]: testbed dpkg architecture: amd64 979s autopkgtest [16:32:25]: testbed apt version: 2.9.29 979s autopkgtest [16:32:25]: @@@@@@@@@@@@@@@@@@@@ test bed setup 979s autopkgtest [16:32:25]: testbed release detected to be: plucky 979s autopkgtest [16:32:25]: updating testbed package index (apt update) 979s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [110 kB] 979s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 979s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 979s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 979s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [3120 B] 979s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [732 kB] 979s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [73.1 kB] 979s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [14.5 kB] 979s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main i386 Packages [87.9 kB] 979s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 Packages [104 kB] 979s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/restricted amd64 Packages [7984 B] 979s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/restricted i386 Packages [2412 B] 979s Get:13 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 Packages [696 kB] 979s Get:14 http://ftpmaster.internal/ubuntu plucky-proposed/universe i386 Packages [260 kB] 979s Get:15 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse i386 Packages [3484 B] 979s Get:16 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse amd64 Packages [11.9 kB] 980s Fetched 2107 kB in 0s (6097 kB/s) 981s Reading package lists... 981s + lsb_release --codename --short 981s + RELEASE=plucky 981s + cat 981s + [ plucky != trusty ] 981s + DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y --allow-downgrades -o Dpkg::Options::=--force-confnew dist-upgrade 981s Reading package lists... 981s Building dependency tree... 981s Reading state information... 982s Calculating upgrade... 982s The following NEW packages will be installed: 982s libapt-pkg7.0 982s The following packages will be upgraded: 982s apt apt-utils iproute2 libgpgme11t64 liblsof0 libp11-kit0 lsof rsyslog 982s sysvinit-utils 982s 9 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 982s Need to get 5425 kB of archives. 982s After this operation, 4076 kB of additional disk space will be used. 982s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 sysvinit-utils amd64 3.14-1ubuntu1 [35.7 kB] 982s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 libapt-pkg7.0 amd64 2.9.30 [1131 kB] 982s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 apt amd64 2.9.30 [1434 kB] 982s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 apt-utils amd64 2.9.30 [222 kB] 982s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 iproute2 amd64 6.13.0-1ubuntu1 [1277 kB] 982s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 libp11-kit0 amd64 0.25.5-2ubuntu3 [311 kB] 982s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 rsyslog amd64 8.2412.0-2ubuntu1 [555 kB] 982s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 lsof amd64 4.99.4+dfsg-1 [245 kB] 982s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 liblsof0 amd64 4.99.4+dfsg-1 [59.6 kB] 982s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 libgpgme11t64 amd64 1.24.2-1ubuntu1 [155 kB] 983s Preconfiguring packages ... 983s Fetched 5425 kB in 0s (39.5 MB/s) 983s (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 ... 108925 files and directories currently installed.) 983s Preparing to unpack .../sysvinit-utils_3.14-1ubuntu1_amd64.deb ... 983s Unpacking sysvinit-utils (3.14-1ubuntu1) over (3.08-6ubuntu3) ... 983s Setting up sysvinit-utils (3.14-1ubuntu1) ... 983s Selecting previously unselected package libapt-pkg7.0:amd64. 983s (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 ... 108925 files and directories currently installed.) 983s Preparing to unpack .../libapt-pkg7.0_2.9.30_amd64.deb ... 983s Unpacking libapt-pkg7.0:amd64 (2.9.30) ... 984s Setting up libapt-pkg7.0:amd64 (2.9.30) ... 984s (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 ... 108974 files and directories currently installed.) 984s Preparing to unpack .../archives/apt_2.9.30_amd64.deb ... 984s Unpacking apt (2.9.30) over (2.9.29) ... 984s Setting up apt (2.9.30) ... 985s (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 ... 108974 files and directories currently installed.) 985s Preparing to unpack .../0-apt-utils_2.9.30_amd64.deb ... 985s Unpacking apt-utils (2.9.30) over (2.9.29) ... 985s Preparing to unpack .../1-iproute2_6.13.0-1ubuntu1_amd64.deb ... 985s Unpacking iproute2 (6.13.0-1ubuntu1) over (6.10.0-2ubuntu1) ... 985s Preparing to unpack .../2-libp11-kit0_0.25.5-2ubuntu3_amd64.deb ... 985s Unpacking libp11-kit0:amd64 (0.25.5-2ubuntu3) over (0.25.5-2ubuntu2) ... 985s Preparing to unpack .../3-rsyslog_8.2412.0-2ubuntu1_amd64.deb ... 985s Unpacking rsyslog (8.2412.0-2ubuntu1) over (8.2412.0-1ubuntu1) ... 985s Preparing to unpack .../4-lsof_4.99.4+dfsg-1_amd64.deb ... 985s Unpacking lsof (4.99.4+dfsg-1) over (4.99.3+dfsg-2) ... 986s Preparing to unpack .../5-liblsof0_4.99.4+dfsg-1_amd64.deb ... 986s Unpacking liblsof0 (4.99.4+dfsg-1) over (4.99.3+dfsg-2) ... 986s Preparing to unpack .../6-libgpgme11t64_1.24.2-1ubuntu1_amd64.deb ... 986s Unpacking libgpgme11t64:amd64 (1.24.2-1ubuntu1) over (1.24.1-4ubuntu1) ... 986s Setting up apt-utils (2.9.30) ... 986s Setting up liblsof0 (4.99.4+dfsg-1) ... 986s Setting up iproute2 (6.13.0-1ubuntu1) ... 986s Setting up rsyslog (8.2412.0-2ubuntu1) ... 986s info: The user `syslog' is already a member of `adm'. 988s Setting up libp11-kit0:amd64 (0.25.5-2ubuntu3) ... 988s Setting up lsof (4.99.4+dfsg-1) ... 988s Setting up libgpgme11t64:amd64 (1.24.2-1ubuntu1) ... 988s Processing triggers for man-db (2.13.0-1) ... 990s Processing triggers for libc-bin (2.40-4ubuntu1) ... 990s + rm /etc/apt/preferences.d/force-downgrade-to-release.pref 990s + /usr/lib/apt/apt-helper analyze-pattern ?true 991s + + sed s/\./\\./g 991s uname -r 991s + running_kernel_pattern=^linux-.*6\.12\.0-15-generic.* 991s + apt list ?obsolete 991s + tail -n+2 991s + grep+ cut -d/ -f1 991s -v ^linux-.*6\.12\.0-15-generic.* 992s + true 992s + obsolete_pkgs= 992s + DEBIAN_FRONTEND=noninteractive eatmydata apt-get -y purge --autoremove 992s Reading package lists... 993s Building dependency tree... 993s Reading state information... 993s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 993s + grep -q trusty /etc/lsb-release 993s + [ ! -d /usr/share/doc/unattended-upgrades ] 993s + [ ! -d /usr/share/doc/lxd ] 993s + [ ! -d /usr/share/doc/lxd-client ] 993s + [ ! -d /usr/share/doc/snapd ] 993s + type iptables 993s + cat 993s + chmod 755 /etc/rc.local 993s + . /etc/rc.local 993s + iptables -w -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu 993s + iptables -A OUTPUT -d 10.255.255.1/32 -p tcp -j DROP 993s + iptables -A OUTPUT -d 10.255.255.2/32 -p tcp -j DROP 993s + uname -m 993s + [ x86_64 = ppc64le ] 993s + [ -d /run/systemd/system ] 993s + systemd-detect-virt --quiet --vm 993s + mkdir -p /etc/systemd/system/systemd-random-seed.service.d/ 993s + cat 993s + grep -q lz4 /etc/initramfs-tools/initramfs.conf 993s + echo COMPRESS=lz4 993s autopkgtest [16:32:39]: upgrading testbed (apt dist-upgrade and autopurge) 993s Reading package lists... 994s Building dependency tree... 994s Reading state information... 994s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 995s Starting 2 pkgProblemResolver with broken count: 0 995s Done 995s Entering ResolveByKeep 996s 996s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 996s Reading package lists... 996s Building dependency tree... 996s Reading state information... 997s Starting pkgProblemResolver with broken count: 0 997s Starting 2 pkgProblemResolver with broken count: 0 997s Done 998s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 998s autopkgtest [16:32:44]: rebooting testbed after setup commands that affected boot 1001s autopkgtest-virt-ssh: WARNING: ssh connection failed. Retrying in 3 seconds... 1015s Reading package lists... 1015s Building dependency tree... 1015s Reading state information... 1016s Starting pkgProblemResolver with broken count: 0 1016s Starting 2 pkgProblemResolver with broken count: 0 1016s Done 1017s The following NEW packages will be installed: 1017s dictionaries-common emacsen-common gettext hunspell-en-us libapr1t64 1017s libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data libgomp1 1017s libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 libxslt1.1 1017s python3-aeidon python3-all python3-bs4 python3-charset-normalizer 1017s python3-cheroot python3-cwcwidth python3-dateutil python3-diff-match-patch 1017s python3-enchant python3-iniconfig python3-iniparse python3-levenshtein 1017s python3-lxml python3-mistletoe python3-packaging python3-phply 1017s python3-pluggy python3-ply python3-pycountry python3-pytest python3-pytz 1017s python3-rapidfuzz python3-ruamel.yaml python3-ruamel.yaml.clib 1017s python3-soupsieve python3-syrupy python3-translate python3-tz 1017s python3-vobject python3-wcwidth python3-xapian python3.12 python3.12-minimal 1017s subversion translate-toolkit 1017s 0 upgraded, 51 newly installed, 0 to remove and 0 not upgraded. 1017s Need to get 17.3 MB of archives. 1017s After this operation, 87.1 MB of additional disk space will be used. 1017s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.12-minimal amd64 3.12.9-1 [2348 kB] 1017s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.12 amd64 3.12.9-1 [671 kB] 1017s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 emacsen-common all 3.0.5 [12.1 kB] 1017s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 dictionaries-common all 1.30.4 [176 kB] 1017s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 libgomp1 amd64 15-20250213-1ubuntu1 [148 kB] 1017s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 gettext amd64 0.23.1-1 [1086 kB] 1017s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 hunspell-en-us all 1:2020.12.07-3 [586 kB] 1017s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 libapr1t64 amd64 1.7.5-1 [116 kB] 1017s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 libaprutil1t64 amd64 1.6.3-3ubuntu2 [98.5 kB] 1017s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 libaspell15 amd64 0.60.8.1-4 [353 kB] 1017s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 libhunspell-1.7-0 amd64 1.7.2+really1.7.2-10build3 [294 kB] 1017s Get:12 http://ftpmaster.internal/ubuntu plucky/main amd64 libenchant-2-2 amd64 2.8.2+dfsg1-3 [59.0 kB] 1017s Get:13 http://ftpmaster.internal/ubuntu plucky/main amd64 libexttextcat-data all 3.4.7-1build1 [193 kB] 1017s Get:14 http://ftpmaster.internal/ubuntu plucky/universe amd64 libserf-1-1 amd64 1.3.10-3ubuntu1 [48.2 kB] 1017s Get:15 http://ftpmaster.internal/ubuntu plucky/universe amd64 libutf8proc3 amd64 2.9.0-1build1 [70.6 kB] 1017s Get:16 http://ftpmaster.internal/ubuntu plucky/universe amd64 libsvn1 amd64 1.14.5-2 [1453 kB] 1017s Get:17 http://ftpmaster.internal/ubuntu plucky/universe amd64 libxapian30 amd64 1.4.25-2 [796 kB] 1017s Get:18 http://ftpmaster.internal/ubuntu plucky/main amd64 libxslt1.1 amd64 1.1.39-0exp1ubuntu2 [175 kB] 1017s Get:19 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-aeidon all 1.15-2 [231 kB] 1017s Get:20 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-all amd64 3.13.1-1~exp2 [894 B] 1017s Get:21 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-soupsieve all 2.6-1 [33.0 kB] 1017s Get:22 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-bs4 all 4.13.3-1 [136 kB] 1017s Get:23 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-charset-normalizer amd64 3.4.1-1 [147 kB] 1017s Get:24 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-cheroot all 10.0.1+ds1-3 [78.6 kB] 1017s Get:25 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-cwcwidth amd64 0.1.10-1 [27.7 kB] 1017s Get:26 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-dateutil all 2.9.0-3 [80.2 kB] 1017s Get:27 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-diff-match-patch all 20241021-1 [33.6 kB] 1017s Get:28 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-enchant all 3.3.0~rc1-1 [35.1 kB] 1017s Get:29 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-iniconfig all 1.1.1-2 [6024 B] 1017s Get:30 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-rapidfuzz amd64 3.12.1+ds-1 [2755 kB] 1017s Get:31 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-levenshtein amd64 0.27.0-1 [147 kB] 1017s Get:32 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-lxml amd64 5.3.1-1 [1831 kB] 1017s Get:33 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-mistletoe all 1.4.0-1 [38.2 kB] 1017s Get:34 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-packaging all 24.2-1 [51.5 kB] 1017s Get:35 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-ply all 3.11-7 [45.4 kB] 1017s Get:36 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-phply all 1.2.6-1 [50.5 kB] 1017s Get:37 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pluggy all 1.5.0-1 [21.0 kB] 1017s Get:38 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pytest all 8.3.4-1 [252 kB] 1017s Get:39 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-pytz all 2025.1-3 [162 kB] 1017s Get:40 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-ruamel.yaml.clib amd64 0.2.12+ds-1 [218 kB] 1017s Get:41 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-ruamel.yaml all 0.18.10+ds-1 [127 kB] 1017s Get:42 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-syrupy all 4.8.1-1 [45.4 kB] 1017s Get:43 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-translate all 3.14.7-1 [319 kB] 1020s Get:44 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-tz all 2025.1-3 [1866 B] 1020s Get:45 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-vobject all 0.9.8+dfsg-2 [41.3 kB] 1020s Get:46 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-wcwidth all 0.2.13+dfsg1-1 [26.3 kB] 1020s Get:47 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-xapian amd64 1.4.25-1build4 [571 kB] 1020s Get:48 http://ftpmaster.internal/ubuntu plucky/universe amd64 subversion amd64 1.14.5-2 [920 kB] 1020s Get:49 http://ftpmaster.internal/ubuntu plucky/universe amd64 translate-toolkit all 3.14.7-1 [81.5 kB] 1020s Get:50 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-iniparse all 0.5.1-1 [21.2 kB] 1020s Get:51 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pycountry all 24.6.1+ds1-1 [30.0 kB] 1020s Preconfiguring packages ... 1020s Fetched 17.3 MB in 1s (26.1 MB/s) 1020s Selecting previously unselected package python3.12-minimal. 1020s (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 ... 108975 files and directories currently installed.) 1020s Preparing to unpack .../00-python3.12-minimal_3.12.9-1_amd64.deb ... 1020s Unpacking python3.12-minimal (3.12.9-1) ... 1020s Selecting previously unselected package python3.12. 1020s Preparing to unpack .../01-python3.12_3.12.9-1_amd64.deb ... 1020s Unpacking python3.12 (3.12.9-1) ... 1020s Selecting previously unselected package emacsen-common. 1020s Preparing to unpack .../02-emacsen-common_3.0.5_all.deb ... 1020s Unpacking emacsen-common (3.0.5) ... 1020s Selecting previously unselected package dictionaries-common. 1020s Preparing to unpack .../03-dictionaries-common_1.30.4_all.deb ... 1020s Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common' 1020s Unpacking dictionaries-common (1.30.4) ... 1020s Selecting previously unselected package libgomp1:amd64. 1020s Preparing to unpack .../04-libgomp1_15-20250213-1ubuntu1_amd64.deb ... 1020s Unpacking libgomp1:amd64 (15-20250213-1ubuntu1) ... 1020s Selecting previously unselected package gettext. 1020s Preparing to unpack .../05-gettext_0.23.1-1_amd64.deb ... 1020s Unpacking gettext (0.23.1-1) ... 1020s Selecting previously unselected package hunspell-en-us. 1020s Preparing to unpack .../06-hunspell-en-us_1%3a2020.12.07-3_all.deb ... 1020s Unpacking hunspell-en-us (1:2020.12.07-3) ... 1020s Selecting previously unselected package libapr1t64:amd64. 1020s Preparing to unpack .../07-libapr1t64_1.7.5-1_amd64.deb ... 1020s Unpacking libapr1t64:amd64 (1.7.5-1) ... 1020s Selecting previously unselected package libaprutil1t64:amd64. 1020s Preparing to unpack .../08-libaprutil1t64_1.6.3-3ubuntu2_amd64.deb ... 1020s Unpacking libaprutil1t64:amd64 (1.6.3-3ubuntu2) ... 1020s Selecting previously unselected package libaspell15:amd64. 1020s Preparing to unpack .../09-libaspell15_0.60.8.1-4_amd64.deb ... 1020s Unpacking libaspell15:amd64 (0.60.8.1-4) ... 1020s Selecting previously unselected package libhunspell-1.7-0:amd64. 1020s Preparing to unpack .../10-libhunspell-1.7-0_1.7.2+really1.7.2-10build3_amd64.deb ... 1020s Unpacking libhunspell-1.7-0:amd64 (1.7.2+really1.7.2-10build3) ... 1020s Selecting previously unselected package libenchant-2-2:amd64. 1020s Preparing to unpack .../11-libenchant-2-2_2.8.2+dfsg1-3_amd64.deb ... 1020s Unpacking libenchant-2-2:amd64 (2.8.2+dfsg1-3) ... 1020s Selecting previously unselected package libexttextcat-data. 1020s Preparing to unpack .../12-libexttextcat-data_3.4.7-1build1_all.deb ... 1020s Unpacking libexttextcat-data (3.4.7-1build1) ... 1020s Selecting previously unselected package libserf-1-1:amd64. 1020s Preparing to unpack .../13-libserf-1-1_1.3.10-3ubuntu1_amd64.deb ... 1020s Unpacking libserf-1-1:amd64 (1.3.10-3ubuntu1) ... 1020s Selecting previously unselected package libutf8proc3:amd64. 1020s Preparing to unpack .../14-libutf8proc3_2.9.0-1build1_amd64.deb ... 1020s Unpacking libutf8proc3:amd64 (2.9.0-1build1) ... 1020s Selecting previously unselected package libsvn1:amd64. 1020s Preparing to unpack .../15-libsvn1_1.14.5-2_amd64.deb ... 1020s Unpacking libsvn1:amd64 (1.14.5-2) ... 1020s Selecting previously unselected package libxapian30:amd64. 1020s Preparing to unpack .../16-libxapian30_1.4.25-2_amd64.deb ... 1020s Unpacking libxapian30:amd64 (1.4.25-2) ... 1020s Selecting previously unselected package libxslt1.1:amd64. 1020s Preparing to unpack .../17-libxslt1.1_1.1.39-0exp1ubuntu2_amd64.deb ... 1020s Unpacking libxslt1.1:amd64 (1.1.39-0exp1ubuntu2) ... 1020s Selecting previously unselected package python3-aeidon. 1020s Preparing to unpack .../18-python3-aeidon_1.15-2_all.deb ... 1020s Unpacking python3-aeidon (1.15-2) ... 1020s Selecting previously unselected package python3-all. 1020s Preparing to unpack .../19-python3-all_3.13.1-1~exp2_amd64.deb ... 1020s Unpacking python3-all (3.13.1-1~exp2) ... 1020s Selecting previously unselected package python3-soupsieve. 1020s Preparing to unpack .../20-python3-soupsieve_2.6-1_all.deb ... 1020s Unpacking python3-soupsieve (2.6-1) ... 1020s Selecting previously unselected package python3-bs4. 1020s Preparing to unpack .../21-python3-bs4_4.13.3-1_all.deb ... 1020s Unpacking python3-bs4 (4.13.3-1) ... 1020s Selecting previously unselected package python3-charset-normalizer. 1020s Preparing to unpack .../22-python3-charset-normalizer_3.4.1-1_amd64.deb ... 1020s Unpacking python3-charset-normalizer (3.4.1-1) ... 1020s Selecting previously unselected package python3-cheroot. 1020s Preparing to unpack .../23-python3-cheroot_10.0.1+ds1-3_all.deb ... 1020s Unpacking python3-cheroot (10.0.1+ds1-3) ... 1020s Selecting previously unselected package python3-cwcwidth. 1020s Preparing to unpack .../24-python3-cwcwidth_0.1.10-1_amd64.deb ... 1020s Unpacking python3-cwcwidth (0.1.10-1) ... 1020s Selecting previously unselected package python3-dateutil. 1020s Preparing to unpack .../25-python3-dateutil_2.9.0-3_all.deb ... 1020s Unpacking python3-dateutil (2.9.0-3) ... 1020s Selecting previously unselected package python3-diff-match-patch. 1020s Preparing to unpack .../26-python3-diff-match-patch_20241021-1_all.deb ... 1020s Unpacking python3-diff-match-patch (20241021-1) ... 1020s Selecting previously unselected package python3-enchant. 1020s Preparing to unpack .../27-python3-enchant_3.3.0~rc1-1_all.deb ... 1020s Unpacking python3-enchant (3.3.0~rc1-1) ... 1020s Selecting previously unselected package python3-iniconfig. 1020s Preparing to unpack .../28-python3-iniconfig_1.1.1-2_all.deb ... 1020s Unpacking python3-iniconfig (1.1.1-2) ... 1020s Selecting previously unselected package python3-rapidfuzz. 1020s Preparing to unpack .../29-python3-rapidfuzz_3.12.1+ds-1_amd64.deb ... 1020s Unpacking python3-rapidfuzz (3.12.1+ds-1) ... 1020s Selecting previously unselected package python3-levenshtein. 1020s Preparing to unpack .../30-python3-levenshtein_0.27.0-1_amd64.deb ... 1020s Unpacking python3-levenshtein (0.27.0-1) ... 1020s Selecting previously unselected package python3-lxml:amd64. 1020s Preparing to unpack .../31-python3-lxml_5.3.1-1_amd64.deb ... 1020s Unpacking python3-lxml:amd64 (5.3.1-1) ... 1020s Selecting previously unselected package python3-mistletoe. 1020s Preparing to unpack .../32-python3-mistletoe_1.4.0-1_all.deb ... 1020s Unpacking python3-mistletoe (1.4.0-1) ... 1020s Selecting previously unselected package python3-packaging. 1020s Preparing to unpack .../33-python3-packaging_24.2-1_all.deb ... 1020s Unpacking python3-packaging (24.2-1) ... 1020s Selecting previously unselected package python3-ply. 1020s Preparing to unpack .../34-python3-ply_3.11-7_all.deb ... 1020s Unpacking python3-ply (3.11-7) ... 1020s Selecting previously unselected package python3-phply. 1020s Preparing to unpack .../35-python3-phply_1.2.6-1_all.deb ... 1020s Unpacking python3-phply (1.2.6-1) ... 1020s Selecting previously unselected package python3-pluggy. 1020s Preparing to unpack .../36-python3-pluggy_1.5.0-1_all.deb ... 1020s Unpacking python3-pluggy (1.5.0-1) ... 1020s Selecting previously unselected package python3-pytest. 1020s Preparing to unpack .../37-python3-pytest_8.3.4-1_all.deb ... 1020s Unpacking python3-pytest (8.3.4-1) ... 1020s Selecting previously unselected package python3-pytz. 1020s Preparing to unpack .../38-python3-pytz_2025.1-3_all.deb ... 1020s Unpacking python3-pytz (2025.1-3) ... 1021s Selecting previously unselected package python3-ruamel.yaml.clib. 1021s Preparing to unpack .../39-python3-ruamel.yaml.clib_0.2.12+ds-1_amd64.deb ... 1021s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1) ... 1021s Selecting previously unselected package python3-ruamel.yaml. 1021s Preparing to unpack .../40-python3-ruamel.yaml_0.18.10+ds-1_all.deb ... 1021s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ... 1021s Selecting previously unselected package python3-syrupy. 1021s Preparing to unpack .../41-python3-syrupy_4.8.1-1_all.deb ... 1021s Unpacking python3-syrupy (4.8.1-1) ... 1021s Selecting previously unselected package python3-translate. 1021s Preparing to unpack .../42-python3-translate_3.14.7-1_all.deb ... 1021s Unpacking python3-translate (3.14.7-1) ... 1021s Selecting previously unselected package python3-tz. 1021s Preparing to unpack .../43-python3-tz_2025.1-3_all.deb ... 1021s Unpacking python3-tz (2025.1-3) ... 1021s Selecting previously unselected package python3-vobject. 1021s Preparing to unpack .../44-python3-vobject_0.9.8+dfsg-2_all.deb ... 1021s Unpacking python3-vobject (0.9.8+dfsg-2) ... 1021s Selecting previously unselected package python3-wcwidth. 1021s Preparing to unpack .../45-python3-wcwidth_0.2.13+dfsg1-1_all.deb ... 1021s Unpacking python3-wcwidth (0.2.13+dfsg1-1) ... 1021s Selecting previously unselected package python3-xapian. 1021s Preparing to unpack .../46-python3-xapian_1.4.25-1build4_amd64.deb ... 1021s Unpacking python3-xapian (1.4.25-1build4) ... 1021s Selecting previously unselected package subversion. 1021s Preparing to unpack .../47-subversion_1.14.5-2_amd64.deb ... 1021s Unpacking subversion (1.14.5-2) ... 1021s Selecting previously unselected package translate-toolkit. 1021s Preparing to unpack .../48-translate-toolkit_3.14.7-1_all.deb ... 1021s Unpacking translate-toolkit (3.14.7-1) ... 1021s Selecting previously unselected package python3-iniparse. 1021s Preparing to unpack .../49-python3-iniparse_0.5.1-1_all.deb ... 1021s Unpacking python3-iniparse (0.5.1-1) ... 1021s Selecting previously unselected package python3-pycountry. 1021s Preparing to unpack .../50-python3-pycountry_24.6.1+ds1-1_all.deb ... 1021s Unpacking python3-pycountry (24.6.1+ds1-1) ... 1021s Setting up python3-iniconfig (1.1.1-2) ... 1022s Setting up python3.12-minimal (3.12.9-1) ... 1023s Setting up libxapian30:amd64 (1.4.25-2) ... 1023s Setting up python3-rapidfuzz (3.12.1+ds-1) ... 1024s Setting up python3-diff-match-patch (20241021-1) ... 1024s Setting up python3-aeidon (1.15-2) ... 1024s Setting up libutf8proc3:amd64 (2.9.0-1build1) ... 1024s Setting up libaspell15:amd64 (0.60.8.1-4) ... 1024s Setting up python3-charset-normalizer (3.4.1-1) ... 1024s Setting up python3.12 (3.12.9-1) ... 1026s Setting up python3-ply (3.11-7) ... 1026s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1) ... 1026s Setting up python3-all (3.13.1-1~exp2) ... 1026s Setting up python3-pytz (2025.1-3) ... 1027s Setting up libgomp1:amd64 (15-20250213-1ubuntu1) ... 1027s Setting up python3-tz (2025.1-3) ... 1027s Setting up python3-packaging (24.2-1) ... 1027s Setting up python3-wcwidth (0.2.13+dfsg1-1) ... 1027s Setting up emacsen-common (3.0.5) ... 1028s Setting up python3-cheroot (10.0.1+ds1-3) ... 1028s Setting up python3-pycountry (24.6.1+ds1-1) ... 1028s Setting up python3-xapian (1.4.25-1build4) ... 1029s Setting up python3-cwcwidth (0.1.10-1) ... 1029s Setting up python3-pluggy (1.5.0-1) ... 1029s Setting up python3-ruamel.yaml (0.18.10+ds-1) ... 1030s Setting up python3-mistletoe (1.4.0-1) ... 1030s Setting up libexttextcat-data (3.4.7-1build1) ... 1030s Setting up libapr1t64:amd64 (1.7.5-1) ... 1030s Setting up libxslt1.1:amd64 (1.1.39-0exp1ubuntu2) ... 1030s Setting up python3-dateutil (2.9.0-3) ... 1030s Setting up python3-levenshtein (0.27.0-1) ... 1031s Setting up libhunspell-1.7-0:amd64 (1.7.2+really1.7.2-10build3) ... 1031s Setting up python3-soupsieve (2.6-1) ... 1031s Setting up python3-iniparse (0.5.1-1) ... 1031s Setting up libaprutil1t64:amd64 (1.6.3-3ubuntu2) ... 1031s Setting up python3-vobject (0.9.8+dfsg-2) ... 1032s Setting up gettext (0.23.1-1) ... 1032s Setting up python3-phply (1.2.6-1) ... 1032s Setting up dictionaries-common (1.30.4) ... 1033s Setting up python3-pytest (8.3.4-1) ... 1034s Setting up python3-syrupy (4.8.1-1) ... 1034s Setting up libserf-1-1:amd64 (1.3.10-3ubuntu1) ... 1034s Setting up python3-bs4 (4.13.3-1) ... 1034s Setting up python3-lxml:amd64 (5.3.1-1) ... 1034s Setting up hunspell-en-us (1:2020.12.07-3) ... 1034s Setting up libsvn1:amd64 (1.14.5-2) ... 1034s Setting up libenchant-2-2:amd64 (2.8.2+dfsg1-3) ... 1034s Setting up subversion (1.14.5-2) ... 1034s Setting up python3-enchant (3.3.0~rc1-1) ... 1035s Setting up python3-translate (3.14.7-1) ... 1036s Setting up translate-toolkit (3.14.7-1) ... 1036s Processing triggers for libc-bin (2.40-4ubuntu1) ... 1036s Processing triggers for systemd (257.2-3ubuntu1) ... 1036s Processing triggers for man-db (2.13.0-1) ... 1038s Processing triggers for install-info (7.1.1-1) ... 1038s Processing triggers for dictionaries-common (1.30.4) ... 1040s autopkgtest [16:33:26]: test python3-translate-commands: [----------------------- 1040s ============================= test session starts ============================== 1040s platform linux -- Python 3.12.9, pytest-8.3.4, pluggy-1.5.0 -- /usr/bin/python3.12 1040s cachedir: .pytest_cache 1040s rootdir: /tmp/autopkgtest.TWiM34/autopkgtest_tmp 1040s plugins: syrupy-4.8.1, typeguard-4.4.1 1049s collecting ... collected 3368 items / 2 skipped 1049s 1049s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff PASSED [ 0%] 1049s tests/odf_xliff/test_odf_xliff.py::test_roundtrip PASSED [ 0%] 1049s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff2_inline PASSED [ 0%] 1049s tests/translate/convert/test_accesskey.py::test_get_label_and_accesskey PASSED [ 0%] 1049s tests/translate/convert/test_accesskey.py::test_extract_bad_accesskeys PASSED [ 0%] 1049s tests/translate/convert/test_accesskey.py::test_ignore_entities PASSED [ 0%] 1049s tests/translate/convert/test_accesskey.py::test_alternate_accesskey_marker PASSED [ 0%] 1049s tests/translate/convert/test_accesskey.py::test_unicode PASSED [ 0%] 1049s tests/translate/convert/test_accesskey.py::test_numeric PASSED [ 0%] 1049s tests/translate/convert/test_accesskey.py::test_empty_string PASSED [ 0%] 1049s tests/translate/convert/test_accesskey.py::test_end_of_string PASSED [ 0%] 1049s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey PASSED [ 0%] 1049s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey_different_capitals PASSED [ 0%] 1049s tests/translate/convert/test_accesskey.py::test_uncombinable PASSED [ 0%] 1049s tests/translate/convert/test_accesskey.py::test_accesskey_already_in_text PASSED [ 0%] 1049s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_no_template_units PASSED [ 0%] 1049s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_template_units PASSED [ 0%] 1049s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_no_template_units PASSED [ 0%] 1049s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_template_units PASSED [ 0%] 1049s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_help PASSED [ 0%] 1049s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid PASSED [ 0%] 1049s tests/translate/convert/test_convert.py::TestConvertCommand::test_help PASSED [ 0%] 1049s tests/translate/convert/test_csv2po.py::test_replacestrings PASSED [ 0%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity PASSED [ 0%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity_with_template PASSED [ 0%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_newlines PASSED [ 0%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_tabs PASSED [ 0%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_quotes PASSED [ 0%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_empties PASSED [ 0%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_kdecomment PASSED [ 0%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_escaped_newlines PASSED [ 0%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity PASSED [ 0%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity_with_template PASSED [ 0%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_newlines PASSED [ 1%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_tabs PASSED [ 1%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_quotes PASSED [ 1%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_empties PASSED [ 1%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_kdecomment PASSED [ 1%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_escaped_newlines PASSED [ 1%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_help PASSED [ 1%] 1049s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_simpleentity PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_convertdtd PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_apos PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_quotes PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_two_empty_entities PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity_translated PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisaton_note_simple PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisation_note_merge PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_simple PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_label PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_onlyentity PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_commentedout PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_spaces_at_start_of_dtd_lines PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_folding PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_mismatch PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_carriage_return_in_multiline_dtd PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_with_blankline PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_closing_quotes PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_preserving_spaces PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_escaping_newline_tabs PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_abandoned_accelerator PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_unassociable_accelerator PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_changed_labels_and_accelerators PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence XFAIL [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_exclude_entity_includes PASSED [ 1%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_linewraps PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merging_with_new_untranslated PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merge_without_template PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_simpleentity PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_convertdtd PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_apos PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_quotes PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_two_empty_entities PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity_translated PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisaton_note_simple PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisation_note_merge PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_simple PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_label PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_onlyentity PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_commentedout PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_spaces_at_start_of_dtd_lines PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_folding PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_mismatch PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_carriage_return_in_multiline_dtd PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_with_blankline PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_closing_quotes PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_preserving_spaces PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_escaping_newline_tabs PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_abandoned_accelerator PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_unassociable_accelerator PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_changed_labels_and_accelerators PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence XFAIL [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_exclude_entity_includes PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_linewraps PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merging_with_new_untranslated PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merge_without_template PASSED [ 2%] 1049s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_help PASSED [ 2%] 1049s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_defaults PASSED [ 2%] 1049s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_root_name PASSED [ 3%] 1049s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_value_name PASSED [ 3%] 1049s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_key PASSED [ 3%] 1049s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_default_namespace PASSED [ 3%] 1049s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_namespace_prefix PASSED [ 3%] 1049s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_all_parameters PASSED [ 3%] 1049s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_empty_file_is_empty_store PASSED [ 3%] 1049s tests/translate/convert/test_flatxml2po.py::TestFlatXML2POCommand::test_help PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_extract_lang_attribute_from_html_tag PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title_with_linebreak PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_meta PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_br PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak_and_embedded_br PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_uppercase_html PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div_with_linebreaks PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a_with_linebreak PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_sequence_of_anchor_elements PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_img_empty PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img_inside_a PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_table_summary PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_simple PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_complex PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_empty PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_address PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings_with_linebreaks PASSED [ 3%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dt PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dd PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_span PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_ul PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_lists PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_duplicates PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiline_reflow PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_tags PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_carriage_return PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_encoding_latin1 PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_strip_html PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_text PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_attributes PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_charrefs PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiple_php PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_multiline PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_with_embedded_html PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_comments PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2PO::test_attribute_without_value PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_extract_lang_attribute_from_html_tag PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title_with_linebreak PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_meta PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_br PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak_and_embedded_br PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_uppercase_html PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div_with_linebreaks PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a_with_linebreak PASSED [ 4%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_sequence_of_anchor_elements PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_img_empty PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img_inside_a PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_table_summary PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_simple PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_complex PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_empty PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_address PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings_with_linebreaks PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dt PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dd PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_span PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_ul PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_lists PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_duplicates PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiline_reflow PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_tags PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_carriage_return PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_encoding_latin1 PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_strip_html PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_text PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_attributes PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_charrefs PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiple_php PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_multiline PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_with_embedded_html PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_comments PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_attribute_without_value PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_help PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_single PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile PASSED [ 5%] 1049s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile_to_stdout PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_convert_empty_file PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_translations PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_summary PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_description PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_location PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_comment PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_template_duplicate_style PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_misaligned_files PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_blank_msgstr PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_duplicate_style PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_convert_empty_file PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_translations PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_summary PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_description PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_location PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_comment PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_template_duplicate_style PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_misaligned_files PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_blank_msgstr PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_duplicate_style PASSED [ 6%] 1049s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_help PASSED [ 6%] 1049s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_help PASSED [ 6%] 1049s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_convert PASSED [ 6%] 1049s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_empty_file PASSED [ 6%] 1049s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_no_translation PASSED [ 6%] 1049s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_simple PASSED [ 6%] 1049s tests/translate/convert/test_ini2po.py::TestIni2PO::test_no_duplicates PASSED [ 6%] 1049s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_simple PASSED [ 6%] 1049s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_misaligned_files PASSED [ 6%] 1049s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_blank_msgstr PASSED [ 6%] 1049s tests/translate/convert/test_ini2po.py::TestIni2PO::test_dialects_inno PASSED [ 7%] 1049s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_empty_file PASSED [ 7%] 1049s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_no_translation PASSED [ 7%] 1049s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_simple PASSED [ 7%] 1049s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_no_duplicates PASSED [ 7%] 1049s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_simple PASSED [ 7%] 1049s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_misaligned_files PASSED [ 7%] 1049s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_blank_msgstr PASSED [ 7%] 1049s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_dialects_inno PASSED [ 7%] 1049s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_help PASSED [ 7%] 1049s tests/translate/convert/test_json2po.py::TestJson2PO::test_simple PASSED [ 7%] 1049s tests/translate/convert/test_json2po.py::TestJson2PO::test_three_same_keys PASSED [ 7%] 1049s tests/translate/convert/test_json2po.py::TestJson2PO::test_filter PASSED [ 7%] 1049s tests/translate/convert/test_json2po.py::TestJson2PO::test_miltiple_units PASSED [ 7%] 1049s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_simple PASSED [ 7%] 1049s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_three_same_keys PASSED [ 7%] 1049s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_filter PASSED [ 7%] 1049s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_miltiple_units PASSED [ 7%] 1049s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_help PASSED [ 7%] 1049s tests/translate/convert/test_md2po.py::TestMD2PO::test_help PASSED [ 7%] 1049s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_single PASSED [ 7%] 1049s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_onefile PASSED [ 7%] 1049s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_single PASSED [ 7%] 1049s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_onefile PASSED [ 7%] 1049s tests/translate/convert/test_moz2po.py::TestMoz2POCommand::test_help PASSED [ 7%] 1049s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_simpleentry PASSED [ 7%] 1049s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_uncomment_contributors PASSED [ 7%] 1049s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_convert_empty PASSED [ 7%] 1049s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_string PASSED [ 7%] 1049s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_merge PASSED [ 7%] 1049s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_entry PASSED [ 7%] 1049s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_comment PASSED [ 7%] 1049s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_meta_tags PASSED [ 7%] 1049s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_keep_duplicates PASSED [ 7%] 1049s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_drop_duplicates PASSED [ 8%] 1049s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_convert_empty PASSED [ 8%] 1049s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_string PASSED [ 8%] 1049s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_merge PASSED [ 8%] 1049s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_entry PASSED [ 8%] 1049s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_comment PASSED [ 8%] 1049s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_meta_tags PASSED [ 8%] 1049s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_keep_duplicates PASSED [ 8%] 1049s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_drop_duplicates PASSED [ 8%] 1049s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_help PASSED [ 8%] 1049s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_help PASSED [ 8%] 1049s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_convert PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2PO::test_simpleentity PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_escape PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_whitespaceonly PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2PO::test_double_escapes PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes_helpcontent2 PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2PO::test_msgid_bug_error_address PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2PO::test_x_comment_inclusion PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simpleentity PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_double_escapes PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_help PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_preserve_filename PASSED [ 8%] 1049s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot PASSED [ 8%] 1050s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po PASSED [ 8%] 1050s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 8%] 1050s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates PASSED [ 8%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_simpleentity PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_escape PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_whitespaceonly PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_double_escapes PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes_helpcontent2 PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_x_comment_inclusion PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_msgid_bug_error_address PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simpleentity PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_double_escapes PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_help PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_preserve_filename PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 1050s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 1050s tests/translate/convert/test_php2po.py::TestPhp2PO::test_simpleentry PASSED [ 9%] 1050s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphp PASSED [ 9%] 1050s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphptemplate PASSED [ 9%] 1050s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpmissing PASSED [ 9%] 1050s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpempty PASSED [ 9%] 1050s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unicode PASSED [ 9%] 1050s tests/translate/convert/test_php2po.py::TestPhp2PO::test_multiline PASSED [ 9%] 1050s tests/translate/convert/test_php2po.py::TestPhp2PO::test_comments_before PASSED [ 9%] 1050s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry PASSED [ 9%] 1050s tests/translate/convert/test_php2po.py::TestPhp2PO::test_hash_comment_with_equals PASSED [ 9%] 1050s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry_translated PASSED [ 9%] 1050s tests/translate/convert/test_php2po.py::TestPhp2PO::test_newlines_in_value PASSED [ 9%] 1050s tests/translate/convert/test_php2po.py::TestPhp2PO::test_spaces_in_name PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_array PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_array PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_nested_arrays PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_nested_arrays PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_simpleentry PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphp PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphptemplate PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpmissing PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpempty PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unicode PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_multiline PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_comments_before PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_hash_comment_with_equals PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry_translated PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_newlines_in_value PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_spaces_in_name PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_array PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_array PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_nested_arrays PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_nested_arrays PASSED [ 10%] 1050s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_help PASSED [ 10%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_simpleentity PASSED [ 10%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_multiline PASSED [ 10%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapednewlines PASSED [ 10%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedtabs PASSED [ 10%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedquotes PASSED [ 10%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedescape PASSED [ 10%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_singlequotes PASSED [ 10%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_empties PASSED [ 10%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_kdecomments PASSED [ 10%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_simpleentity PASSED [ 10%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_multiline PASSED [ 10%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapednewlines PASSED [ 11%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedtabs PASSED [ 11%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedquotes PASSED [ 11%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedescape PASSED [ 11%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_singlequotes PASSED [ 11%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_empties PASSED [ 11%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_kdecomments PASSED [ 11%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_help PASSED [ 11%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder PASSED [ 11%] 1050s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_joinlines PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_escapedstr PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_missingaccesskey PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskeycase PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_types PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities_two PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments_translator PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_retains_hashprefix PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_convertdtd PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_with_template PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_without_template PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_blank_source PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_newlines_escapes PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_simple PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_escape PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_quotes PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_amp PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_merging_entries_with_spaces_removed PASSED [ 11%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces_after_value PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_duplicates PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_joinlines PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_escapedstr PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_missingaccesskey PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskeycase PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_types PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities_two PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments_translator PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_retains_hashprefix PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_convertdtd PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_with_template PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_without_template PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_blank_source PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_newlines_escapes PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_simple PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_escape PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_quotes PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_amp PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_merging_entries_with_spaces_removed PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces_after_value PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_duplicates PASSED [ 12%] 1050s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_help PASSED [ 12%] 1050s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_defaults PASSED [ 13%] 1050s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_root_name PASSED [ 13%] 1050s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_value_name PASSED [ 13%] 1050s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_key PASSED [ 13%] 1050s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_default_namespace PASSED [ 13%] 1050s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_namespace_prefix PASSED [ 13%] 1050s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_indent_eight PASSED [ 13%] 1050s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_noindent PASSED [ 13%] 1050s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXMLCommand::test_help PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2Html::test_simple PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2Html::test_linebreaks PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2Html::test_replace_substrings PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_outside_translatable_content PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_embedded_within_translatable_content PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_without_value PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2Html::test_entities PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2Html::test_escapes PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_translated PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_untranslated PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_fuzzy PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2Html::test_untranslated_attributes PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_simple PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_linebreaks PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_replace_substrings PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_outside_translatable_content PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_embedded_within_translatable_content PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_without_value PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_entities PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_escapes PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_translated PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_untranslated PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_fuzzy PASSED [ 13%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_untranslated_attributes PASSED [ 14%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_help PASSED [ 14%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_individual_files PASSED [ 14%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_fully_recursive PASSED [ 14%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_input_specified PASSED [ 14%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified PASSED [ 14%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_output_specified PASSED [ 14%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file PASSED [ 14%] 1050s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_empty_file PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_summary PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_description PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_location PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_comment PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_complex_icalendar PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_skip_fuzzy PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_include_fuzzy PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_no_template PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_template_location_not_in_source_file PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_below_threshold PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_above_threshold PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_empty_file PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_summary PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_description PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_location PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_comment PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_complex_icalendar PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_skip_fuzzy PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_include_fuzzy PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_no_template PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_template_location_not_in_source_file PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_below_threshold PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_above_threshold PASSED [ 14%] 1050s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_help PASSED [ 14%] 1050s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_help PASSED [ 15%] 1050s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_no_templates PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_simple PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_space_preservation PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_blank_entries PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_fuzzy PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_propertyless_template PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_empty_value PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_dialects_inno PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_misaligned_files PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_below_threshold PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_above_threshold PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_no_fuzzy PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_allow_fuzzy PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_missing_source PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_repeated_locations PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_no_templates PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_simple PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_space_preservation PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_blank_entries PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_fuzzy PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_propertyless_template PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_empty_value PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_dialects_inno PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_misaligned_files PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_below_threshold PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_above_threshold PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_no_fuzzy PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_allow_fuzzy PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_missing_source PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_repeated_locations PASSED [ 15%] 1050s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_help PASSED [ 15%] 1050s tests/translate/convert/test_po2json.py::TestPO2JSON::test_basic PASSED [ 16%] 1050s tests/translate/convert/test_po2json.py::TestPO2JSON::test_ordering_serialize PASSED [ 16%] 1050s tests/translate/convert/test_po2json.py::TestPO2JSON::test_dont_use_empty_translation PASSED [ 16%] 1050s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_false PASSED [ 16%] 1050s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_true PASSED [ 16%] 1050s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_false PASSED [ 16%] 1050s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_true PASSED [ 16%] 1050s tests/translate/convert/test_po2md.py::TestPO2MD::test_help PASSED [ 16%] 1050s tests/translate/convert/test_po2md.py::TestPO2MD::test_single_markdown_file_with_single_po PASSED [ 16%] 1050s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po PASSED [ 16%] 1050s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_and_directory_of_po_files PASSED [ 16%] 1050s tests/translate/convert/test_po2moz.py::TestPO2MozCommand::test_help PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_empty PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_simple PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_comment PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_ok_marker PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_below_threshold PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_above_threshold PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_skip_non_translatable_input PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_no_fuzzy PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_allow_fuzzy PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_mark_active PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_empty PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_simple PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_comment PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_ok_marker PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_below_threshold PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_above_threshold PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_skip_non_translatable_input PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_no_fuzzy PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_allow_fuzzy PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_mark_active PASSED [ 16%] 1050s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_help PASSED [ 16%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OO::test_convertoo PASSED [ 16%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OO::test_pofilter PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_simple PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_escape PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_quotes PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_spaces PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OO::test_default_timestamp PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OO::test_escape_conversion PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes2 PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_convertoo PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_pofilter PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_simple PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_quotes PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_spaces PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_escape_conversion PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes2 PASSED [ 17%] 1050s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_help PASSED [ 17%] 1050s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp PASSED [ 17%] 1050s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_notemplate PASSED [ 17%] 1050s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_empty_template PASSED [ 17%] 1050s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_simple PASSED [ 17%] 1050s tests/translate/convert/test_po2php.py::TestPO2Php::test_space_preservation PASSED [ 17%] 1050s tests/translate/convert/test_po2php.py::TestPO2Php::test_preserve_unused_statement PASSED [ 17%] 1050s tests/translate/convert/test_po2php.py::TestPO2Php::test_not_translated_multiline PASSED [ 17%] 1050s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_blank_entries PASSED [ 17%] 1050s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_fuzzy PASSED [ 17%] 1050s tests/translate/convert/test_po2php.py::TestPO2Php::test_locations_with_spaces PASSED [ 17%] 1050s tests/translate/convert/test_po2php.py::TestPO2Php::test_inline_comments PASSED [ 17%] 1050s tests/translate/convert/test_po2php.py::TestPO2Php::test_block_comments PASSED [ 17%] 1050s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_variables PASSED [ 17%] 1050s tests/translate/convert/test_po2php.py::TestPO2Php::test_multiline PASSED [ 17%] 1050s tests/translate/convert/test_po2php.py::TestPO2Php::test_hash_comment PASSED [ 18%] 1050s tests/translate/convert/test_po2php.py::TestPO2Php::test_arrays PASSED [ 18%] 1050s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_nested_array PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2Php::test_unnamed_nested_arrays PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template XFAIL [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_notemplate PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_empty_template PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_simple PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_space_preservation PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_preserve_unused_statement PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_not_translated_multiline PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_blank_entries PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_fuzzy PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_locations_with_spaces PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_inline_comments PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_block_comments PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_variables PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_multiline PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_hash_comment PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_arrays PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_nested_array PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_unnamed_nested_arrays PASSED [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template XFAIL [ 18%] 1051s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_help PASSED [ 18%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_simple PASSED [ 18%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated PASSED [ 18%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_hard_newlines_preserved PASSED [ 18%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_space_preservation PASSED [ 18%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_value PASSED [ 18%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_separator PASSED [ 18%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank_entries PASSED [ 18%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_fuzzy PASSED [ 18%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_margin_whitespace PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_all_whitespace PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_propertyless_template PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_delimiters PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_empty_value PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_personalities PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_simple PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline2 PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_comments PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_unchanged PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gaia_plurals PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_duplicates PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gwt_plurals PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_simple PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_hard_newlines_preserved PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_space_preservation PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_value PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_separator PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank_entries PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_fuzzy PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_margin_whitespace PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_all_whitespace PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_propertyless_template PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_delimiters PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_empty_value PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_personalities PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_simple PASSED [ 19%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline PASSED [ 20%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline2 PASSED [ 20%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_comments PASSED [ 20%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_unchanged PASSED [ 20%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank PASSED [ 20%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gaia_plurals PASSED [ 20%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_duplicates PASSED [ 20%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gwt_plurals PASSED [ 20%] 1051s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_help PASSED [ 20%] 1051s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_help PASSED [ 20%] 1051s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert PASSED [ 20%] 1051s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_quotes PASSED [ 20%] 1051s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment PASSED [ 20%] 1051s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_dos_eol PASSED [ 20%] 1051s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_double_string PASSED [ 20%] 1051s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_popup PASSED [ 20%] 1051s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_discardable PASSED [ 20%] 1052s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_menuex PASSED [ 20%] 1052s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_newlines PASSED [ 20%] 1052s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_after PASSED [ 20%] 1052s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_block_language PASSED [ 20%] 1052s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_output_encoding PASSED [ 20%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_simpleunit PASSED [ 20%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_basic PASSED [ 20%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_multiline PASSED [ 20%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapednewlines PASSED [ 20%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedtabs PASSED [ 20%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedquotes PASSED [ 20%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_exclusions PASSED [ 20%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments PASSED [ 20%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingcomment PASSED [ 20%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecomment PASSED [ 20%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 20%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments PASSED [ 20%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingcomment PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingduplicatecomment PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingcomment PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_existingcomments PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_simpleunit PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_basic PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_multiline PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapednewlines PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedtabs PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedquotes PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_exclusions PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingcomment PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingcomment PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingduplicatecomment PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingcomment PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_existingcomments PASSED [ 21%] 1052s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_help PASSED [ 21%] 1052s tests/translate/convert/test_po2sub.py::TestPO2Sub::test_subrip PASSED [ 21%] 1052s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_subrip PASSED [ 21%] 1052s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_help PASSED [ 21%] 1052s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_empty PASSED [ 21%] 1052s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert PASSED [ 21%] 1052s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_marked_untranslated PASSED [ 21%] 1052s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_empty PASSED [ 21%] 1052s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert PASSED [ 21%] 1052s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_marked_untranslated PASSED [ 22%] 1052s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_help PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_basic PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcelanguage PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_targetlanguage PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_multiline PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapednewlines PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedtabs PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedquotes PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_exclusions PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonascii PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonecomments PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_otherscomments PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcecomments PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_typecomments PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_basic PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcelanguage PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_targetlanguage PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_multiline PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapednewlines PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedtabs PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedquotes PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_exclusions PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonascii PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonecomments PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_otherscomments PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcecomments PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_typecomments PASSED [ 22%] 1052s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_help PASSED [ 22%] 1052s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simpleunit PASSED [ 22%] 1052s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simple_unicode_unit PASSED [ 22%] 1052s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fullunit PASSED [ 22%] 1052s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fuzzyunit PASSED [ 22%] 1052s tests/translate/convert/test_po2ts.py::TestPO2TS::test_obsolete PASSED [ 22%] 1052s tests/translate/convert/test_po2ts.py::TestPO2TS::test_duplicates PASSED [ 23%] 1052s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak PASSED [ 23%] 1052s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak_consecutive PASSED [ 23%] 1052s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simpleunit PASSED [ 23%] 1052s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simple_unicode_unit PASSED [ 23%] 1052s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fullunit PASSED [ 23%] 1052s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fuzzyunit PASSED [ 23%] 1052s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_obsolete PASSED [ 23%] 1052s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_duplicates PASSED [ 23%] 1052s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak PASSED [ 23%] 1052s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak_consecutive PASSED [ 23%] 1052s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_help PASSED [ 23%] 1052s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_basic PASSED [ 23%] 1052s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_nonascii PASSED [ 23%] 1052s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_blank_handling PASSED [ 23%] 1052s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_fuzzy_handling PASSED [ 23%] 1052s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_obsolete_ignore PASSED [ 23%] 1052s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_header_ignore PASSED [ 23%] 1052s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_below_threshold PASSED [ 23%] 1052s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_above_threshold PASSED [ 23%] 1052s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_basic PASSED [ 23%] 1052s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_nonascii PASSED [ 23%] 1052s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_blank_handling PASSED [ 23%] 1052s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_fuzzy_handling PASSED [ 23%] 1052s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_obsolete_ignore PASSED [ 23%] 1052s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_header_ignore PASSED [ 23%] 1052s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_below_threshold PASSED [ 23%] 1052s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_above_threshold PASSED [ 23%] 1052s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_help PASSED [ 23%] 1052s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_basic PASSED [ 23%] 1052s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_unicode PASSED [ 23%] 1052s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_ordering_serialize PASSED [ 23%] 1052s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_markmin PASSED [ 23%] 1052s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_minimal PASSED [ 23%] 1052s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_basic PASSED [ 24%] 1052s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_multiline PASSED [ 24%] 1052s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapednewlines PASSED [ 24%] 1052s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedtabs PASSED [ 24%] 1052s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedquotes PASSED [ 24%] 1052s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_locationcomments PASSED [ 24%] 1052s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_othercomments PASSED [ 24%] 1052s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_automaticcomments PASSED [ 24%] 1052s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_header PASSED [ 24%] 1052s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_fuzzy PASSED [ 24%] 1052s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_germanic_plurals PASSED [ 24%] 1052s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_funny_plurals PASSED [ 24%] 1052s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_language_tags PASSED [ 24%] 1052s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_variables PASSED [ 24%] 1052s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_approved PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_empty_PO PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_no_templates PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple_output PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_translated PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_no_fuzzy PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_allow_fuzzy PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_nested PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_below_threshold PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_above_threshold PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_empty_PO PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_no_templates PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple_output PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_translated PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_no_fuzzy PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_allow_fuzzy PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_nested PASSED [ 24%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_below_threshold PASSED [ 25%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_above_threshold PASSED [ 25%] 1052s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_help PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank_plurals PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_simple PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_messages_marked_fuzzy PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals_with_fuzzy_matching PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change XFAIL [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_change PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_and_whitespace_change PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_ambiguous_with_disambiguous PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes XFAIL [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently XFAIL [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_dont_duplicate PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_new_overides_old PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments_with_blank_comment_lines PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_commentlines PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgidcomments PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_with_msgidcomment PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_obsoleting_messages PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_not_obsoleting_empty_messages PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_new_before_obsolete PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_header_initialisation PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_typecomments PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt_multiline PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_location PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_id PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_msgid PASSED [ 25%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_migrate_msgidcomment_to_msgctxt PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_obsolete_msgctxt PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_small_strings PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank_plurals PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_simple PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_messages_marked_fuzzy PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change XFAIL [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_change PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_and_whitespace_change PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_ambiguous_with_disambiguous PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes XFAIL [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently XFAIL [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_new_overides_old PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments_with_blank_comment_lines PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_commentlines PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgidcomments PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_with_msgidcomment PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_obsoleting_messages PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_not_obsoleting_empty_messages PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_new_before_obsolete PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_header_initialisation PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_typecomments PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt_multiline PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_location PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_id PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_msgid PASSED [ 26%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_migrate_msgidcomment_to_msgctxt PASSED [ 27%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_obsolete_msgctxt PASSED [ 27%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_small_strings PASSED [ 27%] 1052s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_help PASSED [ 27%] 1052s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_no_endlines_added PASSED [ 27%] 1052s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_uncomment_contributors PASSED [ 27%] 1052s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_multiline_comment_newlines PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_simpleentry PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_convertprop PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_value_entry PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_separator_entry PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_end_of_string PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_start_of_value PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unicode PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_escaping PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_comments PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_comments PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_folding_accesskeys PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_dont_translate PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty_translated PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_newlines_in_value PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_header_comments PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unassociated_comment_order PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_x_header PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gaia_plurals PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_successive_gaia_plurals PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_duplicate_keys PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gwt_plurals PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_simpleentry PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_convertprop PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_value_entry PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_separator_entry PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_end_of_string PASSED [ 27%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_start_of_value PASSED [ 28%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unicode PASSED [ 28%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_escaping PASSED [ 28%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_comments PASSED [ 28%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_comments PASSED [ 28%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_folding_accesskeys PASSED [ 28%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_dont_translate PASSED [ 28%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty PASSED [ 28%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty_translated PASSED [ 28%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_newlines_in_value PASSED [ 28%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_header_comments PASSED [ 28%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unassociated_comment_order PASSED [ 28%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_x_header PASSED [ 28%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gaia_plurals PASSED [ 28%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_successive_gaia_plurals PASSED [ 28%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_duplicate_keys PASSED [ 28%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gwt_plurals PASSED [ 28%] 1052s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_help PASSED [ 28%] 1052s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_help PASSED [ 28%] 1052s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert PASSED [ 28%] 1053s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 PASSED [ 28%] 1053s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong PASSED [ 28%] 1053s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 PASSED [ 28%] 1053s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex PASSED [ 28%] 1053s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_simple PASSED [ 28%] 1053s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_multiple_units PASSED [ 28%] 1053s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_automaticcomments PASSED [ 28%] 1053s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_translatorcomments PASSED [ 28%] 1053s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_locations PASSED [ 28%] 1053s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple PASSED [ 28%] 1053s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_multiple_units PASSED [ 28%] 1053s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_automaticcomments PASSED [ 28%] 1053s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_translatorcomments PASSED [ 28%] 1053s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_locations PASSED [ 29%] 1053s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_help PASSED [ 29%] 1053s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot PASSED [ 29%] 1053s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po PASSED [ 29%] 1053s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates PASSED [ 29%] 1053s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_convert_empty PASSED [ 29%] 1053s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_defaults PASSED [ 29%] 1053s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_includeunused PASSED [ 29%] 1053s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_convert_empty PASSED [ 29%] 1053s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_defaults PASSED [ 29%] 1053s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_includeunused PASSED [ 29%] 1053s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_help PASSED [ 29%] 1053s tests/translate/convert/test_ts2po.py::TestTS2PO::test_blank PASSED [ 29%] 1053s tests/translate/convert/test_ts2po.py::TestTS2PO::test_basic PASSED [ 29%] 1053s tests/translate/convert/test_ts2po.py::TestTS2PO::test_unfinished PASSED [ 29%] 1053s tests/translate/convert/test_ts2po.py::TestTS2PO::test_multiline PASSED [ 29%] 1053s tests/translate/convert/test_ts2po.py::TestTS2PO::test_obsolete PASSED [ 29%] 1053s tests/translate/convert/test_ts2po.py::TestTS2PO::test_comment PASSED [ 29%] 1053s tests/translate/convert/test_ts2po.py::TestTS2PO::test_extracomment PASSED [ 29%] 1053s tests/translate/convert/test_ts2po.py::TestTS2PO::test_emptycontext PASSED [ 29%] 1053s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_blank PASSED [ 29%] 1053s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_basic PASSED [ 29%] 1053s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_unfinished PASSED [ 29%] 1053s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_multiline PASSED [ 29%] 1053s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_obsolete PASSED [ 29%] 1053s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_comment PASSED [ 29%] 1053s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_extracomment PASSED [ 29%] 1053s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_emptycontext PASSED [ 29%] 1053s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_help PASSED [ 29%] 1053s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_convert_empty PASSED [ 29%] 1053s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_keep_duplicates PASSED [ 29%] 1053s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_drop_duplicates PASSED [ 29%] 1053s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_simple PASSED [ 29%] 1053s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_multiple_units PASSED [ 29%] 1053s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_carriage_return PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_merge PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_no_segmentation PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestDoku2po::test_convert_empty PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestDoku2po::test_keep_duplicates PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestDoku2po::test_drop_duplicates PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestDoku2po::test_basic PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestDoku2po::test_bullet_list PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestDoku2po::test_numbered_list PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestDoku2po::test_spacing PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestDoku2po::test_merge PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_convert_empty PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_keep_duplicates PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_drop_duplicates PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_simple PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_multiple_units PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_carriage_return PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_merge PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_no_segmentation PASSED [ 30%] 1053s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_help PASSED [ 30%] 1053s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_basic PASSED [ 30%] 1053s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_unicode PASSED [ 30%] 1053s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_markmin PASSED [ 30%] 1053s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_help PASSED [ 30%] 1053s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert PASSED [ 30%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_minimal PASSED [ 30%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_basic PASSED [ 30%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_translatorcomments PASSED [ 30%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_autocomment PASSED [ 30%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_locations PASSED [ 30%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_fuzzy PASSED [ 30%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_plurals PASSED [ 30%] 1053s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_minimal PASSED [ 30%] 1053s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_basic PASSED [ 30%] 1053s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_translatorcomments PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_autocomment PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_locations PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_fuzzy PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_plurals PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_help PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_simple_convert PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_minimal PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_basic PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_translatorcomments PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_autocomment PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_locations PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_fuzzy PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_plurals PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_help PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po PASSED [ 31%] 1053s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates PASSED [ 31%] 1053s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_empty_YAML PASSED [ 31%] 1053s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple_output PASSED [ 31%] 1053s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple PASSED [ 31%] 1053s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_nested PASSED [ 31%] 1053s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates XFAIL [ 31%] 1053s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_with_template PASSED [ 31%] 1053s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_empty_YAML PASSED [ 31%] 1053s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple_output PASSED [ 31%] 1053s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple PASSED [ 31%] 1053s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_nested PASSED [ 31%] 1053s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates XFAIL [ 31%] 1053s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_with_template PASSED [ 31%] 1053s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_help PASSED [ 31%] 1053s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_empty_target PASSED [ 31%] 1053s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_ellipsis PASSED [ 32%] 1053s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_spacestart_spaceend PASSED [ 32%] 1053s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_start_capitals PASSED [ 32%] 1053s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_end_punc PASSED [ 32%] 1053s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_combinations PASSED [ 32%] 1053s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_nothing_to_do PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_defaults PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_construct PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_accelerator_markers PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_messages PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_accelerators PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_acceleratedvariables XFAIL [ 32%] 1053s tests/translate/filters/test_checks.py::test_acronyms PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_blank PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_brackets PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_compendiumconflicts PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_doublequoting PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_doublespacing PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_doublewords PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_endpunc PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_endwhitespace PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_escapes PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_newlines PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_tabs PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_filepaths PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_kdecomments PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_long PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_musttranslatewords XFAIL [ 32%] 1053s tests/translate/filters/test_checks.py::test_notranslatewords PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_numbers PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_persian_numbers PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_bengali_numbers PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_arabic_numbers PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_assamese_numbers PASSED [ 32%] 1053s tests/translate/filters/test_checks.py::test_options PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_printf PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_pythonbraceformat PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_puncspacing PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_purepunc PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_sentencecount PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_short PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_singlequoting PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_vietnamese_singlequoting PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time XFAIL [ 33%] 1053s tests/translate/filters/test_checks.py::test_persian_quoting PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_simplecaps PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_spellcheck SKIPPED (Spe...) [ 33%] 1053s tests/translate/filters/test_checks.py::test_startcaps PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_startpunc PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_startwhitespace PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_unchanged PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_untranslated PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_validchars PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_minimalchecker PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_reducedchecker PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_variables_kde PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_variables_gnome PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_variables_mozilla PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_variables_openoffice PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_variables_cclicense PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_variables_ios PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_xmltags PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags XFAIL [ 33%] 1053s tests/translate/filters/test_checks.py::test_ooxmltags PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_functions PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_emails PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_urls PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_simpleplurals PASSED [ 33%] 1053s tests/translate/filters/test_checks.py::test_nplurals PASSED [ 34%] 1053s tests/translate/filters/test_checks.py::test_credits PASSED [ 34%] 1053s tests/translate/filters/test_checks.py::test_gconf PASSED [ 34%] 1053s tests/translate/filters/test_checks.py::test_validxml PASSED [ 34%] 1053s tests/translate/filters/test_checks.py::test_hassuggestion PASSED [ 34%] 1053s tests/translate/filters/test_checks.py::test_dialogsizes PASSED [ 34%] 1053s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers PASSED [ 34%] 1053s tests/translate/filters/test_checks.py::test_mozilla_no_accelerators_for_indic PASSED [ 34%] 1053s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker PASSED [ 34%] 1053s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source PASSED [ 34%] 1053s tests/translate/filters/test_checks.py::test_ensure_bengali_languages_script_is_correct PASSED [ 34%] 1053s tests/translate/filters/test_checks.py::test_category PASSED [ 34%] 1053s tests/translate/filters/test_decoration.py::test_spacestart PASSED [ 34%] 1053s tests/translate/filters/test_decoration.py::test_isvalidaccelerator PASSED [ 34%] 1053s tests/translate/filters/test_decoration.py::test_find_marked_variables PASSED [ 34%] 1053s tests/translate/filters/test_decoration.py::test_getnumbers PASSED [ 34%] 1053s tests/translate/filters/test_decoration.py::test_getfunctions PASSED [ 34%] 1054s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplepass PASSED [ 34%] 1054s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplefail PASSED [ 34%] 1054s tests/translate/filters/test_pofilter.py::TestPOFilter::test_variables_across_lines PASSED [ 34%] 1054s tests/translate/filters/test_pofilter.py::TestPOFilter::test_ignore_if_already_marked PASSED [ 34%] 1054s tests/translate/filters/test_pofilter.py::TestPOFilter::test_non_existant_check PASSED [ 34%] 1054s tests/translate/filters/test_pofilter.py::TestPOFilter::test_list_all_tests PASSED [ 34%] 1054s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_fuzzy PASSED [ 34%] 1054s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_review PASSED [ 34%] 1054s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isfuzzy PASSED [ 34%] 1054s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isreview PASSED [ 34%] 1054s tests/translate/filters/test_pofilter.py::TestPOFilter::test_notes PASSED [ 34%] 1054s tests/translate/filters/test_pofilter.py::TestPOFilter::test_unicode PASSED [ 34%] 1054s tests/translate/filters/test_pofilter.py::TestPOFilter::test_preconditions PASSED [ 34%] 1054s tests/translate/filters/test_pofilter.py::TestPOFilter::test_msgid_comments PASSED [ 34%] 1054s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplepass PASSED [ 34%] 1054s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplefail PASSED [ 34%] 1054s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_variables_across_lines PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_ignore_if_already_marked PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_non_existant_check PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_list_all_tests PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_fuzzy PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_review PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isfuzzy PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isreview PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_notes PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_unicode PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_preconditions PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplepass PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplefail PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_variables_across_lines PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_ignore_if_already_marked PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_non_existant_check PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_list_all_tests PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_notes PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_unicode PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_preconditions PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_fuzzy PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_review PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isfuzzy PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isreview PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplepass PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplefail PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_variables_across_lines PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_ignore_if_already_marked PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_non_existant_check PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_list_all_tests PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_fuzzy PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_review PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isfuzzy PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isreview PASSED [ 35%] 1054s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_notes PASSED [ 36%] 1054s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_unicode PASSED [ 36%] 1054s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_preconditions PASSED [ 36%] 1054s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_msgid_comments PASSED [ 36%] 1054s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_cedillas PASSED [ 36%] 1054s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_niciun PASSED [ 36%] 1054s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_nicio PASSED [ 36%] 1054s tests/translate/filters/test_prefilters.py::test_removekdecomments PASSED [ 36%] 1054s tests/translate/filters/test_prefilters.py::test_filterwordswithpunctuation PASSED [ 36%] 1054s tests/translate/lang/test_af.py::test_sentences PASSED [ 36%] 1054s tests/translate/lang/test_af.py::test_capsstart PASSED [ 36%] 1054s tests/translate/lang/test_af.py::test_transliterate_cyrillic PASSED [ 36%] 1054s tests/translate/lang/test_am.py::test_punctranslate PASSED [ 36%] 1054s tests/translate/lang/test_am.py::test_sentences PASSED [ 36%] 1054s tests/translate/lang/test_ar.py::test_punctranslate PASSED [ 36%] 1054s tests/translate/lang/test_ar.py::test_sentences PASSED [ 36%] 1054s tests/translate/lang/test_common.py::test_characters PASSED [ 36%] 1054s tests/translate/lang/test_common.py::test_words PASSED [ 36%] 1054s tests/translate/lang/test_common.py::test_word_khmer XFAIL (ZWS is n...) [ 36%] 1054s tests/translate/lang/test_common.py::test_sentences PASSED [ 36%] 1054s tests/translate/lang/test_common.py::test_capsstart PASSED [ 36%] 1054s tests/translate/lang/test_common.py::test_numstart PASSED [ 36%] 1054s tests/translate/lang/test_common.py::test_punctranslate PASSED [ 36%] 1054s tests/translate/lang/test_common.py::test_length_difference PASSED [ 36%] 1054s tests/translate/lang/test_common.py::test_alter_length PASSED [ 36%] 1054s tests/translate/lang/test_data.py::test_normalise_code PASSED [ 36%] 1054s tests/translate/lang/test_data.py::test_simplify_to_common PASSED [ 36%] 1054s tests/translate/lang/test_el.py::test_punctranslate PASSED [ 36%] 1054s tests/translate/lang/test_el.py::test_sentences PASSED [ 36%] 1054s tests/translate/lang/test_es.py::test_punctranslate PASSED [ 36%] 1054s tests/translate/lang/test_es.py::test_sentences PASSED [ 36%] 1054s tests/translate/lang/test_fa.py::test_punctranslate PASSED [ 36%] 1054s tests/translate/lang/test_fa.py::test_sentences PASSED [ 36%] 1054s tests/translate/lang/test_factory.py::test_getlanguage PASSED [ 36%] 1054s tests/translate/lang/test_factory.py::test_get_all_languages PASSED [ 37%] 1054s tests/translate/lang/test_fr.py::test_punctranslate PASSED [ 37%] 1054s tests/translate/lang/test_fr.py::test_sentences PASSED [ 37%] 1054s tests/translate/lang/test_hy.py::test_punctranslate PASSED [ 37%] 1054s tests/translate/lang/test_hy.py::test_sentences PASSED [ 37%] 1054s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_lang PASSED [ 37%] 1054s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_store PASSED [ 37%] 1054s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_bad_init_data PASSED [ 37%] 1054s tests/translate/lang/test_ja.py::test_punctranslate PASSED [ 37%] 1054s tests/translate/lang/test_ja.py::test_sentences PASSED [ 37%] 1054s tests/translate/lang/test_km.py::test_punctranslate PASSED [ 37%] 1054s tests/translate/lang/test_km.py::test_sentences PASSED [ 37%] 1054s tests/translate/lang/test_ko.py::test_punctranslate PASSED [ 37%] 1054s tests/translate/lang/test_ko.py::test_sentences PASSED [ 37%] 1054s tests/translate/lang/test_ne.py::test_punctranslate PASSED [ 37%] 1054s tests/translate/lang/test_ne.py::test_sentences PASSED [ 37%] 1054s tests/translate/lang/test_nqo.py::test_punctranslate PASSED [ 37%] 1054s tests/translate/lang/test_nqo.py::test_sentences PASSED [ 37%] 1054s tests/translate/lang/test_or.py::test_punctranslate PASSED [ 37%] 1054s tests/translate/lang/test_or.py::test_country_code PASSED [ 37%] 1054s tests/translate/lang/test_or.py::test_sentences PASSED [ 37%] 1054s tests/translate/lang/test_poedit.py::test_isocode PASSED [ 37%] 1054s tests/translate/lang/test_ro.py::test_cedillas PASSED [ 37%] 1054s tests/translate/lang/test_ro.py::test_niciun PASSED [ 37%] 1054s tests/translate/lang/test_scn.py::test_italianisms PASSED [ 37%] 1054s tests/translate/lang/test_scn.py::test_vocalism PASSED [ 37%] 1054s tests/translate/lang/test_scn.py::test_suffixes PASSED [ 37%] 1054s tests/translate/lang/test_team.py::test_simple PASSED [ 37%] 1054s tests/translate/lang/test_th.py::test_punctranslate PASSED [ 37%] 1054s tests/translate/lang/test_th.py::test_sentences PASSED [ 37%] 1054s tests/translate/lang/test_tr.py::test_sentences PASSED [ 37%] 1054s tests/translate/lang/test_uk.py::test_sentences PASSED [ 37%] 1054s tests/translate/lang/test_vi.py::test_punctranslate PASSED [ 37%] 1054s tests/translate/lang/test_vi.py::test_sentences PASSED [ 38%] 1054s tests/translate/lang/test_zh.py::test_punctranslate PASSED [ 38%] 1054s tests/translate/lang/test_zh.py::test_sentences PASSED [ 38%] 1054s tests/translate/misc/test_deprecation.py::TestDeprecation::test_deprecated_decorator PASSED [ 38%] 1054s tests/translate/misc/test_deprecation.py::TestDeprecation::test_no_deprecated_decorator PASSED [ 38%] 1054s tests/translate/misc/test_dictutils.py::test_cidict_has_key PASSED [ 38%] 1054s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor PASSED [ 38%] 1054s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor_validation PASSED [ 38%] 1054s tests/translate/misc/test_multistring.py::TestMultistring::test_repr PASSED [ 38%] 1054s tests/translate/misc/test_multistring.py::TestMultistring::test_replace PASSED [ 38%] 1054s tests/translate/misc/test_multistring.py::TestMultistring::test_comparison PASSED [ 38%] 1054s tests/translate/misc/test_multistring.py::TestMultistring::test_coercion PASSED [ 38%] 1054s tests/translate/misc/test_multistring.py::TestMultistring::test_unicode_coercion PASSED [ 38%] 1054s tests/translate/misc/test_multistring.py::TestMultistring::test_list_coercion PASSED [ 38%] 1054s tests/translate/misc/test_multistring.py::TestMultistring::test_multistring_hash PASSED [ 38%] 1054s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_splitext PASSED [ 38%] 1054s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_outputfile_receives_bytes PASSED [ 38%] 1054s tests/translate/misc/test_progressbar.py::test_hashprogressbar PASSED [ 38%] 1054s tests/translate/misc/test_quote.py::test_find_all PASSED [ 38%] 1054s tests/translate/misc/test_quote.py::test_extract PASSED [ 38%] 1054s tests/translate/misc/test_quote.py::test_extractwithoutquotes PASSED [ 38%] 1054s tests/translate/misc/test_quote.py::test_extractwithoutquotes_passfunc PASSED [ 38%] 1054s tests/translate/misc/test_quote.py::test_stripcomment PASSED [ 38%] 1054s tests/translate/misc/test_quote.py::TestEncoding::test_javapropertiesencode PASSED [ 38%] 1054s tests/translate/misc/test_quote.py::TestEncoding::test_java_utf8_properties_encode PASSED [ 38%] 1054s tests/translate/misc/test_quote.py::TestEncoding::test_escapespace PASSED [ 38%] 1054s tests/translate/misc/test_quote.py::TestEncoding::test_mozillaescapemarginspaces PASSED [ 38%] 1054s tests/translate/misc/test_quote.py::TestEncoding::test_mozilla_control_escapes PASSED [ 38%] 1054s tests/translate/misc/test_quote.py::TestEncoding::test_propertiesdecode PASSED [ 38%] 1054s tests/translate/misc/test_quote.py::TestEncoding::test_controlchars PASSED [ 38%] 1054s tests/translate/misc/test_quote.py::TestEncoding::test_properties_decode_slashu PASSED [ 38%] 1054s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding PASSED [ 38%] 1054s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_existing_entities PASSED [ 38%] 1054s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_passthrough PASSED [ 38%] 1054s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_nonentities PASSED [ 39%] 1054s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_four_spaces PASSED [ 39%] 1054s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_tab PASSED [ 39%] 1054s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_distance PASSED [ 39%] 1054s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_similarity PASSED [ 39%] 1054s tests/translate/search/test_lshtein.py::TestLevenshtein::test_long_similarity PASSED [ 39%] 1054s tests/translate/search/test_match.py::TestMatch::test_matching PASSED [ 39%] 1054s tests/translate/search/test_match.py::TestMatch::test_multiple_store PASSED [ 39%] 1054s tests/translate/search/test_match.py::TestMatch::test_extendtm PASSED [ 39%] 1054s tests/translate/search/test_match.py::TestMatch::test_terminology PASSED [ 39%] 1054s tests/translate/search/test_match.py::TestMatch::test_brackets PASSED [ 39%] 1054s tests/translate/search/test_match.py::TestMatch::test_past_tences PASSED [ 39%] 1054s tests/translate/search/test_match.py::TestMatch::test_space_mismatch PASSED [ 39%] 1054s tests/translate/search/test_match.py::TestMatch::test_hyphen_mismatch PASSED [ 39%] 1054s tests/translate/search/test_terminology.py::TestTerminology::test_basic PASSED [ 39%] 1054s tests/translate/services/test_tmserver.py::TestTMServer::test_import PASSED [ 39%] 1055s tests/translate/services/test_tmserver.py::TestTMServer::test_server PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_parse PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_tree PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_add PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_contains PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getitem PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getslice PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_iter PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_len PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_mul PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_offset PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_at_offset PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find_elems_with PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_flatten PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case1 PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case2 PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case3 PASSED [ 39%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case4 PASSED [ 40%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_insert PASSED [ 40%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_isleaf PASSED [ 40%] 1055s tests/translate/storage/placeables/test_base.py::TestStringElem::test_prune PASSED [ 40%] 1055s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_base_placeables PASSED [ 40%] 1055s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables XFAIL [ 40%] 1055s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables XFAIL [ 40%] 1055s tests/translate/storage/placeables/test_general.py::test_placeable_numbers PASSED [ 40%] 1055s tests/translate/storage/placeables/test_general.py::test_placeable_newline PASSED [ 40%] 1055s tests/translate/storage/placeables/test_general.py::test_placeable_alt_attr PASSED [ 40%] 1055s tests/translate/storage/placeables/test_general.py::test_placeable_qt_formatting PASSED [ 40%] 1055s tests/translate/storage/placeables/test_general.py::test_placeable_camelcase PASSED [ 40%] 1055s tests/translate/storage/placeables/test_general.py::test_placeable_space PASSED [ 40%] 1055s tests/translate/storage/placeables/test_general.py::test_placeable_punctuation PASSED [ 40%] 1055s tests/translate/storage/placeables/test_general.py::test_placeable_xml_entity PASSED [ 40%] 1055s tests/translate/storage/placeables/test_general.py::test_placeable_xml_tag PASSED [ 40%] 1055s tests/translate/storage/placeables/test_general.py::test_placeable_option PASSED [ 40%] 1055s tests/translate/storage/placeables/test_general.py::test_placeable_file PASSED [ 40%] 1055s tests/translate/storage/placeables/test_general.py::test_placeable_email PASSED [ 40%] 1055s tests/translate/storage/placeables/test_general.py::test_placeable_caps PASSED [ 40%] 1055s tests/translate/storage/placeables/test_general.py::test_placeable_formatting PASSED [ 40%] 1055s tests/translate/storage/placeables/test_general.py::test_placeable_doubleat PASSED [ 40%] 1055s tests/translate/storage/placeables/test_general.py::test_placeable_brace PASSED [ 40%] 1055s tests/translate/storage/placeables/test_general.py::test_python_placeable PASSED [ 40%] 1055s tests/translate/storage/placeables/test_lisa.py::test_xml_to_strelem PASSED [ 40%] 1055s tests/translate/storage/placeables/test_lisa.py::test_xml_space PASSED [ 40%] 1055s tests/translate/storage/placeables/test_lisa.py::test_chunk_list PASSED [ 40%] 1055s tests/translate/storage/placeables/test_lisa.py::test_set_strelem_to_xml PASSED [ 40%] 1055s tests/translate/storage/placeables/test_lisa.py::test_unknown_xml_placeable PASSED [ 40%] 1055s tests/translate/storage/placeables/test_terminology.py::TestTerminologyPlaceable::test_simple_terminology PASSED [ 40%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_isfuzzy PASSED [ 40%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_create PASSED [ 40%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_eq PASSED [ 40%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escapes PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_difficult_escapes PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_note_sanity PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_target PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_get PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_set PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quotes_with_newline PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline_in_xml PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_twitter PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quote PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_question PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_double_space PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_leading_space PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_tailing_space PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_xml_entities PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote_newline PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_arrows PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link_and_text PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_blank_string PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_escape_message_with_newline PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_invalid_lang PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_quote PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_leading_space PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_trailing_space PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_with_ampersand PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_double_space PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_deep_double_space PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_complex_xml PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quoted_newlines PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline PASSED [ 41%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline_in_xml PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_twitter PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_question PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quote PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_space PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_space PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_newlines PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_xml_entities PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_code PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_arrows PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link_and_text PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_space PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_spaces PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_escaped_newline PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_escaped_newline PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_spaces PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_newline PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_many_quotes PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string_again PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_quotes_string PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_newline_in_string PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_not_translatable_string PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_newline PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_comments PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_quote PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space_quoted PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space_quoted PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_with_ampersand PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_double_space_quoted PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_deep_double_space_quoted PASSED [ 42%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_complex_xml PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unicode PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_unescaped PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_alone PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_full PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_escaped_percent PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_percent PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_quote PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unparied_quote PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_slash PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_ignored PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escaped_quote_end PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_create_blank PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_remove PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_find PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_parse PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_files PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_save PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_extensions PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_mimetypes PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translate PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_nonascii PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_default_handlings PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_invalid_filename PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_namespaces PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_serialize PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add_formatting PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_invalid_entity PASSED [ 43%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_indent PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_markup PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_edit PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_noedit PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_remove PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_set PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_others PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_quotes_set PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_g PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_namespace PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_zh_hk PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_b_zh_hk PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_missing_plural PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_removeunit PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata_text PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_prefix PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_rtl PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_tail PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translatable_marking PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_escaping PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_isfuzzy PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_create PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_eq PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_escapes PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_difficult_escapes PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_note_sanity PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_target PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_get PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_set PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_create_blank PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_add PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_remove PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_find PASSED [ 44%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_parse PASSED [ 45%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_files PASSED [ 45%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_save PASSED [ 45%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_extensions PASSED [ 45%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_mimetypes PASSED [ 45%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_translate PASSED [ 45%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_markup PASSED [ 45%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_nonascii PASSED [ 45%] 1055s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_plural PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationUnit::test_isfuzzy PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationUnit::test_create PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationUnit::test_eq PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationUnit::test_target PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationUnit::test_escapes PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationUnit::test_difficult_escapes PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationUnit::test_note_sanity PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_get PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_set PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationStore::test_create_blank PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationStore::test_add PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationStore::test_remove PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationStore::test_find PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationStore::test_translate PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationStore::test_parse PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationStore::test_files PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationStore::test_save PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationStore::test_markup PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationStore::test_nonascii PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationStore::test_extensions PASSED [ 45%] 1055s tests/translate/storage/test_base.py::TestTranslationStore::test_mimetypes PASSED [ 45%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_isfuzzy PASSED [ 45%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_create PASSED [ 45%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_eq PASSED [ 45%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_target PASSED [ 45%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_escapes PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_get PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_set PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_difficult_escapes PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_newlines PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_istranslated PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_note_sanity PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_create_blank PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_add PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_remove PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_find PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_translate PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_parse PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_files PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_save PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_markup PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_nonascii PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_extensions PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_mimetypes PASSED [ 46%] 1055s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_checksum PASSED [ 46%] 1055s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_isfuzzy PASSED [ 46%] 1055s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_create PASSED [ 46%] 1055s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_eq PASSED [ 46%] 1055s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_target PASSED [ 46%] 1055s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_escapes PASSED [ 46%] 1055s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_difficult_escapes PASSED [ 46%] 1055s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_note_sanity PASSED [ 46%] 1055s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_get PASSED [ 46%] 1055s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_set PASSED [ 46%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_create_blank PASSED [ 46%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_add PASSED [ 46%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_remove PASSED [ 46%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_find PASSED [ 46%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_translate PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_files PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_save PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_markup PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_nonascii PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_extensions PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_mimetypes PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_singlequoting PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8 PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_dialect PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_sig PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_default PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_location_is_parsed PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_context_is_parsed PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_newline PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse_sample PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_detection PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding PASSED [ 47%] 1055s tests/translate/storage/test_csvl10n.py::TestCSV::test_corrupt PASSED [ 47%] 1055s tests/translate/storage/test_directory.py::TestDirectory::test_created PASSED [ 47%] 1055s tests/translate/storage/test_directory.py::TestDirectory::test_basic PASSED [ 47%] 1055s tests/translate/storage/test_directory.py::TestDirectory::test_structure PASSED [ 47%] 1055s tests/translate/storage/test_directory.py::TestDirectory::test_getunits PASSED [ 47%] 1055s tests/translate/storage/test_dtd.py::test_roundtrip_quoting PASSED [ 47%] 1055s tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases XFAIL [ 47%] 1055s tests/translate/storage/test_dtd.py::test_quotefordtd PASSED [ 47%] 1055s tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases XFAIL [ 47%] 1055s tests/translate/storage/test_dtd.py::test_unquotefromdtd PASSED [ 47%] 1055s tests/translate/storage/test_dtd.py::test_android_roundtrip_quoting PASSED [ 47%] 1055s tests/translate/storage/test_dtd.py::test_quoteforandroid PASSED [ 47%] 1055s tests/translate/storage/test_dtd.py::test_unquotefromandroid PASSED [ 47%] 1055s tests/translate/storage/test_dtd.py::test_removeinvalidamp PASSED [ 47%] 1055s tests/translate/storage/test_dtd.py::TestDTDUnit::test_isfuzzy PASSED [ 47%] 1055s tests/translate/storage/test_dtd.py::TestDTDUnit::test_create PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTDUnit::test_eq PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTDUnit::test_escapes PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTDUnit::test_difficult_escapes PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTDUnit::test_note_sanity PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTDUnit::test_target PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_get PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_set PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_create_blank PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_add PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_remove PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_find PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_parse PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_files PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_save PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_extensions PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_mimetypes PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_translate PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_markup PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_nonascii PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_blanklines PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity_source PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_hashcomment_source PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_commentclosing PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_commententity PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_newlines_in_entity PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_conflate_comments PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_localisation_notes PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_in_source PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_order_in_source PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_comment_following XFAIL [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_comment_newline_space_closing PASSED [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting XFAIL [ 48%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_missing_quotes PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping_roundtrip PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_create_blank PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_add PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_remove PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_find PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_parse PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_files PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_save PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_extensions PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_mimetypes PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_translate PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_markup PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_nonascii PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape_parse_and_convert_back PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape PASSED [ 49%] 1055s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape_parse_and_convert_back PASSED [ 49%] 1055s tests/translate/storage/test_factory.py::TestPOFactory::test_getclass PASSED [ 49%] 1055s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject_store PASSED [ 49%] 1055s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject PASSED [ 49%] 1055s tests/translate/storage/test_factory.py::TestPOFactory::test_get_noname_object PASSED [ 49%] 1055s tests/translate/storage/test_factory.py::TestPOFactory::test_gzfile PASSED [ 49%] 1055s tests/translate/storage/test_factory.py::TestPOFactory::test_bz2file PASSED [ 49%] 1055s tests/translate/storage/test_factory.py::TestPOFactory::test_directory PASSED [ 49%] 1055s tests/translate/storage/test_factory.py::TestXliffFactory::test_getclass PASSED [ 49%] 1055s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject_store PASSED [ 49%] 1055s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject PASSED [ 49%] 1055s tests/translate/storage/test_factory.py::TestXliffFactory::test_get_noname_object PASSED [ 49%] 1055s tests/translate/storage/test_factory.py::TestXliffFactory::test_gzfile PASSED [ 49%] 1055s tests/translate/storage/test_factory.py::TestXliffFactory::test_bz2file PASSED [ 49%] 1055s tests/translate/storage/test_factory.py::TestXliffFactory::test_directory PASSED [ 49%] 1055s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getclass PASSED [ 50%] 1055s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject_store PASSED [ 50%] 1055s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject PASSED [ 50%] 1055s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_get_noname_object PASSED [ 50%] 1055s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_gzfile PASSED [ 50%] 1055s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_bz2file PASSED [ 50%] 1055s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_directory PASSED [ 50%] 1055s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getclass PASSED [ 50%] 1055s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject_store PASSED [ 50%] 1055s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject PASSED [ 50%] 1055s tests/translate/storage/test_factory.py::TestWordfastFactory::test_get_noname_object PASSED [ 50%] 1055s tests/translate/storage/test_factory.py::TestWordfastFactory::test_gzfile PASSED [ 50%] 1055s tests/translate/storage/test_factory.py::TestWordfastFactory::test_bz2file PASSED [ 50%] 1055s tests/translate/storage/test_factory.py::TestWordfastFactory::test_directory PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_isfuzzy PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_create PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_eq PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_escapes PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_difficult_escapes PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_note_sanity PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_target PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_get PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_set PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_create_blank PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_add PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_remove PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_find PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_parse PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_files PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_save PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_extensions PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_mimetypes PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_translate PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_markup PASSED [ 50%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_nonascii PASSED [ 51%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_root_config_detect PASSED [ 51%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_detect PASSED [ 51%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_key_config_detect PASSED [ 51%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_mixed_ok PASSED [ 51%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_namespace_config_detect PASSED [ 51%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_four_spaces PASSED [ 51%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_tab PASSED [ 51%] 1055s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_none_linearizes PASSED [ 51%] 1055s tests/translate/storage/test_html.py::test_guess_encoding PASSED [ 51%] 1055s tests/translate/storage/test_html.py::TestHTMLParsing::test_mismatched_tags PASSED [ 51%] 1055s tests/translate/storage/test_html.py::TestHTMLParsing::test_self_closing_tags PASSED [ 51%] 1055s tests/translate/storage/test_html.py::TestHTMLParsing::test_escaping_script_and_pre PASSED [ 51%] 1055s tests/translate/storage/test_html.py::TestHTMLExtraction::test_strip_html PASSED [ 51%] 1055s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_figcaption PASSED [ 51%] 1055s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_caption_td_th PASSED [ 51%] 1055s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_alt PASSED [ 51%] 1055s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_title PASSED [ 51%] 1055s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre PASSED [ 51%] 1055s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre_code PASSED [ 51%] 1055s tests/translate/storage/test_ini.py::TestINIUnit::test_isfuzzy PASSED [ 51%] 1055s tests/translate/storage/test_ini.py::TestINIUnit::test_create PASSED [ 51%] 1055s tests/translate/storage/test_ini.py::TestINIUnit::test_eq PASSED [ 51%] 1055s tests/translate/storage/test_ini.py::TestINIUnit::test_escapes PASSED [ 51%] 1055s tests/translate/storage/test_ini.py::TestINIUnit::test_difficult_escapes PASSED [ 51%] 1055s tests/translate/storage/test_ini.py::TestINIUnit::test_note_sanity PASSED [ 51%] 1055s tests/translate/storage/test_ini.py::TestINIUnit::test_target PASSED [ 51%] 1055s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_get PASSED [ 51%] 1055s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_set PASSED [ 51%] 1055s tests/translate/storage/test_ini.py::TestINIStore::test_create_blank PASSED [ 51%] 1055s tests/translate/storage/test_ini.py::TestINIStore::test_add PASSED [ 51%] 1055s tests/translate/storage/test_ini.py::TestINIStore::test_remove PASSED [ 51%] 1055s tests/translate/storage/test_ini.py::TestINIStore::test_find PASSED [ 51%] 1055s tests/translate/storage/test_ini.py::TestINIStore::test_parse PASSED [ 51%] 1055s tests/translate/storage/test_ini.py::TestINIStore::test_files PASSED [ 52%] 1055s tests/translate/storage/test_ini.py::TestINIStore::test_save PASSED [ 52%] 1055s tests/translate/storage/test_ini.py::TestINIStore::test_extensions PASSED [ 52%] 1055s tests/translate/storage/test_ini.py::TestINIStore::test_mimetypes PASSED [ 52%] 1055s tests/translate/storage/test_ini.py::TestINIStore::test_translate PASSED [ 52%] 1055s tests/translate/storage/test_ini.py::TestINIStore::test_markup PASSED [ 52%] 1055s tests/translate/storage/test_ini.py::TestINIStore::test_nonascii PASSED [ 52%] 1055s tests/translate/storage/test_ini.py::TestINIStore::test_serialize PASSED [ 52%] 1055s tests/translate/storage/test_ini.py::TestINIStore::test_rem PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_isfuzzy PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_create PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_eq PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_escapes PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_difficult_escapes PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_note_sanity PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_target PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_get PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_set PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_create_blank PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_remove PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_find PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_parse PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_files PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_save PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_extensions PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_mimetypes PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_translate PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_markup PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_nonascii PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_serialize PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_can_not_detect PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_error PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_filter PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_ordering PASSED [ 52%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_args PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_bom PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex_array PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_list_like PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_blank PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_types PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_null PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_isfuzzy PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_create PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_eq PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_escapes PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_difficult_escapes PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_note_sanity PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_target PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_get PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_set PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_serialize PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_ordering PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_array PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index_nested PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_nested_list_mixed PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_list_to_dict PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_complex_keys PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_other PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0]-expected0] PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0]-expected1] PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0][1][2][3]-expected2] PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test]selection-expected3] PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test][0]selection-expected4] PASSED [ 53%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0][test]selection-expected5] PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[-expected6] PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_dot_keys PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_isfuzzy PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_create PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_eq PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_escapes PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_difficult_escapes PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_note_sanity PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_target PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_get PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_set PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_create_blank PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_add PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_remove PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_find PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_parse PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_files PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_save PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_extensions PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_mimetypes PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_translate PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_markup PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_nonascii PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_dot_keys PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_leading_dot_keys PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize_no_description PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_set_target PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_placeholders PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_create_blank PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_add PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_remove PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_find PASSED [ 54%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_parse PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_files PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_save PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_extensions PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_mimetypes PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_translate PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_markup PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nonascii PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_serialize PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_units PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_plurals PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nested_array PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural_id PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_create_blank PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_add PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_remove PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_find PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_parse PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_files PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_save PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_extensions PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_mimetypes PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_translate PASSED [ 55%] 1055s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_markup PASSED [ 55%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_nonascii PASSED [ 55%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals PASSED [ 55%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals_missing PASSED [ 55%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_case_no_msg PASSED [ 55%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_complex_id PASSED [ 55%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_create_blank PASSED [ 55%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_add PASSED [ 55%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_remove PASSED [ 55%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_find PASSED [ 55%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_parse PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_files PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_save PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_extensions PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_mimetypes PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_translate PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_markup PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nonascii PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_serialize PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_units PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_plurals PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nested_array PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_new_plural PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_ru PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_create_blank PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_add PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_remove PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_find PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_parse PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_files PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_save PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_extensions PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_mimetypes PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_translate PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_markup PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nonascii PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_serialize PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_units PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_plurals PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nested_array PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_new_plural PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_ru PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_create_blank PASSED [ 56%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_add PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_remove PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_find PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_parse PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_files PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_save PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_extensions PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_mimetypes PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_translate PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_markup PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_nonascii PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals_missing PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_invalid PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_dot_keys PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_create_blank PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_add PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_remove PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_find PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_parse PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_files PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_save PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_extensions PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_mimetypes PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_translate PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_markup PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_nonascii PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_1 PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_2 PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_blank PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_missing PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_simplification PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_invalid PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_dot_keys PASSED [ 57%] 1056s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_create_blank PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_add PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_remove PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_find PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_parse PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_files PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_save PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_extensions PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_mimetypes PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_translate PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_markup PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_nonascii PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_roundtrip PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_leading_dot_keys PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_create_blank PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_add PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_remove PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_find PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_parse PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_files PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_save PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_extensions PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_mimetypes PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_translate PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_markup PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_nonascii PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_roundtrip PASSED [ 58%] 1056s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_leading_dot_keys PASSED [ 58%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_atx_heading PASSED [ 58%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_autolink PASSED [ 58%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_block_quote PASSED [ 58%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_block PASSED [ 58%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_span PASSED [ 58%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_atx_heading PASSED [ 58%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_document PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_list_item PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_escaped_character PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_hard_line_break PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_block PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_character_entities PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_span PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_image_embedded_in_link PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_collapsed_reference_link PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_full_reference_link PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_shortcut_reference_link PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_merging_of_adjacent_placeholders PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_block_tokens PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_list PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_basic_markup PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_only_whitespace_and_placeholders PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_placeholder_trimming PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image_no_title PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_link PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_text_paragraph PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_remove_placeholders_from_both_ends_of_translation_units PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_setext_heading PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_table_with_header PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_thematic_break PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_hard_line_break_in_translation_unit PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_missing_placeholder PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_duplicate_placeholder PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_extraneous_placeholder PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_reordered_placeholders PASSED [ 59%] 1056s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_invalid_markdown_in_translation PASSED [ 59%] 1056s tests/translate/storage/test_mo.py::TestMOUnit::test_isfuzzy PASSED [ 59%] 1056s tests/translate/storage/test_mo.py::TestMOUnit::test_create PASSED [ 59%] 1056s tests/translate/storage/test_mo.py::TestMOUnit::test_eq PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOUnit::test_target PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOUnit::test_escapes PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOUnit::test_difficult_escapes PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOUnit::test_note_sanity PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_get PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_set PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOUnit::test_context PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOFile::test_create_blank PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOFile::test_add PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOFile::test_remove PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOFile::test_find PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOFile::test_translate PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOFile::test_parse PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOFile::test_files PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOFile::test_save PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOFile::test_markup PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOFile::test_nonascii PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOFile::test_extensions PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOFile::test_mimetypes PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOFile::test_language PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOFile::test_context PASSED [ 60%] 1056s tests/translate/storage/test_mo.py::TestMOFile::test_output PASSED [ 60%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_isfuzzy PASSED [ 60%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_create PASSED [ 60%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_eq PASSED [ 60%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_escapes PASSED [ 60%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_difficult_escapes PASSED [ 60%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_note_sanity PASSED [ 60%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_target PASSED [ 60%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_get PASSED [ 60%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_set PASSED [ 60%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_create_blank PASSED [ 60%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_add PASSED [ 60%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_remove PASSED [ 61%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_find PASSED [ 61%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_parse PASSED [ 61%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_files PASSED [ 61%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_save PASSED [ 61%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_extensions PASSED [ 61%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_mimetypes PASSED [ 61%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_translate PASSED [ 61%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_markup PASSED [ 61%] 1056s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_nonascii PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[-] PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String-String] PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {OK}-String] PASSED [ 61%] 1056s 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%] 1056s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{ok}-String] PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{OK}-String] PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok} -String] PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_isfuzzy PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_create PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_eq PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_target PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_escapes PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_difficult_escapes PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_note_sanity PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_get PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_set PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_translate_but_same PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_untranslated PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_comments PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_copy_target PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_create_blank PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_add PASSED [ 61%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_remove PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_find PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_translate PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_parse PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_files PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_save PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_markup PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_extensions PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_mimetypes PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_nonascii PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_format_layout PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_crlf PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_active_flag PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_multiline_comments PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_template PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[--False] PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ -Source -True] PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok}-Source-True] PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok} -Source-True] PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[{ok}-Source-True] PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_headers PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_not_headers PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[0] PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[1] PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[2] PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[3] PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_tag_comments PASSED [ 62%] 1056s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_maxlength PASSED [ 62%] 1056s tests/translate/storage/test_omegat.py::TestOtUnit::test_isfuzzy PASSED [ 62%] 1056s tests/translate/storage/test_omegat.py::TestOtUnit::test_create PASSED [ 62%] 1056s tests/translate/storage/test_omegat.py::TestOtUnit::test_eq PASSED [ 62%] 1056s tests/translate/storage/test_omegat.py::TestOtUnit::test_target PASSED [ 62%] 1056s tests/translate/storage/test_omegat.py::TestOtUnit::test_escapes PASSED [ 62%] 1056s tests/translate/storage/test_omegat.py::TestOtUnit::test_difficult_escapes PASSED [ 63%] 1056s tests/translate/storage/test_omegat.py::TestOtUnit::test_note_sanity PASSED [ 63%] 1056s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_get PASSED [ 63%] 1056s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_set PASSED [ 63%] 1056s tests/translate/storage/test_omegat.py::TestOtFile::test_create_blank PASSED [ 63%] 1056s tests/translate/storage/test_omegat.py::TestOtFile::test_add PASSED [ 63%] 1056s tests/translate/storage/test_omegat.py::TestOtFile::test_remove PASSED [ 63%] 1056s tests/translate/storage/test_omegat.py::TestOtFile::test_find PASSED [ 63%] 1056s tests/translate/storage/test_omegat.py::TestOtFile::test_translate PASSED [ 63%] 1056s tests/translate/storage/test_omegat.py::TestOtFile::test_parse PASSED [ 63%] 1056s tests/translate/storage/test_omegat.py::TestOtFile::test_files PASSED [ 63%] 1056s tests/translate/storage/test_omegat.py::TestOtFile::test_save PASSED [ 63%] 1056s tests/translate/storage/test_omegat.py::TestOtFile::test_markup PASSED [ 63%] 1056s tests/translate/storage/test_omegat.py::TestOtFile::test_nonascii PASSED [ 63%] 1056s tests/translate/storage/test_omegat.py::TestOtFile::test_mimetypes PASSED [ 63%] 1056s tests/translate/storage/test_omegat.py::TestOtFile::test_extensions XFAIL [ 63%] 1056s tests/translate/storage/test_oo.py::test_makekey PASSED [ 63%] 1056s tests/translate/storage/test_oo.py::test_escape_help_text PASSED [ 63%] 1056s tests/translate/storage/test_oo.py::TestOO::test_simpleentry PASSED [ 63%] 1056s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_quickhelptest PASSED [ 63%] 1056s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_title PASSED [ 63%] 1056s tests/translate/storage/test_oo.py::TestOO::test_blankline PASSED [ 63%] 1056s tests/translate/storage/test_oo.py::TestOO::test_fieldlength PASSED [ 63%] 1056s tests/translate/storage/test_oo.py::TestOO::test_escapes PASSED [ 63%] 1056s tests/translate/storage/test_php.py::test_php_escaping_single_quote PASSED [ 63%] 1056s tests/translate/storage/test_php.py::test_php_escaping_double_quote PASSED [ 63%] 1056s tests/translate/storage/test_php.py::TestPhpUnit::test_isfuzzy PASSED [ 63%] 1056s tests/translate/storage/test_php.py::TestPhpUnit::test_create PASSED [ 63%] 1056s tests/translate/storage/test_php.py::TestPhpUnit::test_eq PASSED [ 63%] 1056s tests/translate/storage/test_php.py::TestPhpUnit::test_escapes PASSED [ 63%] 1056s tests/translate/storage/test_php.py::TestPhpUnit::test_note_sanity PASSED [ 63%] 1056s tests/translate/storage/test_php.py::TestPhpUnit::test_target PASSED [ 63%] 1056s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_get PASSED [ 63%] 1056s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_set PASSED [ 63%] 1056s tests/translate/storage/test_php.py::TestPhpUnit::test_difficult_escapes PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_create_blank PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_add PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_remove PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_find PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parse PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_files PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_save PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_extensions PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_mimetypes PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_translate PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_markup PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_nonascii PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_source PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_spaces_in_name PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_comment_definition PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_comment_blocks PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_comment_output PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_comment_add PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_multiline PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_no_array_syntax PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_spaces PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_quotes PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_number_as_value PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_non_textual PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define_with_spaces_before_key PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter_and_before_key PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equal_delimiter PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equaldel_but_before_key PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_entries_with_quotes PASSED [ 64%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_comments_at_entry_line_end PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_double_slash_comments_before_entries PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_before_end_delimiter PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simpledefinition_spaces_before_end_delimiter PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_no_trailing_comma PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_space_before_comma PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_space_before_array_declaration PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_declared_in_a_single_line PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys_assigned_to_array PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_no_keys PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_assignment_in_line_where_multiline_comment_ends PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_using_short_array_syntax PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_space_before_array_declaration PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_unnamed_nested_arrays PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_array_declaration_in_next_line PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_with_newline_after_delimiter PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_blank_entries PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_slashstar_in_string PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_heredoc_syntax PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_after_define PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_quotes PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_concatenation PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_serialize PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_space_before_comma PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_equals_in_id PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_comma_in_string PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_nowdoc PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_plain_concatenation PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_array_keys PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_double_var PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_return_array PASSED [ 65%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short_quotes PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestPhpFile::test_addunit PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_isfuzzy PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_create PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_eq PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_escapes PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_difficult_escapes PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_note_sanity PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_target PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_get PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_set PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_create_blank PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_add PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_remove PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_find PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_parse PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_files PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_save PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_extensions PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_mimetypes PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_translate PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_markup PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_nonascii PASSED [ 66%] 1056s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_plurals PASSED [ 66%] 1056s tests/translate/storage/test_po.py::test_roundtrip_quoting PASSED [ 66%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_isfuzzy PASSED [ 66%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_create PASSED [ 66%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_eq PASSED [ 66%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_target PASSED [ 66%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_escapes PASSED [ 66%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_difficult_escapes PASSED [ 66%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_note_sanity PASSED [ 66%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_rich_get PASSED [ 66%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_rich_set PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_istranslatable PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_locations PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_nongettext_location PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_adding_empty_note PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_markreview PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_errors PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_no_plural_settarget PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_wrapping_bug PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_extract_msgidcomments_from_text PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_isheader PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOUnit::test_buildfromunit PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_create_blank PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_add PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_remove PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_find PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_translate PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_parse PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_files PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_save PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_markup PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_nonascii PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_extensions PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_mimetypes PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_context_only PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_simpleentry PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_copy PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_parse_source_string PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_parse_file PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_unicode PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_plurals PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_plural_unicode PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_nongettext_location PASSED [ 67%] 1056s tests/translate/storage/test_po.py::TestPOFile::test_percent_location PASSED [ 67%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals XFAIL [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_empty_lines_notes PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_fuzzy PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated XFAIL [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_merging_automaticcomments PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_malformed_units PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_malformed_obsolete_units PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_uniforum_po PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_obsolete PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_obsolete_with_prev_msgid PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_header_escapes PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_plural PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgctxt PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgidcomments PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_multiline_obsolete PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_merge_duplicates PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_merge_mixed_sources PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_parse_context PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_parse_advanced_context PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_kde_context PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_broken_kde_context PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_id PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments_2 PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_final_slash PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_unfinished_lines PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_encoding_change PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_istranslated PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_wrapping PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_wrapping_cjk PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_wrap_emoji PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis PASSED [ 68%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis_long PASSED [ 69%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_wrap_gettext PASSED [ 69%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_msgidcomments PASSED [ 69%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_unicode_ids PASSED [ 69%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_syntax_error PASSED [ 69%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_invalid PASSED [ 69%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_wrapped_msgid PASSED [ 69%] 1057s tests/translate/storage/test_po.py::TestPOFile::test_missing_plural PASSED [ 69%] 1057s tests/translate/storage/test_pocommon.py::test_roundtrip_quote_plus PASSED [ 69%] 1057s tests/translate/storage/test_poheader.py::test_parseheaderstring PASSED [ 69%] 1057s tests/translate/storage/test_poheader.py::test_update PASSED [ 69%] 1057s tests/translate/storage/test_poheader.py::test_po_dates PASSED [ 69%] 1057s tests/translate/storage/test_poheader.py::test_timezones PASSED [ 69%] 1057s tests/translate/storage/test_poheader.py::test_header_blank PASSED [ 69%] 1057s tests/translate/storage/test_poheader.py::test_plural_equation PASSED [ 69%] 1057s tests/translate/storage/test_poheader.py::test_plural_equation_across_lines PASSED [ 69%] 1057s tests/translate/storage/test_poheader.py::test_updatecontributor PASSED [ 69%] 1057s tests/translate/storage/test_poheader.py::test_updatecontributor_header PASSED [ 69%] 1057s tests/translate/storage/test_poheader.py::test_language PASSED [ 69%] 1057s tests/translate/storage/test_poheader.py::test_project PASSED [ 69%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_isfuzzy PASSED [ 69%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_create PASSED [ 69%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_eq PASSED [ 69%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_target PASSED [ 69%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_escapes PASSED [ 69%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_difficult_escapes PASSED [ 69%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_note_sanity PASSED [ 69%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_get PASSED [ 69%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_set PASSED [ 69%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_markreview PASSED [ 69%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_errors PASSED [ 69%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_accepted_control_chars PASSED [ 69%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_unaccepted_control_chars PASSED [ 69%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_plurals PASSED [ 69%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_ids PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_create_blank PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_remove PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_find PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_translate PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_files PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_save PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_markup PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_nonascii PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_extensions PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_mimetypes PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_basic PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_namespace PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_source PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_target PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_source PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_target PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_sourcelanguage PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage_multi PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_alttrans PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_fuzzy PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_xml_space PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parsing PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_entities PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_multiple_filenodes PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_indent PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add_target PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_closing_tags PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_context_groups PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_getlocations PASSED [ 70%] 1057s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_addlocation PASSED [ 70%] 1058s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_huge PASSED [ 71%] 1058s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve_add PASSED [ 71%] 1058s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse PASSED [ 71%] 1058s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse_plural_alpha_id PASSED [ 71%] 1058s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_notes PASSED [ 71%] 1058s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_plural PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::test_find_delimiter_pos_simple PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::test_find_delimiter_pos_multiple PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::test_find_delimiter_pos_none PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::test_find_delimiter_pos_whitespace PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::test_find_delimiter_pos_escapes PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::test_is_line_continuation PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::test_key_strip PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::test_get_comment_one_line PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::test_get_comment_start PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::test_get_comment_end PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestPropUnit::test_isfuzzy PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestPropUnit::test_create PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestPropUnit::test_eq PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestPropUnit::test_escapes PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestPropUnit::test_difficult_escapes PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestPropUnit::test_note_sanity PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestPropUnit::test_target PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_get PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_set PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_create_blank PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_add PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_remove PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_find PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_parse PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_files PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_save PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_extensions PASSED [ 71%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_mimetypes PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_translate PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_markup PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_nonascii PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_quotes PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_simpledefinition PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition_source PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_reduce PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_increase PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_extra_plurals PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_non_plurals PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_encoding PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestGwtProp::test_other_plurals PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_create_blank PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_add PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_remove PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_find PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_parse PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_files PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_save PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_extensions PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_mimetypes PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_translate PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_markup PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_nonascii PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition_source PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_controlutf8_source PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_control_source PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_unicode_escaping PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_newlines_startend PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_space PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_whitespace_handling PASSED [ 72%] 1058s tests/translate/storage/test_properties.py::TestProp::test_key_value_delimiters_simple PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_comments PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_latin1 PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_fullspec_delimiters PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_fullspec_escaped_key PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_fullspec_line_continuation PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_fullspec_key_without_value PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_mac_strings PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_utf_16_save PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_mac_multiline_strings PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_unicode PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_utf8 PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_newlines PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_multilines_comments PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments_dropping PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_quotes PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_equals PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_serialization PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_double_backslashes PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_override_encoding PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_trailing_comments PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_utf16_byte_order_mark PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_raise_ioerror_if_cannot_detect_encoding PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_utf8_byte_order_mark PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_joomla_set_target PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_joomla PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_joomla_escape PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_delimiter PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_value PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_multi_comments PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_serialize_note PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_serialize_long_note PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestProp::test_trailing_newlines PASSED [ 73%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_create_blank PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_add PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_remove PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_find PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_parse PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_files PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_save PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_extensions PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_mimetypes PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_translate PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_markup PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_nonascii PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_simpledefinition PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition_source PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote_and_argument PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_header_preserved PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_blank_line_before_comment_preserved PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWiki::test_deprecated_comments_preserved PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_create_blank PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_add PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_remove PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_find PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_parse PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_files PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_save PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_extensions PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_mimetypes PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_markup PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_nonascii PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_simpledefinition PASSED [ 74%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition_source PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote_and_argument PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_encoded_html PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_cleaning_attributes PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate_source PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_create_blank PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_add PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_find PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_extensions PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_mimetypes PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_translate PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_markup PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_nonascii PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_simpledefinition PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_parse PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_files PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_save PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_cleaning_attributes PASSED [ 75%] 1058s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove XFAIL [ 75%] 1058s tests/translate/storage/test_pypo.py::TestHelpers::test_unescape PASSED [ 75%] 1058s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo PASSED [ 75%] 1058s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo_escaped_quotes PASSED [ 75%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isfuzzy PASSED [ 75%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_create PASSED [ 75%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_eq PASSED [ 75%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_target PASSED [ 75%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_escapes PASSED [ 75%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_difficult_escapes PASSED [ 75%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_note_sanity PASSED [ 75%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_get PASSED [ 75%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_set PASSED [ 75%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_istranslatable PASSED [ 75%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_locations PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_nongettext_location PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_adding_empty_note PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_markreview PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_errors PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_no_plural_settarget PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrapping_bug PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_extract_msgidcomments_from_text PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isheader PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_buildfromunit PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plurals PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plural_reduction PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes_withcomments PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_firstlines PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_newlines PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_max_line_length PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_slash PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_spacing_max_line PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_create_blank PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_add PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_remove PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_find PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_translate PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_files PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_save PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_markup PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nonascii PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_extensions PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mimetypes PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_context_only PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_simpleentry PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_copy PASSED [ 76%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_source_string PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_file PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plurals PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plural_unicode PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nongettext_location PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_percent_location PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals XFAIL [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_empty_lines_notes PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_fuzzy PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated XFAIL [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merging_automaticcomments PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_units PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_obsolete_units PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_uniforum_po PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete_with_prev_msgid PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_header_escapes PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_plural PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgctxt PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgidcomments PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_multiline_obsolete PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_mixed_sources PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_context PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_advanced_context PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_context PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_broken_kde_context PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_id PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments_2 PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_final_slash PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unfinished_lines PASSED [ 77%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_encoding_change PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_istranslated PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping_cjk PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_emoji PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis_long PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_gettext PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_msgidcomments PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_ids PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_syntax_error PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapped_msgid PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_missing_plural PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_combine_msgidcomments PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates_msgctxt PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_blanks PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_output_str_unicode PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_posections PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_typecomments PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unassociated_comments PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_header PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_prevmsgid_parse PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_newlines PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unix_newlines PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mac_newlines PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_header PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_comment PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_bom PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_long_msgidcomments PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_incomplete PASSED [ 78%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_invalid PASSED [ 79%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_write PASSED [ 79%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment XFAIL [ 79%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_typecomment PASSED [ 79%] 1058s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_custom PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtUnit::test_isfuzzy PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtUnit::test_create PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtUnit::test_eq PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtUnit::test_target PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtUnit::test_escapes PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtUnit::test_difficult_escapes PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtUnit::test_note_sanity PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_get PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_set PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtFile::test_create_blank PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtFile::test_find PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtFile::test_translate PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtFile::test_markup PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtFile::test_extensions PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtFile::test_mimetypes PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtFile::test_parse PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtFile::test_save PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtFile::test_files PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtFile::test_nonascii PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtFile::test_add PASSED [ 79%] 1058s tests/translate/storage/test_qm.py::TestQtFile::test_remove PASSED [ 79%] 1058s tests/translate/storage/test_qph.py::TestQphUnit::test_isfuzzy PASSED [ 79%] 1058s tests/translate/storage/test_qph.py::TestQphUnit::test_create PASSED [ 79%] 1058s tests/translate/storage/test_qph.py::TestQphUnit::test_eq PASSED [ 79%] 1058s tests/translate/storage/test_qph.py::TestQphUnit::test_target PASSED [ 79%] 1058s tests/translate/storage/test_qph.py::TestQphUnit::test_escapes PASSED [ 79%] 1058s tests/translate/storage/test_qph.py::TestQphUnit::test_difficult_escapes PASSED [ 79%] 1058s tests/translate/storage/test_qph.py::TestQphUnit::test_note_sanity PASSED [ 79%] 1058s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_get PASSED [ 79%] 1058s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_set PASSED [ 80%] 1058s tests/translate/storage/test_qph.py::TestQphFile::test_create_blank PASSED [ 80%] 1058s tests/translate/storage/test_qph.py::TestQphFile::test_add PASSED [ 80%] 1058s tests/translate/storage/test_qph.py::TestQphFile::test_remove PASSED [ 80%] 1058s tests/translate/storage/test_qph.py::TestQphFile::test_find PASSED [ 80%] 1058s tests/translate/storage/test_qph.py::TestQphFile::test_translate PASSED [ 80%] 1058s tests/translate/storage/test_qph.py::TestQphFile::test_parse PASSED [ 80%] 1058s tests/translate/storage/test_qph.py::TestQphFile::test_files PASSED [ 80%] 1058s tests/translate/storage/test_qph.py::TestQphFile::test_save PASSED [ 80%] 1058s tests/translate/storage/test_qph.py::TestQphFile::test_markup PASSED [ 80%] 1058s tests/translate/storage/test_qph.py::TestQphFile::test_nonascii PASSED [ 80%] 1058s tests/translate/storage/test_qph.py::TestQphFile::test_extensions PASSED [ 80%] 1058s tests/translate/storage/test_qph.py::TestQphFile::test_mimetypes PASSED [ 80%] 1058s tests/translate/storage/test_qph.py::TestQphFile::test_basic PASSED [ 80%] 1058s tests/translate/storage/test_qph.py::TestQphFile::test_source PASSED [ 80%] 1058s tests/translate/storage/test_qph.py::TestQphFile::test_target PASSED [ 80%] 1058s tests/translate/storage/test_qph.py::TestQphFile::test_language PASSED [ 80%] 1058s tests/translate/storage/test_rc.py::test_escaping PASSED [ 80%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_comments PASSED [ 80%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_textinclude PASSED [ 80%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_parse_dialog PASSED [ 80%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_parse_stringtable PASSED [ 80%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_lf PASSED [ 80%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_crlf PASSED [ 80%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_cr PASSED [ 80%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_parse_no_language PASSED [ 80%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude PASSED [ 80%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_multiline PASSED [ 80%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_str PASSED [ 80%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_empty PASSED [ 80%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_utf_8 PASSED [ 80%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_utf_16 PASSED [ 80%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_comment PASSED [ 80%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_stringtables PASSED [ 80%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude_appstudio PASSED [ 81%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_id_whitespace PASSED [ 81%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_menu_comment PASSED [ 81%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_decompiled PASSED [ 81%] 1059s tests/translate/storage/test_rc.py::TestRcFile::test_quotes PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_isfuzzy PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_create PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_eq PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_escapes PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_difficult_escapes PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_note_sanity PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_target PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_get PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_set PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_create_blank PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_add PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_remove PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_find PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_parse PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_files PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_save PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_extensions PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_mimetypes PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_translate PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_markup PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_nonascii PASSED [ 81%] 1059s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_roundtrip PASSED [ 81%] 1059s tests/translate/storage/test_resx.py::TestRESXUnit::test_isfuzzy PASSED [ 81%] 1059s tests/translate/storage/test_resx.py::TestRESXUnit::test_create PASSED [ 81%] 1059s tests/translate/storage/test_resx.py::TestRESXUnit::test_eq PASSED [ 81%] 1059s tests/translate/storage/test_resx.py::TestRESXUnit::test_escapes PASSED [ 81%] 1059s tests/translate/storage/test_resx.py::TestRESXUnit::test_difficult_escapes PASSED [ 81%] 1059s tests/translate/storage/test_resx.py::TestRESXUnit::test_note_sanity PASSED [ 81%] 1059s tests/translate/storage/test_resx.py::TestRESXUnit::test_target PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_get PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_set PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_isfuzzy PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_create PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_eq PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_escapes PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_difficult_escapes PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_note_sanity PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_target PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_get PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_set PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit_comment PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXfile::test_create_blank PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXfile::test_add PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXfile::test_remove PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXfile::test_find PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXfile::test_parse PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXfile::test_files PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXfile::test_save PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXfile::test_extensions PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXfile::test_mimetypes PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXfile::test_translate PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXfile::test_markup PASSED [ 82%] 1059s tests/translate/storage/test_resx.py::TestRESXfile::test_nonascii PASSED [ 82%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_isfuzzy PASSED [ 82%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_create PASSED [ 82%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq PASSED [ 82%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_escapes PASSED [ 82%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_difficult_escapes PASSED [ 82%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_note_sanity PASSED [ 82%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_target PASSED [ 82%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_get PASSED [ 82%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_set PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_source PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq_formatvaluetype PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_innerkey PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_create_blank PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_remove PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_find PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_parse PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_files PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_save PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_extensions PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_mimetypes PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_translate PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_markup PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_nonascii PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_serialize PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_default_handlings PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_base_filename PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_plural_zero_always_set PASSED [ 83%] 1059s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add_unit PASSED [ 83%] 1059s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_isfuzzy PASSED [ 83%] 1059s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_create PASSED [ 83%] 1059s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_eq PASSED [ 83%] 1059s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_escapes PASSED [ 83%] 1059s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_difficult_escapes PASSED [ 83%] 1059s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_target PASSED [ 83%] 1059s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_get PASSED [ 83%] 1059s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_set PASSED [ 83%] 1059s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity XFAIL [ 83%] 1059s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_create_blank PASSED [ 83%] 1059s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_add PASSED [ 83%] 1059s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_remove PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_find PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_parse PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_files PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_save PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_extensions PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_mimetypes PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_translate PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_markup PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_nonascii PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_create_blank PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_add PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_remove PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_find PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_parse PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_files PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_save PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_extensions PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_mimetypes PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_translate PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_markup PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_nonascii PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_create_blank PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_add PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_remove PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_find PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_parse PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_files PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_save PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_extensions PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_mimetypes PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_translate PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_markup PASSED [ 84%] 1059s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_nonascii PASSED [ 85%] 1059s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_create_blank PASSED [ 85%] 1059s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_add PASSED [ 85%] 1059s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_remove PASSED [ 85%] 1059s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_find PASSED [ 85%] 1059s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_parse PASSED [ 85%] 1059s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_files PASSED [ 85%] 1059s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_save PASSED [ 85%] 1059s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_extensions PASSED [ 85%] 1059s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_mimetypes PASSED [ 85%] 1059s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_translate PASSED [ 85%] 1059s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_markup PASSED [ 85%] 1059s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_nonascii PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXUnit::test_isfuzzy PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXUnit::test_create PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXUnit::test_eq PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXUnit::test_target PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXUnit::test_escapes PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXUnit::test_difficult_escapes PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXUnit::test_note_sanity PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_get PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_set PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_create_blank PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_add PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_remove PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_find PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_translate PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_parse PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_files PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_save PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_markup PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_nonascii PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_extensions PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_mimetypes PASSED [ 85%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_basic PASSED [ 86%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_source PASSED [ 86%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_target PASSED [ 86%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_setid PASSED [ 86%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_indent PASSED [ 86%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_descrip PASSED [ 86%] 1059s tests/translate/storage/test_tbx.py::TestTBXfile::test_note_from PASSED [ 86%] 1059s tests/translate/storage/test_tiki.py::TestTikiUnit::test_locations PASSED [ 86%] 1059s tests/translate/storage/test_tiki.py::TestTikiUnit::test_to_unicode PASSED [ 86%] 1059s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_simple PASSED [ 86%] 1059s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_encode PASSED [ 86%] 1059s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_locations PASSED [ 86%] 1059s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_ignore_extras PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnit::test_isfuzzy PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnit::test_create PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnit::test_eq PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnit::test_target PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnit::test_escapes PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnit::test_difficult_escapes PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnit::test_note_sanity PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_get PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_set PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_isfuzzy PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_create PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_eq PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_target PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_escapes PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_difficult_escapes PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_note_sanity PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_get PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_set PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXfile::test_create_blank PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXfile::test_add PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXfile::test_remove PASSED [ 86%] 1059s tests/translate/storage/test_tmx.py::TestTMXfile::test_find PASSED [ 87%] 1059s tests/translate/storage/test_tmx.py::TestTMXfile::test_parse PASSED [ 87%] 1059s tests/translate/storage/test_tmx.py::TestTMXfile::test_files PASSED [ 87%] 1059s tests/translate/storage/test_tmx.py::TestTMXfile::test_save PASSED [ 87%] 1059s tests/translate/storage/test_tmx.py::TestTMXfile::test_markup PASSED [ 87%] 1059s tests/translate/storage/test_tmx.py::TestTMXfile::test_nonascii PASSED [ 87%] 1059s tests/translate/storage/test_tmx.py::TestTMXfile::test_extensions PASSED [ 87%] 1059s tests/translate/storage/test_tmx.py::TestTMXfile::test_mimetypes PASSED [ 87%] 1059s tests/translate/storage/test_tmx.py::TestTMXfile::test_translate PASSED [ 87%] 1059s tests/translate/storage/test_tmx.py::TestTMXfile::test_addtranslation PASSED [ 87%] 1059s tests/translate/storage/test_tmx.py::TestTMXfile::test_withcomment PASSED [ 87%] 1059s tests/translate/storage/test_tmx.py::TestTMXfile::test_withnewlines PASSED [ 87%] 1059s tests/translate/storage/test_tmx.py::TestTMXfile::test_xmlentities PASSED [ 87%] 1059s tests/translate/storage/test_tmx.py::TestTMXfile::test_controls_cleaning PASSED [ 87%] 1059s tests/translate/storage/test_trados.py::test_unescape PASSED [ 87%] 1059s tests/translate/storage/test_trados.py::test_escape PASSED [ 87%] 1059s tests/translate/storage/test_ts.py::TestTS::test_construct PASSED [ 87%] 1059s tests/translate/storage/test_ts2.py::TestTSUnit::test_isfuzzy PASSED [ 87%] 1059s tests/translate/storage/test_ts2.py::TestTSUnit::test_create PASSED [ 87%] 1059s tests/translate/storage/test_ts2.py::TestTSUnit::test_eq PASSED [ 87%] 1059s tests/translate/storage/test_ts2.py::TestTSUnit::test_target PASSED [ 87%] 1059s tests/translate/storage/test_ts2.py::TestTSUnit::test_escapes PASSED [ 87%] 1059s tests/translate/storage/test_ts2.py::TestTSUnit::test_difficult_escapes PASSED [ 87%] 1059s tests/translate/storage/test_ts2.py::TestTSUnit::test_note_sanity PASSED [ 87%] 1059s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_get PASSED [ 87%] 1059s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_set PASSED [ 87%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_create_blank PASSED [ 87%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_add PASSED [ 87%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_remove PASSED [ 87%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_find PASSED [ 87%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_translate PASSED [ 87%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_parse PASSED [ 87%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_files PASSED [ 87%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_save PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_markup PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_nonascii PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_extensions PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_mimetypes PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_basic PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_source PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_target PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_plurals PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_nplural PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_language PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_edit PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_obsolete PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_locations PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_merge_with_fuzzies PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_getid PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_backnforth PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_context PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_roundtrip_context PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_edit_missing_translation PASSED [ 88%] 1059s tests/translate/storage/test_ts2.py::TestTSfile::test_missing_source PASSED [ 88%] 1059s tests/translate/storage/test_txt.py::TestTxtUnit::test_isfuzzy PASSED [ 88%] 1059s tests/translate/storage/test_txt.py::TestTxtUnit::test_create PASSED [ 88%] 1059s tests/translate/storage/test_txt.py::TestTxtUnit::test_eq PASSED [ 88%] 1059s tests/translate/storage/test_txt.py::TestTxtUnit::test_escapes PASSED [ 88%] 1059s tests/translate/storage/test_txt.py::TestTxtUnit::test_difficult_escapes PASSED [ 88%] 1059s tests/translate/storage/test_txt.py::TestTxtUnit::test_note_sanity PASSED [ 88%] 1059s tests/translate/storage/test_txt.py::TestTxtUnit::test_target PASSED [ 88%] 1059s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_get PASSED [ 88%] 1059s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_set PASSED [ 88%] 1059s tests/translate/storage/test_txt.py::TestTxtFile::test_create_blank PASSED [ 88%] 1059s tests/translate/storage/test_txt.py::TestTxtFile::test_add PASSED [ 88%] 1059s tests/translate/storage/test_txt.py::TestTxtFile::test_remove PASSED [ 88%] 1059s tests/translate/storage/test_txt.py::TestTxtFile::test_find PASSED [ 88%] 1059s tests/translate/storage/test_txt.py::TestTxtFile::test_parse PASSED [ 89%] 1059s tests/translate/storage/test_txt.py::TestTxtFile::test_files PASSED [ 89%] 1059s tests/translate/storage/test_txt.py::TestTxtFile::test_save PASSED [ 89%] 1059s tests/translate/storage/test_txt.py::TestTxtFile::test_extensions PASSED [ 89%] 1059s tests/translate/storage/test_txt.py::TestTxtFile::test_mimetypes PASSED [ 89%] 1059s tests/translate/storage/test_txt.py::TestTxtFile::test_translate PASSED [ 89%] 1059s tests/translate/storage/test_txt.py::TestTxtFile::test_markup PASSED [ 89%] 1059s tests/translate/storage/test_txt.py::TestTxtFile::test_nonascii PASSED [ 89%] 1059s tests/translate/storage/test_txt.py::TestTxtFile::test_simpleblock PASSED [ 89%] 1059s tests/translate/storage/test_txt.py::TestTxtFile::test_multipleblocks PASSED [ 89%] 1059s tests/translate/storage/test_txt.py::TestTxtFile::test_no_segmentation PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxUnit::test_isfuzzy PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxUnit::test_create PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxUnit::test_eq PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxUnit::test_target PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxUnit::test_escapes PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxUnit::test_difficult_escapes PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxUnit::test_note_sanity PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_get PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_set PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxFile::test_create_blank PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxFile::test_add PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxFile::test_remove PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxFile::test_find PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxFile::test_translate PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxFile::test_parse PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxFile::test_files PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxFile::test_save PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxFile::test_markup PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxFile::test_nonascii PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxFile::test_extensions PASSED [ 89%] 1059s tests/translate/storage/test_utx.py::TestUtxFile::test_mimetypes PASSED [ 89%] 1059s tests/translate/storage/test_wordfast.py::TestWFTime::test_timestring PASSED [ 89%] 1059s tests/translate/storage/test_wordfast.py::TestWFTime::test_time PASSED [ 89%] 1059s tests/translate/storage/test_wordfast.py::TestWFUnit::test_isfuzzy PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFUnit::test_create PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFUnit::test_eq PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFUnit::test_target PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFUnit::test_escapes PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFUnit::test_note_sanity PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_get PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_set PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFUnit::test_difficult_escapes PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFUnit::test_wordfast_escaping PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFUnit::test_newlines PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFUnit::test_language_setting PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFUnit::test_istranslated PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFFile::test_create_blank PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFFile::test_add PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFFile::test_remove PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFFile::test_find PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFFile::test_translate PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFFile::test_parse PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFFile::test_files PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFFile::test_save PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFFile::test_markup PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFFile::test_nonascii PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFFile::test_extensions PASSED [ 90%] 1059s tests/translate/storage/test_wordfast.py::TestWFFile::test_mimetypes PASSED [ 90%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_isfuzzy PASSED [ 90%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_create PASSED [ 90%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_eq PASSED [ 90%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_target PASSED [ 90%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_escapes PASSED [ 90%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_difficult_escapes PASSED [ 90%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_note_sanity PASSED [ 90%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_get PASSED [ 90%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_set PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_markreview PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_errors PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_accepted_control_chars PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_unaccepted_control_chars PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_create_blank PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_remove PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_find PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_translate PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parse PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_files PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_save PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_markup PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_nonascii PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_extensions PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_mimetypes PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_basic PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_namespace PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_source PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_target PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_source PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_target PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_sourcelanguage PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage_multi PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_notes PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_alttrans PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_fuzzy PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_xml_space PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parsing PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_entities PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_multiple_filenodes PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_indent PASSED [ 91%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add_target PASSED [ 92%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve PASSED [ 92%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_closing_tags PASSED [ 92%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_context_groups PASSED [ 92%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_getlocations PASSED [ 92%] 1059s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_addlocation PASSED [ 92%] 1061s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_huge PASSED [ 92%] 1061s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve_add PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_isfuzzy PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_create PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_eq PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_escapes PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_difficult_escapes PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_note_sanity PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_target PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_get PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_set PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_getlocations PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_create_blank PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_find PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_files PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_save PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_extensions PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_mimetypes PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_translate PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_markup PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nonascii PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_serialize PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit_unicode PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse_unicode_list PASSED [ 92%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_ordering PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_initial_comments PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_string_key PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nested PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_multiline PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_boolean PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_integer PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_no_quote_strings PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_double_quote_strings PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_single_quote_strings PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_double_quote_strings PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_single_quote_strings PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_escaped_double_quotes PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_newlines PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_list PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_dictionary PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_key_nesting PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add_to_mepty PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty_key PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dict_in_list PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dump_args PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_anchors PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_tagged_scalar PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_numeric PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_remove PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_special PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_quotes_roundtrip PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_create_blank PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_remove PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_find PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_parse PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_files PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_save PASSED [ 93%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_extensions PASSED [ 94%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_mimetypes PASSED [ 94%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_translate PASSED [ 94%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_markup PASSED [ 94%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_nonascii PASSED [ 94%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_list PASSED [ 94%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby PASSED [ 94%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_wrong PASSED [ 94%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_invalid_value PASSED [ 94%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural PASSED [ 94%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_empty PASSED [ 94%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_anchors PASSED [ 94%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_type_change PASSED [ 94%] 1061s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_add PASSED [ 94%] 1061s tests/translate/storage/test_zip.py::TestZIPFile::test_created PASSED [ 94%] 1061s tests/translate/storage/test_zip.py::TestZIPFile::test_basic PASSED [ 94%] 1061s tests/translate/storage/test_zip.py::TestZIPFile::test_structure PASSED [ 94%] 1061s tests/translate/storage/test_zip.py::TestZIPFile::test_getunits PASSED [ 94%] 1061s tests/translate/storage/xml_extract/test_misc.py::test_reduce_tree PASSED [ 94%] 1061s tests/translate/storage/xml_extract/test_misc.py::test_compose_mappings PASSED [ 94%] 1061s tests/translate/storage/xml_extract/test_misc.py::test_parse_tag PASSED [ 94%] 1061s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath_component PASSED [ 94%] 1061s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath PASSED [ 94%] 1061s tests/translate/storage/xml_extract/test_unit_tree.py::test__add_unit_to_tree PASSED [ 94%] 1061s tests/translate/storage/xml_extract/test_xpath_breadcrumb.py::test_breadcrumb PASSED [ 94%] 1061s tests/translate/tools/test_help.py::test_help[build_tmdb] PASSED [ 94%] 1061s tests/translate/tools/test_help.py::test_help[phppo2pypo] PASSED [ 94%] 1061s tests/translate/tools/test_help.py::test_help[poclean] PASSED [ 94%] 1061s tests/translate/tools/test_help.py::test_help[pocompile] PASSED [ 94%] 1061s tests/translate/tools/test_help.py::test_help[poconflicts] PASSED [ 94%] 1061s tests/translate/tools/test_help.py::test_help[pocount] PASSED [ 94%] 1062s tests/translate/tools/test_help.py::test_help[podebug] PASSED [ 94%] 1062s tests/translate/tools/test_help.py::test_help[pogrep] PASSED [ 94%] 1062s tests/translate/tools/test_help.py::test_help[pomerge] PASSED [ 94%] 1062s tests/translate/tools/test_help.py::test_help[porestructure] PASSED [ 95%] 1062s tests/translate/tools/test_help.py::test_help[posegment] PASSED [ 95%] 1062s tests/translate/tools/test_help.py::test_help[poswap] PASSED [ 95%] 1062s tests/translate/tools/test_help.py::test_help[poterminology] PASSED [ 95%] 1062s tests/translate/tools/test_help.py::test_help[pretranslate] PASSED [ 95%] 1062s tests/translate/tools/test_help.py::test_help[pydiff] PASSED [ 95%] 1062s tests/translate/tools/test_help.py::test_help[pypo2phppo] PASSED [ 95%] 1062s tests/translate/tools/test_junitmsgfmt.py::test_output[failure] PASSED [ 95%] 1062s tests/translate/tools/test_junitmsgfmt.py::test_output[untranslated] PASSED [ 95%] 1062s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_single_po PASSED [ 95%] 1062s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_plural_po PASSED [ 95%] 1062s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_single_po PASSED [ 95%] 1062s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_plural_po PASSED [ 95%] 1062s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_help PASSED [ 95%] 1062s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_zero PASSED [ 95%] 1062s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_one PASSED [ 95%] 1062s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_two PASSED [ 95%] 1062s tests/translate/tools/test_pocount.py::TestCount::test_punctuation_divides_words PASSED [ 95%] 1062s tests/translate/tools/test_pocount.py::TestCount::test_xml_tags PASSED [ 95%] 1062s tests/translate/tools/test_pocount.py::TestCount::test_newlines PASSED [ 95%] 1062s tests/translate/tools/test_pocount.py::TestCount::test_variables_are_words PASSED [ 95%] 1062s tests/translate/tools/test_pocount.py::TestCount::test_plurals PASSED [ 95%] 1062s tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde XFAIL [ 95%] 1062s tests/translate/tools/test_pocount.py::TestCount::test_msgid_blank PASSED [ 95%] 1062s tests/translate/tools/test_pocount.py::TestPOCount::test_translated PASSED [ 95%] 1062s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzy PASSED [ 95%] 1062s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslated PASSED [ 95%] 1062s tests/translate/tools/test_pocount.py::TestPOCount::test_total PASSED [ 95%] 1062s tests/translate/tools/test_pocount.py::TestPOCount::test_translatedsourcewords PASSED [ 95%] 1062s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzysourcewords PASSED [ 95%] 1062s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslatedsourcewords PASSED [ 95%] 1062s tests/translate/tools/test_pocount.py::TestPOCount::test_totalsourcewords PASSED [ 95%] 1063s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-csv] PASSED [ 95%] 1063s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-full] PASSED [ 95%] 1063s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-strings] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-words] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-csv] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-full] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-strings] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-words] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-csv] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-full] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-strings] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-words] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-csv] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-full] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-strings] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-words] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_cases[po-file] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_cases[po-file-fuzzy] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_cases[po-file-csv] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_cases[xliff-states-yes] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_cases[xliff-states-no] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_error_cases[mutually-exclusive] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_error_cases[missing-file] PASSED [ 96%] 1063s tests/translate/tools/test_pocount.py::test_error_cases[no-args] PASSED [ 96%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_ignore_gtk PASSED [ 96%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_keep_target PASSED [ 96%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_blank PASSED [ 96%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_en PASSED [ 96%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_xxx PASSED [ 96%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_bracket PASSED [ 96%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode PASSED [ 96%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_at_placeholders PASSED [ 96%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_single_brace_placeholders PASSED [ 96%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_double_brace_placeholders PASSED [ 96%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_html PASSED [ 96%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_multiple_styles_of_placeholder PASSED [ 97%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped PASSED [ 97%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_at_placeholders PASSED [ 97%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_single_brace_placeholders PASSED [ 97%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_double_brace_placeholders PASSED [ 97%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_html PASSED [ 97%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_multiple_styles_of_placeholder PASSED [ 97%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified PASSED [ 97%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_at_placeholders PASSED [ 97%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_single_brace_placeholders PASSED [ 97%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_double_brace_placeholders PASSED [ 97%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_html PASSED [ 97%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_multiple_styles_of_placeholder PASSED [ 97%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_chef PASSED [ 97%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_po_variables PASSED [ 97%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_xliff_rewrite PASSED [ 97%] 1063s tests/translate/tools/test_podebug.py::TestPODebug::test_hash PASSED [ 97%] 1063s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgid PASSED [ 97%] 1063s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgstr PASSED [ 97%] 1063s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations PASSED [ 97%] 1063s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_comments PASSED [ 97%] 1063s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations_with_comment_enabled PASSED [ 97%] 1063s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_searchstring PASSED [ 97%] 1063s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_regex_searchstring PASSED [ 97%] 1063s tests/translate/tools/test_pogrep.py::TestPOGrep::test_keep_translations PASSED [ 97%] 1063s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_normalise PASSED [ 97%] 1063s tests/translate/tools/test_pogrep.py::TestXLiffGrep::test_simplegrep PASSED [ 97%] 1063s tests/translate/tools/test_pomerge.py::test_str2bool PASSED [ 97%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_mergesore_bad_data PASSED [ 97%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge PASSED [ 97%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge_no_locations PASSED [ 97%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_replacemerge PASSED [ 97%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_blanks PASSED [ 97%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_fuzzies PASSED [ 97%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_locations PASSED [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_with_locations PASSED [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_no_locations PASSED [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_reflowed_source_comments PASSED [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_comments_with_blank_lines PASSED [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dont_delete_unassociated_comments PASSED [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_trailing_newlines PASSED [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_minor_start_and_end_of_sentence_changes PASSED [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_last_entry_in_a_file PASSED [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs XFAIL [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_comments_layout PASSED [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dos2unix PASSED [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_xliff PASSED [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_po_into_xliff PASSED [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_po PASSED [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_dont_merge_kde_comments_found_in_translation PASSED [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_untranslated_with_kde_disambiguation PASSED [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_header_entries PASSED [ 98%] 1063s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_different_locations PASSED [ 98%] 1063s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_simple PASSED [ 98%] 1063s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_punctuation PASSED [ 98%] 1063s tests/translate/tools/test_poterminology.py::TestPOTerminology::test_term_extraction PASSED [ 98%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_pretranslatepo_blank PASSED [ 98%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_simple PASSED [ 98%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_messages_marked_fuzzy PASSED [ 98%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals_with_fuzzy_matching PASSED [ 98%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change XFAIL [ 98%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_change PASSED [ 98%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_and_whitespace_change PASSED [ 98%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes XFAIL [ 98%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently XFAIL [ 98%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_dont_duplicate PASSED [ 98%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_new_overides_old PASSED [ 98%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments_with_blank_comment_lines PASSED [ 98%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_empty_commentlines PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgidcomments PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_resurect_obsolete_messages PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_typecomments PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_xliff_states PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_pretranslatepo_blank PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_simple PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_messages_marked_fuzzy PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change XFAIL [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_change PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_and_whitespace_change PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes XFAIL [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently XFAIL [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_new_overides_old PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments_with_blank_comment_lines PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_empty_commentlines PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgidcomments PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_resurect_obsolete_messages PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_typecomments PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_xliff_states PASSED [ 99%] 1063s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_help PASSED [ 99%] 1063s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_single_po PASSED [ 99%] 1063s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_plural_po PASSED [ 99%] 1063s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_single_po PASSED [ 99%] 1063s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_plural_po PASSED [ 99%] 1063s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_help PASSED [ 99%] 1063s tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff PASSED [ 99%] 1064s tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff PASSED [100%] 1064s 1064s =============================== warnings summary =============================== 1064s tests/translate/storage/test_cpo.py:15 1064s Warning: 1064s Module 'translate.storage.cpo' was found, but when imported by pytest it raised: 1064s ImportError('gettext PO library not found') 1064s In pytest 9.1 this warning will become an error by default. 1064s You can fix the underlying problem, or alternatively overwrite this behavior and silence this warning by passing exc_type=ImportError explicitly. 1064s See https://docs.pytest.org/en/stable/deprecations.html#pytest-importorskip-default-behavior-regarding-importerror 1064s 1064s tests/odf_xliff/test_odf_xliff.py::test_roundtrip 1064s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.TWiM34/autopkgtest_tmp/tests/odf_xliff/test_2.odt'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid 1064s Warning: unclosed file <_io.TextIOWrapper name='TestAndroid2POCommand_test_convertandroid/en.po' mode='r' encoding='UTF-8'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 1064s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 1064s Warning: unclosed file <_io.TextIOWrapper name='TestCSV2POCommand_test_columnorder/test.po' mode='r' encoding='UTF-8'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot 1064s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_pot/simple.pot'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po 1064s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po 1064s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_po/simple.po'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates 1064s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_remove_duplicates/simple.po'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf 1064s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_xlf/simple.xlf'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 1064s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 1064s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_columnorder/test.csv' mode='r' encoding='UTF-8'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context 1064s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_context/test.csv' mode='r' encoding='UTF-8'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing 1064s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey 1064s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey 1064s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing 1064s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey 1064s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey 1064s Warning: Could not find accesskey for key.accesskey 1064s 1064s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 1064s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file 1064s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten 1064s Warning: unclosed file <_io.BufferedReader name='translation/file1.po'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 1064s Warning: unclosed file <_io.BufferedWriter name='translated/file1.html'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert 1064s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.TWiM34/autopkgtest_tmp/tests/translate/convert/test.idml'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po 1064s Warning: unclosed file <_io.BufferedReader name='translation.po'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 1064s Warning: unclosed file <_io.FileIO name='input.oo' mode='rb' closefd=True> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 1064s Warning: unclosed file <_io.FileIO name='output.oo' mode='wb' closefd=True> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey 1064s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey 1064s Warning: Could not find accesskey for prop.accesskey 1064s 1064s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert 1064s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert/simple.po'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 1064s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf16/simple.po'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1064s Warning: unclosed file <_io.BufferedWriter name='simple.po'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1064s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1064s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_wrong/simple.po'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 1064s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf8/simple.po'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex 1064s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_menuex/simple.po'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot 1064s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_pot/simple.pot'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po 1064s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_po/simple.po'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates 1064s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_remove_duplicates/simple.po'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 1064s Warning: unclosed file <_io.BufferedWriter name='simple.odt'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 1064s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.TWiM34/autopkgtest_tmp/tests/translate/convert/test.odt'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename 1064s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_preserve_filename/snippet.xlf'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot 1064s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_pot/simple.pot'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po 1064s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_po/simple.po'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates 1064s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_remove_duplicates/simple.po'> 1064s Enable tracemalloc to get traceback where the object was allocated. 1064s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1064s 1064s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 1064s Warning: DTD parse error: :1:36:FATAL:PARSER:ERR_ENTITY_NOT_FINISHED: xmlParseEntityDecl: entity test.me not terminated 1064s 1064s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 1064s Warning: DTD file '' does not validate 1064s 1064s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1064s --------------------------- snapshot report summary ---------------------------- 1064s 23 snapshots passed. 1064s =========================== short test summary info ============================ 1064s SKIPPED [1] tests/translate/storage/test_cpo.py:15: could not import 'translate.storage.cpo': gettext PO library not found 1064s SKIPPED [1] tests/translate/storage/test_fluent.py:29: could not import 'translate.storage.fluent': No module named 'fluent' 1064s SKIPPED [1] tests/translate/filters/test_checks.py:1429: Spell checking for af is not available 1064s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence - Not Implemented 1064s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence - Not Implemented 1064s XFAIL tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template - Need to review if we want this behaviour 1064s XFAIL tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template - Need to review if we want this behaviour 1064s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change - Not implemented - review if this is even correct 1064s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes - Not Implemented - needs review 1064s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently - Not Implemented - review if this is even correct 1064s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change - Not implemented - review if this is even correct 1064s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes - Not Implemented - needs review 1064s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently - Not Implemented - review if this is even correct 1064s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates - This is invalid YAML document 1064s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates - This is invalid YAML document 1064s XFAIL tests/translate/filters/test_checks.py::test_acceleratedvariables - Accelerated variables needs a better implementation 1064s XFAIL tests/translate/filters/test_checks.py::test_musttranslatewords - FIXME: All fails() tests are not working 1064s XFAIL tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time - Bug #3408 1064s XFAIL tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags - Bug #3506 1064s 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. 1064s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables - Test needs fixing, disabled for now 1064s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables - Test needs fixing, disabled for now 1064s XFAIL tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases - Not Implemented 1064s XFAIL tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases - Not Implemented 1064s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_comment_following - Not Implemented 1064s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting - Not Implemented 1064s 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 1064s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals - Not Implemented 1064s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 1064s XFAIL tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove - removal not working in full page 1064s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals - Not Implemented 1064s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 1064s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment - Not sure if this can not be parsed gracefully 1064s XFAIL tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity - Not Implemented 1064s XFAIL tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde - Support commented out pending removal 1064s XFAIL tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs - Not Implemented 1064s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change - Not Implemented 1064s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes - Not Implemented 1064s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently - Not Implemented 1064s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change - Not Implemented 1064s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes - Not Implemented 1064s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently - Not Implemented 1064s ========== 3328 passed, 3 skipped, 39 xfailed, 47 warnings in 23.75s =========== 1065s ============================= test session starts ============================== 1065s platform linux -- Python 3.13.2, pytest-8.3.4, pluggy-1.5.0 -- /usr/bin/python3.13 1065s cachedir: .pytest_cache 1065s rootdir: /tmp/autopkgtest.TWiM34/autopkgtest_tmp 1065s plugins: syrupy-4.8.1, typeguard-4.4.1 1074s collecting ... collected 3368 items / 2 skipped 1074s 1074s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff PASSED [ 0%] 1074s tests/odf_xliff/test_odf_xliff.py::test_roundtrip PASSED [ 0%] 1074s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff2_inline PASSED [ 0%] 1074s tests/translate/convert/test_accesskey.py::test_get_label_and_accesskey PASSED [ 0%] 1074s tests/translate/convert/test_accesskey.py::test_extract_bad_accesskeys PASSED [ 0%] 1074s tests/translate/convert/test_accesskey.py::test_ignore_entities PASSED [ 0%] 1074s tests/translate/convert/test_accesskey.py::test_alternate_accesskey_marker PASSED [ 0%] 1074s tests/translate/convert/test_accesskey.py::test_unicode PASSED [ 0%] 1074s tests/translate/convert/test_accesskey.py::test_numeric PASSED [ 0%] 1074s tests/translate/convert/test_accesskey.py::test_empty_string PASSED [ 0%] 1074s tests/translate/convert/test_accesskey.py::test_end_of_string PASSED [ 0%] 1074s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey PASSED [ 0%] 1074s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey_different_capitals PASSED [ 0%] 1074s tests/translate/convert/test_accesskey.py::test_uncombinable PASSED [ 0%] 1074s tests/translate/convert/test_accesskey.py::test_accesskey_already_in_text PASSED [ 0%] 1074s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_no_template_units PASSED [ 0%] 1074s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_template_units PASSED [ 0%] 1074s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_no_template_units PASSED [ 0%] 1074s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_template_units PASSED [ 0%] 1074s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_help PASSED [ 0%] 1074s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid PASSED [ 0%] 1074s tests/translate/convert/test_convert.py::TestConvertCommand::test_help PASSED [ 0%] 1074s tests/translate/convert/test_csv2po.py::test_replacestrings PASSED [ 0%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity PASSED [ 0%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity_with_template PASSED [ 0%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_newlines PASSED [ 0%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_tabs PASSED [ 0%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_quotes PASSED [ 0%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_empties PASSED [ 0%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_kdecomment PASSED [ 0%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_escaped_newlines PASSED [ 0%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity PASSED [ 0%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity_with_template PASSED [ 0%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_newlines PASSED [ 1%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_tabs PASSED [ 1%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_quotes PASSED [ 1%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_empties PASSED [ 1%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_kdecomment PASSED [ 1%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_escaped_newlines PASSED [ 1%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_help PASSED [ 1%] 1074s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_simpleentity PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_convertdtd PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_apos PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_quotes PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_two_empty_entities PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity_translated PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisaton_note_simple PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisation_note_merge PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_simple PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_label PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_onlyentity PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_commentedout PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_spaces_at_start_of_dtd_lines PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_folding PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_mismatch PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_carriage_return_in_multiline_dtd PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_with_blankline PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_closing_quotes PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_preserving_spaces PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_escaping_newline_tabs PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_abandoned_accelerator PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_unassociable_accelerator PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_changed_labels_and_accelerators PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence XFAIL [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_exclude_entity_includes PASSED [ 1%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_linewraps PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merging_with_new_untranslated PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merge_without_template PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_simpleentity PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_convertdtd PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_apos PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_quotes PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_two_empty_entities PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity_translated PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisaton_note_simple PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisation_note_merge PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_simple PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_label PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_onlyentity PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_commentedout PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_spaces_at_start_of_dtd_lines PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_folding PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_mismatch PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_carriage_return_in_multiline_dtd PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_with_blankline PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_closing_quotes PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_preserving_spaces PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_escaping_newline_tabs PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_abandoned_accelerator PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_unassociable_accelerator PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_changed_labels_and_accelerators PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence XFAIL [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_exclude_entity_includes PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_linewraps PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merging_with_new_untranslated PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merge_without_template PASSED [ 2%] 1074s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_help PASSED [ 2%] 1074s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_defaults PASSED [ 2%] 1074s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_root_name PASSED [ 3%] 1074s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_value_name PASSED [ 3%] 1074s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_key PASSED [ 3%] 1074s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_default_namespace PASSED [ 3%] 1074s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_namespace_prefix PASSED [ 3%] 1074s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_all_parameters PASSED [ 3%] 1074s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_empty_file_is_empty_store PASSED [ 3%] 1074s tests/translate/convert/test_flatxml2po.py::TestFlatXML2POCommand::test_help PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_extract_lang_attribute_from_html_tag PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title_with_linebreak PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_meta PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_br PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak_and_embedded_br PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_uppercase_html PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div_with_linebreaks PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a_with_linebreak PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_sequence_of_anchor_elements PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_img_empty PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img_inside_a PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_table_summary PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_simple PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_complex PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_empty PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_address PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings_with_linebreaks PASSED [ 3%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dt PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dd PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_span PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_ul PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_lists PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_duplicates PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiline_reflow PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_tags PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_carriage_return PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_encoding_latin1 PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_strip_html PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_text PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_attributes PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_charrefs PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiple_php PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_multiline PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_with_embedded_html PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_comments PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2PO::test_attribute_without_value PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_extract_lang_attribute_from_html_tag PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title_with_linebreak PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_meta PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_br PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak_and_embedded_br PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_uppercase_html PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div_with_linebreaks PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a_with_linebreak PASSED [ 4%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_sequence_of_anchor_elements PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_img_empty PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img_inside_a PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_table_summary PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_simple PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_complex PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_empty PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_address PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings_with_linebreaks PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dt PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dd PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_span PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_ul PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_lists PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_duplicates PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiline_reflow PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_tags PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_carriage_return PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_encoding_latin1 PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_strip_html PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_text PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_attributes PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_charrefs PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiple_php PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_multiline PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_with_embedded_html PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_comments PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_attribute_without_value PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_help PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_single PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile PASSED [ 5%] 1074s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile_to_stdout PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_convert_empty_file PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_translations PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_summary PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_description PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_location PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_comment PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_template_duplicate_style PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_misaligned_files PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_blank_msgstr PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_duplicate_style PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_convert_empty_file PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_translations PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_summary PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_description PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_location PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_comment PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_template_duplicate_style PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_misaligned_files PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_blank_msgstr PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_duplicate_style PASSED [ 6%] 1074s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_help PASSED [ 6%] 1074s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_help PASSED [ 6%] 1074s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_convert PASSED [ 6%] 1074s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_empty_file PASSED [ 6%] 1074s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_no_translation PASSED [ 6%] 1074s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_simple PASSED [ 6%] 1074s tests/translate/convert/test_ini2po.py::TestIni2PO::test_no_duplicates PASSED [ 6%] 1074s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_simple PASSED [ 6%] 1074s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_misaligned_files PASSED [ 6%] 1074s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_blank_msgstr PASSED [ 6%] 1074s tests/translate/convert/test_ini2po.py::TestIni2PO::test_dialects_inno PASSED [ 7%] 1074s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_empty_file PASSED [ 7%] 1074s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_no_translation PASSED [ 7%] 1074s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_simple PASSED [ 7%] 1074s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_no_duplicates PASSED [ 7%] 1074s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_simple PASSED [ 7%] 1074s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_misaligned_files PASSED [ 7%] 1074s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_blank_msgstr PASSED [ 7%] 1074s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_dialects_inno PASSED [ 7%] 1074s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_help PASSED [ 7%] 1074s tests/translate/convert/test_json2po.py::TestJson2PO::test_simple PASSED [ 7%] 1074s tests/translate/convert/test_json2po.py::TestJson2PO::test_three_same_keys PASSED [ 7%] 1074s tests/translate/convert/test_json2po.py::TestJson2PO::test_filter PASSED [ 7%] 1074s tests/translate/convert/test_json2po.py::TestJson2PO::test_miltiple_units PASSED [ 7%] 1074s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_simple PASSED [ 7%] 1074s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_three_same_keys PASSED [ 7%] 1074s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_filter PASSED [ 7%] 1074s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_miltiple_units PASSED [ 7%] 1074s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_help PASSED [ 7%] 1074s tests/translate/convert/test_md2po.py::TestMD2PO::test_help PASSED [ 7%] 1074s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_single PASSED [ 7%] 1074s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_onefile PASSED [ 7%] 1074s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_single PASSED [ 7%] 1074s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_onefile PASSED [ 7%] 1074s tests/translate/convert/test_moz2po.py::TestMoz2POCommand::test_help PASSED [ 7%] 1074s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_simpleentry PASSED [ 7%] 1074s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_uncomment_contributors PASSED [ 7%] 1074s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_convert_empty PASSED [ 7%] 1074s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_string PASSED [ 7%] 1074s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_merge PASSED [ 7%] 1074s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_entry PASSED [ 7%] 1074s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_comment PASSED [ 7%] 1074s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_meta_tags PASSED [ 7%] 1074s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_keep_duplicates PASSED [ 7%] 1074s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_drop_duplicates PASSED [ 8%] 1074s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_convert_empty PASSED [ 8%] 1074s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_string PASSED [ 8%] 1074s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_merge PASSED [ 8%] 1074s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_entry PASSED [ 8%] 1074s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_comment PASSED [ 8%] 1074s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_meta_tags PASSED [ 8%] 1074s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_keep_duplicates PASSED [ 8%] 1074s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_drop_duplicates PASSED [ 8%] 1074s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_help PASSED [ 8%] 1074s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_help PASSED [ 8%] 1074s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_convert PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2PO::test_simpleentity PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_escape PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_whitespaceonly PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2PO::test_double_escapes PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes_helpcontent2 PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2PO::test_msgid_bug_error_address PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2PO::test_x_comment_inclusion PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simpleentity PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_double_escapes PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_help PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_preserve_filename PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 8%] 1074s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates PASSED [ 8%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_simpleentity PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_escape PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_whitespaceonly PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_double_escapes PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes_helpcontent2 PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_x_comment_inclusion PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_msgid_bug_error_address PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simpleentity PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_double_escapes PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_help PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_preserve_filename PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 1074s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 1082s tests/translate/convert/test_php2po.py::TestPhp2PO::test_simpleentry PASSED [ 9%] 1089s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphp PASSED [ 9%] 1104s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphptemplate PASSED [ 9%] 1119s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpmissing PASSED [ 9%] 1122s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpempty PASSED [ 9%] 1129s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unicode PASSED [ 9%] 1136s tests/translate/convert/test_php2po.py::TestPhp2PO::test_multiline PASSED [ 9%] 1142s tests/translate/convert/test_php2po.py::TestPhp2PO::test_comments_before PASSED [ 9%] 1149s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry PASSED [ 9%] 1156s tests/translate/convert/test_php2po.py::TestPhp2PO::test_hash_comment_with_equals PASSED [ 9%] 1170s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry_translated PASSED [ 9%] 1183s tests/translate/convert/test_php2po.py::TestPhp2PO::test_newlines_in_value PASSED [ 9%] 1197s tests/translate/convert/test_php2po.py::TestPhp2PO::test_spaces_in_name PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_array PASSED [ 10%] 1224s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_array PASSED [ 10%] 1239s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_nested_arrays PASSED [ 10%] 1252s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_nested_arrays PASSED [ 10%] 1259s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_simpleentry PASSED [ 10%] 1265s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphp PASSED [ 10%] 1279s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphptemplate PASSED [ 10%] 1293s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpmissing PASSED [ 10%] 1297s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpempty PASSED [ 10%] 1303s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unicode PASSED [ 10%] 1310s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_multiline PASSED [ 10%] 1317s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_comments_before PASSED [ 10%] 1323s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry PASSED [ 10%] 1331s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_hash_comment_with_equals PASSED [ 10%] 1345s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry_translated PASSED [ 10%] 1358s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_newlines_in_value PASSED [ 10%] 1373s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_spaces_in_name PASSED [ 10%] 1388s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_array PASSED [ 10%] 1402s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_array PASSED [ 10%] 1416s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_nested_arrays PASSED [ 10%] 1431s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_nested_arrays PASSED [ 10%] 1431s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_help PASSED [ 10%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_simpleentity PASSED [ 10%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_multiline PASSED [ 10%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapednewlines PASSED [ 10%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedtabs PASSED [ 10%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedquotes PASSED [ 10%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedescape PASSED [ 10%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_singlequotes PASSED [ 10%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_empties PASSED [ 10%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_kdecomments PASSED [ 10%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_simpleentity PASSED [ 10%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_multiline PASSED [ 10%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapednewlines PASSED [ 11%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedtabs PASSED [ 11%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedquotes PASSED [ 11%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedescape PASSED [ 11%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_singlequotes PASSED [ 11%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_empties PASSED [ 11%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_kdecomments PASSED [ 11%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_help PASSED [ 11%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder PASSED [ 11%] 1431s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_joinlines PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_escapedstr PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_missingaccesskey PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskeycase PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_types PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities_two PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments_translator PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_retains_hashprefix PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_convertdtd PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_with_template PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_without_template PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_blank_source PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_newlines_escapes PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_simple PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_escape PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_quotes PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_amp PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_merging_entries_with_spaces_removed PASSED [ 11%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces_after_value PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_duplicates PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_joinlines PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_escapedstr PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_missingaccesskey PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskeycase PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_types PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities_two PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments_translator PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_retains_hashprefix PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_convertdtd PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_with_template PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_without_template PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_blank_source PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_newlines_escapes PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_simple PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_escape PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_quotes PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_amp PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_merging_entries_with_spaces_removed PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces_after_value PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_duplicates PASSED [ 12%] 1431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_help PASSED [ 12%] 1431s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_defaults PASSED [ 13%] 1431s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_root_name PASSED [ 13%] 1431s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_value_name PASSED [ 13%] 1431s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_key PASSED [ 13%] 1431s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_default_namespace PASSED [ 13%] 1431s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_namespace_prefix PASSED [ 13%] 1431s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_indent_eight PASSED [ 13%] 1431s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_noindent PASSED [ 13%] 1431s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXMLCommand::test_help PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2Html::test_simple PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2Html::test_linebreaks PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2Html::test_replace_substrings PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_outside_translatable_content PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_embedded_within_translatable_content PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_without_value PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2Html::test_entities PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2Html::test_escapes PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_translated PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_untranslated PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_fuzzy PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2Html::test_untranslated_attributes PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_simple PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_linebreaks PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_replace_substrings PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_outside_translatable_content PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_embedded_within_translatable_content PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_without_value PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_entities PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_escapes PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_translated PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_untranslated PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_fuzzy PASSED [ 13%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_untranslated_attributes PASSED [ 14%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_help PASSED [ 14%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_individual_files PASSED [ 14%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_fully_recursive PASSED [ 14%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_input_specified PASSED [ 14%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified PASSED [ 14%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_output_specified PASSED [ 14%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file PASSED [ 14%] 1431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_empty_file PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_summary PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_description PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_location PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_comment PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_complex_icalendar PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_skip_fuzzy PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_include_fuzzy PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_no_template PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_template_location_not_in_source_file PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_below_threshold PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_above_threshold PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_empty_file PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_summary PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_description PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_location PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_comment PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_complex_icalendar PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_skip_fuzzy PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_include_fuzzy PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_no_template PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_template_location_not_in_source_file PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_below_threshold PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_above_threshold PASSED [ 14%] 1431s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_help PASSED [ 14%] 1431s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_help PASSED [ 15%] 1431s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_no_templates PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_simple PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_space_preservation PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_blank_entries PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_fuzzy PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_propertyless_template PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_empty_value PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_dialects_inno PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_misaligned_files PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_below_threshold PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_above_threshold PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_no_fuzzy PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_allow_fuzzy PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_missing_source PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_repeated_locations PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_no_templates PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_simple PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_space_preservation PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_blank_entries PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_fuzzy PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_propertyless_template PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_empty_value PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_dialects_inno PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_misaligned_files PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_below_threshold PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_above_threshold PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_no_fuzzy PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_allow_fuzzy PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_missing_source PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_repeated_locations PASSED [ 15%] 1431s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_help PASSED [ 15%] 1431s tests/translate/convert/test_po2json.py::TestPO2JSON::test_basic PASSED [ 16%] 1431s tests/translate/convert/test_po2json.py::TestPO2JSON::test_ordering_serialize PASSED [ 16%] 1431s tests/translate/convert/test_po2json.py::TestPO2JSON::test_dont_use_empty_translation PASSED [ 16%] 1431s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_false PASSED [ 16%] 1431s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_true PASSED [ 16%] 1431s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_false PASSED [ 16%] 1431s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_true PASSED [ 16%] 1431s tests/translate/convert/test_po2md.py::TestPO2MD::test_help PASSED [ 16%] 1431s tests/translate/convert/test_po2md.py::TestPO2MD::test_single_markdown_file_with_single_po PASSED [ 16%] 1431s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po PASSED [ 16%] 1431s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_and_directory_of_po_files PASSED [ 16%] 1431s tests/translate/convert/test_po2moz.py::TestPO2MozCommand::test_help PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_empty PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_simple PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_comment PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_ok_marker PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_below_threshold PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_above_threshold PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_skip_non_translatable_input PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_no_fuzzy PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_allow_fuzzy PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_mark_active PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_empty PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_simple PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_comment PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_ok_marker PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_below_threshold PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_above_threshold PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_skip_non_translatable_input PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_no_fuzzy PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_allow_fuzzy PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_mark_active PASSED [ 16%] 1431s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_help PASSED [ 16%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OO::test_convertoo PASSED [ 16%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OO::test_pofilter PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_simple PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_escape PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_quotes PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_spaces PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OO::test_default_timestamp PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OO::test_escape_conversion PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes2 PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_convertoo PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_pofilter PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_simple PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_quotes PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_spaces PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_escape_conversion PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes2 PASSED [ 17%] 1431s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_help PASSED [ 17%] 1439s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp PASSED [ 17%] 1439s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_notemplate PASSED [ 17%] 1439s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_empty_template PASSED [ 17%] 1442s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_simple PASSED [ 17%] 1446s tests/translate/convert/test_po2php.py::TestPO2Php::test_space_preservation PASSED [ 17%] 1449s tests/translate/convert/test_po2php.py::TestPO2Php::test_preserve_unused_statement PASSED [ 17%] 1452s tests/translate/convert/test_po2php.py::TestPO2Php::test_not_translated_multiline PASSED [ 17%] 1456s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_blank_entries PASSED [ 17%] 1459s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_fuzzy PASSED [ 17%] 1463s tests/translate/convert/test_po2php.py::TestPO2Php::test_locations_with_spaces PASSED [ 17%] 1466s tests/translate/convert/test_po2php.py::TestPO2Php::test_inline_comments PASSED [ 17%] 1471s tests/translate/convert/test_po2php.py::TestPO2Php::test_block_comments PASSED [ 17%] 1475s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_variables PASSED [ 17%] 1479s tests/translate/convert/test_po2php.py::TestPO2Php::test_multiline PASSED [ 17%] 1483s tests/translate/convert/test_po2php.py::TestPO2Php::test_hash_comment PASSED [ 18%] 1487s tests/translate/convert/test_po2php.py::TestPO2Php::test_arrays PASSED [ 18%] 1490s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_nested_array PASSED [ 18%] 1494s tests/translate/convert/test_po2php.py::TestPO2Php::test_unnamed_nested_arrays PASSED [ 18%] 1494s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template XFAIL [ 18%] 1502s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp PASSED [ 18%] 1502s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_notemplate PASSED [ 18%] 1502s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_empty_template PASSED [ 18%] 1506s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_simple PASSED [ 18%] 1511s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_space_preservation PASSED [ 18%] 1515s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_preserve_unused_statement PASSED [ 18%] 1519s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_not_translated_multiline PASSED [ 18%] 1522s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_blank_entries PASSED [ 18%] 1526s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_fuzzy PASSED [ 18%] 1532s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_locations_with_spaces PASSED [ 18%] 1533s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_inline_comments PASSED [ 18%] 1537s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_block_comments PASSED [ 18%] 1540s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_variables PASSED [ 18%] 1545s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_multiline PASSED [ 18%] 1549s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_hash_comment PASSED [ 18%] 1553s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_arrays PASSED [ 18%] 1558s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_nested_array PASSED [ 18%] 1562s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_unnamed_nested_arrays PASSED [ 18%] 1562s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template XFAIL [ 18%] 1562s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_help PASSED [ 18%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_simple PASSED [ 18%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated PASSED [ 18%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_hard_newlines_preserved PASSED [ 18%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_space_preservation PASSED [ 18%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_value PASSED [ 18%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_separator PASSED [ 18%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank_entries PASSED [ 18%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_fuzzy PASSED [ 18%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_margin_whitespace PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_all_whitespace PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_propertyless_template PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_delimiters PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_empty_value PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_personalities PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_simple PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline2 PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_comments PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_unchanged PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gaia_plurals PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_duplicates PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gwt_plurals PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_simple PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_hard_newlines_preserved PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_space_preservation PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_value PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_separator PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank_entries PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_fuzzy PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_margin_whitespace PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_all_whitespace PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_propertyless_template PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_delimiters PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_empty_value PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_personalities PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_simple PASSED [ 19%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline PASSED [ 20%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline2 PASSED [ 20%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_comments PASSED [ 20%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_unchanged PASSED [ 20%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank PASSED [ 20%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gaia_plurals PASSED [ 20%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_duplicates PASSED [ 20%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gwt_plurals PASSED [ 20%] 1562s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_help PASSED [ 20%] 1562s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_help PASSED [ 20%] 1562s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert PASSED [ 20%] 1563s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_quotes PASSED [ 20%] 1563s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment PASSED [ 20%] 1563s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_dos_eol PASSED [ 20%] 1563s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_double_string PASSED [ 20%] 1563s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_popup PASSED [ 20%] 1563s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_discardable PASSED [ 20%] 1563s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_menuex PASSED [ 20%] 1563s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_newlines PASSED [ 20%] 1563s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_after PASSED [ 20%] 1563s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_block_language PASSED [ 20%] 1563s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_output_encoding PASSED [ 20%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_simpleunit PASSED [ 20%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_basic PASSED [ 20%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_multiline PASSED [ 20%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapednewlines PASSED [ 20%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedtabs PASSED [ 20%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedquotes PASSED [ 20%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_exclusions PASSED [ 20%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments PASSED [ 20%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingcomment PASSED [ 20%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecomment PASSED [ 20%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 20%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments PASSED [ 20%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingcomment PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingduplicatecomment PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingcomment PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_existingcomments PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_simpleunit PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_basic PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_multiline PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapednewlines PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedtabs PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedquotes PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_exclusions PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingcomment PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingcomment PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingduplicatecomment PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingcomment PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_existingcomments PASSED [ 21%] 1563s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_help PASSED [ 21%] 1563s tests/translate/convert/test_po2sub.py::TestPO2Sub::test_subrip PASSED [ 21%] 1563s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_subrip PASSED [ 21%] 1563s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_help PASSED [ 21%] 1563s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_empty PASSED [ 21%] 1563s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert PASSED [ 21%] 1563s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_marked_untranslated PASSED [ 21%] 1563s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_empty PASSED [ 21%] 1563s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert PASSED [ 21%] 1563s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_marked_untranslated PASSED [ 22%] 1563s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_help PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_basic PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcelanguage PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_targetlanguage PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_multiline PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapednewlines PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedtabs PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedquotes PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_exclusions PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonascii PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonecomments PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_otherscomments PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcecomments PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_typecomments PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_basic PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcelanguage PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_targetlanguage PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_multiline PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapednewlines PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedtabs PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedquotes PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_exclusions PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonascii PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonecomments PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_otherscomments PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcecomments PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_typecomments PASSED [ 22%] 1563s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_help PASSED [ 22%] 1563s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simpleunit PASSED [ 22%] 1563s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simple_unicode_unit PASSED [ 22%] 1563s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fullunit PASSED [ 22%] 1563s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fuzzyunit PASSED [ 22%] 1563s tests/translate/convert/test_po2ts.py::TestPO2TS::test_obsolete PASSED [ 22%] 1563s tests/translate/convert/test_po2ts.py::TestPO2TS::test_duplicates PASSED [ 23%] 1563s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak PASSED [ 23%] 1563s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak_consecutive PASSED [ 23%] 1563s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simpleunit PASSED [ 23%] 1563s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simple_unicode_unit PASSED [ 23%] 1563s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fullunit PASSED [ 23%] 1563s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fuzzyunit PASSED [ 23%] 1563s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_obsolete PASSED [ 23%] 1563s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_duplicates PASSED [ 23%] 1563s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak PASSED [ 23%] 1563s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak_consecutive PASSED [ 23%] 1563s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_help PASSED [ 23%] 1563s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_basic PASSED [ 23%] 1563s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_nonascii PASSED [ 23%] 1563s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_blank_handling PASSED [ 23%] 1563s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_fuzzy_handling PASSED [ 23%] 1563s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_obsolete_ignore PASSED [ 23%] 1563s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_header_ignore PASSED [ 23%] 1563s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_below_threshold PASSED [ 23%] 1563s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_above_threshold PASSED [ 23%] 1563s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_basic PASSED [ 23%] 1563s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_nonascii PASSED [ 23%] 1563s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_blank_handling PASSED [ 23%] 1563s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_fuzzy_handling PASSED [ 23%] 1563s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_obsolete_ignore PASSED [ 23%] 1563s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_header_ignore PASSED [ 23%] 1563s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_below_threshold PASSED [ 23%] 1563s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_above_threshold PASSED [ 23%] 1563s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_help PASSED [ 23%] 1563s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_basic PASSED [ 23%] 1563s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_unicode PASSED [ 23%] 1563s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_ordering_serialize PASSED [ 23%] 1563s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_markmin PASSED [ 23%] 1563s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_minimal PASSED [ 23%] 1563s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_basic PASSED [ 24%] 1563s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_multiline PASSED [ 24%] 1563s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapednewlines PASSED [ 24%] 1563s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedtabs PASSED [ 24%] 1563s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedquotes PASSED [ 24%] 1563s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_locationcomments PASSED [ 24%] 1563s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_othercomments PASSED [ 24%] 1563s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_automaticcomments PASSED [ 24%] 1563s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_header PASSED [ 24%] 1563s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_fuzzy PASSED [ 24%] 1563s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_germanic_plurals PASSED [ 24%] 1563s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_funny_plurals PASSED [ 24%] 1563s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_language_tags PASSED [ 24%] 1563s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_variables PASSED [ 24%] 1563s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_approved PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_empty_PO PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_no_templates PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple_output PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_translated PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_no_fuzzy PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_allow_fuzzy PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_nested PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_below_threshold PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_above_threshold PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_empty_PO PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_no_templates PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple_output PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_translated PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_no_fuzzy PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_allow_fuzzy PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_nested PASSED [ 24%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_below_threshold PASSED [ 25%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_above_threshold PASSED [ 25%] 1563s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_help PASSED [ 25%] 1563s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank PASSED [ 25%] 1563s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank_plurals PASSED [ 25%] 1563s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_simple PASSED [ 25%] 1563s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_messages_marked_fuzzy PASSED [ 25%] 1563s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals_with_fuzzy_matching PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change XFAIL [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_change PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_and_whitespace_change PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_ambiguous_with_disambiguous PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes XFAIL [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently XFAIL [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_dont_duplicate PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_new_overides_old PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments_with_blank_comment_lines PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_commentlines PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgidcomments PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_with_msgidcomment PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_obsoleting_messages PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_not_obsoleting_empty_messages PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_new_before_obsolete PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_header_initialisation PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_typecomments PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt_multiline PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_location PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_id PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_msgid PASSED [ 25%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_migrate_msgidcomment_to_msgctxt PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_obsolete_msgctxt PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_small_strings PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank_plurals PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_simple PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_messages_marked_fuzzy PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change XFAIL [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_change PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_and_whitespace_change PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_ambiguous_with_disambiguous PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes XFAIL [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently XFAIL [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_new_overides_old PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments_with_blank_comment_lines PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_commentlines PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgidcomments PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_with_msgidcomment PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_obsoleting_messages PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_not_obsoleting_empty_messages PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_new_before_obsolete PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_header_initialisation PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_typecomments PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt_multiline PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_location PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_id PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_msgid PASSED [ 26%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_migrate_msgidcomment_to_msgctxt PASSED [ 27%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_obsolete_msgctxt PASSED [ 27%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_small_strings PASSED [ 27%] 1564s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_help PASSED [ 27%] 1564s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_no_endlines_added PASSED [ 27%] 1564s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_uncomment_contributors PASSED [ 27%] 1564s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_multiline_comment_newlines PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_simpleentry PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_convertprop PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_value_entry PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_separator_entry PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_end_of_string PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_start_of_value PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unicode PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_escaping PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_comments PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_comments PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_folding_accesskeys PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_dont_translate PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty_translated PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_newlines_in_value PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_header_comments PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unassociated_comment_order PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_x_header PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gaia_plurals PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_successive_gaia_plurals PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_duplicate_keys PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gwt_plurals PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_simpleentry PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_convertprop PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_value_entry PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_separator_entry PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_end_of_string PASSED [ 27%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_start_of_value PASSED [ 28%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unicode PASSED [ 28%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_escaping PASSED [ 28%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_comments PASSED [ 28%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_comments PASSED [ 28%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_folding_accesskeys PASSED [ 28%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_dont_translate PASSED [ 28%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty PASSED [ 28%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty_translated PASSED [ 28%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_newlines_in_value PASSED [ 28%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_header_comments PASSED [ 28%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unassociated_comment_order PASSED [ 28%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_x_header PASSED [ 28%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gaia_plurals PASSED [ 28%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_successive_gaia_plurals PASSED [ 28%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_duplicate_keys PASSED [ 28%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gwt_plurals PASSED [ 28%] 1564s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_help PASSED [ 28%] 1564s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_help PASSED [ 28%] 1564s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert PASSED [ 28%] 1564s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 PASSED [ 28%] 1564s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong PASSED [ 28%] 1564s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 PASSED [ 28%] 1564s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex PASSED [ 28%] 1564s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_simple PASSED [ 28%] 1564s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_multiple_units PASSED [ 28%] 1564s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_automaticcomments PASSED [ 28%] 1564s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_translatorcomments PASSED [ 28%] 1564s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_locations PASSED [ 28%] 1564s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple PASSED [ 28%] 1564s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_multiple_units PASSED [ 28%] 1564s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_automaticcomments PASSED [ 28%] 1564s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_translatorcomments PASSED [ 28%] 1564s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_locations PASSED [ 29%] 1564s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_help PASSED [ 29%] 1564s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot PASSED [ 29%] 1564s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po PASSED [ 29%] 1564s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates PASSED [ 29%] 1564s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_convert_empty PASSED [ 29%] 1564s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_defaults PASSED [ 29%] 1564s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_includeunused PASSED [ 29%] 1564s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_convert_empty PASSED [ 29%] 1564s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_defaults PASSED [ 29%] 1564s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_includeunused PASSED [ 29%] 1564s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_help PASSED [ 29%] 1564s tests/translate/convert/test_ts2po.py::TestTS2PO::test_blank PASSED [ 29%] 1564s tests/translate/convert/test_ts2po.py::TestTS2PO::test_basic PASSED [ 29%] 1564s tests/translate/convert/test_ts2po.py::TestTS2PO::test_unfinished PASSED [ 29%] 1564s tests/translate/convert/test_ts2po.py::TestTS2PO::test_multiline PASSED [ 29%] 1564s tests/translate/convert/test_ts2po.py::TestTS2PO::test_obsolete PASSED [ 29%] 1564s tests/translate/convert/test_ts2po.py::TestTS2PO::test_comment PASSED [ 29%] 1564s tests/translate/convert/test_ts2po.py::TestTS2PO::test_extracomment PASSED [ 29%] 1564s tests/translate/convert/test_ts2po.py::TestTS2PO::test_emptycontext PASSED [ 29%] 1564s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_blank PASSED [ 29%] 1564s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_basic PASSED [ 29%] 1564s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_unfinished PASSED [ 29%] 1564s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_multiline PASSED [ 29%] 1564s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_obsolete PASSED [ 29%] 1564s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_comment PASSED [ 29%] 1564s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_extracomment PASSED [ 29%] 1564s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_emptycontext PASSED [ 29%] 1564s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_help PASSED [ 29%] 1564s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_convert_empty PASSED [ 29%] 1564s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_keep_duplicates PASSED [ 29%] 1564s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_drop_duplicates PASSED [ 29%] 1564s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_simple PASSED [ 29%] 1564s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_multiple_units PASSED [ 29%] 1564s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_carriage_return PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_merge PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_no_segmentation PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestDoku2po::test_convert_empty PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestDoku2po::test_keep_duplicates PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestDoku2po::test_drop_duplicates PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestDoku2po::test_basic PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestDoku2po::test_bullet_list PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestDoku2po::test_numbered_list PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestDoku2po::test_spacing PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestDoku2po::test_merge PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_convert_empty PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_keep_duplicates PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_drop_duplicates PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_simple PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_multiple_units PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_carriage_return PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_merge PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_no_segmentation PASSED [ 30%] 1564s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_help PASSED [ 30%] 1564s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_basic PASSED [ 30%] 1564s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_unicode PASSED [ 30%] 1564s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_markmin PASSED [ 30%] 1564s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_help PASSED [ 30%] 1564s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert PASSED [ 30%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_minimal PASSED [ 30%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_basic PASSED [ 30%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_translatorcomments PASSED [ 30%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_autocomment PASSED [ 30%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_locations PASSED [ 30%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_fuzzy PASSED [ 30%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_plurals PASSED [ 30%] 1564s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_minimal PASSED [ 30%] 1564s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_basic PASSED [ 30%] 1564s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_translatorcomments PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_autocomment PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_locations PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_fuzzy PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_plurals PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_help PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_simple_convert PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_minimal PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_basic PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_translatorcomments PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_autocomment PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_locations PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_fuzzy PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_plurals PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_help PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po PASSED [ 31%] 1564s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates PASSED [ 31%] 1564s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_empty_YAML PASSED [ 31%] 1564s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple_output PASSED [ 31%] 1564s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple PASSED [ 31%] 1564s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_nested PASSED [ 31%] 1565s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates XFAIL [ 31%] 1565s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_with_template PASSED [ 31%] 1565s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_empty_YAML PASSED [ 31%] 1565s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple_output PASSED [ 31%] 1565s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple PASSED [ 31%] 1565s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_nested PASSED [ 31%] 1565s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates XFAIL [ 31%] 1565s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_with_template PASSED [ 31%] 1565s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_help PASSED [ 31%] 1565s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_empty_target PASSED [ 31%] 1565s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_ellipsis PASSED [ 32%] 1565s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_spacestart_spaceend PASSED [ 32%] 1565s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_start_capitals PASSED [ 32%] 1565s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_end_punc PASSED [ 32%] 1565s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_combinations PASSED [ 32%] 1565s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_nothing_to_do PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_defaults PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_construct PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_accelerator_markers PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_messages PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_accelerators PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_acceleratedvariables XFAIL [ 32%] 1565s tests/translate/filters/test_checks.py::test_acronyms PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_blank PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_brackets PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_compendiumconflicts PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_doublequoting PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_doublespacing PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_doublewords PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_endpunc PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_endwhitespace PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_escapes PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_newlines PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_tabs PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_filepaths PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_kdecomments PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_long PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_musttranslatewords XFAIL [ 32%] 1565s tests/translate/filters/test_checks.py::test_notranslatewords PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_numbers PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_persian_numbers PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_bengali_numbers PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_arabic_numbers PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_assamese_numbers PASSED [ 32%] 1565s tests/translate/filters/test_checks.py::test_options PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_printf PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_pythonbraceformat PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_puncspacing PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_purepunc PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_sentencecount PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_short PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_singlequoting PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_vietnamese_singlequoting PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time XFAIL [ 33%] 1565s tests/translate/filters/test_checks.py::test_persian_quoting PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_simplecaps PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_spellcheck SKIPPED (Spe...) [ 33%] 1565s tests/translate/filters/test_checks.py::test_startcaps PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_startpunc PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_startwhitespace PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_unchanged PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_untranslated PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_validchars PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_minimalchecker PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_reducedchecker PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_variables_kde PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_variables_gnome PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_variables_mozilla PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_variables_openoffice PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_variables_cclicense PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_variables_ios PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_xmltags PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags XFAIL [ 33%] 1565s tests/translate/filters/test_checks.py::test_ooxmltags PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_functions PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_emails PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_urls PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_simpleplurals PASSED [ 33%] 1565s tests/translate/filters/test_checks.py::test_nplurals PASSED [ 34%] 1565s tests/translate/filters/test_checks.py::test_credits PASSED [ 34%] 1565s tests/translate/filters/test_checks.py::test_gconf PASSED [ 34%] 1565s tests/translate/filters/test_checks.py::test_validxml PASSED [ 34%] 1565s tests/translate/filters/test_checks.py::test_hassuggestion PASSED [ 34%] 1565s tests/translate/filters/test_checks.py::test_dialogsizes PASSED [ 34%] 1565s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers PASSED [ 34%] 1565s tests/translate/filters/test_checks.py::test_mozilla_no_accelerators_for_indic PASSED [ 34%] 1565s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker PASSED [ 34%] 1565s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source PASSED [ 34%] 1565s tests/translate/filters/test_checks.py::test_ensure_bengali_languages_script_is_correct PASSED [ 34%] 1565s tests/translate/filters/test_checks.py::test_category PASSED [ 34%] 1565s tests/translate/filters/test_decoration.py::test_spacestart PASSED [ 34%] 1565s tests/translate/filters/test_decoration.py::test_isvalidaccelerator PASSED [ 34%] 1565s tests/translate/filters/test_decoration.py::test_find_marked_variables PASSED [ 34%] 1565s tests/translate/filters/test_decoration.py::test_getnumbers PASSED [ 34%] 1565s tests/translate/filters/test_decoration.py::test_getfunctions PASSED [ 34%] 1565s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplepass PASSED [ 34%] 1565s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplefail PASSED [ 34%] 1565s tests/translate/filters/test_pofilter.py::TestPOFilter::test_variables_across_lines PASSED [ 34%] 1565s tests/translate/filters/test_pofilter.py::TestPOFilter::test_ignore_if_already_marked PASSED [ 34%] 1565s tests/translate/filters/test_pofilter.py::TestPOFilter::test_non_existant_check PASSED [ 34%] 1565s tests/translate/filters/test_pofilter.py::TestPOFilter::test_list_all_tests PASSED [ 34%] 1565s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_fuzzy PASSED [ 34%] 1565s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_review PASSED [ 34%] 1565s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isfuzzy PASSED [ 34%] 1565s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isreview PASSED [ 34%] 1565s tests/translate/filters/test_pofilter.py::TestPOFilter::test_notes PASSED [ 34%] 1565s tests/translate/filters/test_pofilter.py::TestPOFilter::test_unicode PASSED [ 34%] 1565s tests/translate/filters/test_pofilter.py::TestPOFilter::test_preconditions PASSED [ 34%] 1565s tests/translate/filters/test_pofilter.py::TestPOFilter::test_msgid_comments PASSED [ 34%] 1565s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplepass PASSED [ 34%] 1565s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplefail PASSED [ 34%] 1565s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_variables_across_lines PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_ignore_if_already_marked PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_non_existant_check PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_list_all_tests PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_fuzzy PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_review PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isfuzzy PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isreview PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_notes PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_unicode PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_preconditions PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplepass PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplefail PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_variables_across_lines PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_ignore_if_already_marked PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_non_existant_check PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_list_all_tests PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_notes PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_unicode PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_preconditions PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_fuzzy PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_review PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isfuzzy PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isreview PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplepass PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplefail PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_variables_across_lines PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_ignore_if_already_marked PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_non_existant_check PASSED [ 35%] 1565s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_list_all_tests PASSED [ 35%] 1566s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_fuzzy PASSED [ 35%] 1566s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_review PASSED [ 35%] 1566s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isfuzzy PASSED [ 35%] 1566s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isreview PASSED [ 35%] 1566s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_notes PASSED [ 36%] 1566s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_unicode PASSED [ 36%] 1566s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_preconditions PASSED [ 36%] 1566s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_msgid_comments PASSED [ 36%] 1566s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_cedillas PASSED [ 36%] 1566s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_niciun PASSED [ 36%] 1566s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_nicio PASSED [ 36%] 1566s tests/translate/filters/test_prefilters.py::test_removekdecomments PASSED [ 36%] 1566s tests/translate/filters/test_prefilters.py::test_filterwordswithpunctuation PASSED [ 36%] 1566s tests/translate/lang/test_af.py::test_sentences PASSED [ 36%] 1566s tests/translate/lang/test_af.py::test_capsstart PASSED [ 36%] 1566s tests/translate/lang/test_af.py::test_transliterate_cyrillic PASSED [ 36%] 1566s tests/translate/lang/test_am.py::test_punctranslate PASSED [ 36%] 1566s tests/translate/lang/test_am.py::test_sentences PASSED [ 36%] 1566s tests/translate/lang/test_ar.py::test_punctranslate PASSED [ 36%] 1566s tests/translate/lang/test_ar.py::test_sentences PASSED [ 36%] 1566s tests/translate/lang/test_common.py::test_characters PASSED [ 36%] 1566s tests/translate/lang/test_common.py::test_words PASSED [ 36%] 1566s tests/translate/lang/test_common.py::test_word_khmer XFAIL (ZWS is n...) [ 36%] 1566s tests/translate/lang/test_common.py::test_sentences PASSED [ 36%] 1566s tests/translate/lang/test_common.py::test_capsstart PASSED [ 36%] 1566s tests/translate/lang/test_common.py::test_numstart PASSED [ 36%] 1566s tests/translate/lang/test_common.py::test_punctranslate PASSED [ 36%] 1566s tests/translate/lang/test_common.py::test_length_difference PASSED [ 36%] 1566s tests/translate/lang/test_common.py::test_alter_length PASSED [ 36%] 1566s tests/translate/lang/test_data.py::test_normalise_code PASSED [ 36%] 1566s tests/translate/lang/test_data.py::test_simplify_to_common PASSED [ 36%] 1566s tests/translate/lang/test_el.py::test_punctranslate PASSED [ 36%] 1566s tests/translate/lang/test_el.py::test_sentences PASSED [ 36%] 1566s tests/translate/lang/test_es.py::test_punctranslate PASSED [ 36%] 1566s tests/translate/lang/test_es.py::test_sentences PASSED [ 36%] 1566s tests/translate/lang/test_fa.py::test_punctranslate PASSED [ 36%] 1566s tests/translate/lang/test_fa.py::test_sentences PASSED [ 36%] 1566s tests/translate/lang/test_factory.py::test_getlanguage PASSED [ 36%] 1566s tests/translate/lang/test_factory.py::test_get_all_languages PASSED [ 37%] 1566s tests/translate/lang/test_fr.py::test_punctranslate PASSED [ 37%] 1566s tests/translate/lang/test_fr.py::test_sentences PASSED [ 37%] 1566s tests/translate/lang/test_hy.py::test_punctranslate PASSED [ 37%] 1566s tests/translate/lang/test_hy.py::test_sentences PASSED [ 37%] 1566s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_lang PASSED [ 37%] 1566s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_store PASSED [ 37%] 1566s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_bad_init_data PASSED [ 37%] 1566s tests/translate/lang/test_ja.py::test_punctranslate PASSED [ 37%] 1566s tests/translate/lang/test_ja.py::test_sentences PASSED [ 37%] 1566s tests/translate/lang/test_km.py::test_punctranslate PASSED [ 37%] 1566s tests/translate/lang/test_km.py::test_sentences PASSED [ 37%] 1566s tests/translate/lang/test_ko.py::test_punctranslate PASSED [ 37%] 1566s tests/translate/lang/test_ko.py::test_sentences PASSED [ 37%] 1566s tests/translate/lang/test_ne.py::test_punctranslate PASSED [ 37%] 1566s tests/translate/lang/test_ne.py::test_sentences PASSED [ 37%] 1566s tests/translate/lang/test_nqo.py::test_punctranslate PASSED [ 37%] 1566s tests/translate/lang/test_nqo.py::test_sentences PASSED [ 37%] 1566s tests/translate/lang/test_or.py::test_punctranslate PASSED [ 37%] 1566s tests/translate/lang/test_or.py::test_country_code PASSED [ 37%] 1566s tests/translate/lang/test_or.py::test_sentences PASSED [ 37%] 1566s tests/translate/lang/test_poedit.py::test_isocode PASSED [ 37%] 1566s tests/translate/lang/test_ro.py::test_cedillas PASSED [ 37%] 1566s tests/translate/lang/test_ro.py::test_niciun PASSED [ 37%] 1566s tests/translate/lang/test_scn.py::test_italianisms PASSED [ 37%] 1566s tests/translate/lang/test_scn.py::test_vocalism PASSED [ 37%] 1566s tests/translate/lang/test_scn.py::test_suffixes PASSED [ 37%] 1566s tests/translate/lang/test_team.py::test_simple PASSED [ 37%] 1566s tests/translate/lang/test_th.py::test_punctranslate PASSED [ 37%] 1566s tests/translate/lang/test_th.py::test_sentences PASSED [ 37%] 1566s tests/translate/lang/test_tr.py::test_sentences PASSED [ 37%] 1566s tests/translate/lang/test_uk.py::test_sentences PASSED [ 37%] 1566s tests/translate/lang/test_vi.py::test_punctranslate PASSED [ 37%] 1566s tests/translate/lang/test_vi.py::test_sentences PASSED [ 38%] 1566s tests/translate/lang/test_zh.py::test_punctranslate PASSED [ 38%] 1566s tests/translate/lang/test_zh.py::test_sentences PASSED [ 38%] 1566s tests/translate/misc/test_deprecation.py::TestDeprecation::test_deprecated_decorator PASSED [ 38%] 1566s tests/translate/misc/test_deprecation.py::TestDeprecation::test_no_deprecated_decorator PASSED [ 38%] 1566s tests/translate/misc/test_dictutils.py::test_cidict_has_key PASSED [ 38%] 1566s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor PASSED [ 38%] 1566s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor_validation PASSED [ 38%] 1566s tests/translate/misc/test_multistring.py::TestMultistring::test_repr PASSED [ 38%] 1566s tests/translate/misc/test_multistring.py::TestMultistring::test_replace PASSED [ 38%] 1566s tests/translate/misc/test_multistring.py::TestMultistring::test_comparison PASSED [ 38%] 1566s tests/translate/misc/test_multistring.py::TestMultistring::test_coercion PASSED [ 38%] 1566s tests/translate/misc/test_multistring.py::TestMultistring::test_unicode_coercion PASSED [ 38%] 1566s tests/translate/misc/test_multistring.py::TestMultistring::test_list_coercion PASSED [ 38%] 1566s tests/translate/misc/test_multistring.py::TestMultistring::test_multistring_hash PASSED [ 38%] 1566s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_splitext PASSED [ 38%] 1566s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_outputfile_receives_bytes PASSED [ 38%] 1566s tests/translate/misc/test_progressbar.py::test_hashprogressbar PASSED [ 38%] 1566s tests/translate/misc/test_quote.py::test_find_all PASSED [ 38%] 1566s tests/translate/misc/test_quote.py::test_extract PASSED [ 38%] 1566s tests/translate/misc/test_quote.py::test_extractwithoutquotes PASSED [ 38%] 1566s tests/translate/misc/test_quote.py::test_extractwithoutquotes_passfunc PASSED [ 38%] 1566s tests/translate/misc/test_quote.py::test_stripcomment PASSED [ 38%] 1566s tests/translate/misc/test_quote.py::TestEncoding::test_javapropertiesencode PASSED [ 38%] 1566s tests/translate/misc/test_quote.py::TestEncoding::test_java_utf8_properties_encode PASSED [ 38%] 1566s tests/translate/misc/test_quote.py::TestEncoding::test_escapespace PASSED [ 38%] 1566s tests/translate/misc/test_quote.py::TestEncoding::test_mozillaescapemarginspaces PASSED [ 38%] 1566s tests/translate/misc/test_quote.py::TestEncoding::test_mozilla_control_escapes PASSED [ 38%] 1566s tests/translate/misc/test_quote.py::TestEncoding::test_propertiesdecode PASSED [ 38%] 1566s tests/translate/misc/test_quote.py::TestEncoding::test_controlchars PASSED [ 38%] 1566s tests/translate/misc/test_quote.py::TestEncoding::test_properties_decode_slashu PASSED [ 38%] 1566s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding PASSED [ 38%] 1566s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_existing_entities PASSED [ 38%] 1566s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_passthrough PASSED [ 38%] 1566s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_nonentities PASSED [ 39%] 1566s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_four_spaces PASSED [ 39%] 1566s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_tab PASSED [ 39%] 1566s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_distance PASSED [ 39%] 1566s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_similarity PASSED [ 39%] 1566s tests/translate/search/test_lshtein.py::TestLevenshtein::test_long_similarity PASSED [ 39%] 1566s tests/translate/search/test_match.py::TestMatch::test_matching PASSED [ 39%] 1566s tests/translate/search/test_match.py::TestMatch::test_multiple_store PASSED [ 39%] 1566s tests/translate/search/test_match.py::TestMatch::test_extendtm PASSED [ 39%] 1566s tests/translate/search/test_match.py::TestMatch::test_terminology PASSED [ 39%] 1566s tests/translate/search/test_match.py::TestMatch::test_brackets PASSED [ 39%] 1566s tests/translate/search/test_match.py::TestMatch::test_past_tences PASSED [ 39%] 1566s tests/translate/search/test_match.py::TestMatch::test_space_mismatch PASSED [ 39%] 1566s tests/translate/search/test_match.py::TestMatch::test_hyphen_mismatch PASSED [ 39%] 1566s tests/translate/search/test_terminology.py::TestTerminology::test_basic PASSED [ 39%] 1566s tests/translate/services/test_tmserver.py::TestTMServer::test_import PASSED [ 39%] 1567s tests/translate/services/test_tmserver.py::TestTMServer::test_server PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_parse PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_tree PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_add PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_contains PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getitem PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getslice PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_iter PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_len PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_mul PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_offset PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_at_offset PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find_elems_with PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_flatten PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case1 PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case2 PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case3 PASSED [ 39%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case4 PASSED [ 40%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_insert PASSED [ 40%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_isleaf PASSED [ 40%] 1567s tests/translate/storage/placeables/test_base.py::TestStringElem::test_prune PASSED [ 40%] 1567s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_base_placeables PASSED [ 40%] 1567s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables XFAIL [ 40%] 1567s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables XFAIL [ 40%] 1567s tests/translate/storage/placeables/test_general.py::test_placeable_numbers PASSED [ 40%] 1567s tests/translate/storage/placeables/test_general.py::test_placeable_newline PASSED [ 40%] 1567s tests/translate/storage/placeables/test_general.py::test_placeable_alt_attr PASSED [ 40%] 1567s tests/translate/storage/placeables/test_general.py::test_placeable_qt_formatting PASSED [ 40%] 1567s tests/translate/storage/placeables/test_general.py::test_placeable_camelcase PASSED [ 40%] 1567s tests/translate/storage/placeables/test_general.py::test_placeable_space PASSED [ 40%] 1567s tests/translate/storage/placeables/test_general.py::test_placeable_punctuation PASSED [ 40%] 1567s tests/translate/storage/placeables/test_general.py::test_placeable_xml_entity PASSED [ 40%] 1567s tests/translate/storage/placeables/test_general.py::test_placeable_xml_tag PASSED [ 40%] 1567s tests/translate/storage/placeables/test_general.py::test_placeable_option PASSED [ 40%] 1567s tests/translate/storage/placeables/test_general.py::test_placeable_file PASSED [ 40%] 1567s tests/translate/storage/placeables/test_general.py::test_placeable_email PASSED [ 40%] 1567s tests/translate/storage/placeables/test_general.py::test_placeable_caps PASSED [ 40%] 1567s tests/translate/storage/placeables/test_general.py::test_placeable_formatting PASSED [ 40%] 1567s tests/translate/storage/placeables/test_general.py::test_placeable_doubleat PASSED [ 40%] 1567s tests/translate/storage/placeables/test_general.py::test_placeable_brace PASSED [ 40%] 1567s tests/translate/storage/placeables/test_general.py::test_python_placeable PASSED [ 40%] 1567s tests/translate/storage/placeables/test_lisa.py::test_xml_to_strelem PASSED [ 40%] 1567s tests/translate/storage/placeables/test_lisa.py::test_xml_space PASSED [ 40%] 1567s tests/translate/storage/placeables/test_lisa.py::test_chunk_list PASSED [ 40%] 1567s tests/translate/storage/placeables/test_lisa.py::test_set_strelem_to_xml PASSED [ 40%] 1567s tests/translate/storage/placeables/test_lisa.py::test_unknown_xml_placeable PASSED [ 40%] 1567s tests/translate/storage/placeables/test_terminology.py::TestTerminologyPlaceable::test_simple_terminology PASSED [ 40%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_isfuzzy PASSED [ 40%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_create PASSED [ 40%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_eq PASSED [ 40%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escapes PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_difficult_escapes PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_note_sanity PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_target PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_get PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_set PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quotes_with_newline PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline_in_xml PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_twitter PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quote PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_question PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_double_space PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_leading_space PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_tailing_space PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_xml_entities PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote_newline PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_arrows PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link_and_text PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_blank_string PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_escape_message_with_newline PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_invalid_lang PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_quote PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_leading_space PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_trailing_space PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_with_ampersand PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_double_space PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_deep_double_space PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_complex_xml PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quoted_newlines PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline PASSED [ 41%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline_in_xml PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_twitter PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_question PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quote PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_space PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_space PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_newlines PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_xml_entities PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_code PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_arrows PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link_and_text PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_space PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_spaces PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_escaped_newline PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_escaped_newline PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_spaces PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_newline PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_many_quotes PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string_again PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_quotes_string PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_newline_in_string PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_not_translatable_string PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_newline PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_comments PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_quote PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space_quoted PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space_quoted PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_with_ampersand PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_double_space_quoted PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_deep_double_space_quoted PASSED [ 42%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_complex_xml PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unicode PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_unescaped PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_alone PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_full PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_escaped_percent PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_percent PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_quote PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unparied_quote PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_slash PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_ignored PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escaped_quote_end PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_create_blank PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_remove PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_find PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_parse PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_files PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_save PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_extensions PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_mimetypes PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translate PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_nonascii PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_default_handlings PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_invalid_filename PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_namespaces PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_serialize PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add_formatting PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_invalid_entity PASSED [ 43%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_indent PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_markup PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_edit PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_noedit PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_remove PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_set PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_others PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_quotes_set PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_g PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_namespace PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_zh_hk PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_b_zh_hk PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_missing_plural PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_removeunit PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata_text PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_prefix PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_rtl PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_tail PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translatable_marking PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_escaping PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_isfuzzy PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_create PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_eq PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_escapes PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_difficult_escapes PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_note_sanity PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_target PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_get PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_set PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_create_blank PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_add PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_remove PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_find PASSED [ 44%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_parse PASSED [ 45%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_files PASSED [ 45%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_save PASSED [ 45%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_extensions PASSED [ 45%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_mimetypes PASSED [ 45%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_translate PASSED [ 45%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_markup PASSED [ 45%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_nonascii PASSED [ 45%] 1567s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_plural PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationUnit::test_isfuzzy PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationUnit::test_create PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationUnit::test_eq PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationUnit::test_target PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationUnit::test_escapes PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationUnit::test_difficult_escapes PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationUnit::test_note_sanity PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_get PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_set PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationStore::test_create_blank PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationStore::test_add PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationStore::test_remove PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationStore::test_find PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationStore::test_translate PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationStore::test_parse PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationStore::test_files PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationStore::test_save PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationStore::test_markup PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationStore::test_nonascii PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationStore::test_extensions PASSED [ 45%] 1567s tests/translate/storage/test_base.py::TestTranslationStore::test_mimetypes PASSED [ 45%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_isfuzzy PASSED [ 45%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_create PASSED [ 45%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_eq PASSED [ 45%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_target PASSED [ 45%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_escapes PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_get PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_set PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_difficult_escapes PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_newlines PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_istranslated PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_note_sanity PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_create_blank PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_add PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_remove PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_find PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_translate PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_parse PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_files PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_save PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_markup PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_nonascii PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_extensions PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_mimetypes PASSED [ 46%] 1567s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_checksum PASSED [ 46%] 1567s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_isfuzzy PASSED [ 46%] 1567s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_create PASSED [ 46%] 1567s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_eq PASSED [ 46%] 1567s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_target PASSED [ 46%] 1567s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_escapes PASSED [ 46%] 1567s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_difficult_escapes PASSED [ 46%] 1567s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_note_sanity PASSED [ 46%] 1567s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_get PASSED [ 46%] 1567s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_set PASSED [ 46%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_create_blank PASSED [ 46%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_add PASSED [ 46%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_remove PASSED [ 46%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_find PASSED [ 46%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_translate PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_files PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_save PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_markup PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_nonascii PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_extensions PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_mimetypes PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_singlequoting PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8 PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_dialect PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_sig PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_default PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_location_is_parsed PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_context_is_parsed PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_newline PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse_sample PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_detection PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding PASSED [ 47%] 1567s tests/translate/storage/test_csvl10n.py::TestCSV::test_corrupt PASSED [ 47%] 1567s tests/translate/storage/test_directory.py::TestDirectory::test_created PASSED [ 47%] 1567s tests/translate/storage/test_directory.py::TestDirectory::test_basic PASSED [ 47%] 1567s tests/translate/storage/test_directory.py::TestDirectory::test_structure PASSED [ 47%] 1567s tests/translate/storage/test_directory.py::TestDirectory::test_getunits PASSED [ 47%] 1567s tests/translate/storage/test_dtd.py::test_roundtrip_quoting PASSED [ 47%] 1567s tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases XFAIL [ 47%] 1567s tests/translate/storage/test_dtd.py::test_quotefordtd PASSED [ 47%] 1567s tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases XFAIL [ 47%] 1567s tests/translate/storage/test_dtd.py::test_unquotefromdtd PASSED [ 47%] 1567s tests/translate/storage/test_dtd.py::test_android_roundtrip_quoting PASSED [ 47%] 1567s tests/translate/storage/test_dtd.py::test_quoteforandroid PASSED [ 47%] 1567s tests/translate/storage/test_dtd.py::test_unquotefromandroid PASSED [ 47%] 1567s tests/translate/storage/test_dtd.py::test_removeinvalidamp PASSED [ 47%] 1567s tests/translate/storage/test_dtd.py::TestDTDUnit::test_isfuzzy PASSED [ 47%] 1567s tests/translate/storage/test_dtd.py::TestDTDUnit::test_create PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTDUnit::test_eq PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTDUnit::test_escapes PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTDUnit::test_difficult_escapes PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTDUnit::test_note_sanity PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTDUnit::test_target PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_get PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_set PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_create_blank PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_add PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_remove PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_find PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_parse PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_files PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_save PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_extensions PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_mimetypes PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_translate PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_markup PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_nonascii PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_blanklines PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity_source PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_hashcomment_source PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_commentclosing PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_commententity PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_newlines_in_entity PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_conflate_comments PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_localisation_notes PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_in_source PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_order_in_source PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_comment_following XFAIL [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_comment_newline_space_closing PASSED [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting XFAIL [ 48%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_missing_quotes PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping_roundtrip PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_create_blank PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_add PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_remove PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_find PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_parse PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_files PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_save PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_extensions PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_mimetypes PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_translate PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_markup PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_nonascii PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape_parse_and_convert_back PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape PASSED [ 49%] 1567s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape_parse_and_convert_back PASSED [ 49%] 1567s tests/translate/storage/test_factory.py::TestPOFactory::test_getclass PASSED [ 49%] 1567s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject_store PASSED [ 49%] 1567s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject PASSED [ 49%] 1567s tests/translate/storage/test_factory.py::TestPOFactory::test_get_noname_object PASSED [ 49%] 1567s tests/translate/storage/test_factory.py::TestPOFactory::test_gzfile PASSED [ 49%] 1567s tests/translate/storage/test_factory.py::TestPOFactory::test_bz2file PASSED [ 49%] 1567s tests/translate/storage/test_factory.py::TestPOFactory::test_directory PASSED [ 49%] 1567s tests/translate/storage/test_factory.py::TestXliffFactory::test_getclass PASSED [ 49%] 1567s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject_store PASSED [ 49%] 1567s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject PASSED [ 49%] 1567s tests/translate/storage/test_factory.py::TestXliffFactory::test_get_noname_object PASSED [ 49%] 1567s tests/translate/storage/test_factory.py::TestXliffFactory::test_gzfile PASSED [ 49%] 1567s tests/translate/storage/test_factory.py::TestXliffFactory::test_bz2file PASSED [ 49%] 1567s tests/translate/storage/test_factory.py::TestXliffFactory::test_directory PASSED [ 49%] 1567s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getclass PASSED [ 50%] 1567s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject_store PASSED [ 50%] 1567s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject PASSED [ 50%] 1567s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_get_noname_object PASSED [ 50%] 1567s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_gzfile PASSED [ 50%] 1567s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_bz2file PASSED [ 50%] 1567s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_directory PASSED [ 50%] 1567s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getclass PASSED [ 50%] 1567s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject_store PASSED [ 50%] 1567s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject PASSED [ 50%] 1567s tests/translate/storage/test_factory.py::TestWordfastFactory::test_get_noname_object PASSED [ 50%] 1567s tests/translate/storage/test_factory.py::TestWordfastFactory::test_gzfile PASSED [ 50%] 1567s tests/translate/storage/test_factory.py::TestWordfastFactory::test_bz2file PASSED [ 50%] 1567s tests/translate/storage/test_factory.py::TestWordfastFactory::test_directory PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_isfuzzy PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_create PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_eq PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_escapes PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_difficult_escapes PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_note_sanity PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_target PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_get PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_set PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_create_blank PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_add PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_remove PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_find PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_parse PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_files PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_save PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_extensions PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_mimetypes PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_translate PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_markup PASSED [ 50%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_nonascii PASSED [ 51%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_root_config_detect PASSED [ 51%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_detect PASSED [ 51%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_key_config_detect PASSED [ 51%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_mixed_ok PASSED [ 51%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_namespace_config_detect PASSED [ 51%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_four_spaces PASSED [ 51%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_tab PASSED [ 51%] 1567s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_none_linearizes PASSED [ 51%] 1567s tests/translate/storage/test_html.py::test_guess_encoding PASSED [ 51%] 1567s tests/translate/storage/test_html.py::TestHTMLParsing::test_mismatched_tags PASSED [ 51%] 1567s tests/translate/storage/test_html.py::TestHTMLParsing::test_self_closing_tags PASSED [ 51%] 1567s tests/translate/storage/test_html.py::TestHTMLParsing::test_escaping_script_and_pre PASSED [ 51%] 1567s tests/translate/storage/test_html.py::TestHTMLExtraction::test_strip_html PASSED [ 51%] 1567s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_figcaption PASSED [ 51%] 1567s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_caption_td_th PASSED [ 51%] 1567s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_alt PASSED [ 51%] 1567s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_title PASSED [ 51%] 1567s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre PASSED [ 51%] 1567s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre_code PASSED [ 51%] 1567s tests/translate/storage/test_ini.py::TestINIUnit::test_isfuzzy PASSED [ 51%] 1567s tests/translate/storage/test_ini.py::TestINIUnit::test_create PASSED [ 51%] 1567s tests/translate/storage/test_ini.py::TestINIUnit::test_eq PASSED [ 51%] 1567s tests/translate/storage/test_ini.py::TestINIUnit::test_escapes PASSED [ 51%] 1567s tests/translate/storage/test_ini.py::TestINIUnit::test_difficult_escapes PASSED [ 51%] 1567s tests/translate/storage/test_ini.py::TestINIUnit::test_note_sanity PASSED [ 51%] 1567s tests/translate/storage/test_ini.py::TestINIUnit::test_target PASSED [ 51%] 1567s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_get PASSED [ 51%] 1567s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_set PASSED [ 51%] 1567s tests/translate/storage/test_ini.py::TestINIStore::test_create_blank PASSED [ 51%] 1567s tests/translate/storage/test_ini.py::TestINIStore::test_add PASSED [ 51%] 1567s tests/translate/storage/test_ini.py::TestINIStore::test_remove PASSED [ 51%] 1567s tests/translate/storage/test_ini.py::TestINIStore::test_find PASSED [ 51%] 1567s tests/translate/storage/test_ini.py::TestINIStore::test_parse PASSED [ 51%] 1567s tests/translate/storage/test_ini.py::TestINIStore::test_files PASSED [ 52%] 1567s tests/translate/storage/test_ini.py::TestINIStore::test_save PASSED [ 52%] 1567s tests/translate/storage/test_ini.py::TestINIStore::test_extensions PASSED [ 52%] 1567s tests/translate/storage/test_ini.py::TestINIStore::test_mimetypes PASSED [ 52%] 1567s tests/translate/storage/test_ini.py::TestINIStore::test_translate PASSED [ 52%] 1567s tests/translate/storage/test_ini.py::TestINIStore::test_markup PASSED [ 52%] 1567s tests/translate/storage/test_ini.py::TestINIStore::test_nonascii PASSED [ 52%] 1567s tests/translate/storage/test_ini.py::TestINIStore::test_serialize PASSED [ 52%] 1567s tests/translate/storage/test_ini.py::TestINIStore::test_rem PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_isfuzzy PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_create PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_eq PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_escapes PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_difficult_escapes PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_note_sanity PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_target PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_get PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_set PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_create_blank PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_remove PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_find PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_parse PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_files PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_save PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_extensions PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_mimetypes PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_translate PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_markup PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_nonascii PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_serialize PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_can_not_detect PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_error PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_filter PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_ordering PASSED [ 52%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_args PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_bom PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex_array PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_list_like PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_blank PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_types PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_null PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_isfuzzy PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_create PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_eq PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_escapes PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_difficult_escapes PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_note_sanity PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_target PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_get PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_set PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_serialize PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_ordering PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_array PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index_nested PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_nested_list_mixed PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_list_to_dict PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_complex_keys PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_other PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0]-expected0] PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0]-expected1] PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0][1][2][3]-expected2] PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test]selection-expected3] PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test][0]selection-expected4] PASSED [ 53%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0][test]selection-expected5] PASSED [ 54%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[-expected6] PASSED [ 54%] 1567s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_dot_keys PASSED [ 54%] 1567s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_isfuzzy PASSED [ 54%] 1567s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_create PASSED [ 54%] 1567s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_eq PASSED [ 54%] 1567s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_escapes PASSED [ 54%] 1567s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_difficult_escapes PASSED [ 54%] 1567s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_note_sanity PASSED [ 54%] 1567s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_target PASSED [ 54%] 1567s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_get PASSED [ 54%] 1567s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_set PASSED [ 54%] 1567s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_create_blank PASSED [ 54%] 1567s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_add PASSED [ 54%] 1567s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_remove PASSED [ 54%] 1567s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_find PASSED [ 54%] 1567s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_parse PASSED [ 54%] 1567s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_files PASSED [ 54%] 1568s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_save PASSED [ 54%] 1568s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_extensions PASSED [ 54%] 1568s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_mimetypes PASSED [ 54%] 1568s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_translate PASSED [ 54%] 1568s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_markup PASSED [ 54%] 1568s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_nonascii PASSED [ 54%] 1568s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize PASSED [ 54%] 1568s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_dot_keys PASSED [ 54%] 1568s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_leading_dot_keys PASSED [ 54%] 1568s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize_no_description PASSED [ 54%] 1568s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_set_target PASSED [ 54%] 1568s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_placeholders PASSED [ 54%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_create_blank PASSED [ 54%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_add PASSED [ 54%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_remove PASSED [ 54%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_find PASSED [ 54%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_parse PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_files PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_save PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_extensions PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_mimetypes PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_translate PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_markup PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nonascii PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_serialize PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_units PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_plurals PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nested_array PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural_id PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_create_blank PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_add PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_remove PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_find PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_parse PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_files PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_save PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_extensions PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_mimetypes PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_translate PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_markup PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_nonascii PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals_missing PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_case_no_msg PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_complex_id PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_create_blank PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_add PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_remove PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_find PASSED [ 55%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_parse PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_files PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_save PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_extensions PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_mimetypes PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_translate PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_markup PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nonascii PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_serialize PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_units PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_plurals PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nested_array PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_new_plural PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_ru PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_create_blank PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_add PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_remove PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_find PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_parse PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_files PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_save PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_extensions PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_mimetypes PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_translate PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_markup PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nonascii PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_serialize PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_units PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_plurals PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nested_array PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_new_plural PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_ru PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_create_blank PASSED [ 56%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_add PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_remove PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_find PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_parse PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_files PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_save PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_extensions PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_mimetypes PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_translate PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_markup PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_nonascii PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals_missing PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_invalid PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_dot_keys PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_create_blank PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_add PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_remove PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_find PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_parse PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_files PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_save PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_extensions PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_mimetypes PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_translate PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_markup PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_nonascii PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_1 PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_2 PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_blank PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_missing PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_simplification PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_invalid PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_dot_keys PASSED [ 57%] 1568s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_create_blank PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_add PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_remove PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_find PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_parse PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_files PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_save PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_extensions PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_mimetypes PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_translate PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_markup PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_nonascii PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_roundtrip PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_leading_dot_keys PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_create_blank PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_add PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_remove PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_find PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_parse PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_files PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_save PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_extensions PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_mimetypes PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_translate PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_markup PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_nonascii PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_roundtrip PASSED [ 58%] 1568s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_leading_dot_keys PASSED [ 58%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_atx_heading PASSED [ 58%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_autolink PASSED [ 58%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_block_quote PASSED [ 58%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_block PASSED [ 58%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_span PASSED [ 58%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_atx_heading PASSED [ 58%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_document PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_list_item PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_escaped_character PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_hard_line_break PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_block PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_character_entities PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_span PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_image_embedded_in_link PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_collapsed_reference_link PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_full_reference_link PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_shortcut_reference_link PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_merging_of_adjacent_placeholders PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_block_tokens PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_list PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_basic_markup PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_only_whitespace_and_placeholders PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_placeholder_trimming PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image_no_title PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_link PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_text_paragraph PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_remove_placeholders_from_both_ends_of_translation_units PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_setext_heading PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_table_with_header PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_thematic_break PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_hard_line_break_in_translation_unit PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_missing_placeholder PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_duplicate_placeholder PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_extraneous_placeholder PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_reordered_placeholders PASSED [ 59%] 1568s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_invalid_markdown_in_translation PASSED [ 59%] 1568s tests/translate/storage/test_mo.py::TestMOUnit::test_isfuzzy PASSED [ 59%] 1568s tests/translate/storage/test_mo.py::TestMOUnit::test_create PASSED [ 59%] 1568s tests/translate/storage/test_mo.py::TestMOUnit::test_eq PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOUnit::test_target PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOUnit::test_escapes PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOUnit::test_difficult_escapes PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOUnit::test_note_sanity PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_get PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_set PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOUnit::test_context PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOFile::test_create_blank PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOFile::test_add PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOFile::test_remove PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOFile::test_find PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOFile::test_translate PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOFile::test_parse PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOFile::test_files PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOFile::test_save PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOFile::test_markup PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOFile::test_nonascii PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOFile::test_extensions PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOFile::test_mimetypes PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOFile::test_language PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOFile::test_context PASSED [ 60%] 1568s tests/translate/storage/test_mo.py::TestMOFile::test_output PASSED [ 60%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_isfuzzy PASSED [ 60%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_create PASSED [ 60%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_eq PASSED [ 60%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_escapes PASSED [ 60%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_difficult_escapes PASSED [ 60%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_note_sanity PASSED [ 60%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_target PASSED [ 60%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_get PASSED [ 60%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_set PASSED [ 60%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_create_blank PASSED [ 60%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_add PASSED [ 60%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_remove PASSED [ 61%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_find PASSED [ 61%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_parse PASSED [ 61%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_files PASSED [ 61%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_save PASSED [ 61%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_extensions PASSED [ 61%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_mimetypes PASSED [ 61%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_translate PASSED [ 61%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_markup PASSED [ 61%] 1568s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_nonascii PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[-] PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String-String] PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {OK}-String] PASSED [ 61%] 1568s 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%] 1568s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{ok}-String] PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{OK}-String] PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok} -String] PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_isfuzzy PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_create PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_eq PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_target PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_escapes PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_difficult_escapes PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_note_sanity PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_get PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_set PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_translate_but_same PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_untranslated PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_comments PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_copy_target PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_create_blank PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_add PASSED [ 61%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_remove PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_find PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_translate PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_parse PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_files PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_save PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_markup PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_extensions PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_mimetypes PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_nonascii PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_format_layout PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_crlf PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_active_flag PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_multiline_comments PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_template PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[--False] PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ -Source -True] PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok}-Source-True] PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok} -Source-True] PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[{ok}-Source-True] PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_headers PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_not_headers PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[0] PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[1] PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[2] PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[3] PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_tag_comments PASSED [ 62%] 1568s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_maxlength PASSED [ 62%] 1568s tests/translate/storage/test_omegat.py::TestOtUnit::test_isfuzzy PASSED [ 62%] 1568s tests/translate/storage/test_omegat.py::TestOtUnit::test_create PASSED [ 62%] 1568s tests/translate/storage/test_omegat.py::TestOtUnit::test_eq PASSED [ 62%] 1568s tests/translate/storage/test_omegat.py::TestOtUnit::test_target PASSED [ 62%] 1568s tests/translate/storage/test_omegat.py::TestOtUnit::test_escapes PASSED [ 62%] 1568s tests/translate/storage/test_omegat.py::TestOtUnit::test_difficult_escapes PASSED [ 63%] 1568s tests/translate/storage/test_omegat.py::TestOtUnit::test_note_sanity PASSED [ 63%] 1568s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_get PASSED [ 63%] 1568s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_set PASSED [ 63%] 1568s tests/translate/storage/test_omegat.py::TestOtFile::test_create_blank PASSED [ 63%] 1568s tests/translate/storage/test_omegat.py::TestOtFile::test_add PASSED [ 63%] 1568s tests/translate/storage/test_omegat.py::TestOtFile::test_remove PASSED [ 63%] 1568s tests/translate/storage/test_omegat.py::TestOtFile::test_find PASSED [ 63%] 1568s tests/translate/storage/test_omegat.py::TestOtFile::test_translate PASSED [ 63%] 1568s tests/translate/storage/test_omegat.py::TestOtFile::test_parse PASSED [ 63%] 1568s tests/translate/storage/test_omegat.py::TestOtFile::test_files PASSED [ 63%] 1568s tests/translate/storage/test_omegat.py::TestOtFile::test_save PASSED [ 63%] 1568s tests/translate/storage/test_omegat.py::TestOtFile::test_markup PASSED [ 63%] 1568s tests/translate/storage/test_omegat.py::TestOtFile::test_nonascii PASSED [ 63%] 1568s tests/translate/storage/test_omegat.py::TestOtFile::test_mimetypes PASSED [ 63%] 1568s tests/translate/storage/test_omegat.py::TestOtFile::test_extensions XFAIL [ 63%] 1568s tests/translate/storage/test_oo.py::test_makekey PASSED [ 63%] 1568s tests/translate/storage/test_oo.py::test_escape_help_text PASSED [ 63%] 1568s tests/translate/storage/test_oo.py::TestOO::test_simpleentry PASSED [ 63%] 1568s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_quickhelptest PASSED [ 63%] 1568s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_title PASSED [ 63%] 1568s tests/translate/storage/test_oo.py::TestOO::test_blankline PASSED [ 63%] 1568s tests/translate/storage/test_oo.py::TestOO::test_fieldlength PASSED [ 63%] 1568s tests/translate/storage/test_oo.py::TestOO::test_escapes PASSED [ 63%] 1568s tests/translate/storage/test_php.py::test_php_escaping_single_quote PASSED [ 63%] 1568s tests/translate/storage/test_php.py::test_php_escaping_double_quote PASSED [ 63%] 1568s tests/translate/storage/test_php.py::TestPhpUnit::test_isfuzzy PASSED [ 63%] 1568s tests/translate/storage/test_php.py::TestPhpUnit::test_create PASSED [ 63%] 1568s tests/translate/storage/test_php.py::TestPhpUnit::test_eq PASSED [ 63%] 1568s tests/translate/storage/test_php.py::TestPhpUnit::test_escapes PASSED [ 63%] 1568s tests/translate/storage/test_php.py::TestPhpUnit::test_note_sanity PASSED [ 63%] 1568s tests/translate/storage/test_php.py::TestPhpUnit::test_target PASSED [ 63%] 1568s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_get PASSED [ 63%] 1568s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_set PASSED [ 63%] 1568s tests/translate/storage/test_php.py::TestPhpUnit::test_difficult_escapes PASSED [ 64%] 1568s tests/translate/storage/test_php.py::TestPhpFile::test_create_blank PASSED [ 64%] 1568s tests/translate/storage/test_php.py::TestPhpFile::test_add PASSED [ 64%] 1568s tests/translate/storage/test_php.py::TestPhpFile::test_remove PASSED [ 64%] 1568s tests/translate/storage/test_php.py::TestPhpFile::test_find PASSED [ 64%] 1572s tests/translate/storage/test_php.py::TestPhpFile::test_parse PASSED [ 64%] 1576s tests/translate/storage/test_php.py::TestPhpFile::test_files PASSED [ 64%] 1580s tests/translate/storage/test_php.py::TestPhpFile::test_save PASSED [ 64%] 1580s tests/translate/storage/test_php.py::TestPhpFile::test_extensions PASSED [ 64%] 1580s tests/translate/storage/test_php.py::TestPhpFile::test_mimetypes PASSED [ 64%] 1580s tests/translate/storage/test_php.py::TestPhpFile::test_translate PASSED [ 64%] 1580s tests/translate/storage/test_php.py::TestPhpFile::test_markup PASSED [ 64%] 1580s tests/translate/storage/test_php.py::TestPhpFile::test_nonascii PASSED [ 64%] 1588s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition PASSED [ 64%] 1592s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_source PASSED [ 64%] 1599s tests/translate/storage/test_php.py::TestPhpFile::test_spaces_in_name PASSED [ 64%] 1606s tests/translate/storage/test_php.py::TestPhpFile::test_comment_definition PASSED [ 64%] 1612s tests/translate/storage/test_php.py::TestPhpFile::test_comment_blocks PASSED [ 64%] 1620s tests/translate/storage/test_php.py::TestPhpFile::test_comment_output PASSED [ 64%] 1627s tests/translate/storage/test_php.py::TestPhpFile::test_comment_add PASSED [ 64%] 1641s tests/translate/storage/test_php.py::TestPhpFile::test_multiline PASSED [ 64%] 1663s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays PASSED [ 64%] 1670s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_no_array_syntax PASSED [ 64%] 1677s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_spaces PASSED [ 64%] 1681s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_quotes PASSED [ 64%] 1684s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_number_as_value PASSED [ 64%] 1691s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_non_textual PASSED [ 64%] 1697s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define PASSED [ 64%] 1704s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define_with_spaces_before_key PASSED [ 64%] 1712s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter PASSED [ 64%] 1719s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter_and_before_key PASSED [ 64%] 1726s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equal_delimiter PASSED [ 64%] 1733s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equaldel_but_before_key PASSED [ 64%] 1739s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_entries_with_quotes PASSED [ 64%] 1748s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_comments_at_entry_line_end PASSED [ 65%] 1754s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_double_slash_comments_before_entries PASSED [ 65%] 1761s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_before_end_delimiter PASSED [ 65%] 1768s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simpledefinition_spaces_before_end_delimiter PASSED [ 65%] 1775s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_no_trailing_comma PASSED [ 65%] 1781s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_space_before_comma PASSED [ 65%] 1788s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_space_before_array_declaration PASSED [ 65%] 1795s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_declared_in_a_single_line PASSED [ 65%] 1799s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys PASSED [ 65%] 1803s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys_assigned_to_array PASSED [ 65%] 1809s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_no_keys PASSED [ 65%] 1813s tests/translate/storage/test_php.py::TestPhpFile::test_assignment_in_line_where_multiline_comment_ends PASSED [ 65%] 1816s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_using_short_array_syntax PASSED [ 65%] 1823s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays PASSED [ 65%] 1830s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_space_before_array_declaration PASSED [ 65%] 1837s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_unnamed_nested_arrays PASSED [ 65%] 1845s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_array_declaration_in_next_line PASSED [ 65%] 1852s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_with_newline_after_delimiter PASSED [ 65%] 1855s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_blank_entries PASSED [ 65%] 1862s tests/translate/storage/test_php.py::TestPhpFile::test_slashstar_in_string PASSED [ 65%] 1869s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_heredoc_syntax PASSED [ 65%] 1875s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_after_define PASSED [ 65%] 1879s tests/translate/storage/test_php.py::TestPhpFile::test_quotes PASSED [ 65%] 1885s tests/translate/storage/test_php.py::TestPhpFile::test_concatenation PASSED [ 65%] 1889s tests/translate/storage/test_php.py::TestPhpFile::test_serialize PASSED [ 65%] 1896s tests/translate/storage/test_php.py::TestPhpFile::test_space_before_comma PASSED [ 65%] 1902s tests/translate/storage/test_php.py::TestPhpFile::test_equals_in_id PASSED [ 65%] 1909s tests/translate/storage/test_php.py::TestPhpFile::test_comma_in_string PASSED [ 65%] 1915s tests/translate/storage/test_php.py::TestPhpFile::test_nowdoc PASSED [ 65%] 1922s tests/translate/storage/test_php.py::TestPhpFile::test_plain_concatenation PASSED [ 65%] 1929s tests/translate/storage/test_php.py::TestPhpFile::test_array_keys PASSED [ 65%] 1935s tests/translate/storage/test_php.py::TestPhpFile::test_double_var PASSED [ 65%] 1939s tests/translate/storage/test_php.py::TestPhpFile::test_return_array PASSED [ 65%] 1942s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short PASSED [ 66%] 1945s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short_quotes PASSED [ 66%] 1945s tests/translate/storage/test_php.py::TestPhpFile::test_addunit PASSED [ 66%] 1945s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_isfuzzy PASSED [ 66%] 1945s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_create PASSED [ 66%] 1945s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_eq PASSED [ 66%] 1945s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_escapes PASSED [ 66%] 1945s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_difficult_escapes PASSED [ 66%] 1945s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_note_sanity PASSED [ 66%] 1945s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_target PASSED [ 66%] 1945s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_get PASSED [ 66%] 1945s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_set PASSED [ 66%] 1945s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_create_blank PASSED [ 66%] 1945s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_add PASSED [ 66%] 1945s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_remove PASSED [ 66%] 1945s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_find PASSED [ 66%] 1948s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_parse PASSED [ 66%] 1951s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_files PASSED [ 66%] 1954s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_save PASSED [ 66%] 1954s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_extensions PASSED [ 66%] 1954s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_mimetypes PASSED [ 66%] 1954s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_translate PASSED [ 66%] 1954s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_markup PASSED [ 66%] 1954s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_nonascii PASSED [ 66%] 1957s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_plurals PASSED [ 66%] 1957s tests/translate/storage/test_po.py::test_roundtrip_quoting PASSED [ 66%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_isfuzzy PASSED [ 66%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_create PASSED [ 66%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_eq PASSED [ 66%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_target PASSED [ 66%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_escapes PASSED [ 66%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_difficult_escapes PASSED [ 66%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_note_sanity PASSED [ 66%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_rich_get PASSED [ 66%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_rich_set PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_istranslatable PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_locations PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_nongettext_location PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_adding_empty_note PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_markreview PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_errors PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_no_plural_settarget PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_wrapping_bug PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_extract_msgidcomments_from_text PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_isheader PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOUnit::test_buildfromunit PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_create_blank PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_add PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_remove PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_find PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_translate PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_parse PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_files PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_save PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_markup PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_nonascii PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_extensions PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_mimetypes PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_context_only PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_simpleentry PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_copy PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_parse_source_string PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_parse_file PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_unicode PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_plurals PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_plural_unicode PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_nongettext_location PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_percent_location PASSED [ 67%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals XFAIL [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_empty_lines_notes PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_fuzzy PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated XFAIL [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_merging_automaticcomments PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_malformed_units PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_malformed_obsolete_units PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_uniforum_po PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_obsolete PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_obsolete_with_prev_msgid PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_header_escapes PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_plural PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgctxt PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgidcomments PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_multiline_obsolete PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_merge_duplicates PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_merge_mixed_sources PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_parse_context PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_parse_advanced_context PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_kde_context PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_broken_kde_context PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_id PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments_2 PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_final_slash PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_unfinished_lines PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_encoding_change PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_istranslated PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_wrapping PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_wrapping_cjk PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_wrap_emoji PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis PASSED [ 68%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis_long PASSED [ 69%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_wrap_gettext PASSED [ 69%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_msgidcomments PASSED [ 69%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_unicode_ids PASSED [ 69%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_syntax_error PASSED [ 69%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_invalid PASSED [ 69%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_wrapped_msgid PASSED [ 69%] 1957s tests/translate/storage/test_po.py::TestPOFile::test_missing_plural PASSED [ 69%] 1957s tests/translate/storage/test_pocommon.py::test_roundtrip_quote_plus PASSED [ 69%] 1957s tests/translate/storage/test_poheader.py::test_parseheaderstring PASSED [ 69%] 1957s tests/translate/storage/test_poheader.py::test_update PASSED [ 69%] 1957s tests/translate/storage/test_poheader.py::test_po_dates PASSED [ 69%] 1957s tests/translate/storage/test_poheader.py::test_timezones PASSED [ 69%] 1957s tests/translate/storage/test_poheader.py::test_header_blank PASSED [ 69%] 1957s tests/translate/storage/test_poheader.py::test_plural_equation PASSED [ 69%] 1957s tests/translate/storage/test_poheader.py::test_plural_equation_across_lines PASSED [ 69%] 1957s tests/translate/storage/test_poheader.py::test_updatecontributor PASSED [ 69%] 1957s tests/translate/storage/test_poheader.py::test_updatecontributor_header PASSED [ 69%] 1957s tests/translate/storage/test_poheader.py::test_language PASSED [ 69%] 1957s tests/translate/storage/test_poheader.py::test_project PASSED [ 69%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_isfuzzy PASSED [ 69%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_create PASSED [ 69%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_eq PASSED [ 69%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_target PASSED [ 69%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_escapes PASSED [ 69%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_difficult_escapes PASSED [ 69%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_note_sanity PASSED [ 69%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_get PASSED [ 69%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_set PASSED [ 69%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_markreview PASSED [ 69%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_errors PASSED [ 69%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_accepted_control_chars PASSED [ 69%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_unaccepted_control_chars PASSED [ 69%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_plurals PASSED [ 69%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_ids PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_create_blank PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_remove PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_find PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_translate PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_files PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_save PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_markup PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_nonascii PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_extensions PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_mimetypes PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_basic PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_namespace PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_source PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_target PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_source PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_target PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_sourcelanguage PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage_multi PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_alttrans PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_fuzzy PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_xml_space PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parsing PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_entities PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_multiple_filenodes PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_indent PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add_target PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_closing_tags PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_context_groups PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_getlocations PASSED [ 70%] 1957s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_addlocation PASSED [ 70%] 1958s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_huge PASSED [ 71%] 1958s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve_add PASSED [ 71%] 1958s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse PASSED [ 71%] 1958s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse_plural_alpha_id PASSED [ 71%] 1958s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_notes PASSED [ 71%] 1958s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_plural PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::test_find_delimiter_pos_simple PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::test_find_delimiter_pos_multiple PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::test_find_delimiter_pos_none PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::test_find_delimiter_pos_whitespace PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::test_find_delimiter_pos_escapes PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::test_is_line_continuation PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::test_key_strip PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::test_get_comment_one_line PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::test_get_comment_start PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::test_get_comment_end PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestPropUnit::test_isfuzzy PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestPropUnit::test_create PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestPropUnit::test_eq PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestPropUnit::test_escapes PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestPropUnit::test_difficult_escapes PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestPropUnit::test_note_sanity PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestPropUnit::test_target PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_get PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_set PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_create_blank PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_add PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_remove PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_find PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_parse PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_files PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_save PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_extensions PASSED [ 71%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_mimetypes PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_translate PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_markup PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_nonascii PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_quotes PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_simpledefinition PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition_source PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_reduce PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_increase PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_extra_plurals PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_non_plurals PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_encoding PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestGwtProp::test_other_plurals PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_create_blank PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_add PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_remove PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_find PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_parse PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_files PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_save PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_extensions PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_mimetypes PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_translate PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_markup PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_nonascii PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition_source PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_controlutf8_source PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_control_source PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_unicode_escaping PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_newlines_startend PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_space PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_whitespace_handling PASSED [ 72%] 1958s tests/translate/storage/test_properties.py::TestProp::test_key_value_delimiters_simple PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_comments PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_latin1 PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_fullspec_delimiters PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_fullspec_escaped_key PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_fullspec_line_continuation PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_fullspec_key_without_value PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_mac_strings PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_utf_16_save PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_mac_multiline_strings PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_unicode PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_utf8 PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_newlines PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_multilines_comments PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments_dropping PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_quotes PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_equals PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_serialization PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_double_backslashes PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_override_encoding PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_trailing_comments PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_utf16_byte_order_mark PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_raise_ioerror_if_cannot_detect_encoding PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_utf8_byte_order_mark PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_joomla_set_target PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_joomla PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_joomla_escape PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_delimiter PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_value PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_multi_comments PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_serialize_note PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_serialize_long_note PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestProp::test_trailing_newlines PASSED [ 73%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_create_blank PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_add PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_remove PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_find PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_parse PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_files PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_save PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_extensions PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_mimetypes PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_translate PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_markup PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_nonascii PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_simpledefinition PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition_source PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote_and_argument PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_header_preserved PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_blank_line_before_comment_preserved PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWiki::test_deprecated_comments_preserved PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_create_blank PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_add PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_remove PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_find PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_parse PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_files PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_save PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_extensions PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_mimetypes PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_markup PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_nonascii PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_simpledefinition PASSED [ 74%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition_source PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote_and_argument PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_encoded_html PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_cleaning_attributes PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate_source PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_create_blank PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_add PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_find PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_extensions PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_mimetypes PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_translate PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_markup PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_nonascii PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_simpledefinition PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_parse PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_files PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_save PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_cleaning_attributes PASSED [ 75%] 1958s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove XFAIL [ 75%] 1958s tests/translate/storage/test_pypo.py::TestHelpers::test_unescape PASSED [ 75%] 1958s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo PASSED [ 75%] 1958s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo_escaped_quotes PASSED [ 75%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isfuzzy PASSED [ 75%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_create PASSED [ 75%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_eq PASSED [ 75%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_target PASSED [ 75%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_escapes PASSED [ 75%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_difficult_escapes PASSED [ 75%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_note_sanity PASSED [ 75%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_get PASSED [ 75%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_set PASSED [ 75%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_istranslatable PASSED [ 75%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_locations PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_nongettext_location PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_adding_empty_note PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_markreview PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_errors PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_no_plural_settarget PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrapping_bug PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_extract_msgidcomments_from_text PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isheader PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_buildfromunit PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plurals PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plural_reduction PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes_withcomments PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_firstlines PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_newlines PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_max_line_length PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_slash PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_spacing_max_line PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_create_blank PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_add PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_remove PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_find PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_translate PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_files PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_save PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_markup PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nonascii PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_extensions PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mimetypes PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_context_only PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_simpleentry PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_copy PASSED [ 76%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_source_string PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_file PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plurals PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plural_unicode PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nongettext_location PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_percent_location PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals XFAIL [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_empty_lines_notes PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_fuzzy PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated XFAIL [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merging_automaticcomments PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_units PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_obsolete_units PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_uniforum_po PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete_with_prev_msgid PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_header_escapes PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_plural PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgctxt PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgidcomments PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_multiline_obsolete PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_mixed_sources PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_context PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_advanced_context PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_context PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_broken_kde_context PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_id PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments_2 PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_final_slash PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unfinished_lines PASSED [ 77%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_encoding_change PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_istranslated PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping_cjk PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_emoji PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis_long PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_gettext PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_msgidcomments PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_ids PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_syntax_error PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapped_msgid PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_missing_plural PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_combine_msgidcomments PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates_msgctxt PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_blanks PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_output_str_unicode PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_posections PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_typecomments PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unassociated_comments PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_header PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_prevmsgid_parse PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_newlines PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unix_newlines PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mac_newlines PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_header PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_comment PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_bom PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_long_msgidcomments PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_incomplete PASSED [ 78%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_invalid PASSED [ 79%] 1958s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_write PASSED [ 79%] 1959s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment XFAIL [ 79%] 1959s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_typecomment PASSED [ 79%] 1959s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_custom PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtUnit::test_isfuzzy PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtUnit::test_create PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtUnit::test_eq PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtUnit::test_target PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtUnit::test_escapes PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtUnit::test_difficult_escapes PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtUnit::test_note_sanity PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_get PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_set PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtFile::test_create_blank PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtFile::test_find PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtFile::test_translate PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtFile::test_markup PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtFile::test_extensions PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtFile::test_mimetypes PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtFile::test_parse PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtFile::test_save PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtFile::test_files PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtFile::test_nonascii PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtFile::test_add PASSED [ 79%] 1959s tests/translate/storage/test_qm.py::TestQtFile::test_remove PASSED [ 79%] 1959s tests/translate/storage/test_qph.py::TestQphUnit::test_isfuzzy PASSED [ 79%] 1959s tests/translate/storage/test_qph.py::TestQphUnit::test_create PASSED [ 79%] 1959s tests/translate/storage/test_qph.py::TestQphUnit::test_eq PASSED [ 79%] 1959s tests/translate/storage/test_qph.py::TestQphUnit::test_target PASSED [ 79%] 1959s tests/translate/storage/test_qph.py::TestQphUnit::test_escapes PASSED [ 79%] 1959s tests/translate/storage/test_qph.py::TestQphUnit::test_difficult_escapes PASSED [ 79%] 1959s tests/translate/storage/test_qph.py::TestQphUnit::test_note_sanity PASSED [ 79%] 1959s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_get PASSED [ 79%] 1959s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_set PASSED [ 80%] 1959s tests/translate/storage/test_qph.py::TestQphFile::test_create_blank PASSED [ 80%] 1959s tests/translate/storage/test_qph.py::TestQphFile::test_add PASSED [ 80%] 1959s tests/translate/storage/test_qph.py::TestQphFile::test_remove PASSED [ 80%] 1959s tests/translate/storage/test_qph.py::TestQphFile::test_find PASSED [ 80%] 1959s tests/translate/storage/test_qph.py::TestQphFile::test_translate PASSED [ 80%] 1959s tests/translate/storage/test_qph.py::TestQphFile::test_parse PASSED [ 80%] 1959s tests/translate/storage/test_qph.py::TestQphFile::test_files PASSED [ 80%] 1959s tests/translate/storage/test_qph.py::TestQphFile::test_save PASSED [ 80%] 1959s tests/translate/storage/test_qph.py::TestQphFile::test_markup PASSED [ 80%] 1959s tests/translate/storage/test_qph.py::TestQphFile::test_nonascii PASSED [ 80%] 1959s tests/translate/storage/test_qph.py::TestQphFile::test_extensions PASSED [ 80%] 1959s tests/translate/storage/test_qph.py::TestQphFile::test_mimetypes PASSED [ 80%] 1959s tests/translate/storage/test_qph.py::TestQphFile::test_basic PASSED [ 80%] 1959s tests/translate/storage/test_qph.py::TestQphFile::test_source PASSED [ 80%] 1959s tests/translate/storage/test_qph.py::TestQphFile::test_target PASSED [ 80%] 1959s tests/translate/storage/test_qph.py::TestQphFile::test_language PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::test_escaping PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_comments PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_textinclude PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_parse_dialog PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_parse_stringtable PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_lf PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_crlf PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_cr PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_parse_no_language PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_multiline PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_str PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_empty PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_utf_8 PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_utf_16 PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_comment PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_stringtables PASSED [ 80%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude_appstudio PASSED [ 81%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_id_whitespace PASSED [ 81%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_menu_comment PASSED [ 81%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_decompiled PASSED [ 81%] 1959s tests/translate/storage/test_rc.py::TestRcFile::test_quotes PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_isfuzzy PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_create PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_eq PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_escapes PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_difficult_escapes PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_note_sanity PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_target PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_get PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_set PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_create_blank PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_add PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_remove PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_find PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_parse PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_files PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_save PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_extensions PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_mimetypes PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_translate PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_markup PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_nonascii PASSED [ 81%] 1959s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_roundtrip PASSED [ 81%] 1959s tests/translate/storage/test_resx.py::TestRESXUnit::test_isfuzzy PASSED [ 81%] 1959s tests/translate/storage/test_resx.py::TestRESXUnit::test_create PASSED [ 81%] 1959s tests/translate/storage/test_resx.py::TestRESXUnit::test_eq PASSED [ 81%] 1959s tests/translate/storage/test_resx.py::TestRESXUnit::test_escapes PASSED [ 81%] 1959s tests/translate/storage/test_resx.py::TestRESXUnit::test_difficult_escapes PASSED [ 81%] 1959s tests/translate/storage/test_resx.py::TestRESXUnit::test_note_sanity PASSED [ 81%] 1959s tests/translate/storage/test_resx.py::TestRESXUnit::test_target PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_get PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_set PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_isfuzzy PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_create PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_eq PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_escapes PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_difficult_escapes PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_note_sanity PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_target PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_get PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_set PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit_comment PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXfile::test_create_blank PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXfile::test_add PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXfile::test_remove PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXfile::test_find PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXfile::test_parse PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXfile::test_files PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXfile::test_save PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXfile::test_extensions PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXfile::test_mimetypes PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXfile::test_translate PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXfile::test_markup PASSED [ 82%] 1959s tests/translate/storage/test_resx.py::TestRESXfile::test_nonascii PASSED [ 82%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_isfuzzy PASSED [ 82%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_create PASSED [ 82%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq PASSED [ 82%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_escapes PASSED [ 82%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_difficult_escapes PASSED [ 82%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_note_sanity PASSED [ 82%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_target PASSED [ 82%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_get PASSED [ 82%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_set PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_source PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq_formatvaluetype PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_innerkey PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_create_blank PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_remove PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_find PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_parse PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_files PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_save PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_extensions PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_mimetypes PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_translate PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_markup PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_nonascii PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_serialize PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_default_handlings PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_base_filename PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_plural_zero_always_set PASSED [ 83%] 1959s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add_unit PASSED [ 83%] 1959s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_isfuzzy PASSED [ 83%] 1959s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_create PASSED [ 83%] 1959s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_eq PASSED [ 83%] 1959s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_escapes PASSED [ 83%] 1959s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_difficult_escapes PASSED [ 83%] 1959s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_target PASSED [ 83%] 1959s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_get PASSED [ 83%] 1959s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_set PASSED [ 83%] 1959s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity XFAIL [ 83%] 1959s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_create_blank PASSED [ 83%] 1959s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_add PASSED [ 83%] 1959s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_remove PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_find PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_parse PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_files PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_save PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_extensions PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_mimetypes PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_translate PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_markup PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_nonascii PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_create_blank PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_add PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_remove PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_find PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_parse PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_files PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_save PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_extensions PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_mimetypes PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_translate PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_markup PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_nonascii PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_create_blank PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_add PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_remove PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_find PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_parse PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_files PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_save PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_extensions PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_mimetypes PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_translate PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_markup PASSED [ 84%] 1959s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_nonascii PASSED [ 85%] 1959s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_create_blank PASSED [ 85%] 1959s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_add PASSED [ 85%] 1959s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_remove PASSED [ 85%] 1959s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_find PASSED [ 85%] 1959s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_parse PASSED [ 85%] 1959s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_files PASSED [ 85%] 1959s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_save PASSED [ 85%] 1959s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_extensions PASSED [ 85%] 1959s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_mimetypes PASSED [ 85%] 1959s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_translate PASSED [ 85%] 1959s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_markup PASSED [ 85%] 1959s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_nonascii PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXUnit::test_isfuzzy PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXUnit::test_create PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXUnit::test_eq PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXUnit::test_target PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXUnit::test_escapes PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXUnit::test_difficult_escapes PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXUnit::test_note_sanity PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_get PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_set PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_create_blank PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_add PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_remove PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_find PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_translate PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_parse PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_files PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_save PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_markup PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_nonascii PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_extensions PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_mimetypes PASSED [ 85%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_basic PASSED [ 86%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_source PASSED [ 86%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_target PASSED [ 86%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_setid PASSED [ 86%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_indent PASSED [ 86%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_descrip PASSED [ 86%] 1959s tests/translate/storage/test_tbx.py::TestTBXfile::test_note_from PASSED [ 86%] 1959s tests/translate/storage/test_tiki.py::TestTikiUnit::test_locations PASSED [ 86%] 1959s tests/translate/storage/test_tiki.py::TestTikiUnit::test_to_unicode PASSED [ 86%] 1959s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_simple PASSED [ 86%] 1959s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_encode PASSED [ 86%] 1959s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_locations PASSED [ 86%] 1959s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_ignore_extras PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnit::test_isfuzzy PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnit::test_create PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnit::test_eq PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnit::test_target PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnit::test_escapes PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnit::test_difficult_escapes PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnit::test_note_sanity PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_get PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_set PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_isfuzzy PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_create PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_eq PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_target PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_escapes PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_difficult_escapes PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_note_sanity PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_get PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_set PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXfile::test_create_blank PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXfile::test_add PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXfile::test_remove PASSED [ 86%] 1959s tests/translate/storage/test_tmx.py::TestTMXfile::test_find PASSED [ 87%] 1959s tests/translate/storage/test_tmx.py::TestTMXfile::test_parse PASSED [ 87%] 1959s tests/translate/storage/test_tmx.py::TestTMXfile::test_files PASSED [ 87%] 1959s tests/translate/storage/test_tmx.py::TestTMXfile::test_save PASSED [ 87%] 1959s tests/translate/storage/test_tmx.py::TestTMXfile::test_markup PASSED [ 87%] 1959s tests/translate/storage/test_tmx.py::TestTMXfile::test_nonascii PASSED [ 87%] 1959s tests/translate/storage/test_tmx.py::TestTMXfile::test_extensions PASSED [ 87%] 1959s tests/translate/storage/test_tmx.py::TestTMXfile::test_mimetypes PASSED [ 87%] 1959s tests/translate/storage/test_tmx.py::TestTMXfile::test_translate PASSED [ 87%] 1959s tests/translate/storage/test_tmx.py::TestTMXfile::test_addtranslation PASSED [ 87%] 1959s tests/translate/storage/test_tmx.py::TestTMXfile::test_withcomment PASSED [ 87%] 1959s tests/translate/storage/test_tmx.py::TestTMXfile::test_withnewlines PASSED [ 87%] 1959s tests/translate/storage/test_tmx.py::TestTMXfile::test_xmlentities PASSED [ 87%] 1959s tests/translate/storage/test_tmx.py::TestTMXfile::test_controls_cleaning PASSED [ 87%] 1959s tests/translate/storage/test_trados.py::test_unescape PASSED [ 87%] 1959s tests/translate/storage/test_trados.py::test_escape PASSED [ 87%] 1959s tests/translate/storage/test_ts.py::TestTS::test_construct PASSED [ 87%] 1959s tests/translate/storage/test_ts2.py::TestTSUnit::test_isfuzzy PASSED [ 87%] 1959s tests/translate/storage/test_ts2.py::TestTSUnit::test_create PASSED [ 87%] 1959s tests/translate/storage/test_ts2.py::TestTSUnit::test_eq PASSED [ 87%] 1959s tests/translate/storage/test_ts2.py::TestTSUnit::test_target PASSED [ 87%] 1959s tests/translate/storage/test_ts2.py::TestTSUnit::test_escapes PASSED [ 87%] 1959s tests/translate/storage/test_ts2.py::TestTSUnit::test_difficult_escapes PASSED [ 87%] 1959s tests/translate/storage/test_ts2.py::TestTSUnit::test_note_sanity PASSED [ 87%] 1959s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_get PASSED [ 87%] 1959s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_set PASSED [ 87%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_create_blank PASSED [ 87%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_add PASSED [ 87%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_remove PASSED [ 87%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_find PASSED [ 87%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_translate PASSED [ 87%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_parse PASSED [ 87%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_files PASSED [ 87%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_save PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_markup PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_nonascii PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_extensions PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_mimetypes PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_basic PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_source PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_target PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_plurals PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_nplural PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_language PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_edit PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_obsolete PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_locations PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_merge_with_fuzzies PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_getid PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_backnforth PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_context PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_roundtrip_context PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_edit_missing_translation PASSED [ 88%] 1959s tests/translate/storage/test_ts2.py::TestTSfile::test_missing_source PASSED [ 88%] 1959s tests/translate/storage/test_txt.py::TestTxtUnit::test_isfuzzy PASSED [ 88%] 1959s tests/translate/storage/test_txt.py::TestTxtUnit::test_create PASSED [ 88%] 1959s tests/translate/storage/test_txt.py::TestTxtUnit::test_eq PASSED [ 88%] 1959s tests/translate/storage/test_txt.py::TestTxtUnit::test_escapes PASSED [ 88%] 1959s tests/translate/storage/test_txt.py::TestTxtUnit::test_difficult_escapes PASSED [ 88%] 1959s tests/translate/storage/test_txt.py::TestTxtUnit::test_note_sanity PASSED [ 88%] 1959s tests/translate/storage/test_txt.py::TestTxtUnit::test_target PASSED [ 88%] 1959s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_get PASSED [ 88%] 1959s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_set PASSED [ 88%] 1959s tests/translate/storage/test_txt.py::TestTxtFile::test_create_blank PASSED [ 88%] 1959s tests/translate/storage/test_txt.py::TestTxtFile::test_add PASSED [ 88%] 1959s tests/translate/storage/test_txt.py::TestTxtFile::test_remove PASSED [ 88%] 1959s tests/translate/storage/test_txt.py::TestTxtFile::test_find PASSED [ 88%] 1959s tests/translate/storage/test_txt.py::TestTxtFile::test_parse PASSED [ 89%] 1959s tests/translate/storage/test_txt.py::TestTxtFile::test_files PASSED [ 89%] 1959s tests/translate/storage/test_txt.py::TestTxtFile::test_save PASSED [ 89%] 1959s tests/translate/storage/test_txt.py::TestTxtFile::test_extensions PASSED [ 89%] 1959s tests/translate/storage/test_txt.py::TestTxtFile::test_mimetypes PASSED [ 89%] 1959s tests/translate/storage/test_txt.py::TestTxtFile::test_translate PASSED [ 89%] 1959s tests/translate/storage/test_txt.py::TestTxtFile::test_markup PASSED [ 89%] 1959s tests/translate/storage/test_txt.py::TestTxtFile::test_nonascii PASSED [ 89%] 1959s tests/translate/storage/test_txt.py::TestTxtFile::test_simpleblock PASSED [ 89%] 1959s tests/translate/storage/test_txt.py::TestTxtFile::test_multipleblocks PASSED [ 89%] 1959s tests/translate/storage/test_txt.py::TestTxtFile::test_no_segmentation PASSED [ 89%] 1959s tests/translate/storage/test_utx.py::TestUtxUnit::test_isfuzzy PASSED [ 89%] 1959s tests/translate/storage/test_utx.py::TestUtxUnit::test_create PASSED [ 89%] 1959s tests/translate/storage/test_utx.py::TestUtxUnit::test_eq PASSED [ 89%] 1959s tests/translate/storage/test_utx.py::TestUtxUnit::test_target PASSED [ 89%] 1959s tests/translate/storage/test_utx.py::TestUtxUnit::test_escapes PASSED [ 89%] 1959s tests/translate/storage/test_utx.py::TestUtxUnit::test_difficult_escapes PASSED [ 89%] 1959s tests/translate/storage/test_utx.py::TestUtxUnit::test_note_sanity PASSED [ 89%] 1959s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_get PASSED [ 89%] 1959s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_set PASSED [ 89%] 1959s tests/translate/storage/test_utx.py::TestUtxFile::test_create_blank PASSED [ 89%] 1959s tests/translate/storage/test_utx.py::TestUtxFile::test_add PASSED [ 89%] 1959s tests/translate/storage/test_utx.py::TestUtxFile::test_remove PASSED [ 89%] 1959s tests/translate/storage/test_utx.py::TestUtxFile::test_find PASSED [ 89%] 1959s tests/translate/storage/test_utx.py::TestUtxFile::test_translate PASSED [ 89%] 1959s tests/translate/storage/test_utx.py::TestUtxFile::test_parse PASSED [ 89%] 1960s tests/translate/storage/test_utx.py::TestUtxFile::test_files PASSED [ 89%] 1960s tests/translate/storage/test_utx.py::TestUtxFile::test_save PASSED [ 89%] 1960s tests/translate/storage/test_utx.py::TestUtxFile::test_markup PASSED [ 89%] 1960s tests/translate/storage/test_utx.py::TestUtxFile::test_nonascii PASSED [ 89%] 1960s tests/translate/storage/test_utx.py::TestUtxFile::test_extensions PASSED [ 89%] 1960s tests/translate/storage/test_utx.py::TestUtxFile::test_mimetypes PASSED [ 89%] 1960s tests/translate/storage/test_wordfast.py::TestWFTime::test_timestring PASSED [ 89%] 1960s tests/translate/storage/test_wordfast.py::TestWFTime::test_time PASSED [ 89%] 1960s tests/translate/storage/test_wordfast.py::TestWFUnit::test_isfuzzy PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFUnit::test_create PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFUnit::test_eq PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFUnit::test_target PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFUnit::test_escapes PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFUnit::test_note_sanity PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_get PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_set PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFUnit::test_difficult_escapes PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFUnit::test_wordfast_escaping PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFUnit::test_newlines PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFUnit::test_language_setting PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFUnit::test_istranslated PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFFile::test_create_blank PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFFile::test_add PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFFile::test_remove PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFFile::test_find PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFFile::test_translate PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFFile::test_parse PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFFile::test_files PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFFile::test_save PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFFile::test_markup PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFFile::test_nonascii PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFFile::test_extensions PASSED [ 90%] 1960s tests/translate/storage/test_wordfast.py::TestWFFile::test_mimetypes PASSED [ 90%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_isfuzzy PASSED [ 90%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_create PASSED [ 90%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_eq PASSED [ 90%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_target PASSED [ 90%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_escapes PASSED [ 90%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_difficult_escapes PASSED [ 90%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_note_sanity PASSED [ 90%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_get PASSED [ 90%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_set PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_markreview PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_errors PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_accepted_control_chars PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_unaccepted_control_chars PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_create_blank PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_remove PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_find PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_translate PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parse PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_files PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_save PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_markup PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_nonascii PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_extensions PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_mimetypes PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_basic PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_namespace PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_source PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_target PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_source PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_target PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_sourcelanguage PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage_multi PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_notes PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_alttrans PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_fuzzy PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_xml_space PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parsing PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_entities PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_multiple_filenodes PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_indent PASSED [ 91%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add_target PASSED [ 92%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve PASSED [ 92%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_closing_tags PASSED [ 92%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_context_groups PASSED [ 92%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_getlocations PASSED [ 92%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_addlocation PASSED [ 92%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_huge PASSED [ 92%] 1960s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve_add PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_isfuzzy PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_create PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_eq PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_escapes PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_difficult_escapes PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_note_sanity PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_target PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_get PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_set PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_getlocations PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_create_blank PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_find PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_files PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_save PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_extensions PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_mimetypes PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_translate PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_markup PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nonascii PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_serialize PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit PASSED [ 92%] 1960s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit_unicode PASSED [ 92%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse_unicode_list PASSED [ 92%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_ordering PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_initial_comments PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_string_key PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nested PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_multiline PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_boolean PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_integer PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_no_quote_strings PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_double_quote_strings PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_single_quote_strings PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_double_quote_strings PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_single_quote_strings PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_escaped_double_quotes PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_newlines PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_list PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_dictionary PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_key_nesting PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add_to_mepty PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty_key PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dict_in_list PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dump_args PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_anchors PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_tagged_scalar PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_numeric PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_remove PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_special PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_quotes_roundtrip PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_create_blank PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_remove PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_find PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_parse PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_files PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_save PASSED [ 93%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_extensions PASSED [ 94%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_mimetypes PASSED [ 94%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_translate PASSED [ 94%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_markup PASSED [ 94%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_nonascii PASSED [ 94%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_list PASSED [ 94%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby PASSED [ 94%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_wrong PASSED [ 94%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_invalid_value PASSED [ 94%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural PASSED [ 94%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_empty PASSED [ 94%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_anchors PASSED [ 94%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_type_change PASSED [ 94%] 1961s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_add PASSED [ 94%] 1961s tests/translate/storage/test_zip.py::TestZIPFile::test_created PASSED [ 94%] 1961s tests/translate/storage/test_zip.py::TestZIPFile::test_basic PASSED [ 94%] 1961s tests/translate/storage/test_zip.py::TestZIPFile::test_structure PASSED [ 94%] 1961s tests/translate/storage/test_zip.py::TestZIPFile::test_getunits PASSED [ 94%] 1961s tests/translate/storage/xml_extract/test_misc.py::test_reduce_tree PASSED [ 94%] 1961s tests/translate/storage/xml_extract/test_misc.py::test_compose_mappings PASSED [ 94%] 1961s tests/translate/storage/xml_extract/test_misc.py::test_parse_tag PASSED [ 94%] 1961s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath_component PASSED [ 94%] 1961s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath PASSED [ 94%] 1961s tests/translate/storage/xml_extract/test_unit_tree.py::test__add_unit_to_tree PASSED [ 94%] 1961s tests/translate/storage/xml_extract/test_xpath_breadcrumb.py::test_breadcrumb PASSED [ 94%] 1961s tests/translate/tools/test_help.py::test_help[build_tmdb] PASSED [ 94%] 1961s tests/translate/tools/test_help.py::test_help[phppo2pypo] PASSED [ 94%] 1961s tests/translate/tools/test_help.py::test_help[poclean] PASSED [ 94%] 1961s tests/translate/tools/test_help.py::test_help[pocompile] PASSED [ 94%] 1961s tests/translate/tools/test_help.py::test_help[poconflicts] PASSED [ 94%] 1961s tests/translate/tools/test_help.py::test_help[pocount] PASSED [ 94%] 1961s tests/translate/tools/test_help.py::test_help[podebug] PASSED [ 94%] 1961s tests/translate/tools/test_help.py::test_help[pogrep] PASSED [ 94%] 1961s tests/translate/tools/test_help.py::test_help[pomerge] PASSED [ 94%] 1961s tests/translate/tools/test_help.py::test_help[porestructure] PASSED [ 95%] 1961s tests/translate/tools/test_help.py::test_help[posegment] PASSED [ 95%] 1961s tests/translate/tools/test_help.py::test_help[poswap] PASSED [ 95%] 1962s tests/translate/tools/test_help.py::test_help[poterminology] PASSED [ 95%] 1962s tests/translate/tools/test_help.py::test_help[pretranslate] PASSED [ 95%] 1962s tests/translate/tools/test_help.py::test_help[pydiff] PASSED [ 95%] 1962s tests/translate/tools/test_help.py::test_help[pypo2phppo] PASSED [ 95%] 1962s tests/translate/tools/test_junitmsgfmt.py::test_output[failure] PASSED [ 95%] 1962s tests/translate/tools/test_junitmsgfmt.py::test_output[untranslated] PASSED [ 95%] 1962s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_single_po PASSED [ 95%] 1962s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_plural_po PASSED [ 95%] 1962s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_single_po PASSED [ 95%] 1962s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_plural_po PASSED [ 95%] 1962s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_help PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_zero PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_one PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_two PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::TestCount::test_punctuation_divides_words PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::TestCount::test_xml_tags PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::TestCount::test_newlines PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::TestCount::test_variables_are_words PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::TestCount::test_plurals PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde XFAIL [ 95%] 1962s tests/translate/tools/test_pocount.py::TestCount::test_msgid_blank PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::TestPOCount::test_translated PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzy PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslated PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::TestPOCount::test_total PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::TestPOCount::test_translatedsourcewords PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzysourcewords PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslatedsourcewords PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::TestPOCount::test_totalsourcewords PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-csv] PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-full] PASSED [ 95%] 1962s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-strings] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-words] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-csv] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-full] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-strings] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-words] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-csv] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-full] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-strings] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-words] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-csv] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-full] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-strings] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-words] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_cases[po-file] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_cases[po-file-fuzzy] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_cases[po-file-csv] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_cases[xliff-states-yes] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_cases[xliff-states-no] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_error_cases[mutually-exclusive] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_error_cases[missing-file] PASSED [ 96%] 1962s tests/translate/tools/test_pocount.py::test_error_cases[no-args] PASSED [ 96%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_ignore_gtk PASSED [ 96%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_keep_target PASSED [ 96%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_blank PASSED [ 96%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_en PASSED [ 96%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_xxx PASSED [ 96%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_bracket PASSED [ 96%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode PASSED [ 96%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_at_placeholders PASSED [ 96%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_single_brace_placeholders PASSED [ 96%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_double_brace_placeholders PASSED [ 96%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_html PASSED [ 96%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_multiple_styles_of_placeholder PASSED [ 97%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped PASSED [ 97%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_at_placeholders PASSED [ 97%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_single_brace_placeholders PASSED [ 97%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_double_brace_placeholders PASSED [ 97%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_html PASSED [ 97%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_multiple_styles_of_placeholder PASSED [ 97%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified PASSED [ 97%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_at_placeholders PASSED [ 97%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_single_brace_placeholders PASSED [ 97%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_double_brace_placeholders PASSED [ 97%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_html PASSED [ 97%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_multiple_styles_of_placeholder PASSED [ 97%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_chef PASSED [ 97%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_po_variables PASSED [ 97%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_xliff_rewrite PASSED [ 97%] 1962s tests/translate/tools/test_podebug.py::TestPODebug::test_hash PASSED [ 97%] 1962s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgid PASSED [ 97%] 1962s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgstr PASSED [ 97%] 1962s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations PASSED [ 97%] 1962s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_comments PASSED [ 97%] 1962s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations_with_comment_enabled PASSED [ 97%] 1962s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_searchstring PASSED [ 97%] 1962s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_regex_searchstring PASSED [ 97%] 1962s tests/translate/tools/test_pogrep.py::TestPOGrep::test_keep_translations PASSED [ 97%] 1962s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_normalise PASSED [ 97%] 1962s tests/translate/tools/test_pogrep.py::TestXLiffGrep::test_simplegrep PASSED [ 97%] 1962s tests/translate/tools/test_pomerge.py::test_str2bool PASSED [ 97%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_mergesore_bad_data PASSED [ 97%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge PASSED [ 97%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge_no_locations PASSED [ 97%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_replacemerge PASSED [ 97%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_blanks PASSED [ 97%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_fuzzies PASSED [ 97%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_locations PASSED [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_with_locations PASSED [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_no_locations PASSED [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_reflowed_source_comments PASSED [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_comments_with_blank_lines PASSED [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dont_delete_unassociated_comments PASSED [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_trailing_newlines PASSED [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_minor_start_and_end_of_sentence_changes PASSED [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_last_entry_in_a_file PASSED [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs XFAIL [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_comments_layout PASSED [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dos2unix PASSED [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_xliff PASSED [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_po_into_xliff PASSED [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_po PASSED [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_dont_merge_kde_comments_found_in_translation PASSED [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_untranslated_with_kde_disambiguation PASSED [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_header_entries PASSED [ 98%] 1962s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_different_locations PASSED [ 98%] 1962s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_simple PASSED [ 98%] 1962s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_punctuation PASSED [ 98%] 1962s tests/translate/tools/test_poterminology.py::TestPOTerminology::test_term_extraction PASSED [ 98%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_pretranslatepo_blank PASSED [ 98%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_simple PASSED [ 98%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_messages_marked_fuzzy PASSED [ 98%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals_with_fuzzy_matching PASSED [ 98%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change XFAIL [ 98%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_change PASSED [ 98%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_and_whitespace_change PASSED [ 98%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes XFAIL [ 98%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently XFAIL [ 98%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_dont_duplicate PASSED [ 98%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_new_overides_old PASSED [ 98%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments_with_blank_comment_lines PASSED [ 98%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_empty_commentlines PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgidcomments PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_resurect_obsolete_messages PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_typecomments PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_xliff_states PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_pretranslatepo_blank PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_simple PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_messages_marked_fuzzy PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change XFAIL [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_change PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_and_whitespace_change PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes XFAIL [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently XFAIL [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_new_overides_old PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments_with_blank_comment_lines PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_empty_commentlines PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgidcomments PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_resurect_obsolete_messages PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_typecomments PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_xliff_states PASSED [ 99%] 1962s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_help PASSED [ 99%] 1962s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_single_po PASSED [ 99%] 1962s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_plural_po PASSED [ 99%] 1962s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_single_po PASSED [ 99%] 1962s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_plural_po PASSED [ 99%] 1962s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_help PASSED [ 99%] 1962s tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff PASSED [ 99%] 1963s tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff PASSED [100%] 1963s 1963s =============================== warnings summary =============================== 1963s tests/translate/storage/test_cpo.py:15 1963s Warning: 1963s Module 'translate.storage.cpo' was found, but when imported by pytest it raised: 1963s ImportError('gettext PO library not found') 1963s In pytest 9.1 this warning will become an error by default. 1963s You can fix the underlying problem, or alternatively overwrite this behavior and silence this warning by passing exc_type=ImportError explicitly. 1963s See https://docs.pytest.org/en/stable/deprecations.html#pytest-importorskip-default-behavior-regarding-importerror 1963s 1963s tests/odf_xliff/test_odf_xliff.py::test_roundtrip 1963s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.TWiM34/autopkgtest_tmp/tests/odf_xliff/test_2.odt'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid 1963s Warning: unclosed file <_io.TextIOWrapper name='TestAndroid2POCommand_test_convertandroid/en.po' mode='r' encoding='UTF-8'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 1963s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 1963s Warning: unclosed file <_io.TextIOWrapper name='TestCSV2POCommand_test_columnorder/test.po' mode='r' encoding='UTF-8'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot 1963s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_pot/simple.pot'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po 1963s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po 1963s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_po/simple.po'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates 1963s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_remove_duplicates/simple.po'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf 1963s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_xlf/simple.xlf'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 1963s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 1963s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_columnorder/test.csv' mode='r' encoding='UTF-8'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context 1963s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_context/test.csv' mode='r' encoding='UTF-8'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing 1963s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey 1963s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey 1963s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing 1963s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey 1963s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey 1963s Warning: Could not find accesskey for key.accesskey 1963s 1963s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 1963s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file 1963s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten 1963s Warning: unclosed file <_io.BufferedReader name='translation/file1.po'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 1963s Warning: unclosed file <_io.BufferedWriter name='translated/file1.html'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert 1963s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.TWiM34/autopkgtest_tmp/tests/translate/convert/test.idml'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po 1963s Warning: unclosed file <_io.BufferedReader name='translation.po'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp 1963s Warning: unclosed file <_io.FileIO name='input.oo' mode='rb' closefd=True> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp 1963s Warning: unclosed file <_io.FileIO name='output.oo' mode='wb' closefd=True> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey 1963s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey 1963s Warning: Could not find accesskey for prop.accesskey 1963s 1963s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert 1963s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert/simple.po'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 1963s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf16/simple.po'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1963s Warning: unclosed file <_io.BufferedWriter name='simple.po'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1963s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1963s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_wrong/simple.po'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 1963s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf8/simple.po'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex 1963s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_menuex/simple.po'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot 1963s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_pot/simple.pot'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po 1963s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_po/simple.po'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates 1963s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_remove_duplicates/simple.po'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 1963s Warning: unclosed file <_io.BufferedWriter name='simple.odt'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 1963s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.TWiM34/autopkgtest_tmp/tests/translate/convert/test.odt'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename 1963s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_preserve_filename/snippet.xlf'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot 1963s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_pot/simple.pot'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po 1963s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_po/simple.po'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates 1963s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_remove_duplicates/simple.po'> 1963s Enable tracemalloc to get traceback where the object was allocated. 1963s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1963s 1963s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers 1963s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers 1963s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker 1963s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source 1963s Warning: The 'u' type code is deprecated and will be removed in Python 3.16 1963s 1963s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 1963s Warning: DTD parse error: :1:36:FATAL:PARSER:ERR_ENTITY_NOT_FINISHED: xmlParseEntityDecl: entity test.me not terminated 1963s 1963s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 1963s Warning: DTD file '' does not validate 1963s 1963s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1963s --------------------------- snapshot report summary ---------------------------- 1963s 23 snapshots passed. 1963s =========================== short test summary info ============================ 1963s SKIPPED [1] tests/translate/storage/test_cpo.py:15: could not import 'translate.storage.cpo': gettext PO library not found 1963s SKIPPED [1] tests/translate/storage/test_fluent.py:29: could not import 'translate.storage.fluent': No module named 'fluent' 1963s SKIPPED [1] tests/translate/filters/test_checks.py:1429: Spell checking for af is not available 1963s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence - Not Implemented 1963s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence - Not Implemented 1963s XFAIL tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template - Need to review if we want this behaviour 1963s XFAIL tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template - Need to review if we want this behaviour 1963s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change - Not implemented - review if this is even correct 1963s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes - Not Implemented - needs review 1963s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently - Not Implemented - review if this is even correct 1963s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change - Not implemented - review if this is even correct 1963s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes - Not Implemented - needs review 1963s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently - Not Implemented - review if this is even correct 1963s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates - This is invalid YAML document 1963s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates - This is invalid YAML document 1963s XFAIL tests/translate/filters/test_checks.py::test_acceleratedvariables - Accelerated variables needs a better implementation 1963s XFAIL tests/translate/filters/test_checks.py::test_musttranslatewords - FIXME: All fails() tests are not working 1963s XFAIL tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time - Bug #3408 1963s XFAIL tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags - Bug #3506 1963s 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. 1963s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables - Test needs fixing, disabled for now 1963s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables - Test needs fixing, disabled for now 1963s XFAIL tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases - Not Implemented 1963s XFAIL tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases - Not Implemented 1963s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_comment_following - Not Implemented 1963s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting - Not Implemented 1963s 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 1963s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals - Not Implemented 1963s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 1963s XFAIL tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove - removal not working in full page 1963s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals - Not Implemented 1963s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 1963s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment - Not sure if this can not be parsed gracefully 1963s XFAIL tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity - Not Implemented 1963s XFAIL tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde - Support commented out pending removal 1963s XFAIL tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs - Not Implemented 1963s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change - Not Implemented 1963s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes - Not Implemented 1963s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently - Not Implemented 1963s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change - Not Implemented 1963s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes - Not Implemented 1963s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently - Not Implemented 1963s ===== 3328 passed, 3 skipped, 39 xfailed, 51 warnings in 897.69s (0:14:57) ===== 1964s autopkgtest [16:48:50]: test python3-translate-commands: -----------------------] 1964s autopkgtest [16:48:50]: test python3-translate-commands: - - - - - - - - - - results - - - - - - - - - - 1964s python3-translate-commands PASS 1964s autopkgtest [16:48:50]: @@@@@@@@@@@@@@@@@@@@ summary 1964s translate-toolkit PASS 1964s python3-translate PASS 1964s python3-translate-commands PASS 1986s nova [W] Skipping flock for amd64 1986s Creating nova instance adt-plucky-amd64-translate-toolkit-20250219-161606-juju-7f2275-prod-proposed-migration-environment-15-44d1c88e-f7bf-48cf-8dc0-24d7ab25d330 from image adt/ubuntu-plucky-amd64-server-20250218.img (UUID 0c5f6311-785d-4524-a0d8-db541aaf5c09)... 1986s nova [W] Timed out waiting for 39060410-f1f3-4f28-8d7e-a0c801f11b31 to get deleted. 1986s nova [W] Skipping flock for amd64 1986s Creating nova instance adt-plucky-amd64-translate-toolkit-20250219-161606-juju-7f2275-prod-proposed-migration-environment-15-44d1c88e-f7bf-48cf-8dc0-24d7ab25d330 from image adt/ubuntu-plucky-amd64-server-20250218.img (UUID 0c5f6311-785d-4524-a0d8-db541aaf5c09)... 1986s nova [W] Timed out waiting for 244ac0d9-f8ee-4c64-abd4-50ef0aacf621 to get deleted. 1986s nova [W] Skipping flock for amd64 1986s Creating nova instance adt-plucky-amd64-translate-toolkit-20250219-161606-juju-7f2275-prod-proposed-migration-environment-15-44d1c88e-f7bf-48cf-8dc0-24d7ab25d330 from image adt/ubuntu-plucky-amd64-server-20250218.img (UUID 0c5f6311-785d-4524-a0d8-db541aaf5c09)... 1986s nova [W] Timed out waiting for 917a5bf1-ff29-4bb1-a07a-204eadbb3910 to get deleted.