0s autopkgtest [10:51:58]: starting date and time: 2024-10-30 10:51:58+0000 0s autopkgtest [10:51:58]: git checkout: 6f3be7a8 Fix armhf LXD image generation for plucky 0s autopkgtest [10:51:58]: host juju-7f2275-prod-proposed-migration-environment-9; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.neomhm_l/out --timeout-copy=6000 --setup-commands 'ln -s /dev/null /etc/systemd/system/bluetooth.service; printf "http_proxy=http://squid.internal:3128\nhttps_proxy=http://squid.internal:3128\nno_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\n" >> /etc/environment' --apt-pocket=proposed=src:setuptools --apt-upgrade translate-toolkit --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=setuptools/75.2.0-1 -- lxd -r lxd-armhf-10.145.243.115 lxd-armhf-10.145.243.115:autopkgtest/ubuntu/plucky/armhf 56s autopkgtest [10:52:54]: testbed dpkg architecture: armhf 58s autopkgtest [10:52:56]: testbed apt version: 2.9.8 58s autopkgtest [10:52:56]: @@@@@@@@@@@@@@@@@@@@ test bed setup 66s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 67s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [213 kB] 67s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [2840 B] 67s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [30.5 kB] 67s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [7016 B] 67s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main armhf Packages [38.0 kB] 67s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/universe armhf Packages [236 kB] 67s Fetched 601 kB in 1s (856 kB/s) 67s Reading package lists... 86s tee: /proc/self/fd/2: Permission denied 107s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease 107s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 107s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 107s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 108s Reading package lists... 108s Reading package lists... 109s Building dependency tree... 109s Reading state information... 109s Calculating upgrade... 110s The following packages were automatically installed and are no longer required: 110s libperl5.38t64 perl-modules-5.38 110s Use 'apt autoremove' to remove them. 110s The following NEW packages will be installed: 110s libperl5.40 perl-modules-5.40 python3-jaraco.text 110s The following packages will be upgraded: 110s base-files distro-info-data fwupd gcc-14-base info install-info iproute2 110s libatomic1 libdw1t64 libelf1t64 libfwupd2 libgcc-s1 libkeyutils1 110s liblocale-gettext-perl libsgutils2-1.46-2 libstdc++6 libtext-charwidth-perl 110s libtext-iconv-perl motd-news-config perl perl-base python3-pkg-resources 110s python3-setuptools sg3-utils sg3-utils-udev vim-common vim-tiny xxd 110s 28 upgraded, 3 newly installed, 0 to remove and 0 not upgraded. 110s Need to get 19.2 MB of archives. 110s After this operation, 42.7 MB of additional disk space will be used. 110s Get:1 http://ftpmaster.internal/ubuntu plucky/main armhf motd-news-config all 13.5ubuntu2 [5274 B] 110s Get:2 http://ftpmaster.internal/ubuntu plucky/main armhf base-files armhf 13.5ubuntu2 [68.6 kB] 110s Get:3 http://ftpmaster.internal/ubuntu plucky/main armhf perl-modules-5.40 all 5.40.0-6 [3214 kB] 110s Get:4 http://ftpmaster.internal/ubuntu plucky/main armhf libperl5.40 armhf 5.40.0-6 [4140 kB] 110s Get:5 http://ftpmaster.internal/ubuntu plucky/main armhf perl armhf 5.40.0-6 [262 kB] 110s Get:6 http://ftpmaster.internal/ubuntu plucky/main armhf perl-base armhf 5.40.0-6 [1674 kB] 110s Get:7 http://ftpmaster.internal/ubuntu plucky/main armhf liblocale-gettext-perl armhf 1.07-7build1 [15.0 kB] 111s Get:8 http://ftpmaster.internal/ubuntu plucky/main armhf libtext-iconv-perl armhf 1.7-8build4 [12.8 kB] 111s Get:9 http://ftpmaster.internal/ubuntu plucky/main armhf libtext-charwidth-perl armhf 0.04-11build4 [9128 B] 111s Get:10 http://ftpmaster.internal/ubuntu plucky/main armhf libatomic1 armhf 14.2.0-7ubuntu1 [7842 B] 111s Get:11 http://ftpmaster.internal/ubuntu plucky/main armhf gcc-14-base armhf 14.2.0-7ubuntu1 [51.2 kB] 111s Get:12 http://ftpmaster.internal/ubuntu plucky/main armhf libstdc++6 armhf 14.2.0-7ubuntu1 [711 kB] 111s Get:13 http://ftpmaster.internal/ubuntu plucky/main armhf libgcc-s1 armhf 14.2.0-7ubuntu1 [40.8 kB] 111s Get:14 http://ftpmaster.internal/ubuntu plucky/main armhf install-info armhf 7.1.1-1 [61.4 kB] 111s Get:15 http://ftpmaster.internal/ubuntu plucky/main armhf distro-info-data all 0.63 [6588 B] 111s Get:16 http://ftpmaster.internal/ubuntu plucky/main armhf libdw1t64 armhf 0.192-4 [243 kB] 111s Get:17 http://ftpmaster.internal/ubuntu plucky/main armhf libelf1t64 armhf 0.192-4 [50.2 kB] 111s Get:18 http://ftpmaster.internal/ubuntu plucky/main armhf iproute2 armhf 6.10.0-2ubuntu1 [1082 kB] 111s Get:19 http://ftpmaster.internal/ubuntu plucky/main armhf libkeyutils1 armhf 1.6.3-4ubuntu2 [8712 B] 111s Get:20 http://ftpmaster.internal/ubuntu plucky/main armhf vim-tiny armhf 2:9.1.0777-1ubuntu1 [693 kB] 111s Get:21 http://ftpmaster.internal/ubuntu plucky/main armhf vim-common all 2:9.1.0777-1ubuntu1 [394 kB] 111s Get:22 http://ftpmaster.internal/ubuntu plucky/main armhf xxd armhf 2:9.1.0777-1ubuntu1 [66.8 kB] 111s Get:23 http://ftpmaster.internal/ubuntu plucky/main armhf info armhf 7.1.1-1 [126 kB] 111s Get:24 http://ftpmaster.internal/ubuntu plucky/main armhf libfwupd2 armhf 1.9.26-2 [125 kB] 111s Get:25 http://ftpmaster.internal/ubuntu plucky/main armhf fwupd armhf 1.9.26-2 [4404 kB] 111s Get:26 http://ftpmaster.internal/ubuntu plucky/main armhf libsgutils2-1.46-2 armhf 1.46-3ubuntu5 [82.5 kB] 111s Get:27 http://ftpmaster.internal/ubuntu plucky/main armhf python3-jaraco.text all 4.0.0-1 [11.5 kB] 111s Get:28 http://ftpmaster.internal/ubuntu plucky-proposed/main armhf python3-pkg-resources all 75.2.0-1 [134 kB] 111s Get:29 http://ftpmaster.internal/ubuntu plucky-proposed/main armhf python3-setuptools all 75.2.0-1 [657 kB] 111s Get:30 http://ftpmaster.internal/ubuntu plucky/main armhf sg3-utils armhf 1.46-3ubuntu5 [816 kB] 111s Get:31 http://ftpmaster.internal/ubuntu plucky/main armhf sg3-utils-udev all 1.46-3ubuntu5 [5916 B] 111s Preconfiguring packages ... 111s Fetched 19.2 MB in 1s (14.6 MB/s) 111s (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 ... 59386 files and directories currently installed.) 111s Preparing to unpack .../motd-news-config_13.5ubuntu2_all.deb ... 111s Unpacking motd-news-config (13.5ubuntu2) over (13.3ubuntu6) ... 111s Preparing to unpack .../base-files_13.5ubuntu2_armhf.deb ... 112s Unpacking base-files (13.5ubuntu2) over (13.3ubuntu6) ... 112s Setting up base-files (13.5ubuntu2) ... 112s Installing new version of config file /etc/issue ... 112s Installing new version of config file /etc/issue.net ... 112s Installing new version of config file /etc/lsb-release ... 112s motd-news.service is a disabled or a static unit not running, not starting it. 112s (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 ... 59386 files and directories currently installed.) 112s Preparing to unpack .../perl_5.40.0-6_armhf.deb ... 112s Unpacking perl (5.40.0-6) over (5.38.2-5) ... 112s Selecting previously unselected package perl-modules-5.40. 112s Preparing to unpack .../perl-modules-5.40_5.40.0-6_all.deb ... 112s Unpacking perl-modules-5.40 (5.40.0-6) ... 113s Selecting previously unselected package libperl5.40:armhf. 113s Preparing to unpack .../libperl5.40_5.40.0-6_armhf.deb ... 113s Unpacking libperl5.40:armhf (5.40.0-6) ... 113s Preparing to unpack .../perl-base_5.40.0-6_armhf.deb ... 113s Unpacking perl-base (5.40.0-6) over (5.38.2-5) ... 113s Setting up perl-base (5.40.0-6) ... 113s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 61462 files and directories currently installed.) 113s Preparing to unpack .../liblocale-gettext-perl_1.07-7build1_armhf.deb ... 113s Unpacking liblocale-gettext-perl (1.07-7build1) over (1.07-7) ... 113s Preparing to unpack .../libtext-iconv-perl_1.7-8build4_armhf.deb ... 113s Unpacking libtext-iconv-perl:armhf (1.7-8build4) over (1.7-8build3) ... 113s Preparing to unpack .../libtext-charwidth-perl_0.04-11build4_armhf.deb ... 113s Unpacking libtext-charwidth-perl:armhf (0.04-11build4) over (0.04-11build3) ... 113s Preparing to unpack .../libatomic1_14.2.0-7ubuntu1_armhf.deb ... 113s Unpacking libatomic1:armhf (14.2.0-7ubuntu1) over (14.2.0-4ubuntu2) ... 113s Preparing to unpack .../gcc-14-base_14.2.0-7ubuntu1_armhf.deb ... 113s Unpacking gcc-14-base:armhf (14.2.0-7ubuntu1) over (14.2.0-4ubuntu2) ... 113s Setting up gcc-14-base:armhf (14.2.0-7ubuntu1) ... 113s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 61462 files and directories currently installed.) 113s Preparing to unpack .../libstdc++6_14.2.0-7ubuntu1_armhf.deb ... 113s Unpacking libstdc++6:armhf (14.2.0-7ubuntu1) over (14.2.0-4ubuntu2) ... 113s Setting up libstdc++6:armhf (14.2.0-7ubuntu1) ... 113s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 61462 files and directories currently installed.) 113s Preparing to unpack .../libgcc-s1_14.2.0-7ubuntu1_armhf.deb ... 113s Unpacking libgcc-s1:armhf (14.2.0-7ubuntu1) over (14.2.0-4ubuntu2) ... 113s Setting up libgcc-s1:armhf (14.2.0-7ubuntu1) ... 114s (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 ... 61462 files and directories currently installed.) 114s Preparing to unpack .../install-info_7.1.1-1_armhf.deb ... 114s Unpacking install-info (7.1.1-1) over (7.1-3build2) ... 114s Setting up install-info (7.1.1-1) ... 114s (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 ... 61462 files and directories currently installed.) 114s Preparing to unpack .../00-distro-info-data_0.63_all.deb ... 114s Unpacking distro-info-data (0.63) over (0.62) ... 114s Preparing to unpack .../01-libdw1t64_0.192-4_armhf.deb ... 114s Unpacking libdw1t64:armhf (0.192-4) over (0.191-2) ... 114s Preparing to unpack .../02-libelf1t64_0.192-4_armhf.deb ... 114s Unpacking libelf1t64:armhf (0.192-4) over (0.191-2) ... 114s Preparing to unpack .../03-iproute2_6.10.0-2ubuntu1_armhf.deb ... 114s Unpacking iproute2 (6.10.0-2ubuntu1) over (6.10.0-2) ... 114s Preparing to unpack .../04-libkeyutils1_1.6.3-4ubuntu2_armhf.deb ... 114s Unpacking libkeyutils1:armhf (1.6.3-4ubuntu2) over (1.6.3-3build1) ... 114s Preparing to unpack .../05-vim-tiny_2%3a9.1.0777-1ubuntu1_armhf.deb ... 114s Unpacking vim-tiny (2:9.1.0777-1ubuntu1) over (2:9.1.0496-1ubuntu6) ... 114s Preparing to unpack .../06-vim-common_2%3a9.1.0777-1ubuntu1_all.deb ... 114s Unpacking vim-common (2:9.1.0777-1ubuntu1) over (2:9.1.0496-1ubuntu6) ... 114s Preparing to unpack .../07-xxd_2%3a9.1.0777-1ubuntu1_armhf.deb ... 114s Unpacking xxd (2:9.1.0777-1ubuntu1) over (2:9.1.0496-1ubuntu6) ... 114s Preparing to unpack .../08-info_7.1.1-1_armhf.deb ... 114s Unpacking info (7.1.1-1) over (7.1-3build2) ... 114s Preparing to unpack .../09-libfwupd2_1.9.26-2_armhf.deb ... 114s Unpacking libfwupd2:armhf (1.9.26-2) over (1.9.24-1) ... 114s Preparing to unpack .../10-fwupd_1.9.26-2_armhf.deb ... 114s Unpacking fwupd (1.9.26-2) over (1.9.24-1) ... 115s Preparing to unpack .../11-libsgutils2-1.46-2_1.46-3ubuntu5_armhf.deb ... 115s Unpacking libsgutils2-1.46-2:armhf (1.46-3ubuntu5) over (1.46-3ubuntu4) ... 115s Selecting previously unselected package python3-jaraco.text. 115s Preparing to unpack .../12-python3-jaraco.text_4.0.0-1_all.deb ... 115s Unpacking python3-jaraco.text (4.0.0-1) ... 115s Preparing to unpack .../13-python3-pkg-resources_75.2.0-1_all.deb ... 115s Unpacking python3-pkg-resources (75.2.0-1) over (74.1.2-1) ... 115s Preparing to unpack .../14-python3-setuptools_75.2.0-1_all.deb ... 115s Unpacking python3-setuptools (75.2.0-1) over (74.1.2-1) ... 115s Preparing to unpack .../15-sg3-utils_1.46-3ubuntu5_armhf.deb ... 115s Unpacking sg3-utils (1.46-3ubuntu5) over (1.46-3ubuntu4) ... 115s Preparing to unpack .../16-sg3-utils-udev_1.46-3ubuntu5_all.deb ... 115s Unpacking sg3-utils-udev (1.46-3ubuntu5) over (1.46-3ubuntu4) ... 115s Setting up python3-pkg-resources (75.2.0-1) ... 116s Setting up motd-news-config (13.5ubuntu2) ... 116s Setting up libtext-iconv-perl:armhf (1.7-8build4) ... 116s Setting up libtext-charwidth-perl:armhf (0.04-11build4) ... 116s Setting up libkeyutils1:armhf (1.6.3-4ubuntu2) ... 116s Setting up distro-info-data (0.63) ... 116s Setting up libfwupd2:armhf (1.9.26-2) ... 116s Setting up libsgutils2-1.46-2:armhf (1.46-3ubuntu5) ... 116s Setting up xxd (2:9.1.0777-1ubuntu1) ... 116s Setting up libelf1t64:armhf (0.192-4) ... 116s Setting up libdw1t64:armhf (0.192-4) ... 116s Setting up vim-common (2:9.1.0777-1ubuntu1) ... 116s Installing new version of config file /etc/vim/vimrc ... 116s Setting up python3-jaraco.text (4.0.0-1) ... 116s Setting up libatomic1:armhf (14.2.0-7ubuntu1) ... 116s Setting up perl-modules-5.40 (5.40.0-6) ... 116s Setting up fwupd (1.9.26-2) ... 116s fwupd-offline-update.service is a disabled or a static unit not running, not starting it. 116s fwupd-refresh.service is a disabled or a static unit not running, not starting it. 116s fwupd.service is a disabled or a static unit not running, not starting it. 116s Setting up info (7.1.1-1) ... 116s Setting up liblocale-gettext-perl (1.07-7build1) ... 116s Setting up sg3-utils (1.46-3ubuntu5) ... 116s Setting up python3-setuptools (75.2.0-1) ... 117s Setting up iproute2 (6.10.0-2ubuntu1) ... 117s Setting up vim-tiny (2:9.1.0777-1ubuntu1) ... 117s Setting up sg3-utils-udev (1.46-3ubuntu5) ... 117s update-initramfs: deferring update (trigger activated) 117s Setting up libperl5.40:armhf (5.40.0-6) ... 117s Setting up perl (5.40.0-6) ... 117s Processing triggers for dbus (1.14.10-4ubuntu5) ... 117s Processing triggers for install-info (7.1.1-1) ... 117s Processing triggers for initramfs-tools (0.142ubuntu34) ... 117s Processing triggers for libc-bin (2.40-1ubuntu3) ... 118s Processing triggers for man-db (2.12.1-3) ... 119s Processing triggers for plymouth-theme-ubuntu-text (24.004.60-1ubuntu10) ... 119s update-initramfs: deferring update (trigger activated) 119s Processing triggers for initramfs-tools (0.142ubuntu34) ... 119s Reading package lists... 119s Building dependency tree... 119s Reading state information... 120s The following packages will be REMOVED: 120s libperl5.38t64* perl-modules-5.38* 120s 0 upgraded, 0 newly installed, 2 to remove and 0 not upgraded. 120s After this operation, 41.6 MB disk space will be freed. 120s (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 ... 61471 files and directories currently installed.) 120s Removing libperl5.38t64:armhf (5.38.2-5) ... 121s Removing perl-modules-5.38 (5.38.2-5) ... 121s Processing triggers for man-db (2.12.1-3) ... 121s Processing triggers for libc-bin (2.40-1ubuntu3) ... 123s autopkgtest [10:54:01]: rebooting testbed after setup commands that affected boot 196s autopkgtest [10:55:14]: testbed running kernel: Linux 6.8.0-47-generic #47~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Wed Oct 2 16:39:14 UTC 2 226s autopkgtest [10:55:44]: @@@@@@@@@@@@@@@@@@@@ apt-source translate-toolkit 246s Get:1 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.13.2-2 (dsc) [3132 B] 246s Get:2 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.13.2-2 (tar) [1173 kB] 246s Get:3 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.13.2-2 (diff) [24.5 kB] 246s gpgv: Signature made Mon Jul 22 07:46:21 2024 UTC 246s gpgv: using RSA key 90E2D2C1AD146A1B7EBB891DBBC17EBB1396F2F7 246s gpgv: Can't check signature: No public key 246s dpkg-source: warning: cannot verify inline signature for ./translate-toolkit_3.13.2-2.dsc: no acceptable signature found 247s autopkgtest [10:56:05]: testing package translate-toolkit version 3.13.2-2 249s autopkgtest [10:56:07]: build not needed 251s autopkgtest [10:56:09]: test translate-toolkit: preparing testbed 262s Reading package lists... 262s Building dependency tree... 262s Reading state information... 262s Starting pkgProblemResolver with broken count: 0 262s Starting 2 pkgProblemResolver with broken count: 0 262s Done 263s The following additional packages will be installed: 263s dictionaries-common emacsen-common gettext hunspell-en-us libapr1t64 263s libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data libgomp1 263s libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 libxslt1.1 263s python3-aeidon python3-bs4 python3-charset-normalizer python3-cheroot 263s python3-dateutil python3-diff-match-patch python3-enchant python3-iniparse 263s python3-levenshtein python3-lxml python3-mistletoe python3-phply python3-ply 263s python3-pycountry python3-rapidfuzz python3-ruamel.yaml 263s python3-ruamel.yaml.clib python3-simplejson python3-six python3-soupsieve 263s python3-translate python3-vobject python3-wcwidth python3-xapian subversion 263s translate-toolkit 263s Suggested packages: 263s ispell | aspell | hunspell wordlist autopoint gettext-doc libasprintf-dev 263s libgettextpo-dev hunspell openoffice.org-hunspell | openoffice.org-core 263s aspell libenchant-2-voikko xapian-tools python-charset-normalizer-doc 263s python-lxml-doc python-ply-doc python-rapidfuzz-doc python3-subversion 263s translate-toolkit-doc xapian-doc db5.3-util libapache2-mod-svn 263s subversion-tools 263s Recommended packages: 263s aspell-en | aspell-dictionary | aspell6a-dictionary enchant-2 263s python3-cssselect python3-html5lib python3-tz translate-toolkit-doc 263s The following NEW packages will be installed: 263s autopkgtest-satdep dictionaries-common emacsen-common gettext hunspell-en-us 263s libapr1t64 libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data 263s libgomp1 libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 263s libxslt1.1 python3-aeidon python3-bs4 python3-charset-normalizer 263s python3-cheroot python3-dateutil python3-diff-match-patch python3-enchant 263s python3-iniparse python3-levenshtein python3-lxml python3-mistletoe 263s python3-phply python3-ply python3-pycountry python3-rapidfuzz 263s python3-ruamel.yaml python3-ruamel.yaml.clib python3-simplejson python3-six 263s python3-soupsieve python3-translate python3-vobject python3-wcwidth 263s python3-xapian subversion translate-toolkit 263s 0 upgraded, 43 newly installed, 0 to remove and 0 not upgraded. 263s Need to get 10.3 MB/10.3 MB of archives. 263s After this operation, 39.8 MB of additional disk space will be used. 263s Get:1 /tmp/autopkgtest.zokjht/1-autopkgtest-satdep.deb autopkgtest-satdep armhf 0 [892 B] 263s Get:2 http://ftpmaster.internal/ubuntu plucky/main armhf emacsen-common all 3.0.5 [12.1 kB] 263s Get:3 http://ftpmaster.internal/ubuntu plucky/main armhf dictionaries-common all 1.29.7 [188 kB] 264s Get:4 http://ftpmaster.internal/ubuntu plucky/main armhf libgomp1 armhf 14.2.0-7ubuntu1 [125 kB] 264s Get:5 http://ftpmaster.internal/ubuntu plucky/main armhf gettext armhf 0.22.5-2 [995 kB] 264s Get:6 http://ftpmaster.internal/ubuntu plucky/main armhf hunspell-en-us all 1:2020.12.07-2 [280 kB] 264s Get:7 http://ftpmaster.internal/ubuntu plucky/main armhf libapr1t64 armhf 1.7.2-3.2ubuntu1 [87.9 kB] 264s Get:8 http://ftpmaster.internal/ubuntu plucky/main armhf libaprutil1t64 armhf 1.6.3-3ubuntu1 [82.7 kB] 264s Get:9 http://ftpmaster.internal/ubuntu plucky/main armhf libaspell15 armhf 0.60.8.1-1build1 [307 kB] 264s Get:10 http://ftpmaster.internal/ubuntu plucky/main armhf libhunspell-1.7-0 armhf 1.7.2+really1.7.2-10build3 [307 kB] 264s Get:11 http://ftpmaster.internal/ubuntu plucky/main armhf libenchant-2-2 armhf 2.3.3-2build2 [43.4 kB] 264s Get:12 http://ftpmaster.internal/ubuntu plucky/main armhf libexttextcat-data all 3.4.7-1build1 [193 kB] 264s Get:13 http://ftpmaster.internal/ubuntu plucky/universe armhf libserf-1-1 armhf 1.3.10-3ubuntu1 [40.5 kB] 264s Get:14 http://ftpmaster.internal/ubuntu plucky/universe armhf libutf8proc3 armhf 2.9.0-1build1 [70.6 kB] 264s Get:15 http://ftpmaster.internal/ubuntu plucky/universe armhf libsvn1 armhf 1.14.4-2 [1199 kB] 264s Get:16 http://ftpmaster.internal/ubuntu plucky/universe armhf libxapian30 armhf 1.4.25-1 [693 kB] 264s Get:17 http://ftpmaster.internal/ubuntu plucky/main armhf libxslt1.1 armhf 1.1.39-0exp1ubuntu1 [150 kB] 264s Get:18 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-aeidon all 1.15-1 [231 kB] 264s Get:19 http://ftpmaster.internal/ubuntu plucky/main armhf python3-soupsieve all 2.6-1 [33.0 kB] 264s Get:20 http://ftpmaster.internal/ubuntu plucky/main armhf python3-bs4 all 4.12.3-3 [109 kB] 264s Get:21 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-charset-normalizer armhf 3.3.2-2 [111 kB] 264s Get:22 http://ftpmaster.internal/ubuntu plucky/main armhf python3-cheroot all 10.0.0+ds1-2 [73.0 kB] 264s Get:23 http://ftpmaster.internal/ubuntu plucky/main armhf python3-six all 1.16.0-7 [13.1 kB] 264s Get:24 http://ftpmaster.internal/ubuntu plucky/main armhf python3-dateutil all 2.9.0-2 [80.3 kB] 264s Get:25 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-diff-match-patch all 20230430-1 [33.1 kB] 264s Get:26 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-enchant all 3.2.2-1 [34.0 kB] 264s Get:27 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-rapidfuzz armhf 3.9.4+ds-1 [1200 kB] 264s Get:28 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-levenshtein armhf 0.25.1-3 [139 kB] 264s Get:29 http://ftpmaster.internal/ubuntu plucky/main armhf python3-lxml armhf 5.3.0-1 [1234 kB] 264s Get:30 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-mistletoe all 1.3.0-1 [38.0 kB] 264s Get:31 http://ftpmaster.internal/ubuntu plucky/main armhf python3-ply all 3.11-7 [45.4 kB] 264s Get:32 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-phply all 1.2.6-1 [50.5 kB] 264s Get:33 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-ruamel.yaml.clib armhf 0.2.8+ds-2 [125 kB] 264s Get:34 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-ruamel.yaml all 0.18.6+ds-3 [126 kB] 264s Get:35 http://ftpmaster.internal/ubuntu plucky/main armhf python3-simplejson armhf 3.19.2-1build2 [52.0 kB] 264s Get:36 http://ftpmaster.internal/ubuntu plucky/main armhf python3-wcwidth all 0.2.13+dfsg1-1 [26.3 kB] 264s Get:37 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-translate all 3.13.2-2 [319 kB] 264s Get:38 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-vobject all 0.9.6.1-2 [40.6 kB] 264s Get:39 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-xapian armhf 1.4.25-1build3 [439 kB] 264s Get:40 http://ftpmaster.internal/ubuntu plucky/universe armhf subversion armhf 1.14.4-2 [891 kB] 264s Get:41 http://ftpmaster.internal/ubuntu plucky/universe armhf translate-toolkit all 3.13.2-2 [81.0 kB] 264s Get:42 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-iniparse all 0.5-2 [20.0 kB] 264s Get:43 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-pycountry all 24.6.1+ds1-1 [30.0 kB] 265s Preconfiguring packages ... 265s Fetched 10.3 MB in 1s (9295 kB/s) 265s Selecting previously unselected package emacsen-common. 265s (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 ... 59541 files and directories currently installed.) 265s Preparing to unpack .../00-emacsen-common_3.0.5_all.deb ... 265s Unpacking emacsen-common (3.0.5) ... 265s Selecting previously unselected package dictionaries-common. 265s Preparing to unpack .../01-dictionaries-common_1.29.7_all.deb ... 265s Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common' 265s Unpacking dictionaries-common (1.29.7) ... 265s Selecting previously unselected package libgomp1:armhf. 265s Preparing to unpack .../02-libgomp1_14.2.0-7ubuntu1_armhf.deb ... 265s Unpacking libgomp1:armhf (14.2.0-7ubuntu1) ... 265s Selecting previously unselected package gettext. 265s Preparing to unpack .../03-gettext_0.22.5-2_armhf.deb ... 265s Unpacking gettext (0.22.5-2) ... 265s Selecting previously unselected package hunspell-en-us. 265s Preparing to unpack .../04-hunspell-en-us_1%3a2020.12.07-2_all.deb ... 265s Unpacking hunspell-en-us (1:2020.12.07-2) ... 265s Selecting previously unselected package libapr1t64:armhf. 265s Preparing to unpack .../05-libapr1t64_1.7.2-3.2ubuntu1_armhf.deb ... 265s Unpacking libapr1t64:armhf (1.7.2-3.2ubuntu1) ... 265s Selecting previously unselected package libaprutil1t64:armhf. 265s Preparing to unpack .../06-libaprutil1t64_1.6.3-3ubuntu1_armhf.deb ... 265s Unpacking libaprutil1t64:armhf (1.6.3-3ubuntu1) ... 265s Selecting previously unselected package libaspell15:armhf. 265s Preparing to unpack .../07-libaspell15_0.60.8.1-1build1_armhf.deb ... 265s Unpacking libaspell15:armhf (0.60.8.1-1build1) ... 265s Selecting previously unselected package libhunspell-1.7-0:armhf. 265s Preparing to unpack .../08-libhunspell-1.7-0_1.7.2+really1.7.2-10build3_armhf.deb ... 265s Unpacking libhunspell-1.7-0:armhf (1.7.2+really1.7.2-10build3) ... 265s Selecting previously unselected package libenchant-2-2:armhf. 265s Preparing to unpack .../09-libenchant-2-2_2.3.3-2build2_armhf.deb ... 265s Unpacking libenchant-2-2:armhf (2.3.3-2build2) ... 265s Selecting previously unselected package libexttextcat-data. 265s Preparing to unpack .../10-libexttextcat-data_3.4.7-1build1_all.deb ... 265s Unpacking libexttextcat-data (3.4.7-1build1) ... 265s Selecting previously unselected package libserf-1-1:armhf. 265s Preparing to unpack .../11-libserf-1-1_1.3.10-3ubuntu1_armhf.deb ... 265s Unpacking libserf-1-1:armhf (1.3.10-3ubuntu1) ... 265s Selecting previously unselected package libutf8proc3:armhf. 265s Preparing to unpack .../12-libutf8proc3_2.9.0-1build1_armhf.deb ... 265s Unpacking libutf8proc3:armhf (2.9.0-1build1) ... 265s Selecting previously unselected package libsvn1:armhf. 265s Preparing to unpack .../13-libsvn1_1.14.4-2_armhf.deb ... 265s Unpacking libsvn1:armhf (1.14.4-2) ... 265s Selecting previously unselected package libxapian30:armhf. 265s Preparing to unpack .../14-libxapian30_1.4.25-1_armhf.deb ... 265s Unpacking libxapian30:armhf (1.4.25-1) ... 265s Selecting previously unselected package libxslt1.1:armhf. 265s Preparing to unpack .../15-libxslt1.1_1.1.39-0exp1ubuntu1_armhf.deb ... 265s Unpacking libxslt1.1:armhf (1.1.39-0exp1ubuntu1) ... 266s Selecting previously unselected package python3-aeidon. 266s Preparing to unpack .../16-python3-aeidon_1.15-1_all.deb ... 266s Unpacking python3-aeidon (1.15-1) ... 266s Selecting previously unselected package python3-soupsieve. 266s Preparing to unpack .../17-python3-soupsieve_2.6-1_all.deb ... 266s Unpacking python3-soupsieve (2.6-1) ... 266s Selecting previously unselected package python3-bs4. 266s Preparing to unpack .../18-python3-bs4_4.12.3-3_all.deb ... 266s Unpacking python3-bs4 (4.12.3-3) ... 266s Selecting previously unselected package python3-charset-normalizer. 266s Preparing to unpack .../19-python3-charset-normalizer_3.3.2-2_armhf.deb ... 266s Unpacking python3-charset-normalizer (3.3.2-2) ... 266s Selecting previously unselected package python3-cheroot. 266s Preparing to unpack .../20-python3-cheroot_10.0.0+ds1-2_all.deb ... 266s Unpacking python3-cheroot (10.0.0+ds1-2) ... 266s Selecting previously unselected package python3-six. 266s Preparing to unpack .../21-python3-six_1.16.0-7_all.deb ... 266s Unpacking python3-six (1.16.0-7) ... 266s Selecting previously unselected package python3-dateutil. 266s Preparing to unpack .../22-python3-dateutil_2.9.0-2_all.deb ... 266s Unpacking python3-dateutil (2.9.0-2) ... 266s Selecting previously unselected package python3-diff-match-patch. 266s Preparing to unpack .../23-python3-diff-match-patch_20230430-1_all.deb ... 266s Unpacking python3-diff-match-patch (20230430-1) ... 266s Selecting previously unselected package python3-enchant. 266s Preparing to unpack .../24-python3-enchant_3.2.2-1_all.deb ... 266s Unpacking python3-enchant (3.2.2-1) ... 266s Selecting previously unselected package python3-rapidfuzz. 266s Preparing to unpack .../25-python3-rapidfuzz_3.9.4+ds-1_armhf.deb ... 266s Unpacking python3-rapidfuzz (3.9.4+ds-1) ... 266s Selecting previously unselected package python3-levenshtein. 266s Preparing to unpack .../26-python3-levenshtein_0.25.1-3_armhf.deb ... 266s Unpacking python3-levenshtein (0.25.1-3) ... 266s Selecting previously unselected package python3-lxml:armhf. 266s Preparing to unpack .../27-python3-lxml_5.3.0-1_armhf.deb ... 266s Unpacking python3-lxml:armhf (5.3.0-1) ... 266s Selecting previously unselected package python3-mistletoe. 266s Preparing to unpack .../28-python3-mistletoe_1.3.0-1_all.deb ... 266s Unpacking python3-mistletoe (1.3.0-1) ... 266s Selecting previously unselected package python3-ply. 266s Preparing to unpack .../29-python3-ply_3.11-7_all.deb ... 266s Unpacking python3-ply (3.11-7) ... 266s Selecting previously unselected package python3-phply. 266s Preparing to unpack .../30-python3-phply_1.2.6-1_all.deb ... 266s Unpacking python3-phply (1.2.6-1) ... 266s Selecting previously unselected package python3-ruamel.yaml.clib:armhf. 266s Preparing to unpack .../31-python3-ruamel.yaml.clib_0.2.8+ds-2_armhf.deb ... 266s Unpacking python3-ruamel.yaml.clib:armhf (0.2.8+ds-2) ... 266s Selecting previously unselected package python3-ruamel.yaml. 266s Preparing to unpack .../32-python3-ruamel.yaml_0.18.6+ds-3_all.deb ... 266s Unpacking python3-ruamel.yaml (0.18.6+ds-3) ... 266s Selecting previously unselected package python3-simplejson. 266s Preparing to unpack .../33-python3-simplejson_3.19.2-1build2_armhf.deb ... 266s Unpacking python3-simplejson (3.19.2-1build2) ... 266s Selecting previously unselected package python3-wcwidth. 266s Preparing to unpack .../34-python3-wcwidth_0.2.13+dfsg1-1_all.deb ... 266s Unpacking python3-wcwidth (0.2.13+dfsg1-1) ... 266s Selecting previously unselected package python3-translate. 266s Preparing to unpack .../35-python3-translate_3.13.2-2_all.deb ... 266s Unpacking python3-translate (3.13.2-2) ... 266s Selecting previously unselected package python3-vobject. 266s Preparing to unpack .../36-python3-vobject_0.9.6.1-2_all.deb ... 266s Unpacking python3-vobject (0.9.6.1-2) ... 266s Selecting previously unselected package python3-xapian. 266s Preparing to unpack .../37-python3-xapian_1.4.25-1build3_armhf.deb ... 266s Unpacking python3-xapian (1.4.25-1build3) ... 266s Selecting previously unselected package subversion. 266s Preparing to unpack .../38-subversion_1.14.4-2_armhf.deb ... 266s Unpacking subversion (1.14.4-2) ... 266s Selecting previously unselected package translate-toolkit. 266s Preparing to unpack .../39-translate-toolkit_3.13.2-2_all.deb ... 266s Unpacking translate-toolkit (3.13.2-2) ... 267s Selecting previously unselected package python3-iniparse. 267s Preparing to unpack .../40-python3-iniparse_0.5-2_all.deb ... 267s Unpacking python3-iniparse (0.5-2) ... 267s Selecting previously unselected package python3-pycountry. 267s Preparing to unpack .../41-python3-pycountry_24.6.1+ds1-1_all.deb ... 267s Unpacking python3-pycountry (24.6.1+ds1-1) ... 267s Selecting previously unselected package autopkgtest-satdep. 267s Preparing to unpack .../42-1-autopkgtest-satdep.deb ... 267s Unpacking autopkgtest-satdep (0) ... 267s Setting up libxapian30:armhf (1.4.25-1) ... 267s Setting up python3-rapidfuzz (3.9.4+ds-1) ... 267s Setting up python3-diff-match-patch (20230430-1) ... 267s Setting up python3-aeidon (1.15-1) ... 267s Setting up libutf8proc3:armhf (2.9.0-1build1) ... 267s Setting up libaspell15:armhf (0.60.8.1-1build1) ... 267s Setting up python3-charset-normalizer (3.3.2-2) ... 267s Setting up python3-ply (3.11-7) ... 268s Setting up python3-ruamel.yaml.clib:armhf (0.2.8+ds-2) ... 268s Setting up libgomp1:armhf (14.2.0-7ubuntu1) ... 268s Setting up python3-six (1.16.0-7) ... 268s Setting up python3-simplejson (3.19.2-1build2) ... 268s Setting up python3-wcwidth (0.2.13+dfsg1-1) ... 268s Setting up emacsen-common (3.0.5) ... 268s Setting up python3-cheroot (10.0.0+ds1-2) ... 268s Setting up python3-pycountry (24.6.1+ds1-1) ... 268s Setting up python3-xapian (1.4.25-1build3) ... 269s Setting up python3-ruamel.yaml (0.18.6+ds-3) ... 269s Setting up python3-mistletoe (1.3.0-1) ... 269s Setting up libexttextcat-data (3.4.7-1build1) ... 269s Setting up libapr1t64:armhf (1.7.2-3.2ubuntu1) ... 269s Setting up libxslt1.1:armhf (1.1.39-0exp1ubuntu1) ... 269s Setting up python3-dateutil (2.9.0-2) ... 269s Setting up python3-levenshtein (0.25.1-3) ... 269s Setting up libhunspell-1.7-0:armhf (1.7.2+really1.7.2-10build3) ... 269s Setting up python3-soupsieve (2.6-1) ... 269s Setting up python3-iniparse (0.5-2) ... 269s Setting up libaprutil1t64:armhf (1.6.3-3ubuntu1) ... 269s Setting up python3-vobject (0.9.6.1-2) ... 270s /usr/lib/python3/dist-packages/vobject/base.py:736: SyntaxWarning: invalid escape sequence '\-' 270s patterns['name'] = '[a-zA-Z0-9\-_]+' 270s /usr/lib/python3/dist-packages/vobject/base.py:1219: SyntaxWarning: invalid escape sequence '\;' 270s s = s.replace("\\", "\\\\").replace(";", "\;").replace(",", "\,") 270s /usr/lib/python3/dist-packages/vobject/base.py:1219: SyntaxWarning: invalid escape sequence '\,' 270s s = s.replace("\\", "\\\\").replace(";", "\;").replace(",", "\,") 270s /usr/lib/python3/dist-packages/vobject/hcalendar.py:1: SyntaxWarning: invalid escape sequence '\,' 270s """ 270s Setting up gettext (0.22.5-2) ... 270s Setting up python3-phply (1.2.6-1) ... 270s Setting up dictionaries-common (1.29.7) ... 270s Setting up libserf-1-1:armhf (1.3.10-3ubuntu1) ... 270s Setting up python3-bs4 (4.12.3-3) ... 270s Setting up python3-lxml:armhf (5.3.0-1) ... 271s Setting up hunspell-en-us (1:2020.12.07-2) ... 271s Setting up libsvn1:armhf (1.14.4-2) ... 271s Setting up libenchant-2-2:armhf (2.3.3-2build2) ... 271s Setting up subversion (1.14.4-2) ... 271s Setting up python3-enchant (3.2.2-1) ... 271s Setting up python3-translate (3.13.2-2) ... 271s Setting up translate-toolkit (3.13.2-2) ... 271s Setting up autopkgtest-satdep (0) ... 271s Processing triggers for man-db (2.12.1-3) ... 272s Processing triggers for install-info (7.1.1-1) ... 272s Processing triggers for libc-bin (2.40-1ubuntu3) ... 272s Processing triggers for dictionaries-common (1.29.7) ... 288s (Reading database ... 63019 files and directories currently installed.) 288s Removing autopkgtest-satdep (0) ... 294s autopkgtest [10:56:52]: test translate-toolkit: [----------------------- 296s ========= SMOKE TEST: /usr/bin/android2po =========== 296s Usage: android2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 296s 296s Convert Android string files to Gettext PO localization files. See: 296s http://docs.translatehouse.org/projects/translate- 296s toolkit/en/latest/commands/android2po.html for examples and usage 296s instructions. 296s 296s Options: 296s --version show program's version number and exit 296s -h, --help show this help message and exit 296s --manpage output a manpage based on the help 296s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 296s --errorlevel=ERRORLEVEL 296s show errorlevel as: none, message, exception, 296s traceback 296s -i INPUT, --input=INPUT 296s read from INPUT in xml format 296s -x EXCLUDE, --exclude=EXCLUDE 296s exclude names matching EXCLUDE from input paths 296s -o OUTPUT, --output=OUTPUT 296s write to OUTPUT in po, pot formats 296s -t TEMPLATE, --template=TEMPLATE 296s read from TEMPLATE in xml format 296s -S, --timestamp skip conversion if the output file has newer timestamp 296s --duplicates=DUPLICATESTYLE 296s what to do with duplicate strings (identical source 296s text): merge, msgctxt (default: 'msgctxt') 296s ========= SMOKE TEST: /usr/bin/build_tmdb =========== 296s usage: build_tmdb [-h] [-d TMDB_FILE] [-s SOURCE_LANG] -t TARGET_LANG 296s input files [input files ...] 296s 296s positional arguments: 296s input files 296s 296s options: 296s -h, --help show this help message and exit 296s -d TMDB_FILE, --tmdb TMDB_FILE 296s translation memory database file (default: tm.db) 296s -s SOURCE_LANG, --import-source-lang SOURCE_LANG 296s source language of translation files (default: en) 296s -t TARGET_LANG, --import-target-lang TARGET_LANG 296s target language of translation files 296s ========= SMOKE TEST: /usr/bin/csv2po =========== 296s 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] 296s 296s Convert Comma-Separated Value (.csv) files to Gettext PO localization files. 296s See: http://docs.translatehouse.org/projects/translate- 296s toolkit/en/latest/commands/csv2po.html for examples and usage instructions. 296s 296s Options: 296s --version show program's version number and exit 296s -h, --help show this help message and exit 296s --manpage output a manpage based on the help 296s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 296s --errorlevel=ERRORLEVEL 296s show errorlevel as: none, message, exception, 296s traceback 296s -i INPUT, --input=INPUT 296s read from INPUT in csv format 296s -x EXCLUDE, --exclude=EXCLUDE 296s exclude names matching EXCLUDE from input paths 296s -o OUTPUT, --output=OUTPUT 296s write to OUTPUT in po, pot formats 296s -t TEMPLATE, --template=TEMPLATE 296s read from TEMPLATE in po, pot, pot formats 296s -S, --timestamp skip conversion if the output file has newer timestamp 296s -P, --pot output PO Templates (.pot) rather than PO files (.po) 296s --charset=CHARSET set charset to decode from csv files 296s --columnorder=COLUMNORDER 296s specify the order and position of columns 296s (location,source,target,context) 296s --duplicates=DUPLICATESTYLE 296s what to do with duplicate strings (identical source 296s text): merge, msgctxt (default: 'msgctxt') 297s ========= SMOKE TEST: /usr/bin/csv2tbx =========== 297s Usage: csv2tbx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 297s 297s Convert Comma-Separated Value (.csv) files to a TermBase eXchange (.tbx) 297s glossary file. See: http://docs.translatehouse.org/projects/translate- 297s toolkit/en/latest/commands/csv2tbx.html for examples and usage instructions 297s 297s Options: 297s --version show program's version number and exit 297s -h, --help show this help message and exit 297s --manpage output a manpage based on the help 297s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 297s --errorlevel=ERRORLEVEL 297s show errorlevel as: none, message, exception, 297s traceback 297s -i INPUT, --input=INPUT 297s read from INPUT in csv format 297s -x EXCLUDE, --exclude=EXCLUDE 297s exclude names matching EXCLUDE from input paths 297s -o OUTPUT, --output=OUTPUT 297s write to OUTPUT in tbx format 297s -S, --timestamp skip conversion if the output file has newer timestamp 297s --charset=CHARSET set charset to decode from csv files 297s --columnorder=COLUMNORDER 297s specify the order and position of columns 297s (comment,source,target) 297s ========= SMOKE TEST: /usr/bin/dtd2po =========== 297s 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] 297s 297s Convert a Mozilla .dtd UTF-8 localization format to a Gettext PO localization 297s file. Uses the po and dtd modules, and the dtd2po convertor class which is in 297s this module You can convert back to .dtd using po2dtd.py. 297s 297s Options: 297s --version show program's version number and exit 297s -h, --help show this help message and exit 297s --manpage output a manpage based on the help 297s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 297s --errorlevel=ERRORLEVEL 297s show errorlevel as: none, message, exception, 297s traceback 297s -i INPUT, --input=INPUT 297s read from INPUT in dtd format 297s -x EXCLUDE, --exclude=EXCLUDE 297s exclude names matching EXCLUDE from input paths 297s -o OUTPUT, --output=OUTPUT 297s write to OUTPUT in po, pot formats 297s -t TEMPLATE, --template=TEMPLATE 297s read from TEMPLATE in dtd format 297s -S, --timestamp skip conversion if the output file has newer timestamp 297s -P, --pot output PO Templates (.pot) rather than PO files (.po) 297s --duplicates=DUPLICATESTYLE 297s what to do with duplicate strings (identical source 297s text): merge, msgctxt (default: 'msgctxt') 297s ========= SMOKE TEST: /usr/bin/flatxml2po =========== 297s Usage: flatxml2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 297s 297s Convert flat XML files to Gettext PO localization files. See: 297s http://docs.translatehouse.org/projects/translate- 297s toolkit/en/latest/commands/flatxml2po.html for examples and usage 297s instructions. 297s 297s Options: 297s --version show program's version number and exit 297s -h, --help show this help message and exit 297s --manpage output a manpage based on the help 297s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 297s --errorlevel=ERRORLEVEL 297s show errorlevel as: none, message, exception, 297s traceback 297s -i INPUT, --input=INPUT 297s read from INPUT in xml format 297s -x EXCLUDE, --exclude=EXCLUDE 297s exclude names matching EXCLUDE from input paths 297s -o OUTPUT, --output=OUTPUT 297s write to OUTPUT in po, pot formats 297s -S, --timestamp skip conversion if the output file has newer timestamp 297s -r ROOT, --root=ROOT name of the XML root element (default: "root") 297s -v VALUE, --value=VALUE 297s name of the XML value element (default: "str") 297s -k KEY, --key=KEY name of the XML key attribute (default: "key") 297s -n NS, --namespace=NS 297s XML namespace uri (default: None) 297s ========= SMOKE TEST: /usr/bin/html2po =========== 297s Usage: html2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 297s 297s Convert HTML files to Gettext PO localization files. See: 297s http://docs.translatehouse.org/projects/translate- 297s toolkit/en/latest/commands/html2po.html for examples and usage instructions. 297s 297s Options: 297s --version show program's version number and exit 297s -h, --help show this help message and exit 297s --manpage output a manpage based on the help 297s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 297s --errorlevel=ERRORLEVEL 297s show errorlevel as: none, message, exception, 297s traceback 297s -i INPUT, --input=INPUT 297s read from INPUT in htm, html, xhtml formats 297s -x EXCLUDE, --exclude=EXCLUDE 297s exclude names matching EXCLUDE from input paths 297s -o OUTPUT, --output=OUTPUT 297s write to OUTPUT in po, pot formats 297s -S, --timestamp skip conversion if the output file has newer timestamp 297s -P, --pot output PO Templates (.pot) rather than PO files (.po) 297s --keepcomments preserve html comments as translation notes in the 297s output 297s --duplicates=DUPLICATESTYLE 297s what to do with duplicate strings (identical source 297s text): merge, msgctxt (default: 'msgctxt') 297s --multifile=MULTIFILESTYLE 297s how to split po/pot files (single, toplevel or 297s onefile) 297s ========= SMOKE TEST: /usr/bin/ical2po =========== 297s 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] 297s 297s Convert iCalendar files to Gettext PO localization files. See: 297s http://docs.translatehouse.org/projects/translate- 297s toolkit/en/latest/commands/ical2po.html for examples and usage instructions. 297s 297s Options: 297s --version show program's version number and exit 297s -h, --help show this help message and exit 297s --manpage output a manpage based on the help 297s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 297s --errorlevel=ERRORLEVEL 297s show errorlevel as: none, message, exception, 297s traceback 297s -i INPUT, --input=INPUT 297s read from INPUT in ics format 297s -x EXCLUDE, --exclude=EXCLUDE 297s exclude names matching EXCLUDE from input paths 297s -o OUTPUT, --output=OUTPUT 297s write to OUTPUT in po, pot formats 297s -t TEMPLATE, --template=TEMPLATE 297s read from TEMPLATE in ics format 297s -S, --timestamp skip conversion if the output file has newer timestamp 297s -P, --pot output PO Templates (.pot) rather than PO files (.po) 297s --duplicates=DUPLICATESTYLE 297s what to do with duplicate strings (identical source 297s text): merge, msgctxt (default: 'msgctxt') 297s ========= SMOKE TEST: /usr/bin/idml2po =========== 298s Usage: idml2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 298s 298s Convert IDML files to PO localization files. 298s 298s Options: 298s --version show program's version number and exit 298s -h, --help show this help message and exit 298s --manpage output a manpage based on the help 298s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 298s --errorlevel=ERRORLEVEL 298s show errorlevel as: none, message, exception, 298s traceback 298s -i INPUT, --input=INPUT 298s read from INPUT in idml format 298s -x EXCLUDE, --exclude=EXCLUDE 298s exclude names matching EXCLUDE from input paths 298s -o OUTPUT, --output=OUTPUT 298s write to OUTPUT in po, pot formats 298s -S, --timestamp skip conversion if the output file has newer timestamp 298s ========= SMOKE TEST: /usr/bin/ini2po =========== 298s 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] 298s 298s Convert .ini files to Gettext PO localization files. See: 298s http://docs.translatehouse.org/projects/translate- 298s toolkit/en/latest/commands/ini2po.html for examples and usage instructions. 298s 298s Options: 298s --version show program's version number and exit 298s -h, --help show this help message and exit 298s --manpage output a manpage based on the help 298s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 298s --errorlevel=ERRORLEVEL 298s show errorlevel as: none, message, exception, 298s traceback 298s -i INPUT, --input=INPUT 298s read from INPUT in ini, isl, iss formats 298s -x EXCLUDE, --exclude=EXCLUDE 298s exclude names matching EXCLUDE from input paths 298s -o OUTPUT, --output=OUTPUT 298s write to OUTPUT in po, pot formats 298s -t TEMPLATE, --template=TEMPLATE 298s read from TEMPLATE in ini, isl, iss formats 298s -S, --timestamp skip conversion if the output file has newer timestamp 298s -P, --pot output PO Templates (.pot) rather than PO files (.po) 298s --duplicates=DUPLICATESTYLE 298s what to do with duplicate strings (identical source 298s text): merge, msgctxt (default: 'msgctxt') 298s ========= SMOKE TEST: /usr/bin/json2po =========== 298s 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] 298s 298s Convert JSON files to Gettext PO localization files. See: 298s http://docs.translatehouse.org/projects/translate- 298s toolkit/en/latest/commands/json2po.html for examples and usage instructions. 298s 298s Options: 298s --version show program's version number and exit 298s -h, --help show this help message and exit 298s --manpage output a manpage based on the help 298s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 298s --errorlevel=ERRORLEVEL 298s show errorlevel as: none, message, exception, 298s traceback 298s -i INPUT, --input=INPUT 298s read from INPUT in json format 298s -x EXCLUDE, --exclude=EXCLUDE 298s exclude names matching EXCLUDE from input paths 298s -o OUTPUT, --output=OUTPUT 298s write to OUTPUT in po, pot formats 298s -t TEMPLATE, --template=TEMPLATE 298s read from TEMPLATE in json format 298s -S, --timestamp skip conversion if the output file has newer timestamp 298s -P, --pot output PO Templates (.pot) rather than PO files (.po) 298s --filter=FILTER leaves to extract e.g. 'name,desc': (default: extract 298s everything) 298s --duplicates=DUPLICATESTYLE 298s what to do with duplicate strings (identical source 298s text): merge, msgctxt (default: 'msgctxt') 298s ========= SMOKE TEST: /usr/bin/md2po =========== 298s Usage: md2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 298s 298s Convert Markdown files to Gettext PO localization files. See: 298s http://docs.translatehouse.org/projects/translate- 298s toolkit/en/latest/commands/md2po.html for examples and usage instructions. 298s 298s Options: 298s --version show program's version number and exit 298s -h, --help show this help message and exit 298s --manpage output a manpage based on the help 298s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 298s --errorlevel=ERRORLEVEL 298s show errorlevel as: none, message, exception, 298s traceback 298s -i INPUT, --input=INPUT 298s read from INPUT in markdown, md, text, txt formats 298s -x EXCLUDE, --exclude=EXCLUDE 298s exclude names matching EXCLUDE from input paths 298s -o OUTPUT, --output=OUTPUT 298s write to OUTPUT in po, pot formats 298s -S, --timestamp skip conversion if the output file has newer timestamp 298s -P, --pot output PO Templates (.pot) rather than PO files (.po) 298s --duplicates=DUPLICATESTYLE 298s what to do with duplicate strings (identical source 298s text): merge, msgctxt (default: 'msgctxt') 298s --multifile=MULTIFILESTYLE 298s how to split po/pot files (single, toplevel or 298s onefile) 299s ========= SMOKE TEST: /usr/bin/moz2po =========== 299s 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] 299s 299s Convert Mozilla .dtd and .properties files to Gettext PO localization files. 299s See: http://docs.translatehouse.org/projects/translate- 299s toolkit/en/latest/commands/moz2po.html for examples and usage instructions. 299s 299s Options: 299s --version show program's version number and exit 299s -h, --help show this help message and exit 299s --manpage output a manpage based on the help 299s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 299s --errorlevel=ERRORLEVEL 299s show errorlevel as: none, message, exception, 299s traceback 299s -i INPUT, --input=INPUT 299s read from INPUT in *, dtd, inc, ini, it, js, lang, 299s manifest, properties, rdf formats 299s -x EXCLUDE, --exclude=EXCLUDE 299s exclude names matching EXCLUDE from input paths 299s -o OUTPUT, --output=OUTPUT 299s write to OUTPUT in *, dtd.po, dtd.pot, inc.po, 299s inc.pot, ini.po, ini.pot, it.po, it.pot, js, lang.po, 299s lang.pot, manifest, properties.po, properties.pot, rdf 299s formats 299s -t TEMPLATE, --template=TEMPLATE 299s read from TEMPLATE in *, dtd, inc, ini, it, js, lang, 299s manifest, properties, rdf formats 299s -S, --timestamp skip conversion if the output file has newer timestamp 299s -P, --pot output PO Templates (.pot) rather than PO files (.po) 299s --duplicates=DUPLICATESTYLE 299s what to do with duplicate strings (identical source 299s text): merge, msgctxt (default: 'msgctxt') 299s ========= SMOKE TEST: /usr/bin/mozlang2po =========== 299s Usage: mozlang2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 299s 299s Convert Mozilla .lang files to Gettext PO localization files. 299s 299s Options: 299s --version show program's version number and exit 299s -h, --help show this help message and exit 299s --manpage output a manpage based on the help 299s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 299s --errorlevel=ERRORLEVEL 299s show errorlevel as: none, message, exception, 299s traceback 299s -i INPUT, --input=INPUT 299s read from INPUT in lang format 299s -x EXCLUDE, --exclude=EXCLUDE 299s exclude names matching EXCLUDE from input paths 299s -o OUTPUT, --output=OUTPUT 299s write to OUTPUT in po, pot formats 299s -S, --timestamp skip conversion if the output file has newer timestamp 299s -P, --pot output PO Templates (.pot) rather than PO files (.po) 299s --encoding=ENCODING The encoding of the input file (default: UTF-8) 299s --duplicates=DUPLICATESTYLE 299s what to do with duplicate strings (identical source 299s text): merge, msgctxt (default: 'msgctxt') 299s ========= SMOKE TEST: /usr/bin/msghack =========== 299s Usage: /usr/bin/msghack [OPTION] file.po [ref.po] 299s This program can be used to alter .po files in ways no sane mind would think about. 299s -o result will be written to FILE 299s --invert invert a po file by switching msgid and msgstr 299s --master join any number of files in a master-formatted catalog 299s --empty empty the contents of the .po file, creating a .pot 299s --append append entries from ref.po that don't exist in file.po 299s 299s Note: It is just a replacement of msghack for backward support. 299s 299s ========= SMOKE TEST: /usr/bin/odf2xliff =========== 299s Usage: odf2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 299s 299s Convert OpenDocument (ODF) files to XLIFF localization files. See: 299s http://docs.translatehouse.org/projects/translate- 299s toolkit/en/latest/commands/odf2xliff.html for examples and usage instructions. 299s 299s Options: 299s --version show program's version number and exit 299s -h, --help show this help message and exit 299s --manpage output a manpage based on the help 299s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 299s --errorlevel=ERRORLEVEL 299s show errorlevel as: none, message, exception, 299s traceback 299s -i INPUT, --input=INPUT 299s read from INPUT in odc, odf, odg, odi, odm, odp, ods, 299s odt, otc, otf, otg, oth, oti, otp, ots, ott, sxw 299s formats 299s -x EXCLUDE, --exclude=EXCLUDE 299s exclude names matching EXCLUDE from input paths 299s -o OUTPUT, --output=OUTPUT 299s write to OUTPUT in xlf, xliff formats 299s -S, --timestamp skip conversion if the output file has newer timestamp 299s ========= SMOKE TEST: /usr/bin/oo2po =========== 299s Usage: oo2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 299s 299s Convert an OpenOffice.org (SDF) localization file to Gettext PO localization 299s files. See: http://docs.translatehouse.org/projects/translate- 299s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 299s 299s Options: 299s --version show program's version number and exit 299s -h, --help show this help message and exit 299s --manpage output a manpage based on the help 299s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 299s --errorlevel=ERRORLEVEL 299s show errorlevel as: none, message, exception, 299s traceback 299s -i INPUT, --input=INPUT 299s read from INPUT in oo, sdf formats 299s -x EXCLUDE, --exclude=EXCLUDE 299s exclude names matching EXCLUDE from input paths 299s -o OUTPUT, --output=OUTPUT 299s write to OUTPUT in po, pot formats 299s -S, --timestamp skip conversion if the output file has newer timestamp 299s -P, --pot output PO Templates (.pot) rather than PO files (.po) 299s -l LANG, --language=LANG 299s set target language to extract from oo file (e.g. af- 299s ZA) 299s --source-language=LANG 299s set source language code (default en-US) 299s --nonrecursiveinput don't treat the input oo as a recursive store 299s --duplicates=DUPLICATESTYLE 299s what to do with duplicate strings (identical source 299s text): merge, msgctxt (default: 'msgctxt') 299s --multifile=MULTIFILESTYLE 299s how to split po/pot files (single, toplevel or 299s onefile) 299s ========= SMOKE TEST: /usr/bin/oo2xliff =========== 300s Usage: oo2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 300s 300s Convert an OpenOffice.org (SDF) localization file to XLIFF localization 300s files. See: http://docs.translatehouse.org/projects/translate- 300s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 300s 300s Options: 300s --version show program's version number and exit 300s -h, --help show this help message and exit 300s --manpage output a manpage based on the help 300s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 300s --errorlevel=ERRORLEVEL 300s show errorlevel as: none, message, exception, 300s traceback 300s -i INPUT, --input=INPUT 300s read from INPUT in oo, sdf formats 300s -x EXCLUDE, --exclude=EXCLUDE 300s exclude names matching EXCLUDE from input paths 300s -o OUTPUT, --output=OUTPUT 300s write to OUTPUT in xlf, xliff formats 300s -S, --timestamp skip conversion if the output file has newer timestamp 300s -l LANG, --language=LANG 300s set target language to extract from oo file (e.g. af- 300s ZA) 300s --source-language=LANG 300s set source language code (default en-US) 300s --nonrecursiveinput don't treat the input oo as a recursive store 300s --duplicates=DUPLICATESTYLE 300s what to do with duplicate strings (identical source 300s text): merge, msgctxt (default: 'msgctxt') 300s --multifile=MULTIFILESTYLE 300s how to split po/pot files (single, toplevel or 300s onefile) 300s ========= SMOKE TEST: /usr/bin/php2po =========== 300s 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] 300s 300s Convert PHP localization files to Gettext PO localization files. See: 300s http://docs.translatehouse.org/projects/translate- 300s toolkit/en/latest/commands/php2po.html for examples and usage instructions. 300s 300s Options: 300s --version show program's version number and exit 300s -h, --help show this help message and exit 300s --manpage output a manpage based on the help 300s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 300s --errorlevel=ERRORLEVEL 300s show errorlevel as: none, message, exception, 300s traceback 300s -i INPUT, --input=INPUT 300s read from INPUT in html, php formats 300s -x EXCLUDE, --exclude=EXCLUDE 300s exclude names matching EXCLUDE from input paths 300s -o OUTPUT, --output=OUTPUT 300s write to OUTPUT in po, pot formats 300s -t TEMPLATE, --template=TEMPLATE 300s read from TEMPLATE in html, php formats 300s -S, --timestamp skip conversion if the output file has newer timestamp 300s -P, --pot output PO Templates (.pot) rather than PO files (.po) 300s --duplicates=DUPLICATESTYLE 300s what to do with duplicate strings (identical source 300s text): merge, msgctxt (default: 'msgctxt') 300s ========= SMOKE TEST: /usr/bin/phppo2pypo =========== 300s Usage: phppo2pypo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 300s 300s Convert PHP format .po files to Python format .po files. 300s 300s Options: 300s --version show program's version number and exit 300s -h, --help show this help message and exit 300s --manpage output a manpage based on the help 300s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 300s --errorlevel=ERRORLEVEL 300s show errorlevel as: none, message, exception, 300s traceback 300s -i INPUT, --input=INPUT 300s read from INPUT in po, pot formats 300s -x EXCLUDE, --exclude=EXCLUDE 300s exclude names matching EXCLUDE from input paths 300s -o OUTPUT, --output=OUTPUT 300s write to OUTPUT in po, pot formats 300s -S, --timestamp skip conversion if the output file has newer timestamp 300s ========= SMOKE TEST: /usr/bin/po2csv =========== 300s Usage: po2csv [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 300s 300s Convert Gettext PO localization files to Comma-Separated Value (.csv) files. 300s See: http://docs.translatehouse.org/projects/translate- 300s toolkit/en/latest/commands/csv2po.html for examples and usage instructions. 300s 300s Options: 300s --version show program's version number and exit 300s -h, --help show this help message and exit 300s --manpage output a manpage based on the help 300s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 300s --errorlevel=ERRORLEVEL 300s show errorlevel as: none, message, exception, 300s traceback 300s -i INPUT, --input=INPUT 300s read from INPUT in po, pot formats 300s -x EXCLUDE, --exclude=EXCLUDE 300s exclude names matching EXCLUDE from input paths 300s -o OUTPUT, --output=OUTPUT 300s write to OUTPUT in csv format 300s -S, --timestamp skip conversion if the output file has newer timestamp 300s --columnorder=COLUMNORDER 300s specify the order and position of columns 300s (location,source,target,context) 300s ========= SMOKE TEST: /usr/bin/po2dtd =========== 300s Usage: po2dtd [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 300s 300s Converts a Gettext PO file to a UTF-8 encoded Mozilla .dtd file. .. note: 300s Conversion is either done using a template plus PO file or just using the 300s .po file. 300s 300s Options: 300s --version show program's version number and exit 300s -h, --help show this help message and exit 300s --manpage output a manpage based on the help 300s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 300s --errorlevel=ERRORLEVEL 300s show errorlevel as: none, message, exception, 300s traceback 300s -i INPUT, --input=INPUT 300s read from INPUT in po, pot formats 300s -x EXCLUDE, --exclude=EXCLUDE 300s exclude names matching EXCLUDE from input paths 300s -o OUTPUT, --output=OUTPUT 300s write to OUTPUT in dtd format 300s -t TEMPLATE, --template=TEMPLATE 300s read from TEMPLATE in dtd format 300s -S, --timestamp skip conversion if the output file has newer timestamp 300s --threshold=PERCENT only convert files where the translation completion is 300s above PERCENT 300s --fuzzy use translations marked fuzzy 300s --nofuzzy don't use translations marked fuzzy (default) 300s --removeuntranslated remove untranslated strings from output 300s ========= SMOKE TEST: /usr/bin/po2flatxml =========== 300s Usage: po2flatxml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 300s 300s Convert Gettext PO localization files to flat XML files. See: 300s http://docs.translatehouse.org/projects/translate- 300s toolkit/en/latest/commands/flatxml2po.html for examples and usage 300s instructions. 300s 300s Options: 300s --version show program's version number and exit 300s -h, --help show this help message and exit 300s --manpage output a manpage based on the help 300s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 300s --errorlevel=ERRORLEVEL 300s show errorlevel as: none, message, exception, 300s traceback 300s -i INPUT, --input=INPUT 300s read from INPUT in po, pot formats 300s -x EXCLUDE, --exclude=EXCLUDE 300s exclude names matching EXCLUDE from input paths 300s -o OUTPUT, --output=OUTPUT 300s write to OUTPUT in xml format 300s -t TEMPLATE, --template=TEMPLATE 300s read from TEMPLATE in xml format 300s -S, --timestamp skip conversion if the output file has newer timestamp 300s -r ROOT, --root=ROOT name of the XML root element (default: "root") 300s -v VALUE, --value=VALUE 300s name of the XML value element (default: "str") 300s -k KEY, --key=KEY name of the XML key attribute (default: "key") 300s -n NS, --namespace=NS 300s XML namespace uri (default: None) 300s -w INDENT, --indent=INDENT 300s indent width in spaces, 0 for no indent (default: 2) 301s ========= SMOKE TEST: /usr/bin/po2html =========== 301s Usage: po2html [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 301s 301s Translate HTML files using Gettext PO localization files. See: 301s http://docs.translatehouse.org/projects/translate- 301s toolkit/en/latest/commands/html2po.html for examples and usage instructions. 301s 301s Options: 301s --version show program's version number and exit 301s -h, --help show this help message and exit 301s --manpage output a manpage based on the help 301s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 301s --errorlevel=ERRORLEVEL 301s show errorlevel as: none, message, exception, 301s traceback 301s -i INPUT, --input=INPUT 301s read from INPUT in po, pot formats 301s -x EXCLUDE, --exclude=EXCLUDE 301s exclude names matching EXCLUDE from input paths 301s -o OUTPUT, --output=OUTPUT 301s write to OUTPUT in htm, html, xhtml formats 301s -t TEMPLATE, --template=TEMPLATE 301s read from TEMPLATE in htm, html, xhtml formats 301s -S, --timestamp skip conversion if the output file has newer timestamp 301s --threshold=PERCENT only convert files where the translation completion is 301s above PERCENT 301s --fuzzy use translations marked fuzzy 301s --nofuzzy don't use translations marked fuzzy (default) 301s ========= SMOKE TEST: /usr/bin/po2ical =========== 301s Usage: po2ical [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 301s 301s Convert Gettext PO localization files to iCalendar files. See: 301s http://docs.translatehouse.org/projects/translate- 301s toolkit/en/latest/commands/ical2po.html for examples and usage instructions. 301s 301s Options: 301s --version show program's version number and exit 301s -h, --help show this help message and exit 301s --manpage output a manpage based on the help 301s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 301s --errorlevel=ERRORLEVEL 301s show errorlevel as: none, message, exception, 301s traceback 301s -i INPUT, --input=INPUT 301s read from INPUT in po, pot formats 301s -x EXCLUDE, --exclude=EXCLUDE 301s exclude names matching EXCLUDE from input paths 301s -o OUTPUT, --output=OUTPUT 301s write to OUTPUT in ics format 301s -t TEMPLATE, --template=TEMPLATE 301s read from TEMPLATE in ics format 301s -S, --timestamp skip conversion if the output file has newer timestamp 301s --threshold=PERCENT only convert files where the translation completion is 301s above PERCENT 301s --fuzzy use translations marked fuzzy 301s --nofuzzy don't use translations marked fuzzy (default) 301s ========= SMOKE TEST: /usr/bin/po2idml =========== 301s Usage: po2idml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 301s 301s Takes an IDML template file and a PO file containing translations of strings 301s in the IDML template. It creates a new IDML file using the translations of the 301s PO file. 301s 301s Options: 301s --version show program's version number and exit 301s -h, --help show this help message and exit 301s --manpage output a manpage based on the help 301s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 301s --errorlevel=ERRORLEVEL 301s show errorlevel as: none, message, exception, 301s traceback 301s -i INPUT, --input=INPUT 301s read from INPUT in po, pot formats 301s -x EXCLUDE, --exclude=EXCLUDE 301s exclude names matching EXCLUDE from input paths 301s -o OUTPUT, --output=OUTPUT 301s write to OUTPUT in idml format 301s -t TEMPLATE, --template=TEMPLATE 301s read from TEMPLATE in idml format 301s -S, --timestamp skip conversion if the output file has newer timestamp 301s ========= SMOKE TEST: /usr/bin/po2ini =========== 301s Usage: po2ini [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 301s 301s Convert Gettext PO localization files to .ini files. See: 301s http://docs.translatehouse.org/projects/translate- 301s toolkit/en/latest/commands/ini2po.html for examples and usage instructions. 301s 301s Options: 301s --version show program's version number and exit 301s -h, --help show this help message and exit 301s --manpage output a manpage based on the help 301s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 301s --errorlevel=ERRORLEVEL 301s show errorlevel as: none, message, exception, 301s traceback 301s -i INPUT, --input=INPUT 301s read from INPUT in po, pot formats 301s -x EXCLUDE, --exclude=EXCLUDE 301s exclude names matching EXCLUDE from input paths 301s -o OUTPUT, --output=OUTPUT 301s write to OUTPUT in ini, isl formats 301s -t TEMPLATE, --template=TEMPLATE 301s read from TEMPLATE in ini, isl formats 301s -S, --timestamp skip conversion if the output file has newer timestamp 301s --threshold=PERCENT only convert files where the translation completion is 301s above PERCENT 301s --fuzzy use translations marked fuzzy 301s --nofuzzy don't use translations marked fuzzy (default) 301s ========= SMOKE TEST: /usr/bin/po2json =========== 301s Usage: po2json [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 301s 301s Convert Gettext PO localization files to JSON files. See: 301s http://docs.translatehouse.org/projects/translate- 301s toolkit/en/latest/commands/json2po.html for examples and usage instructions. 301s 301s Options: 301s --version show program's version number and exit 301s -h, --help show this help message and exit 301s --manpage output a manpage based on the help 301s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 301s --errorlevel=ERRORLEVEL 301s show errorlevel as: none, message, exception, 301s traceback 301s -i INPUT, --input=INPUT 301s read from INPUT in po, pot formats 301s -x EXCLUDE, --exclude=EXCLUDE 301s exclude names matching EXCLUDE from input paths 301s -o OUTPUT, --output=OUTPUT 301s write to OUTPUT in json format 301s -t TEMPLATE, --template=TEMPLATE 301s read from TEMPLATE in json format 301s -S, --timestamp skip conversion if the output file has newer timestamp 301s --threshold=PERCENT only convert files where the translation completion is 301s above PERCENT 301s --fuzzy use translations marked fuzzy 301s --nofuzzy don't use translations marked fuzzy (default) 301s --removeuntranslated remove untranslated strings from output 301s ========= SMOKE TEST: /usr/bin/po2md =========== 302s Usage: po2md [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 302s 302s Translate Markdown files using Gettext PO localization files. See: 302s http://docs.translatehouse.org/projects/translate- 302s toolkit/en/latest/commands/md2po.html for examples and usage instructions. 302s 302s Options: 302s --version show program's version number and exit 302s -h, --help show this help message and exit 302s --manpage output a manpage based on the help 302s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 302s --errorlevel=ERRORLEVEL 302s show errorlevel as: none, message, exception, 302s traceback 302s -i INPUT, --input=INPUT 302s read from INPUT in po, pot formats 302s -x EXCLUDE, --exclude=EXCLUDE 302s exclude names matching EXCLUDE from input paths 302s -o OUTPUT, --output=OUTPUT 302s write to OUTPUT in markdown, md, text, txt formats 302s -t TEMPLATE, --template=TEMPLATE 302s read from TEMPLATE in markdown, md, text, txt formats 302s -S, --timestamp skip conversion if the output file has newer timestamp 302s -m MAXLENGTH, --maxlinelength=MAXLENGTH 302s reflow (word wrap) the output to the given maximum 302s line length. set to 0 to disable 302s --threshold=PERCENT only convert files where the translation completion is 302s above PERCENT 302s --fuzzy use translations marked fuzzy 302s --nofuzzy don't use translations marked fuzzy (default) 302s ========= SMOKE TEST: /usr/bin/po2moz =========== 302s Usage: po2moz [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 302s 302s Convert Gettext PO localization files to Mozilla .dtd and .properties files. 302s See: http://docs.translatehouse.org/projects/translate- 302s toolkit/en/latest/commands/moz2po.html for examples and usage instructions. 302s 302s Options: 302s --version show program's version number and exit 302s -h, --help show this help message and exit 302s --manpage output a manpage based on the help 302s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 302s --errorlevel=ERRORLEVEL 302s show errorlevel as: none, message, exception, 302s traceback 302s -i INPUT, --input=INPUT 302s read from INPUT in *, dtd.po, dtd.pot, inc.po, 302s inc.pot, ini.po, ini.pot, it.po, it.pot, js, lang.po, 302s lang.pot, manifest, properties.po, properties.pot, rdf 302s formats 302s -x EXCLUDE, --exclude=EXCLUDE 302s exclude names matching EXCLUDE from input paths 302s -o OUTPUT, --output=OUTPUT 302s write to OUTPUT in *, dtd, inc, ini, it, js, lang, 302s manifest, properties, rdf formats 302s -t TEMPLATE, --template=TEMPLATE 302s read from TEMPLATE in *, dtd, inc, ini, it, js, lang, 302s manifest, properties, rdf formats 302s -S, --timestamp skip conversion if the output file has newer timestamp 302s -l LOCALE, --locale=LOCALE 302s set output locale (required as this sets the directory 302s names) 302s --threshold=PERCENT only convert files where the translation completion is 302s above PERCENT 302s --fuzzy use translations marked fuzzy 302s --nofuzzy don't use translations marked fuzzy (default) 302s --removeuntranslated remove untranslated strings from output 302s ========= SMOKE TEST: /usr/bin/po2mozlang =========== 302s Usage: po2mozlang [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 302s 302s Convert Gettext PO localization files to Mozilla .lang files. 302s 302s Options: 302s --version show program's version number and exit 302s -h, --help show this help message and exit 302s --manpage output a manpage based on the help 302s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 302s --errorlevel=ERRORLEVEL 302s show errorlevel as: none, message, exception, 302s traceback 302s -i INPUT, --input=INPUT 302s read from INPUT in po, pot formats 302s -x EXCLUDE, --exclude=EXCLUDE 302s exclude names matching EXCLUDE from input paths 302s -o OUTPUT, --output=OUTPUT 302s write to OUTPUT in lang format 302s -t TEMPLATE, --template=TEMPLATE 302s read from TEMPLATE in lang format 302s -S, --timestamp skip conversion if the output file has newer timestamp 302s --mark-active mark the file as active 302s --threshold=PERCENT only convert files where the translation completion is 302s above PERCENT 302s --fuzzy use translations marked fuzzy 302s --nofuzzy don't use translations marked fuzzy (default) 302s ========= SMOKE TEST: /usr/bin/po2oo =========== 303s Usage: po2oo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 303s 303s Convert Gettext PO localization files to an OpenOffice.org (SDF) localization 303s file. See: http://docs.translatehouse.org/projects/translate- 303s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 303s 303s Options: 303s --version show program's version number and exit 303s -h, --help show this help message and exit 303s --manpage output a manpage based on the help 303s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 303s --errorlevel=ERRORLEVEL 303s show errorlevel as: none, message, exception, 303s traceback 303s -i INPUT, --input=INPUT 303s read from INPUT in po, pot, xlf, xliff formats 303s -x EXCLUDE, --exclude=EXCLUDE 303s exclude names matching EXCLUDE from input paths 303s -o OUTPUT, --output=OUTPUT 303s write to OUTPUT in oo, sdf formats 303s -t TEMPLATE, --template=TEMPLATE 303s read from TEMPLATE in oo, sdf formats 303s -S, --timestamp skip conversion if the output file has newer timestamp 303s -l LANG, --language=LANG 303s set target language code (e.g. af-ZA) [required] 303s --source-language=LANG 303s set source language code (default en-US) 303s -T, --keeptimestamp don't change the timestamps of the strings 303s --nonrecursiveoutput don't treat the output oo as a recursive store 303s --nonrecursivetemplate 303s don't treat the template oo as a recursive store 303s --skipsource don't output the source language, but fallback to it 303s where needed 303s --filteraction=ACTION 303s action on pofilter failure: none (default), warn, 303s exclude-serious, exclude-all 303s --threshold=PERCENT only convert files where the translation completion is 303s above PERCENT 303s --fuzzy use translations marked fuzzy 303s --nofuzzy don't use translations marked fuzzy (default) 303s --multifile=MULTIFILESTYLE 303s how to split po/pot files (single, toplevel or 303s onefile) 303s ========= SMOKE TEST: /usr/bin/po2php =========== 303s Usage: po2php [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 303s 303s Convert Gettext PO localization files to PHP localization files. See: 303s http://docs.translatehouse.org/projects/translate- 303s toolkit/en/latest/commands/php2po.html for examples and usage instructions. 303s 303s Options: 303s --version show program's version number and exit 303s -h, --help show this help message and exit 303s --manpage output a manpage based on the help 303s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 303s --errorlevel=ERRORLEVEL 303s show errorlevel as: none, message, exception, 303s traceback 303s -i INPUT, --input=INPUT 303s read from INPUT in po, pot formats 303s -x EXCLUDE, --exclude=EXCLUDE 303s exclude names matching EXCLUDE from input paths 303s -o OUTPUT, --output=OUTPUT 303s write to OUTPUT in html, php formats 303s -t TEMPLATE, --template=TEMPLATE 303s read from TEMPLATE in html, php formats 303s -S, --timestamp skip conversion if the output file has newer timestamp 303s --threshold=PERCENT only convert files where the translation completion is 303s above PERCENT 303s --fuzzy use translations marked fuzzy 303s --nofuzzy don't use translations marked fuzzy (default) 303s ========= SMOKE TEST: /usr/bin/po2prop =========== 303s Usage: po2prop [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 303s 303s Convert Gettext PO localization files to Java/Mozilla .properties files. 303s See: http://docs.translatehouse.org/projects/translate- 303s toolkit/en/latest/commands/prop2po.html for examples and usage instructions. 303s 303s Options: 303s --version show program's version number and exit 303s -h, --help show this help message and exit 303s --manpage output a manpage based on the help 303s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 303s --errorlevel=ERRORLEVEL 303s show errorlevel as: none, message, exception, 303s traceback 303s -i INPUT, --input=INPUT 303s read from INPUT in po, pot formats 303s -x EXCLUDE, --exclude=EXCLUDE 303s exclude names matching EXCLUDE from input paths 303s -o OUTPUT, --output=OUTPUT 303s write to OUTPUT in lang, properties, strings formats 303s -t TEMPLATE, --template=TEMPLATE 303s read from TEMPLATE in lang, properties, strings 303s formats 303s -S, --timestamp skip conversion if the output file has newer timestamp 303s --personality=TYPE override the input file format: java, java-utf8, java- 303s utf16, xwiki, flex, mozilla, gaia, gwt, skype, 303s strings, strings-utf8, joomla (for .properties files, 303s default: java) 303s --encoding=ENCODING override the encoding set by the personality 303s --threshold=PERCENT only convert files where the translation completion is 303s above PERCENT 303s --fuzzy use translations marked fuzzy 303s --nofuzzy don't use translations marked fuzzy (default) 303s --removeuntranslated remove untranslated strings from output 303s ========= SMOKE TEST: /usr/bin/po2rc =========== 303s Usage: po2rc [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 303s 303s Convert Gettext PO localization files back to Windows Resource (.rc) files. 303s See: http://docs.translatehouse.org/projects/translate- 303s toolkit/en/latest/commands/rc2po.html for examples and usage instructions. 303s 303s Options: 303s --version show program's version number and exit 303s -h, --help show this help message and exit 303s --manpage output a manpage based on the help 303s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 303s --errorlevel=ERRORLEVEL 303s show errorlevel as: none, message, exception, 303s traceback 303s -i INPUT, --input=INPUT 303s read from INPUT in po, pot formats 303s -x EXCLUDE, --exclude=EXCLUDE 303s exclude names matching EXCLUDE from input paths 303s -o OUTPUT, --output=OUTPUT 303s write to OUTPUT in rc format 303s -t TEMPLATE, --template=TEMPLATE 303s read from TEMPLATE in rc format 303s -S, --timestamp skip conversion if the output file has newer timestamp 303s --charset=CHARSET charset to use to decode the RC files (default: utf-8) 303s -l LANG, --lang=LANG LANG entry 303s --sublang=SUBLANG SUBLANG entry (default: SUBLANG_DEFAULT) 303s --threshold=PERCENT only convert files where the translation completion is 303s above PERCENT 303s --fuzzy use translations marked fuzzy 303s --nofuzzy don't use translations marked fuzzy (default) 303s ========= SMOKE TEST: /usr/bin/po2resx =========== 303s Usage: po2resx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 303s 303s Convert Gettext PO localisation files to .Net Resource (.resx) files. See: 303s http://docs.translatehouse.org/projects/translate- 303s toolkit/en/latest/commands/resx2po.html for examples and usage instructions. 303s 303s Options: 303s --version show program's version number and exit 303s -h, --help show this help message and exit 303s --manpage output a manpage based on the help 303s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 303s --errorlevel=ERRORLEVEL 303s show errorlevel as: none, message, exception, 303s traceback 303s -i INPUT, --input=INPUT 303s read from INPUT in po, pot formats 303s -x EXCLUDE, --exclude=EXCLUDE 303s exclude names matching EXCLUDE from input paths 303s -o OUTPUT, --output=OUTPUT 303s write to OUTPUT in resx format 303s -t TEMPLATE, --template=TEMPLATE 303s read from TEMPLATE in resx format 303s -S, --timestamp skip conversion if the output file has newer timestamp 303s --fuzzy use translations marked fuzzy 303s --nofuzzy don't use translations marked fuzzy (default) 303s ========= SMOKE TEST: /usr/bin/po2sub =========== 303s Usage: po2sub [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 304s 304s Convert Gettext PO localization files to subtitle files. See: 304s http://docs.translatehouse.org/projects/translate- 304s toolkit/en/latest/commands/sub2po.html for examples and usage instructions. 304s 304s Options: 304s --version show program's version number and exit 304s -h, --help show this help message and exit 304s --manpage output a manpage based on the help 304s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 304s --errorlevel=ERRORLEVEL 304s show errorlevel as: none, message, exception, 304s traceback 304s -i INPUT, --input=INPUT 304s read from INPUT in po, pot formats 304s -x EXCLUDE, --exclude=EXCLUDE 304s exclude names matching EXCLUDE from input paths 304s -o OUTPUT, --output=OUTPUT 304s write to OUTPUT in ass, srt, ssa, sub formats 304s -t TEMPLATE, --template=TEMPLATE 304s read from TEMPLATE in ass, srt, ssa, sub formats 304s -S, --timestamp skip conversion if the output file has newer timestamp 304s --threshold=PERCENT only convert files where the translation completion is 304s above PERCENT 304s --fuzzy use translations marked fuzzy 304s --nofuzzy don't use translations marked fuzzy (default) 304s ========= SMOKE TEST: /usr/bin/po2symb =========== 304s Usage: po2symb [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 304s 304s Convert Gettext PO localization files to Symbian translation files. See: 304s http://docs.translatehouse.org/projects/translate- 304s toolkit/en/latest/commands/symb2po.html for examples and usage instructions. 304s 304s Options: 304s --version show program's version number and exit 304s -h, --help show this help message and exit 304s --manpage output a manpage based on the help 304s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 304s --errorlevel=ERRORLEVEL 304s show errorlevel as: none, message, exception, 304s traceback 304s -i INPUT, --input=INPUT 304s read from INPUT in po, pot formats 304s -x EXCLUDE, --exclude=EXCLUDE 304s exclude names matching EXCLUDE from input paths 304s -o OUTPUT, --output=OUTPUT 304s write to OUTPUT in r0 format 304s -t TEMPLATE, --template=TEMPLATE 304s read from TEMPLATE in 304s -S, --timestamp skip conversion if the output file has newer timestamp 304s --duplicates=DUPLICATESTYLE 304s what to do with duplicate strings (identical source 304s text): merge, msgctxt (default: 'msgctxt') 304s ========= SMOKE TEST: /usr/bin/po2tiki =========== 304s Usage: po2tiki [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 304s 304s Convert Gettext PO files to TikiWiki's language.php files. See: 304s http://docs.translatehouse.org/projects/translate- 304s toolkit/en/latest/commands/tiki2po.html for examples and usage instructions. 304s 304s Options: 304s --version show program's version number and exit 304s -h, --help show this help message and exit 304s --manpage output a manpage based on the help 304s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 304s --errorlevel=ERRORLEVEL 304s show errorlevel as: none, message, exception, 304s traceback 304s -i INPUT, --input=INPUT 304s read from INPUT in po, pot formats 304s -x EXCLUDE, --exclude=EXCLUDE 304s exclude names matching EXCLUDE from input paths 304s -o OUTPUT, --output=OUTPUT 304s write to OUTPUT in tiki format 304s -S, --timestamp skip conversion if the output file has newer timestamp 304s ========= SMOKE TEST: /usr/bin/po2tmx =========== 304s Usage: po2tmx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 304s 304s Convert Gettext PO localization files to a TMX (Translation Memory eXchange) 304s file. See: http://docs.translatehouse.org/projects/translate- 304s toolkit/en/latest/commands/po2tmx.html for examples and usage instructions. 304s 304s Options: 304s --version show program's version number and exit 304s -h, --help show this help message and exit 304s --manpage output a manpage based on the help 304s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 304s --errorlevel=ERRORLEVEL 304s show errorlevel as: none, message, exception, 304s traceback 304s -i INPUT, --input=INPUT 304s read from INPUT in po, pot formats 304s -x EXCLUDE, --exclude=EXCLUDE 304s exclude names matching EXCLUDE from input paths 304s -o OUTPUT, --output=OUTPUT 304s write to OUTPUT in tmx format 304s -S, --timestamp skip conversion if the output file has newer timestamp 304s -l LANG, --language=LANG 304s set target language code (e.g. af-ZA) [required] 304s --source-language=LANG 304s set source language code (default: en) 304s --comments=COMMENT set default comment import: none, source, type or 304s others (default: none) 304s ========= SMOKE TEST: /usr/bin/po2ts =========== 304s Usage: po2ts [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 304s 304s Convert Gettext PO localization files to Qt Linguist (.ts) files. See: 304s http://docs.translatehouse.org/projects/translate- 304s toolkit/en/latest/commands/ts2po.html for examples and usage instructions. 304s 304s Options: 304s --version show program's version number and exit 304s -h, --help show this help message and exit 304s --manpage output a manpage based on the help 304s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 304s --errorlevel=ERRORLEVEL 304s show errorlevel as: none, message, exception, 304s traceback 304s -i INPUT, --input=INPUT 304s read from INPUT in po, pot formats 304s -x EXCLUDE, --exclude=EXCLUDE 304s exclude names matching EXCLUDE from input paths 304s -o OUTPUT, --output=OUTPUT 304s write to OUTPUT in ts format 304s -t TEMPLATE, --template=TEMPLATE 304s read from TEMPLATE in ts format 304s -S, --timestamp skip conversion if the output file has newer timestamp 304s -c CONTEXT, --context=CONTEXT 304s use supplied context instead of the one in the .po 304s file comment 304s ========= SMOKE TEST: /usr/bin/po2txt =========== 304s Usage: po2txt [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 304s 304s Convert Gettext PO localization files to plain text (.txt) files. See: 304s http://docs.translatehouse.org/projects/translate- 304s toolkit/en/latest/commands/txt2po.html for examples and usage instructions. 304s 304s Options: 304s --version show program's version number and exit 304s -h, --help show this help message and exit 304s --manpage output a manpage based on the help 304s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 304s --errorlevel=ERRORLEVEL 304s show errorlevel as: none, message, exception, 304s traceback 304s -i INPUT, --input=INPUT 304s read from INPUT in po, pot, xlf, xliff formats 304s -x EXCLUDE, --exclude=EXCLUDE 304s exclude names matching EXCLUDE from input paths 304s -o OUTPUT, --output=OUTPUT 304s write to OUTPUT in txt format 304s -t TEMPLATE, --template=TEMPLATE 304s read from TEMPLATE in txt format 304s -S, --timestamp skip conversion if the output file has newer timestamp 304s --encoding=ENCODING The encoding of the template file (default: UTF-8) 304s -w WRAP, --wrap=WRAP set number of columns to wrap text at 304s --threshold=PERCENT only convert files where the translation completion is 304s above PERCENT 304s --fuzzy use translations marked fuzzy 304s --nofuzzy don't use translations marked fuzzy (default) 304s ========= SMOKE TEST: /usr/bin/po2web2py =========== 304s Usage: po2web2py [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 304s 304s Convert GNU/gettext PO files to web2py translation dictionaries (.py). See: 304s http://docs.translatehouse.org/projects/translate- 304s toolkit/en/latest/commands/web2py2po.html for examples and usage instructions. 304s 304s Options: 304s --version show program's version number and exit 304s -h, --help show this help message and exit 304s --manpage output a manpage based on the help 304s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 304s --errorlevel=ERRORLEVEL 304s show errorlevel as: none, message, exception, 304s traceback 304s -i INPUT, --input=INPUT 304s read from INPUT in po, pot formats 304s -x EXCLUDE, --exclude=EXCLUDE 304s exclude names matching EXCLUDE from input paths 304s -o OUTPUT, --output=OUTPUT 304s write to OUTPUT in py format 304s -S, --timestamp skip conversion if the output file has newer timestamp 304s --threshold=PERCENT only convert files where the translation completion is 304s above PERCENT 304s --fuzzy use translations marked fuzzy 304s --nofuzzy don't use translations marked fuzzy (default) 304s ========= SMOKE TEST: /usr/bin/po2wordfast =========== 305s Usage: po2wordfast [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 305s 305s Convert Gettext PO localization files to a Wordfast translation memory file. 305s See: http://docs.translatehouse.org/projects/translate- 305s toolkit/en/latest/commands/po2wordfast.html for examples and usage 305s instructions. 305s 305s Options: 305s --version show program's version number and exit 305s -h, --help show this help message and exit 305s --manpage output a manpage based on the help 305s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 305s --errorlevel=ERRORLEVEL 305s show errorlevel as: none, message, exception, 305s traceback 305s -i INPUT, --input=INPUT 305s read from INPUT in po, pot formats 305s -x EXCLUDE, --exclude=EXCLUDE 305s exclude names matching EXCLUDE from input paths 305s -o OUTPUT, --output=OUTPUT 305s write to OUTPUT in txt format 305s -S, --timestamp skip conversion if the output file has newer timestamp 305s -l LANG, --language=LANG 305s set target language code (e.g. af-ZA) [required] 305s --source-language=LANG 305s set source language code (default: en) 305s ========= SMOKE TEST: /usr/bin/po2xliff =========== 305s Usage: po2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 305s 305s Convert Gettext PO localization files to XLIFF localization files. See: 305s http://docs.translatehouse.org/projects/translate- 305s toolkit/en/latest/commands/xliff2po.html for examples and usage instructions. 305s 305s Options: 305s --version show program's version number and exit 305s -h, --help show this help message and exit 305s --manpage output a manpage based on the help 305s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 305s --errorlevel=ERRORLEVEL 305s show errorlevel as: none, message, exception, 305s traceback 305s -i INPUT, --input=INPUT 305s read from INPUT in po, pot formats 305s -x EXCLUDE, --exclude=EXCLUDE 305s exclude names matching EXCLUDE from input paths 305s -o OUTPUT, --output=OUTPUT 305s write to OUTPUT in xlf, xliff formats 305s -t TEMPLATE, --template=TEMPLATE 305s read from TEMPLATE in xlf, xliff formats 305s -S, --timestamp skip conversion if the output file has newer timestamp 305s ========= SMOKE TEST: /usr/bin/po2yaml =========== 305s Usage: po2yaml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 305s 305s Convert Gettext PO localization files to YAML files. See: 305s http://docs.translatehouse.org/projects/translate- 305s toolkit/en/latest/commands/yaml2po.html for examples and usage instructions. 305s 305s Options: 305s --version show program's version number and exit 305s -h, --help show this help message and exit 305s --manpage output a manpage based on the help 305s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 305s --errorlevel=ERRORLEVEL 305s show errorlevel as: none, message, exception, 305s traceback 305s -i INPUT, --input=INPUT 305s read from INPUT in po, pot formats 305s -x EXCLUDE, --exclude=EXCLUDE 305s exclude names matching EXCLUDE from input paths 305s -o OUTPUT, --output=OUTPUT 305s write to OUTPUT in yaml, yml formats 305s -t TEMPLATE, --template=TEMPLATE 305s read from TEMPLATE in yaml, yml formats 305s -S, --timestamp skip conversion if the output file has newer timestamp 305s --threshold=PERCENT only convert files where the translation completion is 305s above PERCENT 305s --fuzzy use translations marked fuzzy 305s --nofuzzy don't use translations marked fuzzy (default) 305s ========= SMOKE TEST: /usr/bin/poclean =========== 305s Usage: poclean [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 305s 305s Produces a clean file from an unclean file (Trados/Wordfast) by stripping out 305s the tw4win indicators. This does not convert an RTF file to PO/XLIFF, but 305s produces the target file with only the target text in from a text version of 305s the RTF. 305s 305s Options: 305s --version show program's version number and exit 305s -h, --help show this help message and exit 305s --manpage output a manpage based on the help 305s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 305s --errorlevel=ERRORLEVEL 305s show errorlevel as: none, message, exception, 305s traceback 305s -i INPUT, --input=INPUT 305s read from INPUT in po, pot, xlf, xliff formats 305s -x EXCLUDE, --exclude=EXCLUDE 305s exclude names matching EXCLUDE from input paths 305s -o OUTPUT, --output=OUTPUT 305s write to OUTPUT in po, pot, xlf, xliff formats 305s -S, --timestamp skip conversion if the output file has newer timestamp 305s ========= SMOKE TEST: /usr/bin/pocompendium =========== 305s Usage: pocompendium [options] output.po <-d directory(s)|file(s)> 305s The first parameter is the output file, standard output if the output file is '-'. 305s Any number of directories may be specified for input files. 305s Options: 305s --invert|v Creates an inverse compendium with msgid and msgstr swapped 305s --errors|e Only ouput msg bundles that have errors 305s --correct|c Only ouput msg bundles that are correctly translated 305s --ignore-case|i Drops all strings to lowercase 305s --strip-accel-tilde|-st Strip all tilde (~) accelerator characters 305s --strip-accel-amp|-sa Strip all ampersand (&) accelerator characters 305s --strip-accel-under|-su Strip all underscore (_) accelerator characters 305s ========= SMOKE TEST: /usr/bin/pocompile =========== 305s Usage: pocompile [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 305s 305s Compile XLIFF and Gettext PO localization files into Gettext MO (Machine 305s Object) files. See: http://docs.translatehouse.org/projects/translate- 305s toolkit/en/latest/commands/pocompile.html for examples and usage instructions. 305s 305s Options: 305s --version show program's version number and exit 305s -h, --help show this help message and exit 305s --manpage output a manpage based on the help 305s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 305s --errorlevel=ERRORLEVEL 305s show errorlevel as: none, message, exception, 305s traceback 305s -i INPUT, --input=INPUT 305s read from INPUT in po, pot, xlf, xliff formats 305s -x EXCLUDE, --exclude=EXCLUDE 305s exclude names matching EXCLUDE from input paths 305s -o OUTPUT, --output=OUTPUT 305s write to OUTPUT in mo format 305s -S, --timestamp skip conversion if the output file has newer timestamp 305s --fuzzy use translations marked fuzzy 305s --nofuzzy don't use translations marked fuzzy (default) 305s ========= SMOKE TEST: /usr/bin/poconflicts =========== 305s 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] 305s input directory is searched for PO files, PO files with name of conflicting string are output in output directory 305s 305s Conflict finder for Gettext PO localization files. See: 305s http://docs.translatehouse.org/projects/translate- 305s toolkit/en/latest/commands/poconflicts.html for examples and usage 305s instructions. 305s 305s Options: 305s --version show program's version number and exit 305s -h, --help show this help message and exit 305s --manpage output a manpage based on the help 305s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 305s --errorlevel=ERRORLEVEL 305s show errorlevel as: none, message, exception, 305s traceback 305s -i INPUT, --input=INPUT 305s read from INPUT in po format 305s -x EXCLUDE, --exclude=EXCLUDE 305s exclude names matching EXCLUDE from input paths 305s -o OUTPUT, --output=OUTPUT 305s write to OUTPUT in po format 305s -I, --ignore-case ignore case distinctions 305s -v, --invert invert the conflicts thus extracting conflicting 305s destination words 305s --accelerator=ACCELERATORS 305s ignores the given accelerator characters when matching 305s ========= SMOKE TEST: /usr/bin/pocount =========== 305s usage: pocount [-h] [--incomplete] 305s [--full | --csv | --short | --short-strings | --short-words] 305s [--no-color] 305s files [files ...] 305s 305s positional arguments: 305s files 305s 305s options: 305s -h, --help show this help message and exit 305s --incomplete skip 100% translated files. 305s 305s Output format: 305s --full (default) statistics in full, verbose format 305s --csv statistics in CSV format 305s --short same as --short-strings 305s --short-strings statistics of strings in short format - one line per file 305s --short-words statistics of words in short format - one line per file 305s --no-color show output without color 306s ========= SMOKE TEST: /usr/bin/podebug =========== 306s Usage: podebug [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 306s 306s Insert debug messages into XLIFF and Gettext PO localization files. See: 306s http://docs.translatehouse.org/projects/translate- 306s toolkit/en/latest/commands/podebug.html for examples and usage instructions. 306s 306s Options: 306s --version show program's version number and exit 306s -h, --help show this help message and exit 306s --manpage output a manpage based on the help 306s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 306s --errorlevel=ERRORLEVEL 306s show errorlevel as: none, message, exception, 306s traceback 306s -i INPUT, --input=INPUT 306s read from INPUT in po, pot, pot, tmx, xlf, xliff 306s formats 306s -x EXCLUDE, --exclude=EXCLUDE 306s exclude names matching EXCLUDE from input paths 306s -o OUTPUT, --output=OUTPUT 306s write to OUTPUT in po, pot, tmx, xlf, xliff formats 306s -S, --timestamp skip conversion if the output file has newer timestamp 306s -f FORMAT, --format=FORMAT 306s specify format string 306s --rewrite=STYLE the translation rewrite style: blank, bracket, chef, 306s classified, en, flipped, unicode, xxx 306s --ignore=APPLICATION apply tagging ignore rules for the given application: 306s gtk, kde, libreoffice, mozilla, openoffice 306s --preserveplaceholders 306s attempt to exclude characters that are part of 306s placeholders when performing character-level rewrites 306s so that consuming applications can still use the 306s placeholders to generate final output 306s ========= SMOKE TEST: /usr/bin/pofilter =========== 306s Usage: pofilter [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT 306s 306s Perform quality checks on Gettext PO, XLIFF and TMX localization files. 306s Snippet files are created whenever a test fails. These can be examined, 306s corrected and merged back into the originals using pomerge. See: 306s http://docs.translatehouse.org/projects/translate- 306s toolkit/en/latest/commands/pofilter.html for examples and usage instructions 306s and http://docs.translatehouse.org/projects/translate- 306s toolkit/en/latest/commands/pofilter_tests.html for full descriptions of all 306s tests. 306s 306s Options: 306s --version show program's version number and exit 306s -h, --help show this help message and exit 306s --manpage output a manpage based on the help 306s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 306s --errorlevel=ERRORLEVEL 306s show errorlevel as: none, message, exception, 306s traceback 306s -i INPUT, --input=INPUT 306s read from INPUT in po, pot, tmx, xlf, xliff formats 306s -x EXCLUDE, --exclude=EXCLUDE 306s exclude names matching EXCLUDE from input paths 306s -o OUTPUT, --output=OUTPUT 306s write to OUTPUT in po, pot, tmx, xlf, xliff formats 306s -l, --listfilters list filters available 306s --review include units marked for review (default) 306s --noreview exclude units marked for review 306s --fuzzy include units marked fuzzy (default) 306s --nofuzzy exclude units marked fuzzy 306s --nonotes don't add notes about the errors 306s --autocorrect output automatic corrections where possible rather 306s than describing issues 306s --language=LANG set target language code (e.g. af-ZA) [required for 306s spell check and recommended in general] 306s --openoffice use the standard checks for OpenOffice translations 306s --libreoffice use the standard checks for LibreOffice translations 306s --mozilla use the standard checks for Mozilla translations 306s --drupal use the standard checks for Drupal translations 306s --gnome use the standard checks for Gnome translations 306s --kde use the standard checks for KDE translations 306s --wx use the standard checks for wxWidgets translations 306s --excludefilter=FILTER 306s don't use FILTER when filtering 306s -t FILTER, --test=FILTER 306s only use test FILTERs specified with this option when 306s filtering 306s --notranslatefile=FILE 306s read list of untranslatable words from FILE (must not 306s be translated) 306s --musttranslatefile=FILE 306s read list of translatable words from FILE (must be 306s translated) 306s --validcharsfile=FILE 306s read list of all valid characters from FILE (must be 306s in UTF-8) 306s ========= SMOKE TEST: /usr/bin/pogrep =========== 306s 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] 306s 306s Grep XLIFF, Gettext PO and TMX localization files. Matches are output to 306s snippet files of the same type which can then be reviewed and later merged 306s using :doc:`pomerge `. See: 306s http://docs.translatehouse.org/projects/translate- 306s toolkit/en/latest/commands/pogrep.html for examples and usage instructions. 306s 306s Options: 306s --version show program's version number and exit 306s -h, --help show this help message and exit 306s --manpage output a manpage based on the help 306s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 306s --errorlevel=ERRORLEVEL 306s show errorlevel as: none, message, exception, 306s traceback 306s -i INPUT, --input=INPUT 306s read from INPUT in gmo, mo, po, pot, tmx, xlf, xlff, 306s xliff formats 306s -x EXCLUDE, --exclude=EXCLUDE 306s exclude names matching EXCLUDE from input paths 306s -o OUTPUT, --output=OUTPUT 306s write to OUTPUT in gmo, mo, po, pot, tmx, xlf, xlff, 306s xliff formats 306s --search=SEARCHPARTS searches the given parts (source, target, notes and 306s locations) 306s -I, --ignore-case ignore case distinctions 306s -e, --regexp use regular expression matching 306s -v, --invert-match select non-matching lines 306s --accelerator=ACCELERATOR 306s ignores the given accelerator when matching 306s -k, --keep-translations 306s always extract units with translations 306s ========= SMOKE TEST: /usr/bin/pomerge =========== 306s Usage: pomerge [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 306s 306s Merges XLIFF and Gettext PO localization files. Snippet file produced by 306s e.g. :doc:`pogrep ` and updated by a translator can be 306s merged back into the original files. See: 306s http://docs.translatehouse.org/projects/translate- 306s toolkit/en/latest/commands/pomerge.html for examples and usage instructions. 306s 306s Options: 306s --version show program's version number and exit 306s -h, --help show this help message and exit 306s --manpage output a manpage based on the help 306s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 306s --errorlevel=ERRORLEVEL 306s show errorlevel as: none, message, exception, 306s traceback 306s -i INPUT, --input=INPUT 306s read from INPUT in po, pot, pot, xlf, xliff formats 306s -x EXCLUDE, --exclude=EXCLUDE 306s exclude names matching EXCLUDE from input paths 306s -o OUTPUT, --output=OUTPUT 306s write to OUTPUT in po, pot, pot, xlf, xliff formats 306s -t TEMPLATE, --template=TEMPLATE 306s read from TEMPLATE in po, pot, pot, xlf, xliff formats 306s -S, --timestamp skip conversion if the output file has newer timestamp 306s --mergeblanks=MERGEBLANKS 306s whether to overwrite existing translations with blank 306s translations (yes/no). Default is yes. 306s --mergefuzzy=MERGEFUZZY 306s whether to consider fuzzy translations from input 306s (yes/no). Default is yes. 306s --mergecomments=MERGECOMMENTS 306s whether to merge comments as well as translations 306s (yes/no). Default is yes. 306s ========= SMOKE TEST: /usr/bin/pomigrate2 =========== 306s Usage pomigrate2 [options] 306s 306s Options: 306s -F|--use-fuzzy-matching - use fuzzy algorithms when merging to attempt to match strings 306s -C|--use-compendium - create and use a compendium built from the migrating files 306s -C|--use-compendium=some-compendium.po 306s - use an external compendium during the migration 306s --no-wrap - do not wrap long lines 306s --locale=lang - set locale for newly born files 306s -q|--quiet - suppress most output 306s -p|--pot2po - use pot2po instead of msgmerge to migrate 306s ========= SMOKE TEST: /usr/bin/popuretext =========== 306s Usage: popuretext ( -P pot-dir | po-dir ) file.txt [accelerator] 306s ========= SMOKE TEST: /usr/bin/poreencode =========== 306s Usage: poreencode 306s eg: poreencode UTF-8 af/ 306s ========= SMOKE TEST: /usr/bin/porestructure =========== 306s Usage: porestructure [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT 306s input directory is searched for PO files with (poconflicts) comments, all entries are written to files in a directory structure for pomerge 306s 306s Restructure Gettxt PO files produced by :doc:`poconflicts 306s ` into the original directory tree for merging using 306s :doc:`pomerge `. See: 306s http://docs.translatehouse.org/projects/translate- 306s toolkit/en/latest/commands/pomerge.html for examples and usage instructions. 306s 306s Options: 306s --version show program's version number and exit 306s -h, --help show this help message and exit 306s --manpage output a manpage based on the help 306s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 306s --errorlevel=ERRORLEVEL 306s show errorlevel as: none, message, exception, 306s traceback 306s -i INPUT, --input=INPUT 306s read from INPUT in po format 306s -x EXCLUDE, --exclude=EXCLUDE 306s exclude names matching EXCLUDE from input paths 306s -o OUTPUT, --output=OUTPUT 306s write to OUTPUT in po format 306s ========= SMOKE TEST: /usr/bin/posegment =========== 306s Usage: posegment [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 306s 306s Segment Gettext PO, XLIFF and TMX localization files at the sentence level. 306s See: http://docs.translatehouse.org/projects/translate- 306s toolkit/en/latest/commands/posegment.html for examples and usage instructions. 306s 306s Options: 306s --version show program's version number and exit 306s -h, --help show this help message and exit 306s --manpage output a manpage based on the help 306s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 306s --errorlevel=ERRORLEVEL 306s show errorlevel as: none, message, exception, 306s traceback 306s -i INPUT, --input=INPUT 306s read from INPUT in po, pot, tmx, xlf, xliff formats 306s -x EXCLUDE, --exclude=EXCLUDE 306s exclude names matching EXCLUDE from input paths 306s -o OUTPUT, --output=OUTPUT 306s write to OUTPUT in po, pot, tmx, xlf, xliff formats 306s -S, --timestamp skip conversion if the output file has newer timestamp 306s -P, --pot output PO Templates (.pot) rather than PO files (.po) 306s -l LANG, --language=LANG 306s the target language code 306s --source-language=LANG 306s the source language code (default 'en') 306s --keepspaces Disable automatic stripping of whitespace 306s --only-aligned Removes units where sentence number does not 306s correspond 307s ========= SMOKE TEST: /usr/bin/poswap =========== 307s Usage: poswap [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 307s 307s Builds a new translation file with the target of the input language as source 307s language. .. note:: Ensure that the two po files correspond 100% to the same 307s pot file before using this. To translate Kurdish (ku) through French:: 307s poswap -i fr/ -t ku -o fr-ku To convert the fr-ku files back to en-ku:: 307s poswap --reverse -i fr/ -t fr-ku -o en-ku See: 307s http://docs.translatehouse.org/projects/translate- 307s toolkit/en/latest/commands/poswap.html for examples and usage instructions. 307s 307s Options: 307s --version show program's version number and exit 307s -h, --help show this help message and exit 307s --manpage output a manpage based on the help 307s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 307s --errorlevel=ERRORLEVEL 307s show errorlevel as: none, message, exception, 307s traceback 307s -i INPUT, --input=INPUT 307s read from INPUT in po, pot formats 307s -x EXCLUDE, --exclude=EXCLUDE 307s exclude names matching EXCLUDE from input paths 307s -o OUTPUT, --output=OUTPUT 307s write to OUTPUT in po, pot formats 307s -t TEMPLATE, --template=TEMPLATE 307s read from TEMPLATE in po, pot, pot formats 307s -S, --timestamp skip conversion if the output file has newer timestamp 307s --reverse reverse the process of intermediate language 307s conversion 307s ========= SMOKE TEST: /usr/bin/pot2po =========== 307s 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] 307s 307s Convert template files (like .pot or template .xlf files) to translation 307s files, preserving existing translations. See: 307s http://docs.translatehouse.org/projects/translate- 307s toolkit/en/latest/commands/pot2po.html for examples and usage instructions. 307s 307s Options: 307s --version show program's version number and exit 307s -h, --help show this help message and exit 307s --manpage output a manpage based on the help 307s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 307s --errorlevel=ERRORLEVEL 307s show errorlevel as: none, message, exception, 307s traceback 307s -i INPUT, --input=INPUT 307s read from INPUT in catkeys, lang, pot, ts, xlf, xliff 307s formats 307s -x EXCLUDE, --exclude=EXCLUDE 307s exclude names matching EXCLUDE from input paths 307s -o OUTPUT, --output=OUTPUT 307s write to OUTPUT in catkeys, lang, po, pot, ts, xlf, 307s xliff formats 307s -t TEMPLATE, --template=TEMPLATE 307s read from TEMPLATE in catkeys, lang, po, pot, ts, xlf, 307s xliff formats 307s -S, --timestamp skip conversion if the output file has newer timestamp 307s -P, --pot output PO Templates (.pot) rather than PO files (.po) 307s --tm=TM The file to use as translation memory when fuzzy 307s matching 307s -s MIN_SIMILARITY, --similarity=MIN_SIMILARITY 307s The minimum similarity for inclusion (default: 75%) 307s --nofuzzymatching Disable fuzzy matching 307s ========= SMOKE TEST: /usr/bin/poterminology =========== 307s 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] 307s input directory is searched for PO files, terminology PO file is output file 307s 307s Create a terminology file by reading a set of .po or .pot files to produce a 307s pootle-terminology.pot. See: 307s http://docs.translatehouse.org/projects/translate- 307s toolkit/en/latest/commands/poterminology.html for examples and usage 307s instructions. 307s 307s Options: 307s --version show program's version number and exit 307s -h, --help show this help message and exit 307s --manpage output a manpage based on the help 307s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 307s --errorlevel=ERRORLEVEL 307s show errorlevel as: none, message, exception, 307s traceback 307s -i INPUT, --input=INPUT 307s read from INPUT in po, pot formats 307s -x EXCLUDE, --exclude=EXCLUDE 307s exclude names matching EXCLUDE from input paths 307s -o OUTPUT, --output=OUTPUT 307s write to OUTPUT in po, pot formats 307s -u UPDATEFILE, --update=UPDATEFILE 307s update terminology in UPDATEFILE 307s -S STOPFILE, --stopword-list=STOPFILE 307s read stopword (term exclusion) list from STOPFILE 307s (default /usr/share/pyshared/translate/share/stoplist- 307s en) 307s -F, --fold-titlecase fold "Title Case" to lowercase (default) 307s -C, --preserve-case preserve all uppercase/lowercase 307s -I, --ignore-case make all terms lowercase 307s --accelerator=ACCELERATORS 307s ignore the given accelerator characters when matching 307s -t LENGTH, --term-words=LENGTH 307s generate terms of up to LENGTH words (default 3) 307s --nonstop-needed=MIN omit terms with less than MIN nonstop words (default 307s 1) 307s --inputs-needed=MIN omit terms appearing in less than MIN input files 307s (default 2, or 1 if only one input file) 307s --fullmsg-needed=MIN omit full message terms appearing in less than MIN 307s different messages (default 1) 307s --substr-needed=MIN omit substring-only terms appearing in less than MIN 307s different messages (default 2) 307s --locs-needed=MIN omit terms appearing in less than MIN different 307s original source files (default 2) 307s --sort=ORDER output sort order(s): frequency, dictionary, length 307s (may repeat option, default is all in above order) 307s --source-language=LANG 307s the source language code (default 'en') 307s -v, --invert invert the source and target languages for terminology 307s ========= SMOKE TEST: /usr/bin/pretranslate =========== 307s Usage: pretranslate [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 307s 307s Fill localization files with suggested translations based on translation 307s memory and existing translations. See: 307s http://docs.translatehouse.org/projects/translate- 307s toolkit/en/latest/commands/pretranslate.html for examples and usage 307s instructions. 307s 307s Options: 307s --version show program's version number and exit 307s -h, --help show this help message and exit 307s --manpage output a manpage based on the help 307s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 307s --errorlevel=ERRORLEVEL 307s show errorlevel as: none, message, exception, 307s traceback 307s -i INPUT, --input=INPUT 307s read from INPUT in po, pot, pot, xlf, xliff formats 307s -x EXCLUDE, --exclude=EXCLUDE 307s exclude names matching EXCLUDE from input paths 307s -o OUTPUT, --output=OUTPUT 307s write to OUTPUT in po, pot, xlf, xliff formats 307s -t TEMPLATE, --template=TEMPLATE 307s read from TEMPLATE in po, pot, xlf, xliff formats 307s -S, --timestamp skip conversion if the output file has newer timestamp 307s --tm=TM The file to use as translation memory when fuzzy 307s matching 307s -s MIN_SIMILARITY, --similarity=MIN_SIMILARITY 307s The minimum similarity for inclusion (default: 75%) 307s --nofuzzymatching Disable fuzzy matching 307s ========= SMOKE TEST: /usr/bin/prop2po =========== 307s 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] 307s 307s Convert Java/Mozilla .properties files to Gettext PO localization files. 307s See: http://docs.translatehouse.org/projects/translate- 307s toolkit/en/latest/commands/prop2po.html for examples and usage instructions. 307s 307s Options: 307s --version show program's version number and exit 307s -h, --help show this help message and exit 307s --manpage output a manpage based on the help 307s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 307s --errorlevel=ERRORLEVEL 307s show errorlevel as: none, message, exception, 307s traceback 307s -i INPUT, --input=INPUT 307s read from INPUT in lang, properties, strings formats 307s -x EXCLUDE, --exclude=EXCLUDE 307s exclude names matching EXCLUDE from input paths 307s -o OUTPUT, --output=OUTPUT 307s write to OUTPUT in po, pot formats 307s -t TEMPLATE, --template=TEMPLATE 307s read from TEMPLATE in lang, properties, strings 307s formats 307s -S, --timestamp skip conversion if the output file has newer timestamp 307s -P, --pot output PO Templates (.pot) rather than PO files (.po) 307s --personality=TYPE override the input file format: java, java-utf8, java- 307s utf16, xwiki, flex, mozilla, gaia, gwt, skype, 307s strings, strings-utf8, joomla (for .properties files, 307s default: java) 307s --encoding=ENCODING override the encoding set by the personality 307s --duplicates=DUPLICATESTYLE 307s what to do with duplicate strings (identical source 307s text): merge, msgctxt (default: 'msgctxt') 307s ========= SMOKE TEST: /usr/bin/pydiff =========== 307s usage: pydiff [-h] [-i] [-U NUM] [-r] [-N] [--unidirectional-new-file] [-s] 307s [-x PAT] [--fromcontains TEXT] [--tocontains TEXT] 307s [--contains TEXT] [-I] [--accelerator ACCELERATORS] 307s fromfile tofile 307s 307s positional arguments: 307s fromfile 307s tofile 307s 307s options: 307s -h, --help show this help message and exit 307s -i, --ignore-case Ignore case differences in file contents. 307s -U NUM, --unified NUM 307s Output NUM (default 3) lines of unified context 307s -r, --recursive Recursively compare any subdirectories found. 307s -N, --new-file Treat absent files as empty. 307s --unidirectional-new-file 307s Treat absent first files as empty. 307s -s, --report-identical-files 307s Report when two files are the same. 307s -x PAT, --exclude PAT 307s Exclude files that match PAT. 307s --fromcontains TEXT Only show changes where fromfile contains TEXT 307s --tocontains TEXT Only show changes where tofile contains TEXT 307s --contains TEXT Only show changes where fromfile or tofile contains 307s TEXT 307s -I, --ignore-case-contains 307s Ignore case differences when matching any of the 307s changes 307s --accelerator ACCELERATORS 307s ignores the given accelerator characters when matching 307s ========= SMOKE TEST: /usr/bin/pypo2phppo =========== 308s Usage: pypo2phppo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 308s 308s Convert Python format .po files to PHP format .po files. 308s 308s Options: 308s --version show program's version number and exit 308s -h, --help show this help message and exit 308s --manpage output a manpage based on the help 308s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 308s --errorlevel=ERRORLEVEL 308s show errorlevel as: none, message, exception, 308s traceback 308s -i INPUT, --input=INPUT 308s read from INPUT in po, pot formats 308s -x EXCLUDE, --exclude=EXCLUDE 308s exclude names matching EXCLUDE from input paths 308s -o OUTPUT, --output=OUTPUT 308s write to OUTPUT in po, pot formats 308s -S, --timestamp skip conversion if the output file has newer timestamp 308s ========= SMOKE TEST: /usr/bin/rc2po =========== 308s 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] 308s 308s Convert Windows RC files to Gettext PO localization files. See: 308s http://docs.translatehouse.org/projects/translate- 308s toolkit/en/latest/commands/rc2po.html for examples and usage instructions. 308s 308s Options: 308s --version show program's version number and exit 308s -h, --help show this help message and exit 308s --manpage output a manpage based on the help 308s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 308s --errorlevel=ERRORLEVEL 308s show errorlevel as: none, message, exception, 308s traceback 308s -i INPUT, --input=INPUT 308s read from INPUT in nls, rc formats 308s -x EXCLUDE, --exclude=EXCLUDE 308s exclude names matching EXCLUDE from input paths 308s -o OUTPUT, --output=OUTPUT 308s write to OUTPUT in po, pot formats 308s -t TEMPLATE, --template=TEMPLATE 308s read from TEMPLATE in nls, rc formats 308s -S, --timestamp skip conversion if the output file has newer timestamp 308s -P, --pot output PO Templates (.pot) rather than PO files (.po) 308s --charset=CHARSET charset to use to decode the RC files (autodetection 308s is used by default) 308s -l LANG, --lang=LANG LANG entry (default: None) 308s --sublang=SUBLANG SUBLANG entry (default: None) 308s --duplicates=DUPLICATESTYLE 308s what to do with duplicate strings (identical source 308s text): merge, msgctxt (default: 'msgctxt') 308s ========= SMOKE TEST: /usr/bin/resx2po =========== 308s 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] 308s 308s Convert .Net Resource (.resx) to Gettext PO localisation files. See: 308s http://docs.translatehouse.org/projects/translate- 308s toolkit/en/latest/commands/resx2po.html for examples and usage instructions. 308s 308s Options: 308s --version show program's version number and exit 308s -h, --help show this help message and exit 308s --manpage output a manpage based on the help 308s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 308s --errorlevel=ERRORLEVEL 308s show errorlevel as: none, message, exception, 308s traceback 308s -i INPUT, --input=INPUT 308s read from INPUT in resx format 308s -x EXCLUDE, --exclude=EXCLUDE 308s exclude names matching EXCLUDE from input paths 308s -o OUTPUT, --output=OUTPUT 308s write to OUTPUT in po, pot formats 308s -t TEMPLATE, --template=TEMPLATE 308s read from TEMPLATE in resx format 308s -S, --timestamp skip conversion if the output file has newer timestamp 308s -P, --pot output PO Templates (.pot) rather than PO files (.po) 308s --filter=FILTER leaves to extract e.g. 'name,desc': (default: extract 308s everything) 308s --duplicates=DUPLICATESTYLE 308s what to do with duplicate strings (identical source 308s text): merge, msgctxt (default: 'msgctxt') 308s ========= SMOKE TEST: /usr/bin/sub2po =========== 308s 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] 308s 308s Convert subtitle files to Gettext PO localization files. See: 308s http://docs.translatehouse.org/projects/translate- 308s toolkit/en/latest/commands/sub2po.html for examples and usage instructions. 308s 308s Options: 308s --version show program's version number and exit 308s -h, --help show this help message and exit 308s --manpage output a manpage based on the help 308s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 308s --errorlevel=ERRORLEVEL 308s show errorlevel as: none, message, exception, 308s traceback 308s -i INPUT, --input=INPUT 308s read from INPUT in ass, srt, ssa, sub formats 308s -x EXCLUDE, --exclude=EXCLUDE 308s exclude names matching EXCLUDE from input paths 308s -o OUTPUT, --output=OUTPUT 308s write to OUTPUT in po, pot formats 308s -t TEMPLATE, --template=TEMPLATE 308s read from TEMPLATE in ass, srt, ssa, sub formats 308s -S, --timestamp skip conversion if the output file has newer timestamp 308s -P, --pot output PO Templates (.pot) rather than PO files (.po) 308s --duplicates=DUPLICATESTYLE 308s what to do with duplicate strings (identical source 308s text): merge, msgctxt (default: 'msgctxt') 308s ========= SMOKE TEST: /usr/bin/symb2po =========== 308s 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] 308s 308s Convert Symbian localisation files to Gettext PO localization files. See: 308s http://docs.translatehouse.org/projects/translate- 308s toolkit/en/latest/commands/symb2po.html for examples and usage instructions. 308s 308s Options: 308s --version show program's version number and exit 308s -h, --help show this help message and exit 308s --manpage output a manpage based on the help 308s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 308s --errorlevel=ERRORLEVEL 308s show errorlevel as: none, message, exception, 308s traceback 308s -i INPUT, --input=INPUT 308s read from INPUT in r01 format 308s -x EXCLUDE, --exclude=EXCLUDE 308s exclude names matching EXCLUDE from input paths 308s -o OUTPUT, --output=OUTPUT 308s write to OUTPUT in po, pot formats 308s -t TEMPLATE, --template=TEMPLATE 308s read from TEMPLATE in 308s -S, --timestamp skip conversion if the output file has newer timestamp 308s -P, --pot output PO Templates (.pot) rather than PO files (.po) 308s --duplicates=DUPLICATESTYLE 308s what to do with duplicate strings (identical source 308s text): merge, msgctxt (default: 'msgctxt') 308s ========= SMOKE TEST: /usr/bin/tbx2po =========== 308s Usage: tbx2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 308s 308s Convert TermBase eXchange (.tbx) glossary file into a Gettext PO file. See: 308s http://docs.translatehouse.org/projects/translate- 308s toolkit/en/latest/commands/tbx2po.html for examples and usage instructions 308s 308s Options: 308s --version show program's version number and exit 308s -h, --help show this help message and exit 308s --manpage output a manpage based on the help 308s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 308s --errorlevel=ERRORLEVEL 308s show errorlevel as: none, message, exception, 308s traceback 308s -i INPUT, --input=INPUT 308s read from INPUT in tbx format 308s -x EXCLUDE, --exclude=EXCLUDE 308s exclude names matching EXCLUDE from input paths 308s -o OUTPUT, --output=OUTPUT 308s write to OUTPUT in po, pot formats 308s -S, --timestamp skip conversion if the output file has newer timestamp 309s ========= SMOKE TEST: /usr/bin/tiki2po =========== 309s Usage: tiki2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 309s 309s Convert TikiWiki's language.php files to Gettext PO localization files. See: 309s http://docs.translatehouse.org/projects/translate- 309s toolkit/en/latest/commands/tiki2po.html for examples and usage instructions. 309s 309s Options: 309s --version show program's version number and exit 309s -h, --help show this help message and exit 309s --manpage output a manpage based on the help 309s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 309s --errorlevel=ERRORLEVEL 309s show errorlevel as: none, message, exception, 309s traceback 309s -i INPUT, --input=INPUT 309s read from INPUT in php format 309s -x EXCLUDE, --exclude=EXCLUDE 309s exclude names matching EXCLUDE from input paths 309s -o OUTPUT, --output=OUTPUT 309s write to OUTPUT in po, pot formats 309s -S, --timestamp skip conversion if the output file has newer timestamp 309s --include-unused Include strings in the unused section 309s ========= SMOKE TEST: /usr/bin/tmserver =========== 309s usage: tmserver [-h] [-d TMDBFILE] [-f TMFILES] [-t TARGET_LANG] 309s [-s SOURCE_LANG] [-b BIND] [-p PORT] 309s [--max-candidates MAX_CANDIDATES] 309s [--min-similarity MIN_SIMILARITY] [--max-length MAX_LENGTH] 309s [--debug] 309s 309s options: 309s -h, --help show this help message and exit 309s -d TMDBFILE, --tmdb TMDBFILE 309s translation memory database file 309s -f TMFILES, --import-translation-file TMFILES 309s translation file to import into the database 309s -t TARGET_LANG, --import-target-lang TARGET_LANG 309s target language of translation files 309s -s SOURCE_LANG, --import-source-lang SOURCE_LANG 309s source language of translation files 309s -b BIND, --bind BIND address to bind server to (default: localhost) 309s -p PORT, --port PORT port to listen on (default: 8888) 309s --max-candidates MAX_CANDIDATES 309s Maximum number of candidates 309s --min-similarity MIN_SIMILARITY 309s minimum similarity 309s --max-length MAX_LENGTH 309s Maxmimum string length 309s --debug enable debugging features 309s ========= SMOKE TEST: /usr/bin/ts2po =========== 309s Usage: ts2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 309s 309s Convert Qt Linguist (.ts) files to Gettext PO localization files. See: 309s http://docs.translatehouse.org/projects/translate- 309s toolkit/en/latest/commands/ts2po.html for examples and usage instructions. 309s 309s Options: 309s --version show program's version number and exit 309s -h, --help show this help message and exit 309s --manpage output a manpage based on the help 309s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 309s --errorlevel=ERRORLEVEL 309s show errorlevel as: none, message, exception, 309s traceback 309s -i INPUT, --input=INPUT 309s read from INPUT in ts format 309s -x EXCLUDE, --exclude=EXCLUDE 309s exclude names matching EXCLUDE from input paths 309s -o OUTPUT, --output=OUTPUT 309s write to OUTPUT in po, pot formats 309s -S, --timestamp skip conversion if the output file has newer timestamp 309s -P, --pot output PO Templates (.pot) rather than PO files (.po) 309s --duplicates=DUPLICATESTYLE 309s what to do with duplicate strings (identical source 309s text): merge, msgctxt (default: 'msgctxt') 309s ========= SMOKE TEST: /usr/bin/txt2po =========== 309s Usage: txt2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 309s 309s Convert plain text (.txt) files to Gettext PO localization files. See: 309s http://docs.translatehouse.org/projects/translate- 309s toolkit/en/latest/commands/txt2po.html for examples and usage instructions. 309s 309s Options: 309s --version show program's version number and exit 309s -h, --help show this help message and exit 309s --manpage output a manpage based on the help 309s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 309s --errorlevel=ERRORLEVEL 309s show errorlevel as: none, message, exception, 309s traceback 309s -i INPUT, --input=INPUT 309s read from INPUT in *, txt formats 309s -x EXCLUDE, --exclude=EXCLUDE 309s exclude names matching EXCLUDE from input paths 309s -o OUTPUT, --output=OUTPUT 309s write to OUTPUT in po, pot formats 309s -S, --timestamp skip conversion if the output file has newer timestamp 309s -P, --pot output PO Templates (.pot) rather than PO files (.po) 309s --encoding=ENCODING The encoding of the input file (default: UTF-8) 309s --flavour=FLAVOUR The flavour of text file: plain (default), dokuwiki, 309s mediawiki 309s --no-segmentation Don't segment the file, treat it like a single message 309s --duplicates=DUPLICATESTYLE 309s what to do with duplicate strings (identical source 309s text): merge, msgctxt (default: 'msgctxt') 309s ========= SMOKE TEST: /usr/bin/web2py2po =========== 309s Usage: web2py2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 309s 309s Convert web2py translation dictionaries (.py) to GNU/gettext PO files. See: 309s http://docs.translatehouse.org/projects/translate- 309s toolkit/en/latest/commands/web2py2po.html for examples and usage instructions. 309s 309s Options: 309s --version show program's version number and exit 309s -h, --help show this help message and exit 309s --manpage output a manpage based on the help 309s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 309s --errorlevel=ERRORLEVEL 309s show errorlevel as: none, message, exception, 309s traceback 309s -i INPUT, --input=INPUT 309s read from INPUT in py format 309s -x EXCLUDE, --exclude=EXCLUDE 309s exclude names matching EXCLUDE from input paths 309s -o OUTPUT, --output=OUTPUT 309s write to OUTPUT in po, pot formats 309s -S, --timestamp skip conversion if the output file has newer timestamp 309s -P, --pot output PO Templates (.pot) rather than PO files (.po) 309s --duplicates=DUPLICATESTYLE 309s what to do with duplicate strings (identical source 309s text): merge, msgctxt (default: 'msgctxt') 309s ========= SMOKE TEST: /usr/bin/xliff2odf =========== 309s Usage: xliff2odf [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 309s 309s Convert XLIFF translation files to OpenDocument (ODF) files. See: 309s http://docs.translatehouse.org/projects/translate- 309s toolkit/en/latest/commands/odf2xliff.html for examples and usage instructions. 309s 309s Options: 309s --version show program's version number and exit 309s -h, --help show this help message and exit 309s --manpage output a manpage based on the help 309s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 309s --errorlevel=ERRORLEVEL 309s show errorlevel as: none, message, exception, 309s traceback 309s -i INPUT, --input=INPUT 309s read from INPUT in xlf format 309s -x EXCLUDE, --exclude=EXCLUDE 309s exclude names matching EXCLUDE from input paths 309s -o OUTPUT, --output=OUTPUT 309s write to OUTPUT in odc, odf, odg, odi, odm, odp, ods, 309s odt, otc, otf, otg, oth, oti, otp, ots, ott formats 309s -t TEMPLATE, --template=TEMPLATE 309s read from TEMPLATE in odc, odf, odg, odi, odm, odp, 309s ods, odt, otc, otf, otg, oth, oti, otp, ots, ott 309s formats 309s -S, --timestamp skip conversion if the output file has newer timestamp 310s ========= SMOKE TEST: /usr/bin/xliff2oo =========== 310s Usage: xliff2oo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 310s 310s Convert XLIFF localization files to an OpenOffice.org (SDF) localization 310s file. See: http://docs.translatehouse.org/projects/translate- 310s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 310s 310s Options: 310s --version show program's version number and exit 310s -h, --help show this help message and exit 310s --manpage output a manpage based on the help 310s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 310s --errorlevel=ERRORLEVEL 310s show errorlevel as: none, message, exception, 310s traceback 310s -i INPUT, --input=INPUT 310s read from INPUT in po, pot, xlf, xliff formats 310s -x EXCLUDE, --exclude=EXCLUDE 310s exclude names matching EXCLUDE from input paths 310s -o OUTPUT, --output=OUTPUT 310s write to OUTPUT in oo, sdf formats 310s -t TEMPLATE, --template=TEMPLATE 310s read from TEMPLATE in oo, sdf formats 310s -S, --timestamp skip conversion if the output file has newer timestamp 310s -l LANG, --language=LANG 310s set target language code (e.g. af-ZA) [required] 310s --source-language=LANG 310s set source language code (default en-US) 310s -T, --keeptimestamp don't change the timestamps of the strings 310s --nonrecursiveoutput don't treat the output oo as a recursive store 310s --nonrecursivetemplate 310s don't treat the template oo as a recursive store 310s --skipsource don't output the source language, but fallback to it 310s where needed 310s --filteraction=ACTION 310s action on pofilter failure: none (default), warn, 310s exclude-serious, exclude-all 310s --fuzzy use translations marked fuzzy 310s --nofuzzy don't use translations marked fuzzy (default) 310s --multifile=MULTIFILESTYLE 310s how to split po/pot files (single, toplevel or 310s onefile) 310s ========= SMOKE TEST: /usr/bin/xliff2po =========== 310s Usage: xliff2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 310s 310s Convert XLIFF localization files to Gettext PO localization files. See: 310s http://docs.translatehouse.org/projects/translate- 310s toolkit/en/latest/commands/xliff2po.html for examples and usage instructions. 310s 310s Options: 310s --version show program's version number and exit 310s -h, --help show this help message and exit 310s --manpage output a manpage based on the help 310s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 310s --errorlevel=ERRORLEVEL 310s show errorlevel as: none, message, exception, 310s traceback 310s -i INPUT, --input=INPUT 310s read from INPUT in xlf, xliff formats 310s -x EXCLUDE, --exclude=EXCLUDE 310s exclude names matching EXCLUDE from input paths 310s -o OUTPUT, --output=OUTPUT 310s write to OUTPUT in po, pot formats 310s -S, --timestamp skip conversion if the output file has newer timestamp 310s -P, --pot output PO Templates (.pot) rather than PO files (.po) 310s --duplicates=DUPLICATESTYLE 310s what to do with duplicate strings (identical source 310s text): merge, msgctxt (default: 'msgctxt') 310s ========= SMOKE TEST: /usr/bin/yaml2po =========== 310s 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] 310s 310s Convert YAML files to Gettext PO localization files. See: 310s http://docs.translatehouse.org/projects/translate- 310s toolkit/en/latest/commands/yaml2po.html for examples and usage instructions. 310s 310s Options: 310s --version show program's version number and exit 310s -h, --help show this help message and exit 310s --manpage output a manpage based on the help 310s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 310s --errorlevel=ERRORLEVEL 310s show errorlevel as: none, message, exception, 310s traceback 310s -i INPUT, --input=INPUT 310s read from INPUT in yaml, yml formats 310s -x EXCLUDE, --exclude=EXCLUDE 310s exclude names matching EXCLUDE from input paths 310s -o OUTPUT, --output=OUTPUT 310s write to OUTPUT in po, pot formats 310s -t TEMPLATE, --template=TEMPLATE 310s read from TEMPLATE in yaml, yml formats 310s -S, --timestamp skip conversion if the output file has newer timestamp 310s -P, --pot output PO Templates (.pot) rather than PO files (.po) 310s --duplicates=DUPLICATESTYLE 310s what to do with duplicate strings (identical source 310s text): merge, msgctxt (default: 'msgctxt') 311s autopkgtest [10:57:09]: test translate-toolkit: -----------------------] 315s autopkgtest [10:57:13]: test translate-toolkit: - - - - - - - - - - results - - - - - - - - - - 315s translate-toolkit PASS 318s autopkgtest [10:57:16]: test python3-translate: preparing testbed 373s autopkgtest [10:58:11]: testbed dpkg architecture: armhf 375s autopkgtest [10:58:13]: testbed apt version: 2.9.8 375s autopkgtest [10:58:13]: @@@@@@@@@@@@@@@@@@@@ test bed setup 382s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 383s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [213 kB] 383s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [7016 B] 383s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [30.5 kB] 383s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [2840 B] 383s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main armhf Packages [38.0 kB] 383s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/universe armhf Packages [236 kB] 383s Fetched 601 kB in 1s (808 kB/s) 383s Reading package lists... 398s tee: /proc/self/fd/2: Permission denied 420s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease 420s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 420s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 420s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 421s Reading package lists... 421s Reading package lists... 421s Building dependency tree... 421s Reading state information... 422s Calculating upgrade... 422s The following packages were automatically installed and are no longer required: 422s libperl5.38t64 perl-modules-5.38 422s Use 'apt autoremove' to remove them. 422s The following NEW packages will be installed: 422s libperl5.40 perl-modules-5.40 python3-jaraco.text 422s The following packages will be upgraded: 422s base-files distro-info-data fwupd gcc-14-base info install-info iproute2 422s libatomic1 libdw1t64 libelf1t64 libfwupd2 libgcc-s1 libkeyutils1 422s liblocale-gettext-perl libsgutils2-1.46-2 libstdc++6 libtext-charwidth-perl 422s libtext-iconv-perl motd-news-config perl perl-base python3-pkg-resources 422s python3-setuptools sg3-utils sg3-utils-udev vim-common vim-tiny xxd 423s 28 upgraded, 3 newly installed, 0 to remove and 0 not upgraded. 423s Need to get 19.2 MB of archives. 423s After this operation, 42.7 MB of additional disk space will be used. 423s Get:1 http://ftpmaster.internal/ubuntu plucky/main armhf motd-news-config all 13.5ubuntu2 [5274 B] 423s Get:2 http://ftpmaster.internal/ubuntu plucky/main armhf base-files armhf 13.5ubuntu2 [68.6 kB] 423s Get:3 http://ftpmaster.internal/ubuntu plucky/main armhf perl-modules-5.40 all 5.40.0-6 [3214 kB] 423s Get:4 http://ftpmaster.internal/ubuntu plucky/main armhf libperl5.40 armhf 5.40.0-6 [4140 kB] 423s Get:5 http://ftpmaster.internal/ubuntu plucky/main armhf perl armhf 5.40.0-6 [262 kB] 423s Get:6 http://ftpmaster.internal/ubuntu plucky/main armhf perl-base armhf 5.40.0-6 [1674 kB] 423s Get:7 http://ftpmaster.internal/ubuntu plucky/main armhf liblocale-gettext-perl armhf 1.07-7build1 [15.0 kB] 423s Get:8 http://ftpmaster.internal/ubuntu plucky/main armhf libtext-iconv-perl armhf 1.7-8build4 [12.8 kB] 423s Get:9 http://ftpmaster.internal/ubuntu plucky/main armhf libtext-charwidth-perl armhf 0.04-11build4 [9128 B] 423s Get:10 http://ftpmaster.internal/ubuntu plucky/main armhf libatomic1 armhf 14.2.0-7ubuntu1 [7842 B] 423s Get:11 http://ftpmaster.internal/ubuntu plucky/main armhf gcc-14-base armhf 14.2.0-7ubuntu1 [51.2 kB] 423s Get:12 http://ftpmaster.internal/ubuntu plucky/main armhf libstdc++6 armhf 14.2.0-7ubuntu1 [711 kB] 423s Get:13 http://ftpmaster.internal/ubuntu plucky/main armhf libgcc-s1 armhf 14.2.0-7ubuntu1 [40.8 kB] 423s Get:14 http://ftpmaster.internal/ubuntu plucky/main armhf install-info armhf 7.1.1-1 [61.4 kB] 424s Get:15 http://ftpmaster.internal/ubuntu plucky/main armhf distro-info-data all 0.63 [6588 B] 424s Get:16 http://ftpmaster.internal/ubuntu plucky/main armhf libdw1t64 armhf 0.192-4 [243 kB] 424s Get:17 http://ftpmaster.internal/ubuntu plucky/main armhf libelf1t64 armhf 0.192-4 [50.2 kB] 424s Get:18 http://ftpmaster.internal/ubuntu plucky/main armhf iproute2 armhf 6.10.0-2ubuntu1 [1082 kB] 424s Get:19 http://ftpmaster.internal/ubuntu plucky/main armhf libkeyutils1 armhf 1.6.3-4ubuntu2 [8712 B] 424s Get:20 http://ftpmaster.internal/ubuntu plucky/main armhf vim-tiny armhf 2:9.1.0777-1ubuntu1 [693 kB] 424s Get:21 http://ftpmaster.internal/ubuntu plucky/main armhf vim-common all 2:9.1.0777-1ubuntu1 [394 kB] 424s Get:22 http://ftpmaster.internal/ubuntu plucky/main armhf xxd armhf 2:9.1.0777-1ubuntu1 [66.8 kB] 424s Get:23 http://ftpmaster.internal/ubuntu plucky/main armhf info armhf 7.1.1-1 [126 kB] 424s Get:24 http://ftpmaster.internal/ubuntu plucky/main armhf libfwupd2 armhf 1.9.26-2 [125 kB] 424s Get:25 http://ftpmaster.internal/ubuntu plucky/main armhf fwupd armhf 1.9.26-2 [4404 kB] 424s Get:26 http://ftpmaster.internal/ubuntu plucky/main armhf libsgutils2-1.46-2 armhf 1.46-3ubuntu5 [82.5 kB] 424s Get:27 http://ftpmaster.internal/ubuntu plucky/main armhf python3-jaraco.text all 4.0.0-1 [11.5 kB] 424s Get:28 http://ftpmaster.internal/ubuntu plucky-proposed/main armhf python3-pkg-resources all 75.2.0-1 [134 kB] 424s Get:29 http://ftpmaster.internal/ubuntu plucky-proposed/main armhf python3-setuptools all 75.2.0-1 [657 kB] 424s Get:30 http://ftpmaster.internal/ubuntu plucky/main armhf sg3-utils armhf 1.46-3ubuntu5 [816 kB] 424s Get:31 http://ftpmaster.internal/ubuntu plucky/main armhf sg3-utils-udev all 1.46-3ubuntu5 [5916 B] 424s Preconfiguring packages ... 424s Fetched 19.2 MB in 1s (14.1 MB/s) 424s (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 ... 59386 files and directories currently installed.) 424s Preparing to unpack .../motd-news-config_13.5ubuntu2_all.deb ... 424s Unpacking motd-news-config (13.5ubuntu2) over (13.3ubuntu6) ... 424s Preparing to unpack .../base-files_13.5ubuntu2_armhf.deb ... 425s Unpacking base-files (13.5ubuntu2) over (13.3ubuntu6) ... 425s Setting up base-files (13.5ubuntu2) ... 425s Installing new version of config file /etc/issue ... 425s Installing new version of config file /etc/issue.net ... 425s Installing new version of config file /etc/lsb-release ... 425s motd-news.service is a disabled or a static unit not running, not starting it. 425s (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 ... 59386 files and directories currently installed.) 425s Preparing to unpack .../perl_5.40.0-6_armhf.deb ... 425s Unpacking perl (5.40.0-6) over (5.38.2-5) ... 425s Selecting previously unselected package perl-modules-5.40. 425s Preparing to unpack .../perl-modules-5.40_5.40.0-6_all.deb ... 425s Unpacking perl-modules-5.40 (5.40.0-6) ... 426s Selecting previously unselected package libperl5.40:armhf. 426s Preparing to unpack .../libperl5.40_5.40.0-6_armhf.deb ... 426s Unpacking libperl5.40:armhf (5.40.0-6) ... 426s Preparing to unpack .../perl-base_5.40.0-6_armhf.deb ... 426s Unpacking perl-base (5.40.0-6) over (5.38.2-5) ... 426s Setting up perl-base (5.40.0-6) ... 426s (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 ... 61462 files and directories currently installed.) 426s Preparing to unpack .../liblocale-gettext-perl_1.07-7build1_armhf.deb ... 426s Unpacking liblocale-gettext-perl (1.07-7build1) over (1.07-7) ... 426s Preparing to unpack .../libtext-iconv-perl_1.7-8build4_armhf.deb ... 426s Unpacking libtext-iconv-perl:armhf (1.7-8build4) over (1.7-8build3) ... 426s Preparing to unpack .../libtext-charwidth-perl_0.04-11build4_armhf.deb ... 426s Unpacking libtext-charwidth-perl:armhf (0.04-11build4) over (0.04-11build3) ... 426s Preparing to unpack .../libatomic1_14.2.0-7ubuntu1_armhf.deb ... 426s Unpacking libatomic1:armhf (14.2.0-7ubuntu1) over (14.2.0-4ubuntu2) ... 426s Preparing to unpack .../gcc-14-base_14.2.0-7ubuntu1_armhf.deb ... 426s Unpacking gcc-14-base:armhf (14.2.0-7ubuntu1) over (14.2.0-4ubuntu2) ... 426s Setting up gcc-14-base:armhf (14.2.0-7ubuntu1) ... 426s (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 ... 61462 files and directories currently installed.) 426s Preparing to unpack .../libstdc++6_14.2.0-7ubuntu1_armhf.deb ... 426s Unpacking libstdc++6:armhf (14.2.0-7ubuntu1) over (14.2.0-4ubuntu2) ... 426s Setting up libstdc++6:armhf (14.2.0-7ubuntu1) ... 427s (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 ... 61462 files and directories currently installed.) 427s Preparing to unpack .../libgcc-s1_14.2.0-7ubuntu1_armhf.deb ... 427s Unpacking libgcc-s1:armhf (14.2.0-7ubuntu1) over (14.2.0-4ubuntu2) ... 427s Setting up libgcc-s1:armhf (14.2.0-7ubuntu1) ... 427s (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 ... 61462 files and directories currently installed.) 427s Preparing to unpack .../install-info_7.1.1-1_armhf.deb ... 427s Unpacking install-info (7.1.1-1) over (7.1-3build2) ... 427s Setting up install-info (7.1.1-1) ... 427s (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 ... 61462 files and directories currently installed.) 427s Preparing to unpack .../00-distro-info-data_0.63_all.deb ... 427s Unpacking distro-info-data (0.63) over (0.62) ... 427s Preparing to unpack .../01-libdw1t64_0.192-4_armhf.deb ... 427s Unpacking libdw1t64:armhf (0.192-4) over (0.191-2) ... 427s Preparing to unpack .../02-libelf1t64_0.192-4_armhf.deb ... 427s Unpacking libelf1t64:armhf (0.192-4) over (0.191-2) ... 427s Preparing to unpack .../03-iproute2_6.10.0-2ubuntu1_armhf.deb ... 427s Unpacking iproute2 (6.10.0-2ubuntu1) over (6.10.0-2) ... 427s Preparing to unpack .../04-libkeyutils1_1.6.3-4ubuntu2_armhf.deb ... 427s Unpacking libkeyutils1:armhf (1.6.3-4ubuntu2) over (1.6.3-3build1) ... 427s Preparing to unpack .../05-vim-tiny_2%3a9.1.0777-1ubuntu1_armhf.deb ... 427s Unpacking vim-tiny (2:9.1.0777-1ubuntu1) over (2:9.1.0496-1ubuntu6) ... 427s Preparing to unpack .../06-vim-common_2%3a9.1.0777-1ubuntu1_all.deb ... 427s Unpacking vim-common (2:9.1.0777-1ubuntu1) over (2:9.1.0496-1ubuntu6) ... 427s Preparing to unpack .../07-xxd_2%3a9.1.0777-1ubuntu1_armhf.deb ... 427s Unpacking xxd (2:9.1.0777-1ubuntu1) over (2:9.1.0496-1ubuntu6) ... 427s Preparing to unpack .../08-info_7.1.1-1_armhf.deb ... 427s Unpacking info (7.1.1-1) over (7.1-3build2) ... 427s Preparing to unpack .../09-libfwupd2_1.9.26-2_armhf.deb ... 427s Unpacking libfwupd2:armhf (1.9.26-2) over (1.9.24-1) ... 427s Preparing to unpack .../10-fwupd_1.9.26-2_armhf.deb ... 428s Unpacking fwupd (1.9.26-2) over (1.9.24-1) ... 428s Preparing to unpack .../11-libsgutils2-1.46-2_1.46-3ubuntu5_armhf.deb ... 428s Unpacking libsgutils2-1.46-2:armhf (1.46-3ubuntu5) over (1.46-3ubuntu4) ... 428s Selecting previously unselected package python3-jaraco.text. 428s Preparing to unpack .../12-python3-jaraco.text_4.0.0-1_all.deb ... 428s Unpacking python3-jaraco.text (4.0.0-1) ... 428s Preparing to unpack .../13-python3-pkg-resources_75.2.0-1_all.deb ... 428s Unpacking python3-pkg-resources (75.2.0-1) over (74.1.2-1) ... 428s Preparing to unpack .../14-python3-setuptools_75.2.0-1_all.deb ... 428s Unpacking python3-setuptools (75.2.0-1) over (74.1.2-1) ... 428s Preparing to unpack .../15-sg3-utils_1.46-3ubuntu5_armhf.deb ... 428s Unpacking sg3-utils (1.46-3ubuntu5) over (1.46-3ubuntu4) ... 428s Preparing to unpack .../16-sg3-utils-udev_1.46-3ubuntu5_all.deb ... 428s Unpacking sg3-utils-udev (1.46-3ubuntu5) over (1.46-3ubuntu4) ... 428s Setting up python3-pkg-resources (75.2.0-1) ... 429s Setting up motd-news-config (13.5ubuntu2) ... 429s Setting up libtext-iconv-perl:armhf (1.7-8build4) ... 429s Setting up libtext-charwidth-perl:armhf (0.04-11build4) ... 429s Setting up libkeyutils1:armhf (1.6.3-4ubuntu2) ... 429s Setting up distro-info-data (0.63) ... 429s Setting up libfwupd2:armhf (1.9.26-2) ... 429s Setting up libsgutils2-1.46-2:armhf (1.46-3ubuntu5) ... 429s Setting up xxd (2:9.1.0777-1ubuntu1) ... 429s Setting up libelf1t64:armhf (0.192-4) ... 429s Setting up libdw1t64:armhf (0.192-4) ... 429s Setting up vim-common (2:9.1.0777-1ubuntu1) ... 429s Installing new version of config file /etc/vim/vimrc ... 429s Setting up python3-jaraco.text (4.0.0-1) ... 429s Setting up libatomic1:armhf (14.2.0-7ubuntu1) ... 429s Setting up perl-modules-5.40 (5.40.0-6) ... 429s Setting up fwupd (1.9.26-2) ... 429s fwupd-offline-update.service is a disabled or a static unit not running, not starting it. 429s fwupd-refresh.service is a disabled or a static unit not running, not starting it. 429s fwupd.service is a disabled or a static unit not running, not starting it. 429s Setting up info (7.1.1-1) ... 429s Setting up liblocale-gettext-perl (1.07-7build1) ... 429s Setting up sg3-utils (1.46-3ubuntu5) ... 429s Setting up python3-setuptools (75.2.0-1) ... 430s Setting up iproute2 (6.10.0-2ubuntu1) ... 430s Setting up vim-tiny (2:9.1.0777-1ubuntu1) ... 430s Setting up sg3-utils-udev (1.46-3ubuntu5) ... 430s update-initramfs: deferring update (trigger activated) 430s Setting up libperl5.40:armhf (5.40.0-6) ... 431s Setting up perl (5.40.0-6) ... 431s Processing triggers for dbus (1.14.10-4ubuntu5) ... 431s Processing triggers for install-info (7.1.1-1) ... 431s Processing triggers for initramfs-tools (0.142ubuntu34) ... 431s Processing triggers for libc-bin (2.40-1ubuntu3) ... 431s Processing triggers for man-db (2.12.1-3) ... 432s Processing triggers for plymouth-theme-ubuntu-text (24.004.60-1ubuntu10) ... 432s update-initramfs: deferring update (trigger activated) 432s Processing triggers for initramfs-tools (0.142ubuntu34) ... 432s Reading package lists... 433s Building dependency tree... 433s Reading state information... 433s The following packages will be REMOVED: 433s libperl5.38t64* perl-modules-5.38* 434s 0 upgraded, 0 newly installed, 2 to remove and 0 not upgraded. 434s After this operation, 41.6 MB disk space will be freed. 434s (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 ... 61471 files and directories currently installed.) 434s Removing libperl5.38t64:armhf (5.38.2-5) ... 434s Removing perl-modules-5.38 (5.38.2-5) ... 434s Processing triggers for man-db (2.12.1-3) ... 434s Processing triggers for libc-bin (2.40-1ubuntu3) ... 436s autopkgtest [10:59:14]: rebooting testbed after setup commands that affected boot 541s Reading package lists... 542s Building dependency tree... 542s Reading state information... 542s Starting pkgProblemResolver with broken count: 0 542s Starting 2 pkgProblemResolver with broken count: 0 542s Done 543s The following additional packages will be installed: 543s dictionaries-common emacsen-common gettext hunspell-en-us libapr1t64 543s libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data libgomp1 543s libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 libxslt1.1 543s python3-aeidon python3-all python3-bs4 python3-charset-normalizer 543s python3-cheroot python3-dateutil python3-diff-match-patch python3-enchant 543s python3-iniconfig python3-iniparse python3-levenshtein python3-lxml 543s python3-mistletoe python3-packaging python3-phply python3-pluggy python3-ply 543s python3-pycountry python3-pytest python3-rapidfuzz python3-ruamel.yaml 543s python3-ruamel.yaml.clib python3-simplejson python3-six python3-soupsieve 543s python3-syrupy python3-translate python3-vobject python3-wcwidth 543s python3-xapian subversion 543s Suggested packages: 543s ispell | aspell | hunspell wordlist autopoint gettext-doc libasprintf-dev 543s libgettextpo-dev hunspell openoffice.org-hunspell | openoffice.org-core 543s aspell libenchant-2-voikko xapian-tools python-charset-normalizer-doc 543s python-lxml-doc python-ply-doc python-rapidfuzz-doc python3-subversion 543s translate-toolkit-doc xapian-doc db5.3-util libapache2-mod-svn 543s subversion-tools 543s Recommended packages: 543s aspell-en | aspell-dictionary | aspell6a-dictionary enchant-2 543s python3-cssselect python3-html5lib python3-tz 543s The following NEW packages will be installed: 543s autopkgtest-satdep dictionaries-common emacsen-common gettext hunspell-en-us 543s libapr1t64 libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data 543s libgomp1 libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 543s libxslt1.1 python3-aeidon python3-all python3-bs4 python3-charset-normalizer 543s python3-cheroot python3-dateutil python3-diff-match-patch python3-enchant 543s python3-iniconfig python3-iniparse python3-levenshtein python3-lxml 543s python3-mistletoe python3-packaging python3-phply python3-pluggy python3-ply 543s python3-pycountry python3-pytest python3-rapidfuzz python3-ruamel.yaml 543s python3-ruamel.yaml.clib python3-simplejson python3-six python3-soupsieve 543s python3-syrupy python3-translate python3-vobject python3-wcwidth 543s python3-xapian subversion 543s 0 upgraded, 48 newly installed, 0 to remove and 0 not upgraded. 543s Need to get 10.6 MB/10.6 MB of archives. 543s After this operation, 41.3 MB of additional disk space will be used. 543s Get:1 /tmp/autopkgtest.zokjht/2-autopkgtest-satdep.deb autopkgtest-satdep armhf 0 [900 B] 543s Get:2 http://ftpmaster.internal/ubuntu plucky/main armhf emacsen-common all 3.0.5 [12.1 kB] 543s Get:3 http://ftpmaster.internal/ubuntu plucky/main armhf dictionaries-common all 1.29.7 [188 kB] 543s Get:4 http://ftpmaster.internal/ubuntu plucky/main armhf libgomp1 armhf 14.2.0-7ubuntu1 [125 kB] 543s Get:5 http://ftpmaster.internal/ubuntu plucky/main armhf gettext armhf 0.22.5-2 [995 kB] 544s Get:6 http://ftpmaster.internal/ubuntu plucky/main armhf hunspell-en-us all 1:2020.12.07-2 [280 kB] 544s Get:7 http://ftpmaster.internal/ubuntu plucky/main armhf libapr1t64 armhf 1.7.2-3.2ubuntu1 [87.9 kB] 544s Get:8 http://ftpmaster.internal/ubuntu plucky/main armhf libaprutil1t64 armhf 1.6.3-3ubuntu1 [82.7 kB] 544s Get:9 http://ftpmaster.internal/ubuntu plucky/main armhf libaspell15 armhf 0.60.8.1-1build1 [307 kB] 544s Get:10 http://ftpmaster.internal/ubuntu plucky/main armhf libhunspell-1.7-0 armhf 1.7.2+really1.7.2-10build3 [307 kB] 544s Get:11 http://ftpmaster.internal/ubuntu plucky/main armhf libenchant-2-2 armhf 2.3.3-2build2 [43.4 kB] 544s Get:12 http://ftpmaster.internal/ubuntu plucky/main armhf libexttextcat-data all 3.4.7-1build1 [193 kB] 544s Get:13 http://ftpmaster.internal/ubuntu plucky/universe armhf libserf-1-1 armhf 1.3.10-3ubuntu1 [40.5 kB] 544s Get:14 http://ftpmaster.internal/ubuntu plucky/universe armhf libutf8proc3 armhf 2.9.0-1build1 [70.6 kB] 544s Get:15 http://ftpmaster.internal/ubuntu plucky/universe armhf libsvn1 armhf 1.14.4-2 [1199 kB] 544s Get:16 http://ftpmaster.internal/ubuntu plucky/universe armhf libxapian30 armhf 1.4.25-1 [693 kB] 544s Get:17 http://ftpmaster.internal/ubuntu plucky/main armhf libxslt1.1 armhf 1.1.39-0exp1ubuntu1 [150 kB] 544s Get:18 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-aeidon all 1.15-1 [231 kB] 544s Get:19 http://ftpmaster.internal/ubuntu plucky/main armhf python3-all armhf 3.12.6-0ubuntu1 [886 B] 544s Get:20 http://ftpmaster.internal/ubuntu plucky/main armhf python3-soupsieve all 2.6-1 [33.0 kB] 544s Get:21 http://ftpmaster.internal/ubuntu plucky/main armhf python3-bs4 all 4.12.3-3 [109 kB] 544s Get:22 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-charset-normalizer armhf 3.3.2-2 [111 kB] 544s Get:23 http://ftpmaster.internal/ubuntu plucky/main armhf python3-cheroot all 10.0.0+ds1-2 [73.0 kB] 544s Get:24 http://ftpmaster.internal/ubuntu plucky/main armhf python3-six all 1.16.0-7 [13.1 kB] 544s Get:25 http://ftpmaster.internal/ubuntu plucky/main armhf python3-dateutil all 2.9.0-2 [80.3 kB] 544s Get:26 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-diff-match-patch all 20230430-1 [33.1 kB] 544s Get:27 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-enchant all 3.2.2-1 [34.0 kB] 544s Get:28 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-iniconfig all 1.1.1-2 [6024 B] 544s Get:29 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-rapidfuzz armhf 3.9.4+ds-1 [1200 kB] 544s Get:30 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-levenshtein armhf 0.25.1-3 [139 kB] 544s Get:31 http://ftpmaster.internal/ubuntu plucky/main armhf python3-lxml armhf 5.3.0-1 [1234 kB] 544s Get:32 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-mistletoe all 1.3.0-1 [38.0 kB] 544s Get:33 http://ftpmaster.internal/ubuntu plucky/main armhf python3-packaging all 24.1-1 [41.4 kB] 544s Get:34 http://ftpmaster.internal/ubuntu plucky/main armhf python3-ply all 3.11-7 [45.4 kB] 544s Get:35 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-phply all 1.2.6-1 [50.5 kB] 544s Get:36 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-pluggy all 1.5.0-1 [21.0 kB] 544s Get:37 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-pytest all 8.3.2-1 [251 kB] 544s Get:38 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-ruamel.yaml.clib armhf 0.2.8+ds-2 [125 kB] 544s Get:39 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-ruamel.yaml all 0.18.6+ds-3 [126 kB] 544s Get:40 http://ftpmaster.internal/ubuntu plucky/main armhf python3-simplejson armhf 3.19.2-1build2 [52.0 kB] 544s Get:41 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-syrupy all 4.6.1-1 [42.8 kB] 544s Get:42 http://ftpmaster.internal/ubuntu plucky/main armhf python3-wcwidth all 0.2.13+dfsg1-1 [26.3 kB] 544s Get:43 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-translate all 3.13.2-2 [319 kB] 544s Get:44 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-vobject all 0.9.6.1-2 [40.6 kB] 544s Get:45 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-xapian armhf 1.4.25-1build3 [439 kB] 544s Get:46 http://ftpmaster.internal/ubuntu plucky/universe armhf subversion armhf 1.14.4-2 [891 kB] 544s Get:47 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-iniparse all 0.5-2 [20.0 kB] 544s Get:48 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-pycountry all 24.6.1+ds1-1 [30.0 kB] 545s Preconfiguring packages ... 545s Fetched 10.6 MB in 1s (8876 kB/s) 545s Selecting previously unselected package emacsen-common. 545s (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 ... 59541 files and directories currently installed.) 545s Preparing to unpack .../00-emacsen-common_3.0.5_all.deb ... 545s Unpacking emacsen-common (3.0.5) ... 545s Selecting previously unselected package dictionaries-common. 545s Preparing to unpack .../01-dictionaries-common_1.29.7_all.deb ... 545s Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common' 545s Unpacking dictionaries-common (1.29.7) ... 545s Selecting previously unselected package libgomp1:armhf. 545s Preparing to unpack .../02-libgomp1_14.2.0-7ubuntu1_armhf.deb ... 545s Unpacking libgomp1:armhf (14.2.0-7ubuntu1) ... 545s Selecting previously unselected package gettext. 545s Preparing to unpack .../03-gettext_0.22.5-2_armhf.deb ... 545s Unpacking gettext (0.22.5-2) ... 545s Selecting previously unselected package hunspell-en-us. 545s Preparing to unpack .../04-hunspell-en-us_1%3a2020.12.07-2_all.deb ... 545s Unpacking hunspell-en-us (1:2020.12.07-2) ... 545s Selecting previously unselected package libapr1t64:armhf. 545s Preparing to unpack .../05-libapr1t64_1.7.2-3.2ubuntu1_armhf.deb ... 545s Unpacking libapr1t64:armhf (1.7.2-3.2ubuntu1) ... 545s Selecting previously unselected package libaprutil1t64:armhf. 545s Preparing to unpack .../06-libaprutil1t64_1.6.3-3ubuntu1_armhf.deb ... 545s Unpacking libaprutil1t64:armhf (1.6.3-3ubuntu1) ... 545s Selecting previously unselected package libaspell15:armhf. 545s Preparing to unpack .../07-libaspell15_0.60.8.1-1build1_armhf.deb ... 545s Unpacking libaspell15:armhf (0.60.8.1-1build1) ... 545s Selecting previously unselected package libhunspell-1.7-0:armhf. 545s Preparing to unpack .../08-libhunspell-1.7-0_1.7.2+really1.7.2-10build3_armhf.deb ... 545s Unpacking libhunspell-1.7-0:armhf (1.7.2+really1.7.2-10build3) ... 545s Selecting previously unselected package libenchant-2-2:armhf. 545s Preparing to unpack .../09-libenchant-2-2_2.3.3-2build2_armhf.deb ... 545s Unpacking libenchant-2-2:armhf (2.3.3-2build2) ... 545s Selecting previously unselected package libexttextcat-data. 545s Preparing to unpack .../10-libexttextcat-data_3.4.7-1build1_all.deb ... 545s Unpacking libexttextcat-data (3.4.7-1build1) ... 545s Selecting previously unselected package libserf-1-1:armhf. 545s Preparing to unpack .../11-libserf-1-1_1.3.10-3ubuntu1_armhf.deb ... 545s Unpacking libserf-1-1:armhf (1.3.10-3ubuntu1) ... 545s Selecting previously unselected package libutf8proc3:armhf. 545s Preparing to unpack .../12-libutf8proc3_2.9.0-1build1_armhf.deb ... 545s Unpacking libutf8proc3:armhf (2.9.0-1build1) ... 545s Selecting previously unselected package libsvn1:armhf. 545s Preparing to unpack .../13-libsvn1_1.14.4-2_armhf.deb ... 545s Unpacking libsvn1:armhf (1.14.4-2) ... 545s Selecting previously unselected package libxapian30:armhf. 545s Preparing to unpack .../14-libxapian30_1.4.25-1_armhf.deb ... 545s Unpacking libxapian30:armhf (1.4.25-1) ... 545s Selecting previously unselected package libxslt1.1:armhf. 545s Preparing to unpack .../15-libxslt1.1_1.1.39-0exp1ubuntu1_armhf.deb ... 545s Unpacking libxslt1.1:armhf (1.1.39-0exp1ubuntu1) ... 545s Selecting previously unselected package python3-aeidon. 545s Preparing to unpack .../16-python3-aeidon_1.15-1_all.deb ... 545s Unpacking python3-aeidon (1.15-1) ... 545s Selecting previously unselected package python3-all. 545s Preparing to unpack .../17-python3-all_3.12.6-0ubuntu1_armhf.deb ... 545s Unpacking python3-all (3.12.6-0ubuntu1) ... 545s Selecting previously unselected package python3-soupsieve. 545s Preparing to unpack .../18-python3-soupsieve_2.6-1_all.deb ... 545s Unpacking python3-soupsieve (2.6-1) ... 545s Selecting previously unselected package python3-bs4. 545s Preparing to unpack .../19-python3-bs4_4.12.3-3_all.deb ... 545s Unpacking python3-bs4 (4.12.3-3) ... 545s Selecting previously unselected package python3-charset-normalizer. 546s Preparing to unpack .../20-python3-charset-normalizer_3.3.2-2_armhf.deb ... 546s Unpacking python3-charset-normalizer (3.3.2-2) ... 546s Selecting previously unselected package python3-cheroot. 546s Preparing to unpack .../21-python3-cheroot_10.0.0+ds1-2_all.deb ... 546s Unpacking python3-cheroot (10.0.0+ds1-2) ... 546s Selecting previously unselected package python3-six. 546s Preparing to unpack .../22-python3-six_1.16.0-7_all.deb ... 546s Unpacking python3-six (1.16.0-7) ... 546s Selecting previously unselected package python3-dateutil. 546s Preparing to unpack .../23-python3-dateutil_2.9.0-2_all.deb ... 546s Unpacking python3-dateutil (2.9.0-2) ... 546s Selecting previously unselected package python3-diff-match-patch. 546s Preparing to unpack .../24-python3-diff-match-patch_20230430-1_all.deb ... 546s Unpacking python3-diff-match-patch (20230430-1) ... 546s Selecting previously unselected package python3-enchant. 546s Preparing to unpack .../25-python3-enchant_3.2.2-1_all.deb ... 546s Unpacking python3-enchant (3.2.2-1) ... 546s Selecting previously unselected package python3-iniconfig. 546s Preparing to unpack .../26-python3-iniconfig_1.1.1-2_all.deb ... 546s Unpacking python3-iniconfig (1.1.1-2) ... 546s Selecting previously unselected package python3-rapidfuzz. 546s Preparing to unpack .../27-python3-rapidfuzz_3.9.4+ds-1_armhf.deb ... 546s Unpacking python3-rapidfuzz (3.9.4+ds-1) ... 546s Selecting previously unselected package python3-levenshtein. 546s Preparing to unpack .../28-python3-levenshtein_0.25.1-3_armhf.deb ... 546s Unpacking python3-levenshtein (0.25.1-3) ... 546s Selecting previously unselected package python3-lxml:armhf. 546s Preparing to unpack .../29-python3-lxml_5.3.0-1_armhf.deb ... 546s Unpacking python3-lxml:armhf (5.3.0-1) ... 546s Selecting previously unselected package python3-mistletoe. 546s Preparing to unpack .../30-python3-mistletoe_1.3.0-1_all.deb ... 546s Unpacking python3-mistletoe (1.3.0-1) ... 546s Selecting previously unselected package python3-packaging. 546s Preparing to unpack .../31-python3-packaging_24.1-1_all.deb ... 546s Unpacking python3-packaging (24.1-1) ... 546s Selecting previously unselected package python3-ply. 546s Preparing to unpack .../32-python3-ply_3.11-7_all.deb ... 546s Unpacking python3-ply (3.11-7) ... 546s Selecting previously unselected package python3-phply. 546s Preparing to unpack .../33-python3-phply_1.2.6-1_all.deb ... 546s Unpacking python3-phply (1.2.6-1) ... 546s Selecting previously unselected package python3-pluggy. 546s Preparing to unpack .../34-python3-pluggy_1.5.0-1_all.deb ... 546s Unpacking python3-pluggy (1.5.0-1) ... 546s Selecting previously unselected package python3-pytest. 546s Preparing to unpack .../35-python3-pytest_8.3.2-1_all.deb ... 546s Unpacking python3-pytest (8.3.2-1) ... 546s Selecting previously unselected package python3-ruamel.yaml.clib:armhf. 546s Preparing to unpack .../36-python3-ruamel.yaml.clib_0.2.8+ds-2_armhf.deb ... 546s Unpacking python3-ruamel.yaml.clib:armhf (0.2.8+ds-2) ... 546s Selecting previously unselected package python3-ruamel.yaml. 546s Preparing to unpack .../37-python3-ruamel.yaml_0.18.6+ds-3_all.deb ... 546s Unpacking python3-ruamel.yaml (0.18.6+ds-3) ... 546s Selecting previously unselected package python3-simplejson. 546s Preparing to unpack .../38-python3-simplejson_3.19.2-1build2_armhf.deb ... 546s Unpacking python3-simplejson (3.19.2-1build2) ... 546s Selecting previously unselected package python3-syrupy. 546s Preparing to unpack .../39-python3-syrupy_4.6.1-1_all.deb ... 546s Unpacking python3-syrupy (4.6.1-1) ... 546s Selecting previously unselected package python3-wcwidth. 546s Preparing to unpack .../40-python3-wcwidth_0.2.13+dfsg1-1_all.deb ... 546s Unpacking python3-wcwidth (0.2.13+dfsg1-1) ... 546s Selecting previously unselected package python3-translate. 546s Preparing to unpack .../41-python3-translate_3.13.2-2_all.deb ... 546s Unpacking python3-translate (3.13.2-2) ... 546s Selecting previously unselected package python3-vobject. 546s Preparing to unpack .../42-python3-vobject_0.9.6.1-2_all.deb ... 546s Unpacking python3-vobject (0.9.6.1-2) ... 546s Selecting previously unselected package python3-xapian. 546s Preparing to unpack .../43-python3-xapian_1.4.25-1build3_armhf.deb ... 546s Unpacking python3-xapian (1.4.25-1build3) ... 546s Selecting previously unselected package subversion. 546s Preparing to unpack .../44-subversion_1.14.4-2_armhf.deb ... 546s Unpacking subversion (1.14.4-2) ... 546s Selecting previously unselected package python3-iniparse. 546s Preparing to unpack .../45-python3-iniparse_0.5-2_all.deb ... 546s Unpacking python3-iniparse (0.5-2) ... 547s Selecting previously unselected package python3-pycountry. 547s Preparing to unpack .../46-python3-pycountry_24.6.1+ds1-1_all.deb ... 547s Unpacking python3-pycountry (24.6.1+ds1-1) ... 547s Selecting previously unselected package autopkgtest-satdep. 547s Preparing to unpack .../47-2-autopkgtest-satdep.deb ... 547s Unpacking autopkgtest-satdep (0) ... 547s Setting up python3-iniconfig (1.1.1-2) ... 547s Setting up libxapian30:armhf (1.4.25-1) ... 547s Setting up python3-rapidfuzz (3.9.4+ds-1) ... 547s Setting up python3-diff-match-patch (20230430-1) ... 547s Setting up python3-aeidon (1.15-1) ... 547s Setting up libutf8proc3:armhf (2.9.0-1build1) ... 547s Setting up libaspell15:armhf (0.60.8.1-1build1) ... 547s Setting up python3-charset-normalizer (3.3.2-2) ... 547s Setting up python3-ply (3.11-7) ... 548s Setting up python3-ruamel.yaml.clib:armhf (0.2.8+ds-2) ... 548s Setting up python3-all (3.12.6-0ubuntu1) ... 548s Setting up libgomp1:armhf (14.2.0-7ubuntu1) ... 548s Setting up python3-six (1.16.0-7) ... 548s Setting up python3-simplejson (3.19.2-1build2) ... 548s Setting up python3-packaging (24.1-1) ... 548s Setting up python3-wcwidth (0.2.13+dfsg1-1) ... 548s Setting up emacsen-common (3.0.5) ... 548s Setting up python3-cheroot (10.0.0+ds1-2) ... 548s Setting up python3-pycountry (24.6.1+ds1-1) ... 548s Setting up python3-xapian (1.4.25-1build3) ... 549s Setting up python3-pluggy (1.5.0-1) ... 549s Setting up python3-ruamel.yaml (0.18.6+ds-3) ... 549s Setting up python3-mistletoe (1.3.0-1) ... 549s Setting up libexttextcat-data (3.4.7-1build1) ... 549s Setting up libapr1t64:armhf (1.7.2-3.2ubuntu1) ... 549s Setting up libxslt1.1:armhf (1.1.39-0exp1ubuntu1) ... 549s Setting up python3-dateutil (2.9.0-2) ... 549s Setting up python3-levenshtein (0.25.1-3) ... 549s Setting up libhunspell-1.7-0:armhf (1.7.2+really1.7.2-10build3) ... 549s Setting up python3-soupsieve (2.6-1) ... 550s Setting up python3-iniparse (0.5-2) ... 550s Setting up libaprutil1t64:armhf (1.6.3-3ubuntu1) ... 550s Setting up python3-vobject (0.9.6.1-2) ... 550s /usr/lib/python3/dist-packages/vobject/base.py:736: SyntaxWarning: invalid escape sequence '\-' 550s patterns['name'] = '[a-zA-Z0-9\-_]+' 550s /usr/lib/python3/dist-packages/vobject/base.py:1219: SyntaxWarning: invalid escape sequence '\;' 550s s = s.replace("\\", "\\\\").replace(";", "\;").replace(",", "\,") 550s /usr/lib/python3/dist-packages/vobject/base.py:1219: SyntaxWarning: invalid escape sequence '\,' 550s s = s.replace("\\", "\\\\").replace(";", "\;").replace(",", "\,") 550s /usr/lib/python3/dist-packages/vobject/hcalendar.py:1: SyntaxWarning: invalid escape sequence '\,' 550s """ 550s Setting up gettext (0.22.5-2) ... 550s Setting up python3-phply (1.2.6-1) ... 550s Setting up dictionaries-common (1.29.7) ... 550s Setting up python3-pytest (8.3.2-1) ... 551s Setting up python3-syrupy (4.6.1-1) ... 551s Setting up libserf-1-1:armhf (1.3.10-3ubuntu1) ... 551s Setting up python3-bs4 (4.12.3-3) ... 551s Setting up python3-lxml:armhf (5.3.0-1) ... 551s Setting up hunspell-en-us (1:2020.12.07-2) ... 551s Setting up libsvn1:armhf (1.14.4-2) ... 551s Setting up libenchant-2-2:armhf (2.3.3-2build2) ... 551s Setting up subversion (1.14.4-2) ... 551s Setting up python3-enchant (3.2.2-1) ... 551s Setting up python3-translate (3.13.2-2) ... 552s Setting up autopkgtest-satdep (0) ... 552s Processing triggers for man-db (2.12.1-3) ... 553s Processing triggers for install-info (7.1.1-1) ... 553s Processing triggers for libc-bin (2.40-1ubuntu3) ... 553s Processing triggers for dictionaries-common (1.29.7) ... 569s (Reading database ... 63048 files and directories currently installed.) 569s Removing autopkgtest-satdep (0) ... 582s autopkgtest [11:01:40]: test python3-translate: [----------------------- 584s ============================= test session starts ============================== 584s platform linux -- Python 3.12.7, pytest-8.3.2, pluggy-1.5.0 -- /usr/bin/python3.12 584s cachedir: .pytest_cache 584s rootdir: /tmp/autopkgtest.zokjht/autopkgtest_tmp 584s plugins: typeguard-4.3.0, syrupy-4.6.1 590s collecting ... collected 3340 items / 2 skipped 590s 590s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff PASSED [ 0%] 590s tests/odf_xliff/test_odf_xliff.py::test_roundtrip PASSED [ 0%] 590s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff2_inline PASSED [ 0%] 590s tests/translate/convert/test_accesskey.py::test_get_label_and_accesskey PASSED [ 0%] 590s tests/translate/convert/test_accesskey.py::test_extract_bad_accesskeys PASSED [ 0%] 590s tests/translate/convert/test_accesskey.py::test_ignore_entities PASSED [ 0%] 590s tests/translate/convert/test_accesskey.py::test_alternate_accesskey_marker PASSED [ 0%] 590s tests/translate/convert/test_accesskey.py::test_unicode PASSED [ 0%] 590s tests/translate/convert/test_accesskey.py::test_numeric PASSED [ 0%] 590s tests/translate/convert/test_accesskey.py::test_empty_string PASSED [ 0%] 590s tests/translate/convert/test_accesskey.py::test_end_of_string PASSED [ 0%] 590s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey PASSED [ 0%] 590s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey_different_capitals PASSED [ 0%] 590s tests/translate/convert/test_accesskey.py::test_uncombinable PASSED [ 0%] 590s tests/translate/convert/test_accesskey.py::test_accesskey_already_in_text PASSED [ 0%] 590s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_no_template_units PASSED [ 0%] 590s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_template_units PASSED [ 0%] 590s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_no_template_units PASSED [ 0%] 590s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_template_units PASSED [ 0%] 590s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_help PASSED [ 0%] 590s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid PASSED [ 0%] 590s tests/translate/convert/test_convert.py::TestConvertCommand::test_help PASSED [ 0%] 590s tests/translate/convert/test_csv2po.py::test_replacestrings PASSED [ 0%] 590s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity PASSED [ 0%] 590s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity_with_template PASSED [ 0%] 590s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_newlines PASSED [ 0%] 590s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_tabs PASSED [ 0%] 590s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_quotes PASSED [ 0%] 590s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_empties PASSED [ 0%] 590s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_kdecomment PASSED [ 0%] 590s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_escaped_newlines PASSED [ 0%] 590s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity PASSED [ 0%] 590s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity_with_template PASSED [ 0%] 590s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_newlines PASSED [ 1%] 590s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_tabs PASSED [ 1%] 590s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_quotes PASSED [ 1%] 590s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_empties PASSED [ 1%] 590s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_kdecomment PASSED [ 1%] 590s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_escaped_newlines PASSED [ 1%] 590s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_help PASSED [ 1%] 590s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_simpleentity PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_convertdtd PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_apos PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_quotes PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_two_empty_entities PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity_translated PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisaton_note_simple PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisation_note_merge PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_simple PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_label PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_onlyentity PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_commentedout PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_spaces_at_start_of_dtd_lines PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_folding PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_mismatch PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_carriage_return_in_multiline_dtd PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_with_blankline PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_closing_quotes PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_preserving_spaces PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_escaping_newline_tabs PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_abandoned_accelerator PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_unassociable_accelerator PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_changed_labels_and_accelerators PASSED [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence XFAIL [ 1%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_exclude_entity_includes PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_linewraps PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merging_with_new_untranslated PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merge_without_template PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_simpleentity PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_convertdtd PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_apos PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_quotes PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_two_empty_entities PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity_translated PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisaton_note_simple PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisation_note_merge PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_simple PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_label PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_onlyentity PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_commentedout PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_spaces_at_start_of_dtd_lines PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_folding PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_mismatch PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_carriage_return_in_multiline_dtd PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_with_blankline PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_closing_quotes PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_preserving_spaces PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_escaping_newline_tabs PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_abandoned_accelerator PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_unassociable_accelerator PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_changed_labels_and_accelerators PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence XFAIL [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_exclude_entity_includes PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_linewraps PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merging_with_new_untranslated PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merge_without_template PASSED [ 2%] 590s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_help PASSED [ 2%] 590s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_defaults PASSED [ 3%] 590s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_root_name PASSED [ 3%] 590s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_value_name PASSED [ 3%] 590s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_key PASSED [ 3%] 590s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_default_namespace PASSED [ 3%] 590s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_namespace_prefix PASSED [ 3%] 590s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_all_parameters PASSED [ 3%] 590s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_empty_file_is_empty_store PASSED [ 3%] 590s tests/translate/convert/test_flatxml2po.py::TestFlatXML2POCommand::test_help PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_extract_lang_attribute_from_html_tag PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title_with_linebreak PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_meta PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_br PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak_and_embedded_br PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_uppercase_html PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div_with_linebreaks PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a_with_linebreak PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_sequence_of_anchor_elements PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_img_empty PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img_inside_a PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_table_summary PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_simple PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_complex PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_empty PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_address PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings PASSED [ 3%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings_with_linebreaks PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dt PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dd PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_span PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_ul PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_lists PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_duplicates PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiline_reflow PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_tags PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_carriage_return PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_encoding_latin1 PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_strip_html PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_text PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_attributes PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_charrefs PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiple_php PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_multiline PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_with_embedded_html PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_comments PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2PO::test_attribute_without_value PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_extract_lang_attribute_from_html_tag PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title_with_linebreak PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_meta PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_br PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak_and_embedded_br PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_uppercase_html PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div_with_linebreaks PASSED [ 4%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a_with_linebreak PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_sequence_of_anchor_elements PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_img_empty PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img_inside_a PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_table_summary PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_simple PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_complex PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_empty PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_address PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings_with_linebreaks PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dt PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dd PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_span PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_ul PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_lists PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_duplicates PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiline_reflow PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_tags PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_carriage_return PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_encoding_latin1 PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_strip_html PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_text PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_attributes PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_charrefs PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiple_php PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_multiline PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_with_embedded_html PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_comments PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_attribute_without_value PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_help PASSED [ 5%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_single PASSED [ 6%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile PASSED [ 6%] 590s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile_to_stdout PASSED [ 6%] 590s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_convert_empty_file PASSED [ 6%] 590s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_translations PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_summary PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_description PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_location PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_comment PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_template_duplicate_style PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_misaligned_files PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_blank_msgstr PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_duplicate_style PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_convert_empty_file PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_translations PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_summary PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_description PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_location PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_comment PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_template_duplicate_style PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_misaligned_files PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_blank_msgstr PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_duplicate_style PASSED [ 6%] 591s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_help PASSED [ 6%] 591s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_help PASSED [ 6%] 591s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_convert PASSED [ 6%] 591s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_empty_file PASSED [ 6%] 591s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_no_translation PASSED [ 6%] 591s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_simple PASSED [ 6%] 591s tests/translate/convert/test_ini2po.py::TestIni2PO::test_no_duplicates PASSED [ 6%] 591s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_simple PASSED [ 6%] 591s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_misaligned_files PASSED [ 7%] 591s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_blank_msgstr PASSED [ 7%] 591s tests/translate/convert/test_ini2po.py::TestIni2PO::test_dialects_inno PASSED [ 7%] 591s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_empty_file PASSED [ 7%] 591s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_no_translation PASSED [ 7%] 591s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_simple PASSED [ 7%] 591s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_no_duplicates PASSED [ 7%] 591s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_simple PASSED [ 7%] 591s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_misaligned_files PASSED [ 7%] 591s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_blank_msgstr PASSED [ 7%] 591s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_dialects_inno PASSED [ 7%] 591s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_help PASSED [ 7%] 591s tests/translate/convert/test_json2po.py::TestJson2PO::test_simple PASSED [ 7%] 591s tests/translate/convert/test_json2po.py::TestJson2PO::test_three_same_keys PASSED [ 7%] 591s tests/translate/convert/test_json2po.py::TestJson2PO::test_filter PASSED [ 7%] 591s tests/translate/convert/test_json2po.py::TestJson2PO::test_miltiple_units PASSED [ 7%] 591s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_simple PASSED [ 7%] 591s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_three_same_keys PASSED [ 7%] 591s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_filter PASSED [ 7%] 591s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_miltiple_units PASSED [ 7%] 591s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_help PASSED [ 7%] 591s tests/translate/convert/test_md2po.py::TestMD2PO::test_help PASSED [ 7%] 591s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_single PASSED [ 7%] 591s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_onefile PASSED [ 7%] 591s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_single PASSED [ 7%] 591s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_onefile PASSED [ 7%] 591s tests/translate/convert/test_moz2po.py::TestMoz2POCommand::test_help PASSED [ 7%] 591s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_simpleentry PASSED [ 7%] 591s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_uncomment_contributors PASSED [ 7%] 591s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_convert_empty PASSED [ 7%] 591s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_string PASSED [ 7%] 591s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_merge PASSED [ 7%] 591s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_entry PASSED [ 7%] 591s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_comment PASSED [ 7%] 591s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_meta_tags PASSED [ 8%] 591s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_keep_duplicates PASSED [ 8%] 591s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_drop_duplicates PASSED [ 8%] 591s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_convert_empty PASSED [ 8%] 591s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_string PASSED [ 8%] 591s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_merge PASSED [ 8%] 591s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_entry PASSED [ 8%] 591s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_comment PASSED [ 8%] 591s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_meta_tags PASSED [ 8%] 591s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_keep_duplicates PASSED [ 8%] 591s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_drop_duplicates PASSED [ 8%] 591s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_help PASSED [ 8%] 591s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_help PASSED [ 8%] 591s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_convert PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2PO::test_simpleentity PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_escape PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_whitespaceonly PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2PO::test_double_escapes PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes_helpcontent2 PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2PO::test_msgid_bug_error_address PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2PO::test_x_comment_inclusion PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simpleentity PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_double_escapes PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_help PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_preserve_filename PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot PASSED [ 8%] 591s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 591s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 591s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_simpleentity PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_escape PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_whitespaceonly PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_double_escapes PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes_helpcontent2 PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_x_comment_inclusion PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_msgid_bug_error_address PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simpleentity PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_double_escapes PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_help PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_preserve_filename PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 591s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 591s tests/translate/convert/test_php2po.py::TestPhp2PO::test_simpleentry PASSED [ 9%] 591s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphp PASSED [ 9%] 591s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphptemplate PASSED [ 9%] 591s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpmissing PASSED [ 9%] 591s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpempty PASSED [ 9%] 591s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unicode PASSED [ 9%] 591s tests/translate/convert/test_php2po.py::TestPhp2PO::test_multiline PASSED [ 9%] 591s tests/translate/convert/test_php2po.py::TestPhp2PO::test_comments_before PASSED [ 9%] 591s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry PASSED [ 9%] 591s tests/translate/convert/test_php2po.py::TestPhp2PO::test_hash_comment_with_equals PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry_translated PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2PO::test_newlines_in_value PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2PO::test_spaces_in_name PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_array PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_array PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_nested_arrays PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_nested_arrays PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_simpleentry PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphp PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphptemplate PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpmissing PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpempty PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unicode PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_multiline PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_comments_before PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_hash_comment_with_equals PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry_translated PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_newlines_in_value PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_spaces_in_name PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_array PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_array PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_nested_arrays PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_nested_arrays PASSED [ 10%] 591s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_help PASSED [ 10%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_simpleentity PASSED [ 10%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_multiline PASSED [ 10%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapednewlines PASSED [ 10%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedtabs PASSED [ 10%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedquotes PASSED [ 10%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedescape PASSED [ 10%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_singlequotes PASSED [ 10%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_empties PASSED [ 10%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_kdecomments PASSED [ 11%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_simpleentity PASSED [ 11%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_multiline PASSED [ 11%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapednewlines PASSED [ 11%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedtabs PASSED [ 11%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedquotes PASSED [ 11%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedescape PASSED [ 11%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_singlequotes PASSED [ 11%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_empties PASSED [ 11%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_kdecomments PASSED [ 11%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_help PASSED [ 11%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder PASSED [ 11%] 591s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_joinlines PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_escapedstr PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_missingaccesskey PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskeycase PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_types PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities_two PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments_translator PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_retains_hashprefix PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_convertdtd PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_with_template PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_without_template PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_blank_source PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_newlines_escapes PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_simple PASSED [ 11%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_escape PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_quotes PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_amp PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_merging_entries_with_spaces_removed PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces_after_value PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_duplicates PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_joinlines PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_escapedstr PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_missingaccesskey PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskeycase PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_types PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities_two PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments_translator PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_retains_hashprefix PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_convertdtd PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_with_template PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_without_template PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_blank_source PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_newlines_escapes PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_simple PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_escape PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_quotes PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_amp PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_merging_entries_with_spaces_removed PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces_after_value PASSED [ 12%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments PASSED [ 13%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_duplicates PASSED [ 13%] 591s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_help PASSED [ 13%] 591s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_defaults PASSED [ 13%] 591s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_root_name PASSED [ 13%] 591s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_value_name PASSED [ 13%] 591s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_key PASSED [ 13%] 591s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_default_namespace PASSED [ 13%] 591s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_namespace_prefix PASSED [ 13%] 591s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_indent_eight PASSED [ 13%] 591s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_noindent PASSED [ 13%] 591s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXMLCommand::test_help PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2Html::test_simple PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2Html::test_linebreaks PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2Html::test_replace_substrings PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_outside_translatable_content PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_embedded_within_translatable_content PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_without_value PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2Html::test_entities PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2Html::test_escapes PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_translated PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_untranslated PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_fuzzy PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2Html::test_untranslated_attributes PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_simple PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_linebreaks PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_replace_substrings PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_outside_translatable_content PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_embedded_within_translatable_content PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_without_value PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_entities PASSED [ 13%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_escapes PASSED [ 14%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_translated PASSED [ 14%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_untranslated PASSED [ 14%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_fuzzy PASSED [ 14%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_untranslated_attributes PASSED [ 14%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_help PASSED [ 14%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_individual_files PASSED [ 14%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_fully_recursive PASSED [ 14%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_input_specified PASSED [ 14%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified PASSED [ 14%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_output_specified PASSED [ 14%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file PASSED [ 14%] 591s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_empty_file PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_summary PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_description PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_location PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_comment PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_complex_icalendar PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_skip_fuzzy PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_include_fuzzy PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_no_template PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_template_location_not_in_source_file PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_below_threshold PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_above_threshold PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_empty_file PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_summary PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_description PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_location PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_comment PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_complex_icalendar PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_skip_fuzzy PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_include_fuzzy PASSED [ 14%] 591s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_no_template PASSED [ 15%] 591s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_template_location_not_in_source_file PASSED [ 15%] 591s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_below_threshold PASSED [ 15%] 591s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_above_threshold PASSED [ 15%] 591s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_help PASSED [ 15%] 591s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_help PASSED [ 15%] 591s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_no_templates PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_simple PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_space_preservation PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_blank_entries PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_fuzzy PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_propertyless_template PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_empty_value PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_dialects_inno PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_misaligned_files PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_below_threshold PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_above_threshold PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_no_fuzzy PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_allow_fuzzy PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_missing_source PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_repeated_locations PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_no_templates PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_simple PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_space_preservation PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_blank_entries PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_fuzzy PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_propertyless_template PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_empty_value PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_dialects_inno PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_misaligned_files PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_below_threshold PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_above_threshold PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_no_fuzzy PASSED [ 15%] 591s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_allow_fuzzy PASSED [ 16%] 591s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_missing_source PASSED [ 16%] 591s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_repeated_locations PASSED [ 16%] 591s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_help PASSED [ 16%] 591s tests/translate/convert/test_po2json.py::TestPO2JSON::test_basic PASSED [ 16%] 591s tests/translate/convert/test_po2json.py::TestPO2JSON::test_ordering_serialize PASSED [ 16%] 591s tests/translate/convert/test_po2json.py::TestPO2JSON::test_dont_use_empty_translation PASSED [ 16%] 591s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_false PASSED [ 16%] 591s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_true PASSED [ 16%] 591s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_false PASSED [ 16%] 591s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_true PASSED [ 16%] 591s tests/translate/convert/test_po2md.py::TestPO2MD::test_help PASSED [ 16%] 591s tests/translate/convert/test_po2md.py::TestPO2MD::test_single_markdown_file_with_single_po PASSED [ 16%] 592s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po PASSED [ 16%] 592s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_and_directory_of_po_files PASSED [ 16%] 592s tests/translate/convert/test_po2moz.py::TestPO2MozCommand::test_help PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_empty PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_simple PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_comment PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_ok_marker PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_below_threshold PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_above_threshold PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_skip_non_translatable_input PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_no_fuzzy PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_allow_fuzzy PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_mark_active PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_empty PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_simple PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_comment PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_ok_marker PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_below_threshold PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_above_threshold PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_skip_non_translatable_input PASSED [ 16%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_no_fuzzy PASSED [ 17%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_allow_fuzzy PASSED [ 17%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_mark_active PASSED [ 17%] 592s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_help PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OO::test_convertoo PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OO::test_pofilter PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_simple PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_escape PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_quotes PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_spaces PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OO::test_default_timestamp PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OO::test_escape_conversion PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes2 PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_convertoo PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_pofilter PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_simple PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_quotes PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_spaces PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_escape_conversion PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes2 PASSED [ 17%] 592s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_help PASSED [ 17%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp PASSED [ 17%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_notemplate PASSED [ 17%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_empty_template PASSED [ 17%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_simple PASSED [ 17%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_space_preservation PASSED [ 17%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_preserve_unused_statement PASSED [ 17%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_not_translated_multiline PASSED [ 17%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_blank_entries PASSED [ 17%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_fuzzy PASSED [ 17%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_locations_with_spaces PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_inline_comments PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_block_comments PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_variables PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_multiline PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_hash_comment PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_arrays PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_nested_array PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_unnamed_nested_arrays PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template XFAIL [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_notemplate PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_empty_template PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_simple PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_space_preservation PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_preserve_unused_statement PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_not_translated_multiline PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_blank_entries PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_fuzzy PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_locations_with_spaces PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_inline_comments PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_block_comments PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_variables PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_multiline PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_hash_comment PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_arrays PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_nested_array PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_unnamed_nested_arrays PASSED [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template XFAIL [ 18%] 592s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_help PASSED [ 18%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_simple PASSED [ 18%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated PASSED [ 18%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_hard_newlines_preserved PASSED [ 18%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_space_preservation PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_value PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_separator PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank_entries PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_fuzzy PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_margin_whitespace PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_all_whitespace PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_propertyless_template PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_delimiters PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_empty_value PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_personalities PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_simple PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline2 PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_comments PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_unchanged PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gaia_plurals PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_duplicates PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gwt_plurals PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_simple PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_hard_newlines_preserved PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_space_preservation PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_value PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_separator PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank_entries PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_fuzzy PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_margin_whitespace PASSED [ 19%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_all_whitespace PASSED [ 20%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_propertyless_template PASSED [ 20%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_delimiters PASSED [ 20%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_empty_value PASSED [ 20%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_personalities PASSED [ 20%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_simple PASSED [ 20%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline PASSED [ 20%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline2 PASSED [ 20%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_comments PASSED [ 20%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_unchanged PASSED [ 20%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank PASSED [ 20%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gaia_plurals PASSED [ 20%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_duplicates PASSED [ 20%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gwt_plurals PASSED [ 20%] 592s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_help PASSED [ 20%] 592s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_help PASSED [ 20%] 592s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert PASSED [ 20%] 592s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_quotes PASSED [ 20%] 592s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment PASSED [ 20%] 592s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_dos_eol PASSED [ 20%] 592s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_double_string PASSED [ 20%] 592s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_popup PASSED [ 20%] 592s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_discardable PASSED [ 20%] 592s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_menuex PASSED [ 20%] 592s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_newlines PASSED [ 20%] 592s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_after PASSED [ 20%] 592s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_block_language PASSED [ 20%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_simpleunit PASSED [ 20%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_basic PASSED [ 20%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_multiline PASSED [ 20%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapednewlines PASSED [ 20%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedtabs PASSED [ 20%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedquotes PASSED [ 20%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_exclusions PASSED [ 20%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingcomment PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingcomment PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingduplicatecomment PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingcomment PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_existingcomments PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_simpleunit PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_basic PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_multiline PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapednewlines PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedtabs PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedquotes PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_exclusions PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingcomment PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingcomment PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingduplicatecomment PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingcomment PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_existingcomments PASSED [ 21%] 592s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_help PASSED [ 21%] 592s tests/translate/convert/test_po2sub.py::TestPO2Sub::test_subrip PASSED [ 21%] 592s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_subrip PASSED [ 21%] 592s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_help PASSED [ 21%] 592s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_empty PASSED [ 22%] 592s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert PASSED [ 22%] 592s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_marked_untranslated PASSED [ 22%] 592s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_empty PASSED [ 22%] 592s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert PASSED [ 22%] 592s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_marked_untranslated PASSED [ 22%] 592s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_help PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_basic PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcelanguage PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_targetlanguage PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_multiline PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapednewlines PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedtabs PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedquotes PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_exclusions PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonascii PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonecomments PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_otherscomments PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcecomments PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_typecomments PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_basic PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcelanguage PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_targetlanguage PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_multiline PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapednewlines PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedtabs PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedquotes PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_exclusions PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonascii PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonecomments PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_otherscomments PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcecomments PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_typecomments PASSED [ 22%] 592s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_help PASSED [ 22%] 592s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simpleunit PASSED [ 23%] 592s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simple_unicode_unit PASSED [ 23%] 592s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fullunit PASSED [ 23%] 592s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fuzzyunit PASSED [ 23%] 592s tests/translate/convert/test_po2ts.py::TestPO2TS::test_obsolete PASSED [ 23%] 592s tests/translate/convert/test_po2ts.py::TestPO2TS::test_duplicates PASSED [ 23%] 592s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak PASSED [ 23%] 592s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak_consecutive PASSED [ 23%] 592s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simpleunit PASSED [ 23%] 592s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simple_unicode_unit PASSED [ 23%] 592s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fullunit PASSED [ 23%] 592s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fuzzyunit PASSED [ 23%] 592s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_obsolete PASSED [ 23%] 592s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_duplicates PASSED [ 23%] 592s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak PASSED [ 23%] 592s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak_consecutive PASSED [ 23%] 592s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_help PASSED [ 23%] 592s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_basic PASSED [ 23%] 592s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_nonascii PASSED [ 23%] 592s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_blank_handling PASSED [ 23%] 592s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_fuzzy_handling PASSED [ 23%] 592s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_obsolete_ignore PASSED [ 23%] 592s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_header_ignore PASSED [ 23%] 592s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_below_threshold PASSED [ 23%] 592s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_above_threshold PASSED [ 23%] 592s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_basic PASSED [ 23%] 592s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_nonascii PASSED [ 23%] 592s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_blank_handling PASSED [ 23%] 592s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_fuzzy_handling PASSED [ 23%] 593s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_obsolete_ignore PASSED [ 23%] 593s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_header_ignore PASSED [ 23%] 593s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_below_threshold PASSED [ 23%] 593s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_above_threshold PASSED [ 23%] 593s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_help PASSED [ 24%] 593s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_basic PASSED [ 24%] 593s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_unicode PASSED [ 24%] 593s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_ordering_serialize PASSED [ 24%] 593s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_markmin PASSED [ 24%] 593s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_minimal PASSED [ 24%] 593s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_basic PASSED [ 24%] 593s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_multiline PASSED [ 24%] 593s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapednewlines PASSED [ 24%] 593s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedtabs PASSED [ 24%] 593s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedquotes PASSED [ 24%] 593s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_locationcomments PASSED [ 24%] 593s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_othercomments PASSED [ 24%] 593s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_automaticcomments PASSED [ 24%] 593s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_header PASSED [ 24%] 593s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_fuzzy PASSED [ 24%] 593s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_germanic_plurals PASSED [ 24%] 593s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_funny_plurals PASSED [ 24%] 593s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_language_tags PASSED [ 24%] 593s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_variables PASSED [ 24%] 593s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_approved PASSED [ 24%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_empty_PO PASSED [ 24%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_no_templates PASSED [ 24%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple_output PASSED [ 24%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple PASSED [ 24%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_translated PASSED [ 24%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_no_fuzzy PASSED [ 24%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_allow_fuzzy PASSED [ 24%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_nested PASSED [ 24%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_below_threshold PASSED [ 24%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_above_threshold PASSED [ 24%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_empty_PO PASSED [ 24%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_no_templates PASSED [ 24%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple_output PASSED [ 25%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple PASSED [ 25%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_translated PASSED [ 25%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_no_fuzzy PASSED [ 25%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_allow_fuzzy PASSED [ 25%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_nested PASSED [ 25%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_below_threshold PASSED [ 25%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_above_threshold PASSED [ 25%] 593s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_help PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank_plurals PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_simple PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_messages_marked_fuzzy PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals_with_fuzzy_matching PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change XFAIL [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_change PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_and_whitespace_change PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_ambiguous_with_disambiguous PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes XFAIL [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently XFAIL [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_dont_duplicate PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_new_overides_old PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments_with_blank_comment_lines PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_commentlines PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgidcomments PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_with_msgidcomment PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_obsoleting_messages PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_not_obsoleting_empty_messages PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_new_before_obsolete PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_header_initialisation PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments PASSED [ 25%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_typecomments PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt_multiline PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_location PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_id PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_msgid PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_migrate_msgidcomment_to_msgctxt PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_obsolete_msgctxt PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_small_strings PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank_plurals PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_simple PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_messages_marked_fuzzy PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change XFAIL [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_change PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_and_whitespace_change PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_ambiguous_with_disambiguous PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes XFAIL [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently XFAIL [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_new_overides_old PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments_with_blank_comment_lines PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_commentlines PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgidcomments PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_with_msgidcomment PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_obsoleting_messages PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_not_obsoleting_empty_messages PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_new_before_obsolete PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_header_initialisation PASSED [ 26%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments PASSED [ 27%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_typecomments PASSED [ 27%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt PASSED [ 27%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt_multiline PASSED [ 27%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_location PASSED [ 27%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_id PASSED [ 27%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_msgid PASSED [ 27%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_migrate_msgidcomment_to_msgctxt PASSED [ 27%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_obsolete_msgctxt PASSED [ 27%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_small_strings PASSED [ 27%] 593s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_help PASSED [ 27%] 593s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_no_endlines_added PASSED [ 27%] 593s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_uncomment_contributors PASSED [ 27%] 593s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_multiline_comment_newlines PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_simpleentry PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_convertprop PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_value_entry PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_separator_entry PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_end_of_string PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_start_of_value PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unicode PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_escaping PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_comments PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_comments PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_folding_accesskeys PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_dont_translate PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty_translated PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_newlines_in_value PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_header_comments PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unassociated_comment_order PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_x_header PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gaia_plurals PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_successive_gaia_plurals PASSED [ 27%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_duplicate_keys PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gwt_plurals PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_simpleentry PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_convertprop PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_value_entry PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_separator_entry PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_end_of_string PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_start_of_value PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unicode PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_escaping PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_comments PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_comments PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_folding_accesskeys PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_dont_translate PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty_translated PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_newlines_in_value PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_header_comments PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unassociated_comment_order PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_x_header PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gaia_plurals PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_successive_gaia_plurals PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_duplicate_keys PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gwt_plurals PASSED [ 28%] 593s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_help PASSED [ 28%] 593s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_help PASSED [ 28%] 593s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert PASSED [ 28%] 593s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 PASSED [ 28%] 593s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong PASSED [ 28%] 593s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 PASSED [ 28%] 593s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex PASSED [ 28%] 593s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_simple PASSED [ 28%] 593s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_multiple_units PASSED [ 28%] 593s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_automaticcomments PASSED [ 29%] 593s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_translatorcomments PASSED [ 29%] 593s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_locations PASSED [ 29%] 593s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple PASSED [ 29%] 593s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_multiple_units PASSED [ 29%] 593s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_automaticcomments PASSED [ 29%] 593s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_translatorcomments PASSED [ 29%] 593s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_locations PASSED [ 29%] 593s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_help PASSED [ 29%] 593s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot PASSED [ 29%] 593s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po PASSED [ 29%] 593s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates PASSED [ 29%] 593s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_convert_empty PASSED [ 29%] 593s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_defaults PASSED [ 29%] 593s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_includeunused PASSED [ 29%] 593s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_convert_empty PASSED [ 29%] 593s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_defaults PASSED [ 29%] 593s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_includeunused PASSED [ 29%] 593s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_help PASSED [ 29%] 593s tests/translate/convert/test_ts2po.py::TestTS2PO::test_blank PASSED [ 29%] 593s tests/translate/convert/test_ts2po.py::TestTS2PO::test_basic PASSED [ 29%] 593s tests/translate/convert/test_ts2po.py::TestTS2PO::test_unfinished PASSED [ 29%] 593s tests/translate/convert/test_ts2po.py::TestTS2PO::test_multiline PASSED [ 29%] 593s tests/translate/convert/test_ts2po.py::TestTS2PO::test_obsolete PASSED [ 29%] 593s tests/translate/convert/test_ts2po.py::TestTS2PO::test_comment PASSED [ 29%] 593s tests/translate/convert/test_ts2po.py::TestTS2PO::test_extracomment PASSED [ 29%] 593s tests/translate/convert/test_ts2po.py::TestTS2PO::test_emptycontext PASSED [ 29%] 593s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_blank PASSED [ 29%] 593s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_basic PASSED [ 29%] 593s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_unfinished PASSED [ 29%] 593s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_multiline PASSED [ 29%] 593s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_obsolete PASSED [ 29%] 593s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_comment PASSED [ 29%] 593s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_extracomment PASSED [ 30%] 593s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_emptycontext PASSED [ 30%] 593s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_help PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_convert_empty PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_keep_duplicates PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_drop_duplicates PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_simple PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_multiple_units PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_carriage_return PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_merge PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_no_segmentation PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestDoku2po::test_convert_empty PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestDoku2po::test_keep_duplicates PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestDoku2po::test_drop_duplicates PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestDoku2po::test_basic PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestDoku2po::test_bullet_list PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestDoku2po::test_numbered_list PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestDoku2po::test_spacing PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestDoku2po::test_merge PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_convert_empty PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_keep_duplicates PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_drop_duplicates PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_simple PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_multiple_units PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_carriage_return PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_merge PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_no_segmentation PASSED [ 30%] 593s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_help PASSED [ 30%] 593s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_basic PASSED [ 30%] 593s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_unicode PASSED [ 30%] 593s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_markmin PASSED [ 30%] 593s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_help PASSED [ 30%] 593s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert PASSED [ 30%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_minimal PASSED [ 30%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_basic PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_translatorcomments PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_autocomment PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_locations PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_fuzzy PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_plurals PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_minimal PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_basic PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_translatorcomments PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_autocomment PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_locations PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_fuzzy PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_plurals PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_help PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_simple_convert PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_minimal PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_basic PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_translatorcomments PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_autocomment PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_locations PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_fuzzy PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_plurals PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_help PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po PASSED [ 31%] 593s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates PASSED [ 31%] 593s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_empty_YAML PASSED [ 31%] 593s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple_output PASSED [ 31%] 593s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple PASSED [ 31%] 593s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_nested PASSED [ 31%] 593s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates XFAIL [ 31%] 593s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_with_template PASSED [ 31%] 593s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_empty_YAML PASSED [ 32%] 593s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple_output PASSED [ 32%] 593s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple PASSED [ 32%] 593s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_nested PASSED [ 32%] 594s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates XFAIL [ 32%] 594s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_with_template PASSED [ 32%] 594s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_help PASSED [ 32%] 594s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_empty_target PASSED [ 32%] 594s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_ellipsis PASSED [ 32%] 594s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_spacestart_spaceend PASSED [ 32%] 594s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_start_capitals PASSED [ 32%] 594s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_end_punc PASSED [ 32%] 594s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_combinations PASSED [ 32%] 594s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_nothing_to_do PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_defaults PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_construct PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_accelerator_markers PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_messages PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_accelerators PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_acceleratedvariables XFAIL [ 32%] 594s tests/translate/filters/test_checks.py::test_acronyms PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_blank PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_brackets PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_compendiumconflicts PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_doublequoting PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_doublespacing PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_doublewords PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_endpunc PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_endwhitespace PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_escapes PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_newlines PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_tabs PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_filepaths PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_kdecomments PASSED [ 32%] 594s tests/translate/filters/test_checks.py::test_long PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_musttranslatewords XFAIL [ 33%] 594s tests/translate/filters/test_checks.py::test_notranslatewords PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_numbers PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_persian_numbers PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_bengali_numbers PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_arabic_numbers PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_assamese_numbers PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_options PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_printf PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_pythonbraceformat PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_puncspacing PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_purepunc PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_sentencecount PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_short PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_singlequoting PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_vietnamese_singlequoting PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time XFAIL [ 33%] 594s tests/translate/filters/test_checks.py::test_persian_quoting PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_simplecaps PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_spellcheck SKIPPED (Spe...) [ 33%] 594s tests/translate/filters/test_checks.py::test_startcaps PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_startpunc PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_startwhitespace PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_unchanged PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_untranslated PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_validchars PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_minimalchecker PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_reducedchecker PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_variables_kde PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_variables_gnome PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_variables_mozilla PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_variables_openoffice PASSED [ 33%] 594s tests/translate/filters/test_checks.py::test_variables_cclicense PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_variables_ios PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_xmltags PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags XFAIL [ 34%] 594s tests/translate/filters/test_checks.py::test_ooxmltags PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_functions PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_emails PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_urls PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_simpleplurals PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_nplurals PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_credits PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_gconf PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_validxml PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_hassuggestion PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_dialogsizes PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_mozilla_no_accelerators_for_indic PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_ensure_bengali_languages_script_is_correct PASSED [ 34%] 594s tests/translate/filters/test_checks.py::test_category PASSED [ 34%] 594s tests/translate/filters/test_decoration.py::test_spacestart PASSED [ 34%] 594s tests/translate/filters/test_decoration.py::test_isvalidaccelerator PASSED [ 34%] 594s tests/translate/filters/test_decoration.py::test_find_marked_variables PASSED [ 34%] 594s tests/translate/filters/test_decoration.py::test_getnumbers PASSED [ 34%] 594s tests/translate/filters/test_decoration.py::test_getfunctions PASSED [ 34%] 594s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplepass PASSED [ 34%] 594s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplefail PASSED [ 34%] 594s tests/translate/filters/test_pofilter.py::TestPOFilter::test_variables_across_lines PASSED [ 34%] 594s tests/translate/filters/test_pofilter.py::TestPOFilter::test_ignore_if_already_marked PASSED [ 34%] 594s tests/translate/filters/test_pofilter.py::TestPOFilter::test_non_existant_check PASSED [ 34%] 594s tests/translate/filters/test_pofilter.py::TestPOFilter::test_list_all_tests PASSED [ 34%] 594s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_fuzzy PASSED [ 34%] 594s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_review PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isfuzzy PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isreview PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestPOFilter::test_notes PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestPOFilter::test_unicode PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestPOFilter::test_preconditions PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestPOFilter::test_msgid_comments PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplepass PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplefail PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_variables_across_lines PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_ignore_if_already_marked PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_non_existant_check PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_list_all_tests PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_fuzzy PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_review PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isfuzzy PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isreview PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_notes PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_unicode PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_preconditions PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplepass PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplefail PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_variables_across_lines PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_ignore_if_already_marked PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_non_existant_check PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_list_all_tests PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_notes PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_unicode PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_preconditions PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_fuzzy PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_review PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isfuzzy PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isreview PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplepass PASSED [ 35%] 594s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplefail PASSED [ 36%] 594s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_variables_across_lines PASSED [ 36%] 594s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_ignore_if_already_marked PASSED [ 36%] 594s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_non_existant_check PASSED [ 36%] 594s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_list_all_tests PASSED [ 36%] 594s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_fuzzy PASSED [ 36%] 594s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_review PASSED [ 36%] 594s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isfuzzy PASSED [ 36%] 594s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isreview PASSED [ 36%] 594s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_notes PASSED [ 36%] 594s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_unicode PASSED [ 36%] 594s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_preconditions PASSED [ 36%] 594s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_msgid_comments PASSED [ 36%] 594s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_cedillas PASSED [ 36%] 594s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_niciun PASSED [ 36%] 594s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_nicio PASSED [ 36%] 594s tests/translate/filters/test_prefilters.py::test_removekdecomments PASSED [ 36%] 594s tests/translate/filters/test_prefilters.py::test_filterwordswithpunctuation PASSED [ 36%] 594s tests/translate/lang/test_af.py::test_sentences PASSED [ 36%] 594s tests/translate/lang/test_af.py::test_capsstart PASSED [ 36%] 594s tests/translate/lang/test_af.py::test_transliterate_cyrillic PASSED [ 36%] 594s tests/translate/lang/test_am.py::test_punctranslate PASSED [ 36%] 594s tests/translate/lang/test_am.py::test_sentences PASSED [ 36%] 594s tests/translate/lang/test_ar.py::test_punctranslate PASSED [ 36%] 594s tests/translate/lang/test_ar.py::test_sentences PASSED [ 36%] 594s tests/translate/lang/test_common.py::test_characters PASSED [ 36%] 594s tests/translate/lang/test_common.py::test_words PASSED [ 36%] 594s tests/translate/lang/test_common.py::test_word_khmer XFAIL (ZWS is n...) [ 36%] 594s tests/translate/lang/test_common.py::test_sentences PASSED [ 36%] 594s tests/translate/lang/test_common.py::test_capsstart PASSED [ 36%] 594s tests/translate/lang/test_common.py::test_numstart PASSED [ 36%] 594s tests/translate/lang/test_common.py::test_punctranslate PASSED [ 36%] 594s tests/translate/lang/test_common.py::test_length_difference PASSED [ 36%] 594s tests/translate/lang/test_common.py::test_alter_length PASSED [ 37%] 594s tests/translate/lang/test_data.py::test_normalise_code PASSED [ 37%] 594s tests/translate/lang/test_data.py::test_simplify_to_common PASSED [ 37%] 594s tests/translate/lang/test_el.py::test_punctranslate PASSED [ 37%] 594s tests/translate/lang/test_el.py::test_sentences PASSED [ 37%] 594s tests/translate/lang/test_es.py::test_punctranslate PASSED [ 37%] 594s tests/translate/lang/test_es.py::test_sentences PASSED [ 37%] 594s tests/translate/lang/test_fa.py::test_punctranslate PASSED [ 37%] 594s tests/translate/lang/test_fa.py::test_sentences PASSED [ 37%] 594s tests/translate/lang/test_factory.py::test_getlanguage PASSED [ 37%] 594s tests/translate/lang/test_factory.py::test_get_all_languages PASSED [ 37%] 594s tests/translate/lang/test_fr.py::test_punctranslate PASSED [ 37%] 594s tests/translate/lang/test_fr.py::test_sentences PASSED [ 37%] 594s tests/translate/lang/test_hy.py::test_punctranslate PASSED [ 37%] 594s tests/translate/lang/test_hy.py::test_sentences PASSED [ 37%] 594s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_lang PASSED [ 37%] 594s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_store PASSED [ 37%] 594s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_bad_init_data PASSED [ 37%] 594s tests/translate/lang/test_ja.py::test_punctranslate PASSED [ 37%] 594s tests/translate/lang/test_ja.py::test_sentences PASSED [ 37%] 594s tests/translate/lang/test_km.py::test_punctranslate PASSED [ 37%] 594s tests/translate/lang/test_km.py::test_sentences PASSED [ 37%] 594s tests/translate/lang/test_ko.py::test_punctranslate PASSED [ 37%] 594s tests/translate/lang/test_ko.py::test_sentences PASSED [ 37%] 594s tests/translate/lang/test_ne.py::test_punctranslate PASSED [ 37%] 594s tests/translate/lang/test_ne.py::test_sentences PASSED [ 37%] 594s tests/translate/lang/test_nqo.py::test_punctranslate PASSED [ 37%] 594s tests/translate/lang/test_nqo.py::test_sentences PASSED [ 37%] 594s tests/translate/lang/test_or.py::test_punctranslate PASSED [ 37%] 594s tests/translate/lang/test_or.py::test_country_code PASSED [ 37%] 594s tests/translate/lang/test_or.py::test_sentences PASSED [ 37%] 594s tests/translate/lang/test_poedit.py::test_isocode PASSED [ 37%] 594s tests/translate/lang/test_ro.py::test_cedillas PASSED [ 37%] 594s tests/translate/lang/test_ro.py::test_niciun PASSED [ 37%] 594s tests/translate/lang/test_scn.py::test_italianisms PASSED [ 38%] 594s tests/translate/lang/test_scn.py::test_vocalism PASSED [ 38%] 594s tests/translate/lang/test_scn.py::test_suffixes PASSED [ 38%] 594s tests/translate/lang/test_team.py::test_simple PASSED [ 38%] 594s tests/translate/lang/test_th.py::test_punctranslate PASSED [ 38%] 594s tests/translate/lang/test_th.py::test_sentences PASSED [ 38%] 594s tests/translate/lang/test_tr.py::test_sentences PASSED [ 38%] 594s tests/translate/lang/test_uk.py::test_sentences PASSED [ 38%] 594s tests/translate/lang/test_vi.py::test_punctranslate PASSED [ 38%] 594s tests/translate/lang/test_vi.py::test_sentences PASSED [ 38%] 594s tests/translate/lang/test_zh.py::test_punctranslate PASSED [ 38%] 594s tests/translate/lang/test_zh.py::test_sentences PASSED [ 38%] 594s tests/translate/misc/test_deprecation.py::TestDeprecation::test_deprecated_decorator PASSED [ 38%] 594s tests/translate/misc/test_deprecation.py::TestDeprecation::test_no_deprecated_decorator PASSED [ 38%] 594s tests/translate/misc/test_dictutils.py::test_cidict_has_key PASSED [ 38%] 594s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor PASSED [ 38%] 594s tests/translate/misc/test_multistring.py::TestMultistring::test_repr PASSED [ 38%] 594s tests/translate/misc/test_multistring.py::TestMultistring::test_replace PASSED [ 38%] 594s tests/translate/misc/test_multistring.py::TestMultistring::test_comparison PASSED [ 38%] 594s tests/translate/misc/test_multistring.py::TestMultistring::test_coercion PASSED [ 38%] 594s tests/translate/misc/test_multistring.py::TestMultistring::test_unicode_coercion PASSED [ 38%] 594s tests/translate/misc/test_multistring.py::TestMultistring::test_list_coercion PASSED [ 38%] 594s tests/translate/misc/test_multistring.py::TestMultistring::test_multistring_hash PASSED [ 38%] 594s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_splitext PASSED [ 38%] 594s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_outputfile_receives_bytes PASSED [ 38%] 594s tests/translate/misc/test_progressbar.py::test_hashprogressbar PASSED [ 38%] 594s tests/translate/misc/test_quote.py::test_find_all PASSED [ 38%] 594s tests/translate/misc/test_quote.py::test_extract PASSED [ 38%] 594s tests/translate/misc/test_quote.py::test_extractwithoutquotes PASSED [ 38%] 594s tests/translate/misc/test_quote.py::test_extractwithoutquotes_passfunc PASSED [ 38%] 594s tests/translate/misc/test_quote.py::test_stripcomment PASSED [ 38%] 594s tests/translate/misc/test_quote.py::TestEncoding::test_javapropertiesencode PASSED [ 38%] 594s tests/translate/misc/test_quote.py::TestEncoding::test_java_utf8_properties_encode PASSED [ 38%] 594s tests/translate/misc/test_quote.py::TestEncoding::test_escapespace PASSED [ 39%] 594s tests/translate/misc/test_quote.py::TestEncoding::test_mozillaescapemarginspaces PASSED [ 39%] 594s tests/translate/misc/test_quote.py::TestEncoding::test_mozilla_control_escapes PASSED [ 39%] 594s tests/translate/misc/test_quote.py::TestEncoding::test_propertiesdecode PASSED [ 39%] 594s tests/translate/misc/test_quote.py::TestEncoding::test_controlchars PASSED [ 39%] 594s tests/translate/misc/test_quote.py::TestEncoding::test_properties_decode_slashu PASSED [ 39%] 594s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding PASSED [ 39%] 594s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_existing_entities PASSED [ 39%] 594s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_passthrough PASSED [ 39%] 594s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_nonentities PASSED [ 39%] 594s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_four_spaces PASSED [ 39%] 594s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_tab PASSED [ 39%] 594s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_distance PASSED [ 39%] 594s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_similarity PASSED [ 39%] 594s tests/translate/search/test_lshtein.py::TestLevenshtein::test_long_similarity PASSED [ 39%] 594s tests/translate/search/test_match.py::TestMatch::test_matching PASSED [ 39%] 594s tests/translate/search/test_match.py::TestMatch::test_multiple_store PASSED [ 39%] 594s tests/translate/search/test_match.py::TestMatch::test_extendtm PASSED [ 39%] 594s tests/translate/search/test_match.py::TestMatch::test_terminology PASSED [ 39%] 594s tests/translate/search/test_match.py::TestMatch::test_brackets PASSED [ 39%] 594s tests/translate/search/test_match.py::TestMatch::test_past_tences PASSED [ 39%] 594s tests/translate/search/test_match.py::TestMatch::test_space_mismatch PASSED [ 39%] 594s tests/translate/search/test_match.py::TestMatch::test_hyphen_mismatch PASSED [ 39%] 594s tests/translate/search/test_terminology.py::TestTerminology::test_basic PASSED [ 39%] 595s tests/translate/services/test_tmserver.py::TestTMServer::test_import PASSED [ 39%] 595s tests/translate/services/test_tmserver.py::TestTMServer::test_server PASSED [ 39%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_parse PASSED [ 39%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_tree PASSED [ 39%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_add PASSED [ 39%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_contains PASSED [ 39%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getitem PASSED [ 39%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getslice PASSED [ 39%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_iter PASSED [ 39%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_len PASSED [ 40%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_mul PASSED [ 40%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_offset PASSED [ 40%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_at_offset PASSED [ 40%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find PASSED [ 40%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find_elems_with PASSED [ 40%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_flatten PASSED [ 40%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case1 PASSED [ 40%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case2 PASSED [ 40%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case3 PASSED [ 40%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case4 PASSED [ 40%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_insert PASSED [ 40%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_isleaf PASSED [ 40%] 595s tests/translate/storage/placeables/test_base.py::TestStringElem::test_prune PASSED [ 40%] 595s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_base_placeables PASSED [ 40%] 595s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables XFAIL [ 40%] 595s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables XFAIL [ 40%] 595s tests/translate/storage/placeables/test_general.py::test_placeable_numbers PASSED [ 40%] 595s tests/translate/storage/placeables/test_general.py::test_placeable_newline PASSED [ 40%] 595s tests/translate/storage/placeables/test_general.py::test_placeable_alt_attr PASSED [ 40%] 595s tests/translate/storage/placeables/test_general.py::test_placeable_qt_formatting PASSED [ 40%] 595s tests/translate/storage/placeables/test_general.py::test_placeable_camelcase PASSED [ 40%] 595s tests/translate/storage/placeables/test_general.py::test_placeable_space PASSED [ 40%] 595s tests/translate/storage/placeables/test_general.py::test_placeable_punctuation PASSED [ 40%] 595s tests/translate/storage/placeables/test_general.py::test_placeable_xml_entity PASSED [ 40%] 595s tests/translate/storage/placeables/test_general.py::test_placeable_xml_tag PASSED [ 40%] 595s tests/translate/storage/placeables/test_general.py::test_placeable_option PASSED [ 40%] 595s tests/translate/storage/placeables/test_general.py::test_placeable_file PASSED [ 40%] 595s tests/translate/storage/placeables/test_general.py::test_placeable_email PASSED [ 40%] 595s tests/translate/storage/placeables/test_general.py::test_placeable_caps PASSED [ 40%] 595s tests/translate/storage/placeables/test_general.py::test_placeable_formatting PASSED [ 40%] 595s tests/translate/storage/placeables/test_general.py::test_placeable_doubleat PASSED [ 40%] 595s tests/translate/storage/placeables/test_general.py::test_placeable_brace PASSED [ 40%] 595s tests/translate/storage/placeables/test_general.py::test_python_placeable PASSED [ 40%] 595s tests/translate/storage/placeables/test_lisa.py::test_xml_to_strelem PASSED [ 41%] 595s tests/translate/storage/placeables/test_lisa.py::test_xml_space PASSED [ 41%] 595s tests/translate/storage/placeables/test_lisa.py::test_chunk_list PASSED [ 41%] 595s tests/translate/storage/placeables/test_lisa.py::test_set_strelem_to_xml PASSED [ 41%] 595s tests/translate/storage/placeables/test_lisa.py::test_unknown_xml_placeable PASSED [ 41%] 595s tests/translate/storage/placeables/test_terminology.py::TestTerminologyPlaceable::test_simple_terminology PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_isfuzzy PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_create PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_eq PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escapes PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_difficult_escapes PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_note_sanity PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_target PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_get PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_set PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quotes_with_newline PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline_in_xml PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_twitter PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quote PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_question PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_double_space PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_leading_space PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_tailing_space PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_xml_entities PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote_newline PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_arrows PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link_and_text PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_blank_string PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_escape_message_with_newline PASSED [ 41%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_invalid_lang PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_quote PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_leading_space PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_trailing_space PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_with_ampersand PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_double_space PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_deep_double_space PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_complex_xml PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quoted_newlines PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline_in_xml PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_twitter PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_question PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quote PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_space PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_space PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_newlines PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_xml_entities PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_code PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_arrows PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link_and_text PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_space PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_spaces PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_spaces PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_newline PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_many_quotes PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string_again PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_quotes_string PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_newline_in_string PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_not_translatable_string PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_newline PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_comments PASSED [ 42%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_quote PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space_quoted PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space_quoted PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_with_ampersand PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_double_space_quoted PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_deep_double_space_quoted PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_complex_xml PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unicode PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_unescaped PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_alone PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_full PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_create_blank PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_remove PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_find PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_parse PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_files PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_save PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_extensions PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_mimetypes PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translate PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_nonascii PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_default_handlings PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_invalid_filename PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_namespaces PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_serialize PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add_formatting PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity PASSED [ 43%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_invalid_entity PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_indent PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_markup PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_noedit PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_remove PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_set PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_others PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_quotes_set PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_g PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_namespace PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_zh_hk PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_b_zh_hk PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_missing_plural PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_removeunit PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_prefix PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_rtl PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_isfuzzy PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_create PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_eq PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_escapes PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_difficult_escapes PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_note_sanity PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_target PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_get PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_set PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_create_blank PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_add PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_remove PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_find PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_parse PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_files PASSED [ 44%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_save PASSED [ 45%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_extensions PASSED [ 45%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_mimetypes PASSED [ 45%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_translate PASSED [ 45%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_markup PASSED [ 45%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_nonascii PASSED [ 45%] 595s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_plural PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationUnit::test_isfuzzy PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationUnit::test_create PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationUnit::test_eq PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationUnit::test_target PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationUnit::test_escapes PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationUnit::test_difficult_escapes PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationUnit::test_note_sanity PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_get PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_set PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationStore::test_create_blank PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationStore::test_add PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationStore::test_remove PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationStore::test_find PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationStore::test_translate PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationStore::test_parse PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationStore::test_files PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationStore::test_save PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationStore::test_markup PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationStore::test_nonascii PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationStore::test_extensions PASSED [ 45%] 595s tests/translate/storage/test_base.py::TestTranslationStore::test_mimetypes PASSED [ 45%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_isfuzzy PASSED [ 45%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_create PASSED [ 45%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_eq PASSED [ 45%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_target PASSED [ 45%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_escapes PASSED [ 45%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_get PASSED [ 45%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_set PASSED [ 46%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_difficult_escapes PASSED [ 46%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_newlines PASSED [ 46%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_istranslated PASSED [ 46%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_note_sanity PASSED [ 46%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_create_blank PASSED [ 46%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_add PASSED [ 46%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_remove PASSED [ 46%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_find PASSED [ 46%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_translate PASSED [ 46%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_parse PASSED [ 46%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_files PASSED [ 46%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_save PASSED [ 46%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_markup PASSED [ 46%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_nonascii PASSED [ 46%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_extensions PASSED [ 46%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_mimetypes PASSED [ 46%] 595s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_checksum PASSED [ 46%] 595s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_isfuzzy PASSED [ 46%] 595s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_create PASSED [ 46%] 595s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_eq PASSED [ 46%] 595s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_target PASSED [ 46%] 595s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_escapes PASSED [ 46%] 595s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_difficult_escapes PASSED [ 46%] 595s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_note_sanity PASSED [ 46%] 595s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_get PASSED [ 46%] 595s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_set PASSED [ 46%] 595s tests/translate/storage/test_csvl10n.py::TestCSV::test_create_blank PASSED [ 46%] 595s tests/translate/storage/test_csvl10n.py::TestCSV::test_add PASSED [ 46%] 595s tests/translate/storage/test_csvl10n.py::TestCSV::test_remove PASSED [ 46%] 595s tests/translate/storage/test_csvl10n.py::TestCSV::test_find PASSED [ 46%] 595s tests/translate/storage/test_csvl10n.py::TestCSV::test_translate PASSED [ 46%] 595s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse PASSED [ 46%] 595s tests/translate/storage/test_csvl10n.py::TestCSV::test_files PASSED [ 47%] 595s tests/translate/storage/test_csvl10n.py::TestCSV::test_save PASSED [ 47%] 595s tests/translate/storage/test_csvl10n.py::TestCSV::test_markup PASSED [ 47%] 595s tests/translate/storage/test_csvl10n.py::TestCSV::test_nonascii PASSED [ 47%] 595s tests/translate/storage/test_csvl10n.py::TestCSV::test_extensions PASSED [ 47%] 595s tests/translate/storage/test_csvl10n.py::TestCSV::test_mimetypes PASSED [ 47%] 595s tests/translate/storage/test_csvl10n.py::TestCSV::test_singlequoting PASSED [ 47%] 595s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8 PASSED [ 47%] 596s tests/translate/storage/test_csvl10n.py::TestCSV::test_dialect PASSED [ 47%] 596s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_sig PASSED [ 47%] 596s tests/translate/storage/test_csvl10n.py::TestCSV::test_default PASSED [ 47%] 596s tests/translate/storage/test_csvl10n.py::TestCSV::test_location_is_parsed PASSED [ 47%] 596s tests/translate/storage/test_csvl10n.py::TestCSV::test_context_is_parsed PASSED [ 47%] 596s tests/translate/storage/test_csvl10n.py::TestCSV::test_newline PASSED [ 47%] 596s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse_sample PASSED [ 47%] 596s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_detection PASSED [ 47%] 596s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding PASSED [ 47%] 596s tests/translate/storage/test_csvl10n.py::TestCSV::test_corrupt PASSED [ 47%] 596s tests/translate/storage/test_directory.py::TestDirectory::test_created PASSED [ 47%] 596s tests/translate/storage/test_directory.py::TestDirectory::test_basic PASSED [ 47%] 596s tests/translate/storage/test_directory.py::TestDirectory::test_structure PASSED [ 47%] 596s tests/translate/storage/test_directory.py::TestDirectory::test_getunits PASSED [ 47%] 596s tests/translate/storage/test_dtd.py::test_roundtrip_quoting PASSED [ 47%] 596s tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases XFAIL [ 47%] 596s tests/translate/storage/test_dtd.py::test_quotefordtd PASSED [ 47%] 596s tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases XFAIL [ 47%] 596s tests/translate/storage/test_dtd.py::test_unquotefromdtd PASSED [ 47%] 596s tests/translate/storage/test_dtd.py::test_android_roundtrip_quoting PASSED [ 47%] 596s tests/translate/storage/test_dtd.py::test_quoteforandroid PASSED [ 47%] 596s tests/translate/storage/test_dtd.py::test_unquotefromandroid PASSED [ 47%] 596s tests/translate/storage/test_dtd.py::test_removeinvalidamp PASSED [ 47%] 596s tests/translate/storage/test_dtd.py::TestDTDUnit::test_isfuzzy PASSED [ 47%] 596s tests/translate/storage/test_dtd.py::TestDTDUnit::test_create PASSED [ 47%] 596s tests/translate/storage/test_dtd.py::TestDTDUnit::test_eq PASSED [ 47%] 596s tests/translate/storage/test_dtd.py::TestDTDUnit::test_escapes PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTDUnit::test_difficult_escapes PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTDUnit::test_note_sanity PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTDUnit::test_target PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_get PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_set PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_create_blank PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_add PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_remove PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_find PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_parse PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_files PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_save PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_extensions PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_mimetypes PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_translate PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_markup PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_nonascii PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_blanklines PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity_source PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_hashcomment_source PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_commentclosing PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_commententity PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_newlines_in_entity PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_conflate_comments PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_localisation_notes PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_in_source PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_order_in_source PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_comment_following XFAIL [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_comment_newline_space_closing PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting XFAIL [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_missing_quotes PASSED [ 48%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping PASSED [ 49%] 596s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping_roundtrip PASSED [ 49%] 596s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_create_blank PASSED [ 49%] 596s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_add PASSED [ 49%] 596s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_remove PASSED [ 49%] 596s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_find PASSED [ 49%] 596s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_parse PASSED [ 49%] 596s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_files PASSED [ 49%] 596s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_save PASSED [ 49%] 596s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_extensions PASSED [ 49%] 596s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_mimetypes PASSED [ 49%] 596s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_translate PASSED [ 49%] 596s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_markup PASSED [ 49%] 596s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_nonascii PASSED [ 49%] 596s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape PASSED [ 49%] 596s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape_parse_and_convert_back PASSED [ 49%] 596s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape PASSED [ 49%] 596s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape_parse_and_convert_back PASSED [ 49%] 596s tests/translate/storage/test_factory.py::TestPOFactory::test_getclass PASSED [ 49%] 596s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject_store PASSED [ 49%] 596s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject PASSED [ 49%] 596s tests/translate/storage/test_factory.py::TestPOFactory::test_get_noname_object PASSED [ 49%] 596s tests/translate/storage/test_factory.py::TestPOFactory::test_gzfile PASSED [ 49%] 596s tests/translate/storage/test_factory.py::TestPOFactory::test_bz2file PASSED [ 49%] 596s tests/translate/storage/test_factory.py::TestPOFactory::test_directory PASSED [ 49%] 596s tests/translate/storage/test_factory.py::TestXliffFactory::test_getclass PASSED [ 49%] 596s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject_store PASSED [ 49%] 596s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject PASSED [ 49%] 596s tests/translate/storage/test_factory.py::TestXliffFactory::test_get_noname_object PASSED [ 49%] 596s tests/translate/storage/test_factory.py::TestXliffFactory::test_gzfile PASSED [ 49%] 596s tests/translate/storage/test_factory.py::TestXliffFactory::test_bz2file PASSED [ 49%] 596s tests/translate/storage/test_factory.py::TestXliffFactory::test_directory PASSED [ 49%] 596s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getclass PASSED [ 49%] 596s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject_store PASSED [ 50%] 596s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject PASSED [ 50%] 596s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_get_noname_object PASSED [ 50%] 596s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_gzfile PASSED [ 50%] 596s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_bz2file PASSED [ 50%] 596s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_directory PASSED [ 50%] 596s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getclass PASSED [ 50%] 596s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject_store PASSED [ 50%] 596s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject PASSED [ 50%] 596s tests/translate/storage/test_factory.py::TestWordfastFactory::test_get_noname_object PASSED [ 50%] 596s tests/translate/storage/test_factory.py::TestWordfastFactory::test_gzfile PASSED [ 50%] 596s tests/translate/storage/test_factory.py::TestWordfastFactory::test_bz2file PASSED [ 50%] 596s tests/translate/storage/test_factory.py::TestWordfastFactory::test_directory PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_isfuzzy PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_create PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_eq PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_escapes PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_difficult_escapes PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_note_sanity PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_target PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_get PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_set PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_create_blank PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_add PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_remove PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_find PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_parse PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_files PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_save PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_extensions PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_mimetypes PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_translate PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_markup PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_nonascii PASSED [ 50%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_root_config_detect PASSED [ 51%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_detect PASSED [ 51%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_key_config_detect PASSED [ 51%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_mixed_ok PASSED [ 51%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_namespace_config_detect PASSED [ 51%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_four_spaces PASSED [ 51%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_tab PASSED [ 51%] 596s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_none_linearizes PASSED [ 51%] 596s tests/translate/storage/test_html.py::test_guess_encoding PASSED [ 51%] 596s tests/translate/storage/test_html.py::TestHTMLParsing::test_mismatched_tags PASSED [ 51%] 596s tests/translate/storage/test_html.py::TestHTMLParsing::test_self_closing_tags PASSED [ 51%] 596s tests/translate/storage/test_html.py::TestHTMLParsing::test_escaping_script_and_pre PASSED [ 51%] 596s tests/translate/storage/test_html.py::TestHTMLExtraction::test_strip_html PASSED [ 51%] 596s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_figcaption PASSED [ 51%] 596s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_caption_td_th PASSED [ 51%] 596s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_alt PASSED [ 51%] 596s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_title PASSED [ 51%] 596s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre PASSED [ 51%] 596s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre_code PASSED [ 51%] 596s tests/translate/storage/test_ini.py::TestINIUnit::test_isfuzzy PASSED [ 51%] 596s tests/translate/storage/test_ini.py::TestINIUnit::test_create PASSED [ 51%] 596s tests/translate/storage/test_ini.py::TestINIUnit::test_eq PASSED [ 51%] 596s tests/translate/storage/test_ini.py::TestINIUnit::test_escapes PASSED [ 51%] 596s tests/translate/storage/test_ini.py::TestINIUnit::test_difficult_escapes PASSED [ 51%] 596s tests/translate/storage/test_ini.py::TestINIUnit::test_note_sanity PASSED [ 51%] 596s tests/translate/storage/test_ini.py::TestINIUnit::test_target PASSED [ 51%] 596s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_get PASSED [ 51%] 596s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_set PASSED [ 51%] 596s tests/translate/storage/test_ini.py::TestINIStore::test_create_blank PASSED [ 51%] 596s tests/translate/storage/test_ini.py::TestINIStore::test_add PASSED [ 51%] 596s tests/translate/storage/test_ini.py::TestINIStore::test_remove PASSED [ 51%] 596s tests/translate/storage/test_ini.py::TestINIStore::test_find PASSED [ 51%] 596s tests/translate/storage/test_ini.py::TestINIStore::test_parse PASSED [ 51%] 596s tests/translate/storage/test_ini.py::TestINIStore::test_files PASSED [ 52%] 596s tests/translate/storage/test_ini.py::TestINIStore::test_save PASSED [ 52%] 596s tests/translate/storage/test_ini.py::TestINIStore::test_extensions PASSED [ 52%] 596s tests/translate/storage/test_ini.py::TestINIStore::test_mimetypes PASSED [ 52%] 596s tests/translate/storage/test_ini.py::TestINIStore::test_translate PASSED [ 52%] 596s tests/translate/storage/test_ini.py::TestINIStore::test_markup PASSED [ 52%] 596s tests/translate/storage/test_ini.py::TestINIStore::test_nonascii PASSED [ 52%] 596s tests/translate/storage/test_ini.py::TestINIStore::test_serialize PASSED [ 52%] 596s tests/translate/storage/test_ini.py::TestINIStore::test_rem PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_isfuzzy PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_create PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_eq PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_escapes PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_difficult_escapes PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_note_sanity PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_target PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_get PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_set PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_create_blank PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_remove PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_find PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_parse PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_files PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_save PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_extensions PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_mimetypes PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_translate PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_markup PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_nonascii PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_serialize PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_can_not_detect PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_error PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_filter PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_ordering PASSED [ 52%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_args PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_bom PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex_array PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_list_like PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_blank PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_types PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_null PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_isfuzzy PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_create PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_eq PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_escapes PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_difficult_escapes PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_note_sanity PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_target PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_get PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_set PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_serialize PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_ordering PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_array PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index_nested PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_nested_list_mixed PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_list_to_dict PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_complex_keys PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_other PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0]-expected0] PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0]-expected1] PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0][1][2][3]-expected2] PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test]selection-expected3] PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test][0]selection-expected4] PASSED [ 53%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0][test]selection-expected5] PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[-expected6] PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_isfuzzy PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_create PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_eq PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_escapes PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_difficult_escapes PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_note_sanity PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_target PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_get PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_set PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_create_blank PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_add PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_remove PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_find PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_parse PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_files PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_save PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_extensions PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_mimetypes PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_translate PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_markup PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_nonascii PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize_no_description PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_set_target PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_placeholders PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_create_blank PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_add PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_remove PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_find PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_parse PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_files PASSED [ 54%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_save PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_extensions PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_mimetypes PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_translate PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_markup PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nonascii PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_serialize PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_units PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_plurals PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nested_array PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural_id PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_create_blank PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_add PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_remove PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_find PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_parse PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_files PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_save PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_extensions PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_mimetypes PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_translate PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_markup PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_nonascii PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals_missing PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_case_no_msg PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_complex_id PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_create_blank PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_add PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_remove PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_find PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_parse PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_files PASSED [ 55%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_save PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_extensions PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_mimetypes PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_translate PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_markup PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nonascii PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_serialize PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_units PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_plurals PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nested_array PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_new_plural PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_ru PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_create_blank PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_add PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_remove PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_find PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_parse PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_files PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_save PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_extensions PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_mimetypes PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_translate PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_markup PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nonascii PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_serialize PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_units PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_plurals PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nested_array PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_new_plural PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_ru PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_create_blank PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_add PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_remove PASSED [ 56%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_find PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_parse PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_files PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_save PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_extensions PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_mimetypes PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_translate PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_markup PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_nonascii PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals_missing PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_invalid PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_create_blank PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_add PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_remove PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_find PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_parse PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_files PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_save PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_extensions PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_mimetypes PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_translate PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_markup PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_nonascii PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_1 PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_2 PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_blank PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_missing PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_simplification PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_invalid PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_create_blank PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_add PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_remove PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_find PASSED [ 57%] 596s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_parse PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_files PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_save PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_extensions PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_mimetypes PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_translate PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_markup PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_nonascii PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_roundtrip PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_create_blank PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_add PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_remove PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_find PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_parse PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_files PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_save PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_extensions PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_mimetypes PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_translate PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_markup PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_nonascii PASSED [ 58%] 596s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_roundtrip PASSED [ 58%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_atx_heading PASSED [ 58%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_autolink PASSED [ 58%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_block_quote PASSED [ 58%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_block PASSED [ 58%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_span PASSED [ 58%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_atx_heading PASSED [ 58%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_document PASSED [ 58%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_list_item PASSED [ 58%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_escaped_character PASSED [ 58%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_hard_line_break PASSED [ 58%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_block PASSED [ 58%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_character_entities PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_span PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_image_embedded_in_link PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_collapsed_reference_link PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_full_reference_link PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_shortcut_reference_link PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_merging_of_adjacent_placeholders PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_block_tokens PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_list PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_basic_markup PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_only_whitespace_and_placeholders PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_placeholder_trimming PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image_no_title PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_link PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_text_paragraph PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_remove_placeholders_from_both_ends_of_translation_units PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_setext_heading PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_table_with_header PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_thematic_break PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_hard_line_break_in_translation_unit PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_missing_placeholder PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_duplicate_placeholder PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_extraneous_placeholder PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_reordered_placeholders PASSED [ 59%] 596s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_invalid_markdown_in_translation PASSED [ 59%] 596s tests/translate/storage/test_mo.py::TestMOUnit::test_isfuzzy PASSED [ 59%] 596s tests/translate/storage/test_mo.py::TestMOUnit::test_create PASSED [ 59%] 596s tests/translate/storage/test_mo.py::TestMOUnit::test_eq PASSED [ 59%] 596s tests/translate/storage/test_mo.py::TestMOUnit::test_target PASSED [ 59%] 596s tests/translate/storage/test_mo.py::TestMOUnit::test_escapes PASSED [ 59%] 596s tests/translate/storage/test_mo.py::TestMOUnit::test_difficult_escapes PASSED [ 59%] 596s tests/translate/storage/test_mo.py::TestMOUnit::test_note_sanity PASSED [ 59%] 596s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_get PASSED [ 60%] 596s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_set PASSED [ 60%] 596s tests/translate/storage/test_mo.py::TestMOUnit::test_context PASSED [ 60%] 596s tests/translate/storage/test_mo.py::TestMOFile::test_create_blank PASSED [ 60%] 596s tests/translate/storage/test_mo.py::TestMOFile::test_add PASSED [ 60%] 596s tests/translate/storage/test_mo.py::TestMOFile::test_remove PASSED [ 60%] 596s tests/translate/storage/test_mo.py::TestMOFile::test_find PASSED [ 60%] 596s tests/translate/storage/test_mo.py::TestMOFile::test_translate PASSED [ 60%] 596s tests/translate/storage/test_mo.py::TestMOFile::test_parse PASSED [ 60%] 596s tests/translate/storage/test_mo.py::TestMOFile::test_files PASSED [ 60%] 596s tests/translate/storage/test_mo.py::TestMOFile::test_save PASSED [ 60%] 596s tests/translate/storage/test_mo.py::TestMOFile::test_markup PASSED [ 60%] 596s tests/translate/storage/test_mo.py::TestMOFile::test_nonascii PASSED [ 60%] 596s tests/translate/storage/test_mo.py::TestMOFile::test_extensions PASSED [ 60%] 596s tests/translate/storage/test_mo.py::TestMOFile::test_mimetypes PASSED [ 60%] 596s tests/translate/storage/test_mo.py::TestMOFile::test_language PASSED [ 60%] 596s tests/translate/storage/test_mo.py::TestMOFile::test_context PASSED [ 60%] 596s tests/translate/storage/test_mo.py::TestMOFile::test_output SKIPPED [ 60%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_isfuzzy PASSED [ 60%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_create PASSED [ 60%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_eq PASSED [ 60%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_escapes PASSED [ 60%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_difficult_escapes PASSED [ 60%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_note_sanity PASSED [ 60%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_target PASSED [ 60%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_get PASSED [ 60%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_set PASSED [ 60%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_create_blank PASSED [ 60%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_add PASSED [ 60%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_remove PASSED [ 60%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_find PASSED [ 60%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_parse PASSED [ 60%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_files PASSED [ 60%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_save PASSED [ 60%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_extensions PASSED [ 61%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_mimetypes PASSED [ 61%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_translate PASSED [ 61%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_markup PASSED [ 61%] 596s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_nonascii PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[-] PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String-String] PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {OK}-String] PASSED [ 61%] 596s 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%] 596s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{ok}-String] PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{OK}-String] PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok} -String] PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_isfuzzy PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_create PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_eq PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_target PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_escapes PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_difficult_escapes PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_note_sanity PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_get PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_set PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_translate_but_same PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_untranslated PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_comments PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_copy_target PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_create_blank PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_add PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_remove PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_find PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_translate PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_parse PASSED [ 61%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_files PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_save PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_markup PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_extensions PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_mimetypes PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_nonascii PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_format_layout PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_crlf PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_active_flag PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_multiline_comments PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_template PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[--False] PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ -Source -True] PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok}-Source-True] PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok} -Source-True] PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[{ok}-Source-True] PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_headers PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_not_headers PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[0] PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[1] PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[2] PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[3] PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_tag_comments PASSED [ 62%] 596s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_maxlength PASSED [ 62%] 596s tests/translate/storage/test_omegat.py::TestOtUnit::test_isfuzzy PASSED [ 62%] 596s tests/translate/storage/test_omegat.py::TestOtUnit::test_create PASSED [ 62%] 596s tests/translate/storage/test_omegat.py::TestOtUnit::test_eq PASSED [ 62%] 596s tests/translate/storage/test_omegat.py::TestOtUnit::test_target PASSED [ 62%] 596s tests/translate/storage/test_omegat.py::TestOtUnit::test_escapes PASSED [ 62%] 596s tests/translate/storage/test_omegat.py::TestOtUnit::test_difficult_escapes PASSED [ 62%] 596s tests/translate/storage/test_omegat.py::TestOtUnit::test_note_sanity PASSED [ 62%] 596s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_get PASSED [ 62%] 596s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_set PASSED [ 62%] 596s tests/translate/storage/test_omegat.py::TestOtFile::test_create_blank PASSED [ 62%] 596s tests/translate/storage/test_omegat.py::TestOtFile::test_add PASSED [ 63%] 596s tests/translate/storage/test_omegat.py::TestOtFile::test_remove PASSED [ 63%] 596s tests/translate/storage/test_omegat.py::TestOtFile::test_find PASSED [ 63%] 596s tests/translate/storage/test_omegat.py::TestOtFile::test_translate PASSED [ 63%] 596s tests/translate/storage/test_omegat.py::TestOtFile::test_parse PASSED [ 63%] 596s tests/translate/storage/test_omegat.py::TestOtFile::test_files PASSED [ 63%] 596s tests/translate/storage/test_omegat.py::TestOtFile::test_save PASSED [ 63%] 596s tests/translate/storage/test_omegat.py::TestOtFile::test_markup PASSED [ 63%] 596s tests/translate/storage/test_omegat.py::TestOtFile::test_nonascii PASSED [ 63%] 596s tests/translate/storage/test_omegat.py::TestOtFile::test_mimetypes PASSED [ 63%] 596s tests/translate/storage/test_omegat.py::TestOtFile::test_extensions XFAIL [ 63%] 596s tests/translate/storage/test_oo.py::test_makekey PASSED [ 63%] 596s tests/translate/storage/test_oo.py::test_escape_help_text PASSED [ 63%] 596s tests/translate/storage/test_oo.py::TestOO::test_simpleentry PASSED [ 63%] 596s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_quickhelptest PASSED [ 63%] 596s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_title PASSED [ 63%] 596s tests/translate/storage/test_oo.py::TestOO::test_blankline PASSED [ 63%] 596s tests/translate/storage/test_oo.py::TestOO::test_fieldlength PASSED [ 63%] 596s tests/translate/storage/test_oo.py::TestOO::test_escapes PASSED [ 63%] 596s tests/translate/storage/test_php.py::test_php_escaping_single_quote PASSED [ 63%] 596s tests/translate/storage/test_php.py::test_php_escaping_double_quote PASSED [ 63%] 596s tests/translate/storage/test_php.py::TestPhpUnit::test_isfuzzy PASSED [ 63%] 596s tests/translate/storage/test_php.py::TestPhpUnit::test_create PASSED [ 63%] 596s tests/translate/storage/test_php.py::TestPhpUnit::test_eq PASSED [ 63%] 596s tests/translate/storage/test_php.py::TestPhpUnit::test_escapes PASSED [ 63%] 596s tests/translate/storage/test_php.py::TestPhpUnit::test_note_sanity PASSED [ 63%] 596s tests/translate/storage/test_php.py::TestPhpUnit::test_target PASSED [ 63%] 596s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_get PASSED [ 63%] 596s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_set PASSED [ 63%] 596s tests/translate/storage/test_php.py::TestPhpUnit::test_difficult_escapes PASSED [ 63%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_create_blank PASSED [ 63%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_add PASSED [ 63%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_remove PASSED [ 63%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_find PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_parse PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_files PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_save PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_extensions PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_mimetypes PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_translate PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_markup PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_nonascii PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_source PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_spaces_in_name PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_comment_definition PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_comment_blocks PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_comment_output PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_comment_add PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_multiline PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_no_array_syntax PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_spaces PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_non_textual PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define_with_spaces_before_key PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter_and_before_key PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equal_delimiter PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equaldel_but_before_key PASSED [ 64%] 596s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_entries_with_quotes PASSED [ 64%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_comments_at_entry_line_end PASSED [ 64%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_double_slash_comments_before_entries PASSED [ 64%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_before_end_delimiter PASSED [ 64%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simpledefinition_spaces_before_end_delimiter PASSED [ 64%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_no_trailing_comma PASSED [ 64%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_space_before_comma PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_space_before_array_declaration PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_declared_in_a_single_line PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys_assigned_to_array PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_no_keys PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_assignment_in_line_where_multiline_comment_ends PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_using_short_array_syntax PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_space_before_array_declaration PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_unnamed_nested_arrays PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_array_declaration_in_next_line PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_with_newline_after_delimiter PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_blank_entries PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_slashstar_in_string PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_heredoc_syntax PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_after_define PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_quotes PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_concatenation PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_serialize PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_space_before_comma PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_equals_in_id PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_comma_in_string PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_nowdoc PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_plain_concatenation PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_array_keys PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_double_var PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_return_array PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short_quotes PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestPhpFile::test_addunit PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_isfuzzy PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_create PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_eq PASSED [ 65%] 597s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_escapes PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_difficult_escapes PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_note_sanity PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_target PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_get PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_set PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_create_blank PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_add PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_remove PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_find PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_parse PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_files PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_save PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_extensions PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_mimetypes PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_translate PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_markup PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_nonascii PASSED [ 66%] 597s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_plurals PASSED [ 66%] 597s tests/translate/storage/test_po.py::test_roundtrip_quoting PASSED [ 66%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_isfuzzy PASSED [ 66%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_create PASSED [ 66%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_eq PASSED [ 66%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_target PASSED [ 66%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_escapes PASSED [ 66%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_difficult_escapes PASSED [ 66%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_note_sanity PASSED [ 66%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_rich_get PASSED [ 66%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_rich_set PASSED [ 66%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_istranslatable PASSED [ 66%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_locations PASSED [ 66%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_nongettext_location PASSED [ 66%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_adding_empty_note PASSED [ 66%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_markreview PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_errors PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_no_plural_settarget PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_wrapping_bug PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_extract_msgidcomments_from_text PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_isheader PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOUnit::test_buildfromunit PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_create_blank PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_add PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_remove PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_find PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_translate PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_parse PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_files PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_save PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_markup PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_nonascii PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_extensions PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_mimetypes PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_context_only PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_simpleentry PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_copy PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_parse_source_string PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_parse_file PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_unicode PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_plurals PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_plural_unicode PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_nongettext_location PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_percent_location PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals XFAIL [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_empty_lines_notes PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_fuzzy PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated XFAIL [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_merging_automaticcomments PASSED [ 67%] 597s tests/translate/storage/test_po.py::TestPOFile::test_malformed_units PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_malformed_obsolete_units PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_uniforum_po PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_obsolete PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_obsolete_with_prev_msgid PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_header_escapes PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_plural PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgctxt PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgidcomments PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_multiline_obsolete PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_merge_duplicates PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_merge_mixed_sources PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_parse_context PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_parse_advanced_context PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_kde_context PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_broken_kde_context PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_id PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments_2 PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_final_slash PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_unfinished_lines PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_encoding_change PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_istranslated PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_wrapping PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_wrapping_cjk PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_wrap_emoji PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis XFAIL [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_wrap_gettext PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_msgidcomments PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_unicode_ids PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_syntax_error PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_invalid PASSED [ 68%] 597s tests/translate/storage/test_po.py::TestPOFile::test_wrapped_msgid PASSED [ 69%] 597s tests/translate/storage/test_po.py::TestPOFile::test_missing_plural PASSED [ 69%] 597s tests/translate/storage/test_pocommon.py::test_roundtrip_quote_plus PASSED [ 69%] 597s tests/translate/storage/test_poheader.py::test_parseheaderstring PASSED [ 69%] 597s tests/translate/storage/test_poheader.py::test_update PASSED [ 69%] 597s tests/translate/storage/test_poheader.py::test_po_dates PASSED [ 69%] 597s tests/translate/storage/test_poheader.py::test_timezones PASSED [ 69%] 597s tests/translate/storage/test_poheader.py::test_header_blank PASSED [ 69%] 597s tests/translate/storage/test_poheader.py::test_plural_equation PASSED [ 69%] 597s tests/translate/storage/test_poheader.py::test_plural_equation_across_lines PASSED [ 69%] 597s tests/translate/storage/test_poheader.py::test_updatecontributor PASSED [ 69%] 597s tests/translate/storage/test_poheader.py::test_updatecontributor_header PASSED [ 69%] 597s tests/translate/storage/test_poheader.py::test_language PASSED [ 69%] 597s tests/translate/storage/test_poheader.py::test_project PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_isfuzzy PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_create PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_eq PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_target PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_escapes PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_difficult_escapes PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_note_sanity PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_get PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_set PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_markreview PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_errors PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_accepted_control_chars PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_unaccepted_control_chars PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_plurals PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_ids PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_create_blank PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_remove PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_find PASSED [ 69%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_translate PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_files PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_save PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_markup PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_nonascii PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_extensions PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_mimetypes PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_basic PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_namespace PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_source PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_target PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_source PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_target PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_sourcelanguage PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage_multi PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_alttrans PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_fuzzy PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_xml_space PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parsing PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_entities PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_multiple_filenodes PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_indent PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add_target PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_closing_tags PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_context_groups PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_getlocations PASSED [ 70%] 597s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_addlocation PASSED [ 70%] 598s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_huge PASSED [ 70%] 598s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve_add PASSED [ 70%] 598s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse PASSED [ 70%] 598s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse_plural_alpha_id PASSED [ 70%] 598s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_notes PASSED [ 70%] 598s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_plural PASSED [ 71%] 598s tests/translate/storage/test_properties.py::test_find_delimiter_pos_simple PASSED [ 71%] 598s tests/translate/storage/test_properties.py::test_find_delimiter_pos_multiple PASSED [ 71%] 598s tests/translate/storage/test_properties.py::test_find_delimiter_pos_none PASSED [ 71%] 598s tests/translate/storage/test_properties.py::test_find_delimiter_pos_whitespace PASSED [ 71%] 598s tests/translate/storage/test_properties.py::test_find_delimiter_pos_escapes PASSED [ 71%] 598s tests/translate/storage/test_properties.py::test_is_line_continuation PASSED [ 71%] 598s tests/translate/storage/test_properties.py::test_key_strip PASSED [ 71%] 598s tests/translate/storage/test_properties.py::test_get_comment_one_line PASSED [ 71%] 598s tests/translate/storage/test_properties.py::test_get_comment_start PASSED [ 71%] 598s tests/translate/storage/test_properties.py::test_get_comment_end PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestPropUnit::test_isfuzzy PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestPropUnit::test_create PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestPropUnit::test_eq PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestPropUnit::test_escapes PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestPropUnit::test_difficult_escapes PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestPropUnit::test_note_sanity PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestPropUnit::test_target PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_get PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_set PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_create_blank PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_add PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_remove PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_find PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_parse PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_files PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_save PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_extensions PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_mimetypes PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_translate PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_markup PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_nonascii PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_quotes PASSED [ 71%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_simpledefinition PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition_source PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_reduce PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_increase PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_extra_plurals PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_non_plurals PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestGwtProp::test_encoding PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_create_blank PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_add PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_remove PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_find PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_parse PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_files PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_save PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_extensions PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_mimetypes PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_translate PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_markup PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_nonascii PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition_source PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_controlutf8_source PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_control_source PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_unicode_escaping PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_newlines_startend PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_space PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_whitespace_handling PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_key_value_delimiters_simple PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_comments PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_latin1 PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_fullspec_delimiters PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_fullspec_escaped_key PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_fullspec_line_continuation PASSED [ 72%] 598s tests/translate/storage/test_properties.py::TestProp::test_fullspec_key_without_value PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_mac_strings PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_utf_16_save PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_mac_multiline_strings PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_unicode PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_utf8 PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_newlines PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_multilines_comments PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments_dropping PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_quotes PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_equals PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_serialization PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_double_backslashes PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_override_encoding PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_trailing_comments PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_utf16_byte_order_mark PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_raise_ioerror_if_cannot_detect_encoding PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_utf8_byte_order_mark PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_joomla_set_target PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_joomla PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_joomla_escape PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_delimiter PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_value PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_multi_comments PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_serialize_note PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestProp::test_serialize_long_note PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_create_blank PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_add PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_remove PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_find PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_parse PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_files PASSED [ 73%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_save PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_extensions PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_mimetypes PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_translate PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_markup PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_nonascii PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_simpledefinition PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition_source PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote_and_argument PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_header_preserved PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_blank_line_before_comment_preserved PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWiki::test_deprecated_comments_preserved PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_create_blank PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_add PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_remove PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_find PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_parse PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_files PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_save PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_extensions PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_mimetypes PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_markup PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_nonascii PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_simpledefinition PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition_source PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote_and_argument PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_encoded_html PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_cleaning_attributes PASSED [ 74%] 598s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate_source PASSED [ 75%] 598s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_create_blank PASSED [ 75%] 598s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_add PASSED [ 75%] 598s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_find PASSED [ 75%] 598s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_extensions PASSED [ 75%] 598s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_mimetypes PASSED [ 75%] 598s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_translate PASSED [ 75%] 598s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_markup PASSED [ 75%] 598s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_nonascii PASSED [ 75%] 598s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_simpledefinition PASSED [ 75%] 598s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_parse PASSED [ 75%] 598s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_files PASSED [ 75%] 598s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_save PASSED [ 75%] 598s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_cleaning_attributes PASSED [ 75%] 598s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove XFAIL [ 75%] 598s tests/translate/storage/test_pypo.py::TestHelpers::test_unescape PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo_escaped_quotes PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isfuzzy PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_create PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_eq PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_target PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_escapes PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_difficult_escapes PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_note_sanity PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_get PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_set PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_istranslatable PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_locations PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_nongettext_location PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_adding_empty_note PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_markreview PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_errors PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_no_plural_settarget PASSED [ 75%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrapping_bug PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_extract_msgidcomments_from_text PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isheader PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_buildfromunit PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plurals PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plural_reduction PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes_withcomments PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_firstlines PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_newlines PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_max_line_length PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_slash PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_spacing_max_line PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_create_blank PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_add PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_remove PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_find PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_translate PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_files PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_save PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_markup PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nonascii PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_extensions PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mimetypes PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_context_only PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_simpleentry PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_copy PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_source_string PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_file PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plurals PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plural_unicode PASSED [ 76%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nongettext_location PASSED [ 77%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_percent_location PASSED [ 77%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals XFAIL [ 77%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_empty_lines_notes PASSED [ 77%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_fuzzy PASSED [ 77%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated XFAIL [ 77%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merging_automaticcomments PASSED [ 77%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_units PASSED [ 77%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_obsolete_units PASSED [ 77%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_uniforum_po PASSED [ 77%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete PASSED [ 77%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete_with_prev_msgid PASSED [ 77%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_header_escapes PASSED [ 77%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete PASSED [ 77%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_plural PASSED [ 77%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgctxt PASSED [ 77%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgidcomments PASSED [ 77%] 598s tests/translate/storage/test_pypo.py::TestPYPOFile::test_multiline_obsolete PASSED [ 77%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates PASSED [ 77%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_mixed_sources PASSED [ 77%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_context PASSED [ 77%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_advanced_context PASSED [ 77%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_context PASSED [ 77%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_broken_kde_context PASSED [ 77%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_id PASSED [ 77%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments PASSED [ 77%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments_2 PASSED [ 77%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_final_slash PASSED [ 77%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unfinished_lines PASSED [ 77%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_encoding_change PASSED [ 77%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_istranslated PASSED [ 77%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping PASSED [ 77%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping_cjk PASSED [ 77%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_emoji PASSED [ 77%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis XFAIL [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_gettext PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_msgidcomments PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_ids PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_syntax_error PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapped_msgid PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_missing_plural PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_combine_msgidcomments PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates_msgctxt PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_blanks PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_output_str_unicode PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_posections PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_typecomments PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unassociated_comments PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_header PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_prevmsgid_parse PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_newlines PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unix_newlines PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mac_newlines PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_header PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_comment PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_bom PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_long_msgidcomments PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_incomplete PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_invalid PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_write PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment XFAIL [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_typecomment PASSED [ 78%] 599s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_custom PASSED [ 78%] 599s tests/translate/storage/test_qm.py::TestQtUnit::test_isfuzzy PASSED [ 78%] 599s tests/translate/storage/test_qm.py::TestQtUnit::test_create PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtUnit::test_eq PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtUnit::test_target PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtUnit::test_escapes PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtUnit::test_difficult_escapes PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtUnit::test_note_sanity PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_get PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_set PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtFile::test_create_blank PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtFile::test_find PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtFile::test_translate PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtFile::test_markup PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtFile::test_extensions PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtFile::test_mimetypes PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtFile::test_parse PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtFile::test_save PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtFile::test_files PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtFile::test_nonascii PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtFile::test_add PASSED [ 79%] 599s tests/translate/storage/test_qm.py::TestQtFile::test_remove PASSED [ 79%] 599s tests/translate/storage/test_qph.py::TestQphUnit::test_isfuzzy PASSED [ 79%] 599s tests/translate/storage/test_qph.py::TestQphUnit::test_create PASSED [ 79%] 599s tests/translate/storage/test_qph.py::TestQphUnit::test_eq PASSED [ 79%] 599s tests/translate/storage/test_qph.py::TestQphUnit::test_target PASSED [ 79%] 599s tests/translate/storage/test_qph.py::TestQphUnit::test_escapes PASSED [ 79%] 599s tests/translate/storage/test_qph.py::TestQphUnit::test_difficult_escapes PASSED [ 79%] 599s tests/translate/storage/test_qph.py::TestQphUnit::test_note_sanity PASSED [ 79%] 599s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_get PASSED [ 79%] 599s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_set PASSED [ 79%] 599s tests/translate/storage/test_qph.py::TestQphFile::test_create_blank PASSED [ 79%] 599s tests/translate/storage/test_qph.py::TestQphFile::test_add PASSED [ 79%] 599s tests/translate/storage/test_qph.py::TestQphFile::test_remove PASSED [ 79%] 599s tests/translate/storage/test_qph.py::TestQphFile::test_find PASSED [ 79%] 599s tests/translate/storage/test_qph.py::TestQphFile::test_translate PASSED [ 80%] 599s tests/translate/storage/test_qph.py::TestQphFile::test_parse PASSED [ 80%] 599s tests/translate/storage/test_qph.py::TestQphFile::test_files PASSED [ 80%] 599s tests/translate/storage/test_qph.py::TestQphFile::test_save PASSED [ 80%] 599s tests/translate/storage/test_qph.py::TestQphFile::test_markup PASSED [ 80%] 599s tests/translate/storage/test_qph.py::TestQphFile::test_nonascii PASSED [ 80%] 599s tests/translate/storage/test_qph.py::TestQphFile::test_extensions PASSED [ 80%] 599s tests/translate/storage/test_qph.py::TestQphFile::test_mimetypes PASSED [ 80%] 599s tests/translate/storage/test_qph.py::TestQphFile::test_basic PASSED [ 80%] 599s tests/translate/storage/test_qph.py::TestQphFile::test_source PASSED [ 80%] 599s tests/translate/storage/test_qph.py::TestQphFile::test_target PASSED [ 80%] 599s tests/translate/storage/test_qph.py::TestQphFile::test_language PASSED [ 80%] 599s tests/translate/storage/test_rc.py::test_escaping PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_comments PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_textinclude PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_parse_dialog PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_parse_stringtable PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_lf PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_crlf PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_cr PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_parse_no_language PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_multiline PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_str PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_empty PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_utf_8 PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_utf_16 PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_comment PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_stringtables PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude_appstudio PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_id_whitespace PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_menu_comment PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_decompiled PASSED [ 80%] 599s tests/translate/storage/test_rc.py::TestRcFile::test_quotes PASSED [ 80%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_isfuzzy PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_create PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_eq PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_escapes PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_difficult_escapes PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_note_sanity PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_target PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_get PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_set PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_create_blank PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_add PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_remove PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_find PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_parse PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_files PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_save PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_extensions PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_mimetypes PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_translate PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_markup PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_nonascii PASSED [ 81%] 599s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_roundtrip PASSED [ 81%] 599s tests/translate/storage/test_resx.py::TestRESXUnit::test_isfuzzy PASSED [ 81%] 599s tests/translate/storage/test_resx.py::TestRESXUnit::test_create PASSED [ 81%] 599s tests/translate/storage/test_resx.py::TestRESXUnit::test_eq PASSED [ 81%] 599s tests/translate/storage/test_resx.py::TestRESXUnit::test_escapes PASSED [ 81%] 599s tests/translate/storage/test_resx.py::TestRESXUnit::test_difficult_escapes PASSED [ 81%] 599s tests/translate/storage/test_resx.py::TestRESXUnit::test_note_sanity PASSED [ 81%] 599s tests/translate/storage/test_resx.py::TestRESXUnit::test_target PASSED [ 81%] 599s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_get PASSED [ 81%] 599s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_set PASSED [ 81%] 599s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_isfuzzy PASSED [ 81%] 599s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_create PASSED [ 81%] 599s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_eq PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_escapes PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_difficult_escapes PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_note_sanity PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_target PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_get PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_set PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit_comment PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXfile::test_create_blank PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXfile::test_add PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXfile::test_remove PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXfile::test_find PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXfile::test_parse PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXfile::test_files PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXfile::test_save PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXfile::test_extensions PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXfile::test_mimetypes PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXfile::test_translate PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXfile::test_markup PASSED [ 82%] 599s tests/translate/storage/test_resx.py::TestRESXfile::test_nonascii PASSED [ 82%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_isfuzzy PASSED [ 82%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_create PASSED [ 82%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq PASSED [ 82%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_escapes PASSED [ 82%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_difficult_escapes PASSED [ 82%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_note_sanity PASSED [ 82%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_target PASSED [ 82%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_get PASSED [ 82%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_set PASSED [ 82%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_source PASSED [ 82%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq_formatvaluetype PASSED [ 82%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_innerkey PASSED [ 82%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_create_blank PASSED [ 82%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add PASSED [ 83%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_remove PASSED [ 83%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_find PASSED [ 83%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_parse PASSED [ 83%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_files PASSED [ 83%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_save PASSED [ 83%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_extensions PASSED [ 83%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_mimetypes PASSED [ 83%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_translate PASSED [ 83%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_markup PASSED [ 83%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_nonascii PASSED [ 83%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_serialize PASSED [ 83%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_default_handlings PASSED [ 83%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename PASSED [ 83%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_base_filename PASSED [ 83%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 83%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_plural_zero_always_set PASSED [ 83%] 599s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add_unit PASSED [ 83%] 599s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_isfuzzy PASSED [ 83%] 599s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_create PASSED [ 83%] 599s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_eq PASSED [ 83%] 599s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_escapes PASSED [ 83%] 599s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_difficult_escapes PASSED [ 83%] 599s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_target PASSED [ 83%] 599s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_get PASSED [ 83%] 599s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_set PASSED [ 83%] 599s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity XFAIL [ 83%] 599s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_create_blank PASSED [ 83%] 599s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_add PASSED [ 83%] 599s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_remove PASSED [ 83%] 599s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_find PASSED [ 83%] 599s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_parse PASSED [ 83%] 599s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_files PASSED [ 83%] 599s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_save PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_extensions PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_mimetypes PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_translate PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_markup PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_nonascii PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_create_blank PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_add PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_remove PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_find PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_parse PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_files PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_save PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_extensions PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_mimetypes PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_translate PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_markup PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_nonascii PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_create_blank PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_add PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_remove PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_find PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_parse PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_files PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_save PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_extensions PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_mimetypes PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_translate PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_markup PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_nonascii PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_create_blank PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_add PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_remove PASSED [ 84%] 599s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_find PASSED [ 85%] 599s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_parse PASSED [ 85%] 599s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_files PASSED [ 85%] 599s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_save PASSED [ 85%] 599s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_extensions PASSED [ 85%] 599s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_mimetypes PASSED [ 85%] 599s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_translate PASSED [ 85%] 599s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_markup PASSED [ 85%] 599s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_nonascii PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXUnit::test_isfuzzy PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXUnit::test_create PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXUnit::test_eq PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXUnit::test_target PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXUnit::test_escapes PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXUnit::test_difficult_escapes PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXUnit::test_note_sanity PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_get PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_set PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_create_blank PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_add PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_remove PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_find PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_translate PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_parse PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_files PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_save PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_markup PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_nonascii PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_extensions PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_mimetypes PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_basic PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_source PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_target PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_setid PASSED [ 85%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_indent PASSED [ 86%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_descrip PASSED [ 86%] 599s tests/translate/storage/test_tbx.py::TestTBXfile::test_note_from PASSED [ 86%] 599s tests/translate/storage/test_tiki.py::TestTikiUnit::test_locations PASSED [ 86%] 599s tests/translate/storage/test_tiki.py::TestTikiUnit::test_to_unicode PASSED [ 86%] 599s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_simple PASSED [ 86%] 599s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_encode PASSED [ 86%] 599s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_locations PASSED [ 86%] 599s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_ignore_extras PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnit::test_isfuzzy PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnit::test_create PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnit::test_eq PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnit::test_target PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnit::test_escapes PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnit::test_difficult_escapes PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnit::test_note_sanity PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_get PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_set PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_isfuzzy PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_create PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_eq PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_target PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_escapes PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_difficult_escapes PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_note_sanity PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_get PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_set PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXfile::test_create_blank PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXfile::test_add PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXfile::test_remove PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXfile::test_find PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXfile::test_parse PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXfile::test_files PASSED [ 86%] 599s tests/translate/storage/test_tmx.py::TestTMXfile::test_save PASSED [ 87%] 599s tests/translate/storage/test_tmx.py::TestTMXfile::test_markup PASSED [ 87%] 599s tests/translate/storage/test_tmx.py::TestTMXfile::test_nonascii PASSED [ 87%] 599s tests/translate/storage/test_tmx.py::TestTMXfile::test_extensions PASSED [ 87%] 599s tests/translate/storage/test_tmx.py::TestTMXfile::test_mimetypes PASSED [ 87%] 599s tests/translate/storage/test_tmx.py::TestTMXfile::test_translate PASSED [ 87%] 599s tests/translate/storage/test_tmx.py::TestTMXfile::test_addtranslation PASSED [ 87%] 599s tests/translate/storage/test_tmx.py::TestTMXfile::test_withcomment PASSED [ 87%] 599s tests/translate/storage/test_tmx.py::TestTMXfile::test_withnewlines PASSED [ 87%] 599s tests/translate/storage/test_tmx.py::TestTMXfile::test_xmlentities PASSED [ 87%] 599s tests/translate/storage/test_tmx.py::TestTMXfile::test_controls_cleaning PASSED [ 87%] 599s tests/translate/storage/test_trados.py::test_unescape PASSED [ 87%] 599s tests/translate/storage/test_trados.py::test_escape PASSED [ 87%] 599s tests/translate/storage/test_ts.py::TestTS::test_construct PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSUnit::test_isfuzzy PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSUnit::test_create PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSUnit::test_eq PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSUnit::test_target PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSUnit::test_escapes PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSUnit::test_difficult_escapes PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSUnit::test_note_sanity PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_get PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_set PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_create_blank PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_add PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_remove PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_find PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_translate PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_parse PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_files PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_save PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_markup PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_nonascii PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_extensions PASSED [ 87%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_mimetypes PASSED [ 88%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_basic PASSED [ 88%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_source PASSED [ 88%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_target PASSED [ 88%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_plurals PASSED [ 88%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_nplural PASSED [ 88%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_language PASSED [ 88%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_edit PASSED [ 88%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_obsolete PASSED [ 88%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_locations PASSED [ 88%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_merge_with_fuzzies PASSED [ 88%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_getid PASSED [ 88%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_backnforth PASSED [ 88%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_context PASSED [ 88%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_roundtrip_context PASSED [ 88%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_edit_missing_translation PASSED [ 88%] 599s tests/translate/storage/test_ts2.py::TestTSfile::test_missing_source PASSED [ 88%] 599s tests/translate/storage/test_txt.py::TestTxtUnit::test_isfuzzy PASSED [ 88%] 599s tests/translate/storage/test_txt.py::TestTxtUnit::test_create PASSED [ 88%] 599s tests/translate/storage/test_txt.py::TestTxtUnit::test_eq PASSED [ 88%] 599s tests/translate/storage/test_txt.py::TestTxtUnit::test_escapes PASSED [ 88%] 599s tests/translate/storage/test_txt.py::TestTxtUnit::test_difficult_escapes PASSED [ 88%] 599s tests/translate/storage/test_txt.py::TestTxtUnit::test_note_sanity PASSED [ 88%] 599s tests/translate/storage/test_txt.py::TestTxtUnit::test_target PASSED [ 88%] 599s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_get PASSED [ 88%] 599s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_set PASSED [ 88%] 599s tests/translate/storage/test_txt.py::TestTxtFile::test_create_blank PASSED [ 88%] 599s tests/translate/storage/test_txt.py::TestTxtFile::test_add PASSED [ 88%] 599s tests/translate/storage/test_txt.py::TestTxtFile::test_remove PASSED [ 88%] 599s tests/translate/storage/test_txt.py::TestTxtFile::test_find PASSED [ 88%] 599s tests/translate/storage/test_txt.py::TestTxtFile::test_parse PASSED [ 88%] 599s tests/translate/storage/test_txt.py::TestTxtFile::test_files PASSED [ 88%] 599s tests/translate/storage/test_txt.py::TestTxtFile::test_save PASSED [ 88%] 599s tests/translate/storage/test_txt.py::TestTxtFile::test_extensions PASSED [ 89%] 599s tests/translate/storage/test_txt.py::TestTxtFile::test_mimetypes PASSED [ 89%] 599s tests/translate/storage/test_txt.py::TestTxtFile::test_translate PASSED [ 89%] 599s tests/translate/storage/test_txt.py::TestTxtFile::test_markup PASSED [ 89%] 599s tests/translate/storage/test_txt.py::TestTxtFile::test_nonascii PASSED [ 89%] 599s tests/translate/storage/test_txt.py::TestTxtFile::test_simpleblock PASSED [ 89%] 599s tests/translate/storage/test_txt.py::TestTxtFile::test_multipleblocks PASSED [ 89%] 599s tests/translate/storage/test_txt.py::TestTxtFile::test_no_segmentation PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxUnit::test_isfuzzy PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxUnit::test_create PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxUnit::test_eq PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxUnit::test_target PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxUnit::test_escapes PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxUnit::test_difficult_escapes PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxUnit::test_note_sanity PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_get PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_set PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxFile::test_create_blank PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxFile::test_add PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxFile::test_remove PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxFile::test_find PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxFile::test_translate PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxFile::test_parse PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxFile::test_files PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxFile::test_save PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxFile::test_markup PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxFile::test_nonascii PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxFile::test_extensions PASSED [ 89%] 599s tests/translate/storage/test_utx.py::TestUtxFile::test_mimetypes PASSED [ 89%] 599s tests/translate/storage/test_wordfast.py::TestWFTime::test_timestring PASSED [ 89%] 599s tests/translate/storage/test_wordfast.py::TestWFTime::test_time PASSED [ 89%] 599s tests/translate/storage/test_wordfast.py::TestWFUnit::test_isfuzzy PASSED [ 89%] 599s tests/translate/storage/test_wordfast.py::TestWFUnit::test_create PASSED [ 89%] 599s tests/translate/storage/test_wordfast.py::TestWFUnit::test_eq PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFUnit::test_target PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFUnit::test_escapes PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFUnit::test_note_sanity PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_get PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_set PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFUnit::test_difficult_escapes PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFUnit::test_wordfast_escaping PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFUnit::test_newlines PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFUnit::test_language_setting PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFUnit::test_istranslated PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFFile::test_create_blank PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFFile::test_add PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFFile::test_remove PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFFile::test_find PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFFile::test_translate PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFFile::test_parse PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFFile::test_files PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFFile::test_save PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFFile::test_markup PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFFile::test_nonascii PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFFile::test_extensions PASSED [ 90%] 599s tests/translate/storage/test_wordfast.py::TestWFFile::test_mimetypes PASSED [ 90%] 599s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_isfuzzy PASSED [ 90%] 599s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_create PASSED [ 90%] 599s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_eq PASSED [ 90%] 599s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_target PASSED [ 90%] 599s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_escapes PASSED [ 90%] 599s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_difficult_escapes PASSED [ 90%] 599s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_note_sanity PASSED [ 90%] 599s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_get PASSED [ 90%] 599s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_set PASSED [ 90%] 599s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_markreview PASSED [ 90%] 599s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_errors PASSED [ 90%] 599s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_accepted_control_chars PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_unaccepted_control_chars PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_create_blank PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_remove PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_find PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_translate PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parse PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_files PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_save PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_markup PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_nonascii PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_extensions PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_mimetypes PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_basic PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_namespace PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_source PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_target PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_source PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_target PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_sourcelanguage PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage_multi PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_notes PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_alttrans PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_fuzzy PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_xml_space PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parsing PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_entities PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_multiple_filenodes PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_indent PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add_target PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve PASSED [ 91%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_closing_tags PASSED [ 92%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_context_groups PASSED [ 92%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_getlocations PASSED [ 92%] 599s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_addlocation PASSED [ 92%] 600s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_huge PASSED [ 92%] 600s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve_add PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_isfuzzy PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_create PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_eq PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_escapes PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_difficult_escapes PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_note_sanity PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_target PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_get PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_set PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_getlocations PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_create_blank PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_find PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_files PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_save PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_extensions PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_mimetypes PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_translate PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_markup PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nonascii PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_serialize PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit_unicode PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse_unicode_list PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_ordering PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_initial_comments PASSED [ 92%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_string_key PASSED [ 93%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nested PASSED [ 93%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_multiline PASSED [ 93%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_boolean PASSED [ 93%] 600s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_integer PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_no_quote_strings PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_double_quote_strings PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_single_quote_strings PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_double_quote_strings PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_single_quote_strings PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_escaped_double_quotes PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_newlines PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_list PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_dictionary PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_key_nesting PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add_to_mepty PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty_key PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dict_in_list PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dump_args PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_anchors PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_tagged_scalar PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_numeric PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_remove PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_special PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_quotes_roundtrip PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_create_blank PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_remove PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_find PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_parse PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_files PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_save PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_extensions PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_mimetypes PASSED [ 93%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_translate PASSED [ 94%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_markup PASSED [ 94%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_nonascii PASSED [ 94%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_list PASSED [ 94%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby PASSED [ 94%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_wrong PASSED [ 94%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_invalid_value PASSED [ 94%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural PASSED [ 94%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_empty PASSED [ 94%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_anchors PASSED [ 94%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_type_change PASSED [ 94%] 601s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_add PASSED [ 94%] 601s tests/translate/storage/test_zip.py::TestZIPFile::test_created PASSED [ 94%] 601s tests/translate/storage/test_zip.py::TestZIPFile::test_basic PASSED [ 94%] 601s tests/translate/storage/test_zip.py::TestZIPFile::test_structure PASSED [ 94%] 601s tests/translate/storage/test_zip.py::TestZIPFile::test_getunits PASSED [ 94%] 601s tests/translate/storage/xml_extract/test_misc.py::test_reduce_tree PASSED [ 94%] 601s tests/translate/storage/xml_extract/test_misc.py::test_compose_mappings PASSED [ 94%] 601s tests/translate/storage/xml_extract/test_misc.py::test_parse_tag PASSED [ 94%] 601s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath_component PASSED [ 94%] 601s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath PASSED [ 94%] 601s tests/translate/storage/xml_extract/test_unit_tree.py::test__add_unit_to_tree PASSED [ 94%] 601s tests/translate/storage/xml_extract/test_xpath_breadcrumb.py::test_breadcrumb PASSED [ 94%] 601s tests/translate/tools/test_help.py::test_help[build_tmdb] SKIPPED (S...) [ 94%] 601s tests/translate/tools/test_help.py::test_help[phppo2pypo] SKIPPED (S...) [ 94%] 601s tests/translate/tools/test_help.py::test_help[poclean] SKIPPED (Skip...) [ 94%] 601s tests/translate/tools/test_help.py::test_help[pocompile] SKIPPED (Sk...) [ 94%] 601s tests/translate/tools/test_help.py::test_help[poconflicts] SKIPPED (...) [ 94%] 601s tests/translate/tools/test_help.py::test_help[pocount] SKIPPED (Skip...) [ 94%] 601s tests/translate/tools/test_help.py::test_help[podebug] SKIPPED (Skip...) [ 94%] 601s tests/translate/tools/test_help.py::test_help[pogrep] SKIPPED (Skip ...) [ 94%] 601s tests/translate/tools/test_help.py::test_help[pomerge] SKIPPED (Skip...) [ 94%] 601s tests/translate/tools/test_help.py::test_help[porestructure] SKIPPED [ 94%] 601s tests/translate/tools/test_help.py::test_help[posegment] SKIPPED (Sk...) [ 95%] 601s tests/translate/tools/test_help.py::test_help[poswap] SKIPPED (Skip ...) [ 95%] 601s tests/translate/tools/test_help.py::test_help[poterminology] SKIPPED [ 95%] 601s tests/translate/tools/test_help.py::test_help[pretranslate] SKIPPED [ 95%] 601s tests/translate/tools/test_help.py::test_help[pydiff] SKIPPED (Skip ...) [ 95%] 601s tests/translate/tools/test_help.py::test_help[pypo2phppo] SKIPPED (S...) [ 95%] 601s tests/translate/tools/test_junitmsgfmt.py::test_output[failure] PASSED [ 95%] 601s tests/translate/tools/test_junitmsgfmt.py::test_output[untranslated] PASSED [ 95%] 601s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_single_po PASSED [ 95%] 601s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_plural_po PASSED [ 95%] 601s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_single_po PASSED [ 95%] 601s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_plural_po PASSED [ 95%] 601s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_help PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_zero PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_one PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_two PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::TestCount::test_punctuation_divides_words PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::TestCount::test_xml_tags PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::TestCount::test_newlines PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::TestCount::test_variables_are_words PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::TestCount::test_plurals PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde XFAIL [ 95%] 601s tests/translate/tools/test_pocount.py::TestCount::test_msgid_blank PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::TestPOCount::test_translated PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzy PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslated PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::TestPOCount::test_total PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::TestPOCount::test_translatedsourcewords PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzysourcewords PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslatedsourcewords PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::TestPOCount::test_totalsourcewords PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-csv] PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-full] PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-strings] PASSED [ 95%] 601s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-words] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-csv] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-full] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-strings] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-words] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-csv] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-full] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-strings] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-words] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-csv] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-full] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-strings] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-words] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_cases[po-file] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_cases[po-file-fuzzy] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_cases[po-file-csv] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_cases[xliff-states-yes] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_cases[xliff-states-no] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_error_cases[mutually-exclusive] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_error_cases[missing-file] PASSED [ 96%] 601s tests/translate/tools/test_pocount.py::test_error_cases[no-args] PASSED [ 96%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_ignore_gtk PASSED [ 96%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_keep_target PASSED [ 96%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_blank PASSED [ 96%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_en PASSED [ 96%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_xxx PASSED [ 96%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_bracket PASSED [ 96%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode PASSED [ 96%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_at_placeholders PASSED [ 96%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_single_brace_placeholders PASSED [ 96%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_double_brace_placeholders PASSED [ 96%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_html PASSED [ 96%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_multiple_styles_of_placeholder PASSED [ 96%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped PASSED [ 97%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_at_placeholders PASSED [ 97%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_single_brace_placeholders PASSED [ 97%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_double_brace_placeholders PASSED [ 97%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_html PASSED [ 97%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_multiple_styles_of_placeholder PASSED [ 97%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified PASSED [ 97%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_at_placeholders PASSED [ 97%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_single_brace_placeholders PASSED [ 97%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_double_brace_placeholders PASSED [ 97%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_html PASSED [ 97%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_multiple_styles_of_placeholder PASSED [ 97%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_chef PASSED [ 97%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_po_variables PASSED [ 97%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_xliff_rewrite PASSED [ 97%] 601s tests/translate/tools/test_podebug.py::TestPODebug::test_hash PASSED [ 97%] 601s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgid PASSED [ 97%] 601s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgstr PASSED [ 97%] 601s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations PASSED [ 97%] 601s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_comments PASSED [ 97%] 601s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations_with_comment_enabled PASSED [ 97%] 601s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_searchstring PASSED [ 97%] 601s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_regex_searchstring PASSED [ 97%] 601s tests/translate/tools/test_pogrep.py::TestPOGrep::test_keep_translations PASSED [ 97%] 601s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_normalise PASSED [ 97%] 601s tests/translate/tools/test_pogrep.py::TestXLiffGrep::test_simplegrep PASSED [ 97%] 601s tests/translate/tools/test_pomerge.py::test_str2bool PASSED [ 97%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_mergesore_bad_data PASSED [ 97%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge PASSED [ 97%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge_no_locations PASSED [ 97%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_replacemerge PASSED [ 97%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_blanks PASSED [ 97%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_fuzzies PASSED [ 97%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_locations PASSED [ 97%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_with_locations PASSED [ 98%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_no_locations PASSED [ 98%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_reflowed_source_comments PASSED [ 98%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_comments_with_blank_lines PASSED [ 98%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dont_delete_unassociated_comments PASSED [ 98%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_trailing_newlines PASSED [ 98%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_minor_start_and_end_of_sentence_changes PASSED [ 98%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_last_entry_in_a_file PASSED [ 98%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs XFAIL [ 98%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_comments_layout PASSED [ 98%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dos2unix PASSED [ 98%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_xliff PASSED [ 98%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_po_into_xliff PASSED [ 98%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_po PASSED [ 98%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_dont_merge_kde_comments_found_in_translation PASSED [ 98%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_untranslated_with_kde_disambiguation PASSED [ 98%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_header_entries PASSED [ 98%] 601s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_different_locations PASSED [ 98%] 601s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_simple PASSED [ 98%] 601s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_punctuation PASSED [ 98%] 601s tests/translate/tools/test_poterminology.py::TestPOTerminology::test_term_extraction PASSED [ 98%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_pretranslatepo_blank PASSED [ 98%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_simple PASSED [ 98%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_messages_marked_fuzzy PASSED [ 98%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals_with_fuzzy_matching PASSED [ 98%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change XFAIL [ 98%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_change PASSED [ 98%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_and_whitespace_change PASSED [ 98%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes XFAIL [ 98%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently XFAIL [ 98%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_dont_duplicate PASSED [ 98%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_new_overides_old PASSED [ 98%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments_with_blank_comment_lines PASSED [ 98%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_empty_commentlines PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgidcomments PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_resurect_obsolete_messages PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_typecomments PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_xliff_states PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_pretranslatepo_blank PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_simple PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_messages_marked_fuzzy PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change XFAIL [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_change PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_and_whitespace_change PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes XFAIL [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently XFAIL [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_new_overides_old PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments_with_blank_comment_lines PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_empty_commentlines PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgidcomments PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_resurect_obsolete_messages PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_typecomments PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_xliff_states PASSED [ 99%] 601s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_help PASSED [ 99%] 601s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_single_po PASSED [ 99%] 601s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_plural_po PASSED [ 99%] 601s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_single_po PASSED [ 99%] 602s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_plural_po PASSED [ 99%] 602s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_help PASSED [ 99%] 602s tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff SKIPPED [ 99%] 602s tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff SKIPPED [100%] 602s 602s =============================== warnings summary =============================== 602s tests/translate/storage/test_cpo.py:15 602s Warning: 602s Module 'translate.storage.cpo' was found, but when imported by pytest it raised: 602s ImportError('gettext PO library not found') 602s In pytest 9.1 this warning will become an error by default. 602s You can fix the underlying problem, or alternatively overwrite this behavior and silence this warning by passing exc_type=ImportError explicitly. 602s See https://docs.pytest.org/en/stable/deprecations.html#pytest-importorskip-default-behavior-regarding-importerror 602s 602s tests/odf_xliff/test_odf_xliff.py::test_roundtrip 602s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.zokjht/autopkgtest_tmp/tests/odf_xliff/test_2.odt'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid 602s Warning: unclosed file <_io.TextIOWrapper name='TestAndroid2POCommand_test_convertandroid/en.po' mode='r' encoding='UTF-8'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 602s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 602s Warning: unclosed file <_io.TextIOWrapper name='TestCSV2POCommand_test_columnorder/test.po' mode='r' encoding='UTF-8'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot 602s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_pot/simple.pot'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po 602s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po 602s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_po/simple.po'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates 602s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_remove_duplicates/simple.po'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf 602s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_xlf/simple.xlf'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 602s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 602s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_columnorder/test.csv' mode='r' encoding='UTF-8'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context 602s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_context/test.csv' mode='r' encoding='UTF-8'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing 602s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey 602s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey 602s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing 602s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey 602s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey 602s Warning: Could not find accesskey for key.accesskey 602s 602s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 602s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file 602s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten 602s Warning: unclosed file <_io.BufferedReader name='translation/file1.po'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 602s Warning: unclosed file <_io.BufferedWriter name='translated/file1.html'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert 602s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.zokjht/autopkgtest_tmp/tests/translate/convert/test.idml'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po 602s Warning: unclosed file <_io.BufferedReader name='translation.po'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 602s Warning: unclosed file <_io.FileIO name='input.oo' mode='rb' closefd=True> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 602s Warning: unclosed file <_io.FileIO name='output.oo' mode='wb' closefd=True> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey 602s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey 602s Warning: Could not find accesskey for prop.accesskey 602s 602s tests/translate/convert/test_po2tmx.py: 26 warnings 602s tests/translate/filters/test_pofilter.py: 13 warnings 602s tests/translate/storage/test_tbx.py: 17 warnings 602s tests/translate/storage/test_tmx.py: 24 warnings 602s Warning: This search incorrectly ignores the root element, and will be fixed in a future version. If you rely on the current behaviour, change it to './/body' 602s 602s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert 602s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert/simple.po'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 602s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf16/simple.po'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 602s Warning: unclosed file <_io.BufferedWriter name='simple.po'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 602s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 602s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_wrong/simple.po'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 602s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf8/simple.po'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex 602s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_menuex/simple.po'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot 602s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_pot/simple.pot'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po 602s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_po/simple.po'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates 602s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_remove_duplicates/simple.po'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 602s Warning: unclosed file <_io.BufferedWriter name='simple.odt'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 602s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.zokjht/autopkgtest_tmp/tests/translate/convert/test.odt'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename 602s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_preserve_filename/snippet.xlf'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot 602s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_pot/simple.pot'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po 602s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_po/simple.po'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates 602s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_remove_duplicates/simple.po'> 602s Enable tracemalloc to get traceback where the object was allocated. 602s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 602s 602s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 602s Warning: DTD parse error: :1:36:FATAL:PARSER:ERR_ENTITY_NOT_FINISHED: xmlParseEntityDecl: entity test.me not terminated 602s 602s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 602s Warning: DTD file '' does not validate 602s 602s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 602s --------------------------- snapshot report summary ---------------------------- 602s 23 snapshots passed. 602s =========================== short test summary info ============================ 602s SKIPPED [1] tests/translate/storage/test_cpo.py:15: could not import 'translate.storage.cpo': gettext PO library not found 602s SKIPPED [1] tests/translate/storage/test_fluent.py:29: could not import 'translate.storage.fluent': No module named 'fluent' 602s SKIPPED [1] tests/translate/filters/test_checks.py:1429: Spell checking for af is not available 602s SKIPPED [1] tests/translate/storage/test_mo.py:498: Skip testing command line tools 602s SKIPPED [16] tests/translate/tools/test_help.py:16: Skip testing command line tools 602s SKIPPED [1] tests/xliff_conformance/test_xliff_conformance.py:49: Skip testing command line tools 602s SKIPPED [1] tests/xliff_conformance/test_xliff_conformance.py:58: Skip testing command line tools 602s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence - Not Implemented 602s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence - Not Implemented 602s XFAIL tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template - Need to review if we want this behaviour 602s XFAIL tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template - Need to review if we want this behaviour 602s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change - Not implemented - review if this is even correct 602s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes - Not Implemented - needs review 602s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently - Not Implemented - review if this is even correct 602s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change - Not implemented - review if this is even correct 602s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes - Not Implemented - needs review 602s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently - Not Implemented - review if this is even correct 602s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates - This is invalid YAML document 602s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates - This is invalid YAML document 602s XFAIL tests/translate/filters/test_checks.py::test_acceleratedvariables - Accelerated variables needs a better implementation 602s XFAIL tests/translate/filters/test_checks.py::test_musttranslatewords - FIXME: All fails() tests are not working 602s XFAIL tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time - Bug #3408 602s XFAIL tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags - Bug #3506 602s 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. 602s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables - Test needs fixing, disabled for now 602s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables - Test needs fixing, disabled for now 602s XFAIL tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases - Not Implemented 602s XFAIL tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases - Not Implemented 602s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_comment_following - Not Implemented 602s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting - Not Implemented 602s 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 602s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals - Not Implemented 602s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 602s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis - Incompatible wrapping with gettext, see #5251 602s XFAIL tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove - removal not working in full page 602s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals - Not Implemented 602s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 602s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis - Incompatible wrapping with gettext, see #5251 602s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment - Not sure if this can not be parsed gracefully 602s XFAIL tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity - Not Implemented 602s XFAIL tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde - Support commented out pending removal 602s XFAIL tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs - Not Implemented 602s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change - Not Implemented 602s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes - Not Implemented 602s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently - Not Implemented 602s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change - Not Implemented 602s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes - Not Implemented 602s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently - Not Implemented 602s ========= 3279 passed, 22 skipped, 41 xfailed, 127 warnings in 17.97s ========== 603s autopkgtest [11:02:01]: test python3-translate: -----------------------] 607s python3-translate PASS 607s autopkgtest [11:02:05]: test python3-translate: - - - - - - - - - - results - - - - - - - - - - 611s autopkgtest [11:02:09]: test python3-translate-commands: preparing testbed 667s autopkgtest [11:03:05]: testbed dpkg architecture: armhf 669s autopkgtest [11:03:07]: testbed apt version: 2.9.8 669s autopkgtest [11:03:07]: @@@@@@@@@@@@@@@@@@@@ test bed setup 677s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 677s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [213 kB] 677s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [2840 B] 677s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [7016 B] 677s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [30.5 kB] 677s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main armhf Packages [38.0 kB] 677s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/universe armhf Packages [236 kB] 677s Fetched 601 kB in 1s (851 kB/s) 677s Reading package lists... 692s tee: /proc/self/fd/2: Permission denied 716s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease 716s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 716s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 716s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 717s Reading package lists... 717s Reading package lists... 718s Building dependency tree... 718s Reading state information... 718s Calculating upgrade... 719s The following packages were automatically installed and are no longer required: 719s libperl5.38t64 perl-modules-5.38 719s Use 'apt autoremove' to remove them. 719s The following NEW packages will be installed: 719s libperl5.40 perl-modules-5.40 python3-jaraco.text 719s The following packages will be upgraded: 719s base-files distro-info-data fwupd gcc-14-base info install-info iproute2 719s libatomic1 libdw1t64 libelf1t64 libfwupd2 libgcc-s1 libkeyutils1 719s liblocale-gettext-perl libsgutils2-1.46-2 libstdc++6 libtext-charwidth-perl 719s libtext-iconv-perl motd-news-config perl perl-base python3-pkg-resources 719s python3-setuptools sg3-utils sg3-utils-udev vim-common vim-tiny xxd 719s 28 upgraded, 3 newly installed, 0 to remove and 0 not upgraded. 719s Need to get 19.2 MB of archives. 719s After this operation, 42.7 MB of additional disk space will be used. 719s Get:1 http://ftpmaster.internal/ubuntu plucky/main armhf motd-news-config all 13.5ubuntu2 [5274 B] 719s Get:2 http://ftpmaster.internal/ubuntu plucky/main armhf base-files armhf 13.5ubuntu2 [68.6 kB] 719s Get:3 http://ftpmaster.internal/ubuntu plucky/main armhf perl-modules-5.40 all 5.40.0-6 [3214 kB] 719s Get:4 http://ftpmaster.internal/ubuntu plucky/main armhf libperl5.40 armhf 5.40.0-6 [4140 kB] 720s Get:5 http://ftpmaster.internal/ubuntu plucky/main armhf perl armhf 5.40.0-6 [262 kB] 720s Get:6 http://ftpmaster.internal/ubuntu plucky/main armhf perl-base armhf 5.40.0-6 [1674 kB] 720s Get:7 http://ftpmaster.internal/ubuntu plucky/main armhf liblocale-gettext-perl armhf 1.07-7build1 [15.0 kB] 720s Get:8 http://ftpmaster.internal/ubuntu plucky/main armhf libtext-iconv-perl armhf 1.7-8build4 [12.8 kB] 720s Get:9 http://ftpmaster.internal/ubuntu plucky/main armhf libtext-charwidth-perl armhf 0.04-11build4 [9128 B] 720s Get:10 http://ftpmaster.internal/ubuntu plucky/main armhf libatomic1 armhf 14.2.0-7ubuntu1 [7842 B] 720s Get:11 http://ftpmaster.internal/ubuntu plucky/main armhf gcc-14-base armhf 14.2.0-7ubuntu1 [51.2 kB] 720s Get:12 http://ftpmaster.internal/ubuntu plucky/main armhf libstdc++6 armhf 14.2.0-7ubuntu1 [711 kB] 720s Get:13 http://ftpmaster.internal/ubuntu plucky/main armhf libgcc-s1 armhf 14.2.0-7ubuntu1 [40.8 kB] 720s Get:14 http://ftpmaster.internal/ubuntu plucky/main armhf install-info armhf 7.1.1-1 [61.4 kB] 720s Get:15 http://ftpmaster.internal/ubuntu plucky/main armhf distro-info-data all 0.63 [6588 B] 720s Get:16 http://ftpmaster.internal/ubuntu plucky/main armhf libdw1t64 armhf 0.192-4 [243 kB] 720s Get:17 http://ftpmaster.internal/ubuntu plucky/main armhf libelf1t64 armhf 0.192-4 [50.2 kB] 720s Get:18 http://ftpmaster.internal/ubuntu plucky/main armhf iproute2 armhf 6.10.0-2ubuntu1 [1082 kB] 720s Get:19 http://ftpmaster.internal/ubuntu plucky/main armhf libkeyutils1 armhf 1.6.3-4ubuntu2 [8712 B] 720s Get:20 http://ftpmaster.internal/ubuntu plucky/main armhf vim-tiny armhf 2:9.1.0777-1ubuntu1 [693 kB] 720s Get:21 http://ftpmaster.internal/ubuntu plucky/main armhf vim-common all 2:9.1.0777-1ubuntu1 [394 kB] 720s Get:22 http://ftpmaster.internal/ubuntu plucky/main armhf xxd armhf 2:9.1.0777-1ubuntu1 [66.8 kB] 720s Get:23 http://ftpmaster.internal/ubuntu plucky/main armhf info armhf 7.1.1-1 [126 kB] 720s Get:24 http://ftpmaster.internal/ubuntu plucky/main armhf libfwupd2 armhf 1.9.26-2 [125 kB] 720s Get:25 http://ftpmaster.internal/ubuntu plucky/main armhf fwupd armhf 1.9.26-2 [4404 kB] 720s Get:26 http://ftpmaster.internal/ubuntu plucky/main armhf libsgutils2-1.46-2 armhf 1.46-3ubuntu5 [82.5 kB] 720s Get:27 http://ftpmaster.internal/ubuntu plucky/main armhf python3-jaraco.text all 4.0.0-1 [11.5 kB] 720s Get:28 http://ftpmaster.internal/ubuntu plucky-proposed/main armhf python3-pkg-resources all 75.2.0-1 [134 kB] 720s Get:29 http://ftpmaster.internal/ubuntu plucky-proposed/main armhf python3-setuptools all 75.2.0-1 [657 kB] 720s Get:30 http://ftpmaster.internal/ubuntu plucky/main armhf sg3-utils armhf 1.46-3ubuntu5 [816 kB] 720s Get:31 http://ftpmaster.internal/ubuntu plucky/main armhf sg3-utils-udev all 1.46-3ubuntu5 [5916 B] 720s Preconfiguring packages ... 721s Fetched 19.2 MB in 1s (14.0 MB/s) 721s (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 ... 59386 files and directories currently installed.) 721s Preparing to unpack .../motd-news-config_13.5ubuntu2_all.deb ... 721s Unpacking motd-news-config (13.5ubuntu2) over (13.3ubuntu6) ... 721s Preparing to unpack .../base-files_13.5ubuntu2_armhf.deb ... 721s Unpacking base-files (13.5ubuntu2) over (13.3ubuntu6) ... 721s Setting up base-files (13.5ubuntu2) ... 721s Installing new version of config file /etc/issue ... 721s Installing new version of config file /etc/issue.net ... 721s Installing new version of config file /etc/lsb-release ... 721s motd-news.service is a disabled or a static unit not running, not starting it. 721s (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 ... 59386 files and directories currently installed.) 721s Preparing to unpack .../perl_5.40.0-6_armhf.deb ... 721s Unpacking perl (5.40.0-6) over (5.38.2-5) ... 722s Selecting previously unselected package perl-modules-5.40. 722s Preparing to unpack .../perl-modules-5.40_5.40.0-6_all.deb ... 722s Unpacking perl-modules-5.40 (5.40.0-6) ... 722s Selecting previously unselected package libperl5.40:armhf. 722s Preparing to unpack .../libperl5.40_5.40.0-6_armhf.deb ... 722s Unpacking libperl5.40:armhf (5.40.0-6) ... 722s Preparing to unpack .../perl-base_5.40.0-6_armhf.deb ... 722s Unpacking perl-base (5.40.0-6) over (5.38.2-5) ... 722s Setting up perl-base (5.40.0-6) ... 722s (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 ... 61462 files and directories currently installed.) 722s Preparing to unpack .../liblocale-gettext-perl_1.07-7build1_armhf.deb ... 722s Unpacking liblocale-gettext-perl (1.07-7build1) over (1.07-7) ... 722s Preparing to unpack .../libtext-iconv-perl_1.7-8build4_armhf.deb ... 722s Unpacking libtext-iconv-perl:armhf (1.7-8build4) over (1.7-8build3) ... 722s Preparing to unpack .../libtext-charwidth-perl_0.04-11build4_armhf.deb ... 722s Unpacking libtext-charwidth-perl:armhf (0.04-11build4) over (0.04-11build3) ... 722s Preparing to unpack .../libatomic1_14.2.0-7ubuntu1_armhf.deb ... 722s Unpacking libatomic1:armhf (14.2.0-7ubuntu1) over (14.2.0-4ubuntu2) ... 722s Preparing to unpack .../gcc-14-base_14.2.0-7ubuntu1_armhf.deb ... 722s Unpacking gcc-14-base:armhf (14.2.0-7ubuntu1) over (14.2.0-4ubuntu2) ... 722s Setting up gcc-14-base:armhf (14.2.0-7ubuntu1) ... 722s (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 ... 61462 files and directories currently installed.) 722s Preparing to unpack .../libstdc++6_14.2.0-7ubuntu1_armhf.deb ... 722s Unpacking libstdc++6:armhf (14.2.0-7ubuntu1) over (14.2.0-4ubuntu2) ... 723s Setting up libstdc++6:armhf (14.2.0-7ubuntu1) ... 723s (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 ... 61462 files and directories currently installed.) 723s Preparing to unpack .../libgcc-s1_14.2.0-7ubuntu1_armhf.deb ... 723s Unpacking libgcc-s1:armhf (14.2.0-7ubuntu1) over (14.2.0-4ubuntu2) ... 723s Setting up libgcc-s1:armhf (14.2.0-7ubuntu1) ... 723s (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 ... 61462 files and directories currently installed.) 723s Preparing to unpack .../install-info_7.1.1-1_armhf.deb ... 723s Unpacking install-info (7.1.1-1) over (7.1-3build2) ... 723s Setting up install-info (7.1.1-1) ... 723s (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 ... 61462 files and directories currently installed.) 723s Preparing to unpack .../00-distro-info-data_0.63_all.deb ... 723s Unpacking distro-info-data (0.63) over (0.62) ... 723s Preparing to unpack .../01-libdw1t64_0.192-4_armhf.deb ... 723s Unpacking libdw1t64:armhf (0.192-4) over (0.191-2) ... 723s Preparing to unpack .../02-libelf1t64_0.192-4_armhf.deb ... 723s Unpacking libelf1t64:armhf (0.192-4) over (0.191-2) ... 723s Preparing to unpack .../03-iproute2_6.10.0-2ubuntu1_armhf.deb ... 723s Unpacking iproute2 (6.10.0-2ubuntu1) over (6.10.0-2) ... 723s Preparing to unpack .../04-libkeyutils1_1.6.3-4ubuntu2_armhf.deb ... 723s Unpacking libkeyutils1:armhf (1.6.3-4ubuntu2) over (1.6.3-3build1) ... 723s Preparing to unpack .../05-vim-tiny_2%3a9.1.0777-1ubuntu1_armhf.deb ... 723s Unpacking vim-tiny (2:9.1.0777-1ubuntu1) over (2:9.1.0496-1ubuntu6) ... 723s Preparing to unpack .../06-vim-common_2%3a9.1.0777-1ubuntu1_all.deb ... 723s Unpacking vim-common (2:9.1.0777-1ubuntu1) over (2:9.1.0496-1ubuntu6) ... 723s Preparing to unpack .../07-xxd_2%3a9.1.0777-1ubuntu1_armhf.deb ... 723s Unpacking xxd (2:9.1.0777-1ubuntu1) over (2:9.1.0496-1ubuntu6) ... 723s Preparing to unpack .../08-info_7.1.1-1_armhf.deb ... 723s Unpacking info (7.1.1-1) over (7.1-3build2) ... 723s Preparing to unpack .../09-libfwupd2_1.9.26-2_armhf.deb ... 723s Unpacking libfwupd2:armhf (1.9.26-2) over (1.9.24-1) ... 723s Preparing to unpack .../10-fwupd_1.9.26-2_armhf.deb ... 724s Unpacking fwupd (1.9.26-2) over (1.9.24-1) ... 724s Preparing to unpack .../11-libsgutils2-1.46-2_1.46-3ubuntu5_armhf.deb ... 724s Unpacking libsgutils2-1.46-2:armhf (1.46-3ubuntu5) over (1.46-3ubuntu4) ... 724s Selecting previously unselected package python3-jaraco.text. 724s Preparing to unpack .../12-python3-jaraco.text_4.0.0-1_all.deb ... 724s Unpacking python3-jaraco.text (4.0.0-1) ... 724s Preparing to unpack .../13-python3-pkg-resources_75.2.0-1_all.deb ... 724s Unpacking python3-pkg-resources (75.2.0-1) over (74.1.2-1) ... 724s Preparing to unpack .../14-python3-setuptools_75.2.0-1_all.deb ... 724s Unpacking python3-setuptools (75.2.0-1) over (74.1.2-1) ... 724s Preparing to unpack .../15-sg3-utils_1.46-3ubuntu5_armhf.deb ... 724s Unpacking sg3-utils (1.46-3ubuntu5) over (1.46-3ubuntu4) ... 724s Preparing to unpack .../16-sg3-utils-udev_1.46-3ubuntu5_all.deb ... 724s Unpacking sg3-utils-udev (1.46-3ubuntu5) over (1.46-3ubuntu4) ... 724s Setting up python3-pkg-resources (75.2.0-1) ... 724s Setting up motd-news-config (13.5ubuntu2) ... 724s Setting up libtext-iconv-perl:armhf (1.7-8build4) ... 724s Setting up libtext-charwidth-perl:armhf (0.04-11build4) ... 724s Setting up libkeyutils1:armhf (1.6.3-4ubuntu2) ... 724s Setting up distro-info-data (0.63) ... 724s Setting up libfwupd2:armhf (1.9.26-2) ... 724s Setting up libsgutils2-1.46-2:armhf (1.46-3ubuntu5) ... 724s Setting up xxd (2:9.1.0777-1ubuntu1) ... 724s Setting up libelf1t64:armhf (0.192-4) ... 724s Setting up libdw1t64:armhf (0.192-4) ... 724s Setting up vim-common (2:9.1.0777-1ubuntu1) ... 724s Installing new version of config file /etc/vim/vimrc ... 724s Setting up python3-jaraco.text (4.0.0-1) ... 725s Setting up libatomic1:armhf (14.2.0-7ubuntu1) ... 725s Setting up perl-modules-5.40 (5.40.0-6) ... 725s Setting up fwupd (1.9.26-2) ... 725s fwupd-offline-update.service is a disabled or a static unit not running, not starting it. 725s fwupd-refresh.service is a disabled or a static unit not running, not starting it. 725s fwupd.service is a disabled or a static unit not running, not starting it. 725s Setting up info (7.1.1-1) ... 725s Setting up liblocale-gettext-perl (1.07-7build1) ... 725s Setting up sg3-utils (1.46-3ubuntu5) ... 725s Setting up python3-setuptools (75.2.0-1) ... 726s Setting up iproute2 (6.10.0-2ubuntu1) ... 726s Setting up vim-tiny (2:9.1.0777-1ubuntu1) ... 726s Setting up sg3-utils-udev (1.46-3ubuntu5) ... 726s update-initramfs: deferring update (trigger activated) 726s Setting up libperl5.40:armhf (5.40.0-6) ... 726s Setting up perl (5.40.0-6) ... 726s Processing triggers for dbus (1.14.10-4ubuntu5) ... 726s Processing triggers for install-info (7.1.1-1) ... 726s Processing triggers for initramfs-tools (0.142ubuntu34) ... 726s Processing triggers for libc-bin (2.40-1ubuntu3) ... 727s Processing triggers for man-db (2.12.1-3) ... 728s Processing triggers for plymouth-theme-ubuntu-text (24.004.60-1ubuntu10) ... 728s update-initramfs: deferring update (trigger activated) 728s Processing triggers for initramfs-tools (0.142ubuntu34) ... 728s Reading package lists... 728s Building dependency tree... 728s Reading state information... 729s The following packages will be REMOVED: 729s libperl5.38t64* perl-modules-5.38* 729s 0 upgraded, 0 newly installed, 2 to remove and 0 not upgraded. 729s After this operation, 41.6 MB disk space will be freed. 730s (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 ... 61471 files and directories currently installed.) 730s Removing libperl5.38t64:armhf (5.38.2-5) ... 730s Removing perl-modules-5.38 (5.38.2-5) ... 730s Processing triggers for man-db (2.12.1-3) ... 730s Processing triggers for libc-bin (2.40-1ubuntu3) ... 732s autopkgtest [11:04:10]: rebooting testbed after setup commands that affected boot 839s Reading package lists... 839s Building dependency tree... 839s Reading state information... 839s Starting pkgProblemResolver with broken count: 0 839s Starting 2 pkgProblemResolver with broken count: 0 839s Done 840s The following additional packages will be installed: 840s dictionaries-common emacsen-common gettext hunspell-en-us libapr1t64 840s libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data libgomp1 840s libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 libxslt1.1 840s python3-aeidon python3-all python3-bs4 python3-charset-normalizer 840s python3-cheroot python3-dateutil python3-diff-match-patch python3-enchant 840s python3-iniconfig python3-iniparse python3-levenshtein python3-lxml 840s python3-mistletoe python3-packaging python3-phply python3-pluggy python3-ply 840s python3-pycountry python3-pytest python3-rapidfuzz python3-ruamel.yaml 840s python3-ruamel.yaml.clib python3-simplejson python3-six python3-soupsieve 840s python3-syrupy python3-translate python3-vobject python3-wcwidth 840s python3-xapian subversion translate-toolkit 840s Suggested packages: 840s ispell | aspell | hunspell wordlist autopoint gettext-doc libasprintf-dev 840s libgettextpo-dev hunspell openoffice.org-hunspell | openoffice.org-core 840s aspell libenchant-2-voikko xapian-tools python-charset-normalizer-doc 840s python-lxml-doc python-ply-doc python-rapidfuzz-doc python3-subversion 840s translate-toolkit-doc xapian-doc db5.3-util libapache2-mod-svn 840s subversion-tools 840s Recommended packages: 840s aspell-en | aspell-dictionary | aspell6a-dictionary enchant-2 840s python3-cssselect python3-html5lib python3-tz translate-toolkit-doc 840s The following NEW packages will be installed: 840s autopkgtest-satdep dictionaries-common emacsen-common gettext hunspell-en-us 840s libapr1t64 libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data 840s libgomp1 libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 840s libxslt1.1 python3-aeidon python3-all python3-bs4 python3-charset-normalizer 840s python3-cheroot python3-dateutil python3-diff-match-patch python3-enchant 840s python3-iniconfig python3-iniparse python3-levenshtein python3-lxml 840s python3-mistletoe python3-packaging python3-phply python3-pluggy python3-ply 840s python3-pycountry python3-pytest python3-rapidfuzz python3-ruamel.yaml 840s python3-ruamel.yaml.clib python3-simplejson python3-six python3-soupsieve 840s python3-syrupy python3-translate python3-vobject python3-wcwidth 840s python3-xapian subversion translate-toolkit 840s 0 upgraded, 49 newly installed, 0 to remove and 0 not upgraded. 840s Need to get 10.7 MB/10.7 MB of archives. 840s After this operation, 41.5 MB of additional disk space will be used. 840s Get:1 /tmp/autopkgtest.zokjht/3-autopkgtest-satdep.deb autopkgtest-satdep armhf 0 [900 B] 840s Get:2 http://ftpmaster.internal/ubuntu plucky/main armhf emacsen-common all 3.0.5 [12.1 kB] 840s Get:3 http://ftpmaster.internal/ubuntu plucky/main armhf dictionaries-common all 1.29.7 [188 kB] 841s Get:4 http://ftpmaster.internal/ubuntu plucky/main armhf libgomp1 armhf 14.2.0-7ubuntu1 [125 kB] 841s Get:5 http://ftpmaster.internal/ubuntu plucky/main armhf gettext armhf 0.22.5-2 [995 kB] 841s Get:6 http://ftpmaster.internal/ubuntu plucky/main armhf hunspell-en-us all 1:2020.12.07-2 [280 kB] 841s Get:7 http://ftpmaster.internal/ubuntu plucky/main armhf libapr1t64 armhf 1.7.2-3.2ubuntu1 [87.9 kB] 841s Get:8 http://ftpmaster.internal/ubuntu plucky/main armhf libaprutil1t64 armhf 1.6.3-3ubuntu1 [82.7 kB] 841s Get:9 http://ftpmaster.internal/ubuntu plucky/main armhf libaspell15 armhf 0.60.8.1-1build1 [307 kB] 841s Get:10 http://ftpmaster.internal/ubuntu plucky/main armhf libhunspell-1.7-0 armhf 1.7.2+really1.7.2-10build3 [307 kB] 841s Get:11 http://ftpmaster.internal/ubuntu plucky/main armhf libenchant-2-2 armhf 2.3.3-2build2 [43.4 kB] 841s Get:12 http://ftpmaster.internal/ubuntu plucky/main armhf libexttextcat-data all 3.4.7-1build1 [193 kB] 841s Get:13 http://ftpmaster.internal/ubuntu plucky/universe armhf libserf-1-1 armhf 1.3.10-3ubuntu1 [40.5 kB] 841s Get:14 http://ftpmaster.internal/ubuntu plucky/universe armhf libutf8proc3 armhf 2.9.0-1build1 [70.6 kB] 841s Get:15 http://ftpmaster.internal/ubuntu plucky/universe armhf libsvn1 armhf 1.14.4-2 [1199 kB] 841s Get:16 http://ftpmaster.internal/ubuntu plucky/universe armhf libxapian30 armhf 1.4.25-1 [693 kB] 841s Get:17 http://ftpmaster.internal/ubuntu plucky/main armhf libxslt1.1 armhf 1.1.39-0exp1ubuntu1 [150 kB] 841s Get:18 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-aeidon all 1.15-1 [231 kB] 841s Get:19 http://ftpmaster.internal/ubuntu plucky/main armhf python3-all armhf 3.12.6-0ubuntu1 [886 B] 841s Get:20 http://ftpmaster.internal/ubuntu plucky/main armhf python3-soupsieve all 2.6-1 [33.0 kB] 841s Get:21 http://ftpmaster.internal/ubuntu plucky/main armhf python3-bs4 all 4.12.3-3 [109 kB] 841s Get:22 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-charset-normalizer armhf 3.3.2-2 [111 kB] 841s Get:23 http://ftpmaster.internal/ubuntu plucky/main armhf python3-cheroot all 10.0.0+ds1-2 [73.0 kB] 841s Get:24 http://ftpmaster.internal/ubuntu plucky/main armhf python3-six all 1.16.0-7 [13.1 kB] 841s Get:25 http://ftpmaster.internal/ubuntu plucky/main armhf python3-dateutil all 2.9.0-2 [80.3 kB] 841s Get:26 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-diff-match-patch all 20230430-1 [33.1 kB] 841s Get:27 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-enchant all 3.2.2-1 [34.0 kB] 841s Get:28 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-iniconfig all 1.1.1-2 [6024 B] 841s Get:29 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-rapidfuzz armhf 3.9.4+ds-1 [1200 kB] 841s Get:30 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-levenshtein armhf 0.25.1-3 [139 kB] 841s Get:31 http://ftpmaster.internal/ubuntu plucky/main armhf python3-lxml armhf 5.3.0-1 [1234 kB] 841s Get:32 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-mistletoe all 1.3.0-1 [38.0 kB] 841s Get:33 http://ftpmaster.internal/ubuntu plucky/main armhf python3-packaging all 24.1-1 [41.4 kB] 841s Get:34 http://ftpmaster.internal/ubuntu plucky/main armhf python3-ply all 3.11-7 [45.4 kB] 841s Get:35 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-phply all 1.2.6-1 [50.5 kB] 841s Get:36 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-pluggy all 1.5.0-1 [21.0 kB] 841s Get:37 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-pytest all 8.3.2-1 [251 kB] 841s Get:38 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-ruamel.yaml.clib armhf 0.2.8+ds-2 [125 kB] 841s Get:39 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-ruamel.yaml all 0.18.6+ds-3 [126 kB] 841s Get:40 http://ftpmaster.internal/ubuntu plucky/main armhf python3-simplejson armhf 3.19.2-1build2 [52.0 kB] 841s Get:41 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-syrupy all 4.6.1-1 [42.8 kB] 841s Get:42 http://ftpmaster.internal/ubuntu plucky/main armhf python3-wcwidth all 0.2.13+dfsg1-1 [26.3 kB] 841s Get:43 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-translate all 3.13.2-2 [319 kB] 841s Get:44 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-vobject all 0.9.6.1-2 [40.6 kB] 841s Get:45 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-xapian armhf 1.4.25-1build3 [439 kB] 841s Get:46 http://ftpmaster.internal/ubuntu plucky/universe armhf subversion armhf 1.14.4-2 [891 kB] 841s Get:47 http://ftpmaster.internal/ubuntu plucky/universe armhf translate-toolkit all 3.13.2-2 [81.0 kB] 841s Get:48 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-iniparse all 0.5-2 [20.0 kB] 841s Get:49 http://ftpmaster.internal/ubuntu plucky/universe armhf python3-pycountry all 24.6.1+ds1-1 [30.0 kB] 842s Preconfiguring packages ... 842s Fetched 10.7 MB in 1s (9840 kB/s) 842s Selecting previously unselected package emacsen-common. 842s (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 ... 59541 files and directories currently installed.) 842s Preparing to unpack .../00-emacsen-common_3.0.5_all.deb ... 842s Unpacking emacsen-common (3.0.5) ... 842s Selecting previously unselected package dictionaries-common. 842s Preparing to unpack .../01-dictionaries-common_1.29.7_all.deb ... 842s Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common' 842s Unpacking dictionaries-common (1.29.7) ... 842s Selecting previously unselected package libgomp1:armhf. 842s Preparing to unpack .../02-libgomp1_14.2.0-7ubuntu1_armhf.deb ... 842s Unpacking libgomp1:armhf (14.2.0-7ubuntu1) ... 842s Selecting previously unselected package gettext. 842s Preparing to unpack .../03-gettext_0.22.5-2_armhf.deb ... 842s Unpacking gettext (0.22.5-2) ... 842s Selecting previously unselected package hunspell-en-us. 842s Preparing to unpack .../04-hunspell-en-us_1%3a2020.12.07-2_all.deb ... 842s Unpacking hunspell-en-us (1:2020.12.07-2) ... 842s Selecting previously unselected package libapr1t64:armhf. 842s Preparing to unpack .../05-libapr1t64_1.7.2-3.2ubuntu1_armhf.deb ... 842s Unpacking libapr1t64:armhf (1.7.2-3.2ubuntu1) ... 842s Selecting previously unselected package libaprutil1t64:armhf. 842s Preparing to unpack .../06-libaprutil1t64_1.6.3-3ubuntu1_armhf.deb ... 842s Unpacking libaprutil1t64:armhf (1.6.3-3ubuntu1) ... 842s Selecting previously unselected package libaspell15:armhf. 842s Preparing to unpack .../07-libaspell15_0.60.8.1-1build1_armhf.deb ... 842s Unpacking libaspell15:armhf (0.60.8.1-1build1) ... 842s Selecting previously unselected package libhunspell-1.7-0:armhf. 842s Preparing to unpack .../08-libhunspell-1.7-0_1.7.2+really1.7.2-10build3_armhf.deb ... 842s Unpacking libhunspell-1.7-0:armhf (1.7.2+really1.7.2-10build3) ... 842s Selecting previously unselected package libenchant-2-2:armhf. 842s Preparing to unpack .../09-libenchant-2-2_2.3.3-2build2_armhf.deb ... 842s Unpacking libenchant-2-2:armhf (2.3.3-2build2) ... 842s Selecting previously unselected package libexttextcat-data. 842s Preparing to unpack .../10-libexttextcat-data_3.4.7-1build1_all.deb ... 842s Unpacking libexttextcat-data (3.4.7-1build1) ... 842s Selecting previously unselected package libserf-1-1:armhf. 842s Preparing to unpack .../11-libserf-1-1_1.3.10-3ubuntu1_armhf.deb ... 842s Unpacking libserf-1-1:armhf (1.3.10-3ubuntu1) ... 842s Selecting previously unselected package libutf8proc3:armhf. 842s Preparing to unpack .../12-libutf8proc3_2.9.0-1build1_armhf.deb ... 842s Unpacking libutf8proc3:armhf (2.9.0-1build1) ... 842s Selecting previously unselected package libsvn1:armhf. 842s Preparing to unpack .../13-libsvn1_1.14.4-2_armhf.deb ... 842s Unpacking libsvn1:armhf (1.14.4-2) ... 842s Selecting previously unselected package libxapian30:armhf. 842s Preparing to unpack .../14-libxapian30_1.4.25-1_armhf.deb ... 842s Unpacking libxapian30:armhf (1.4.25-1) ... 842s Selecting previously unselected package libxslt1.1:armhf. 842s Preparing to unpack .../15-libxslt1.1_1.1.39-0exp1ubuntu1_armhf.deb ... 842s Unpacking libxslt1.1:armhf (1.1.39-0exp1ubuntu1) ... 842s Selecting previously unselected package python3-aeidon. 842s Preparing to unpack .../16-python3-aeidon_1.15-1_all.deb ... 842s Unpacking python3-aeidon (1.15-1) ... 842s Selecting previously unselected package python3-all. 842s Preparing to unpack .../17-python3-all_3.12.6-0ubuntu1_armhf.deb ... 842s Unpacking python3-all (3.12.6-0ubuntu1) ... 842s Selecting previously unselected package python3-soupsieve. 842s Preparing to unpack .../18-python3-soupsieve_2.6-1_all.deb ... 842s Unpacking python3-soupsieve (2.6-1) ... 843s Selecting previously unselected package python3-bs4. 843s Preparing to unpack .../19-python3-bs4_4.12.3-3_all.deb ... 843s Unpacking python3-bs4 (4.12.3-3) ... 843s Selecting previously unselected package python3-charset-normalizer. 843s Preparing to unpack .../20-python3-charset-normalizer_3.3.2-2_armhf.deb ... 843s Unpacking python3-charset-normalizer (3.3.2-2) ... 843s Selecting previously unselected package python3-cheroot. 843s Preparing to unpack .../21-python3-cheroot_10.0.0+ds1-2_all.deb ... 843s Unpacking python3-cheroot (10.0.0+ds1-2) ... 843s Selecting previously unselected package python3-six. 843s Preparing to unpack .../22-python3-six_1.16.0-7_all.deb ... 843s Unpacking python3-six (1.16.0-7) ... 843s Selecting previously unselected package python3-dateutil. 843s Preparing to unpack .../23-python3-dateutil_2.9.0-2_all.deb ... 843s Unpacking python3-dateutil (2.9.0-2) ... 843s Selecting previously unselected package python3-diff-match-patch. 843s Preparing to unpack .../24-python3-diff-match-patch_20230430-1_all.deb ... 843s Unpacking python3-diff-match-patch (20230430-1) ... 843s Selecting previously unselected package python3-enchant. 843s Preparing to unpack .../25-python3-enchant_3.2.2-1_all.deb ... 843s Unpacking python3-enchant (3.2.2-1) ... 843s Selecting previously unselected package python3-iniconfig. 843s Preparing to unpack .../26-python3-iniconfig_1.1.1-2_all.deb ... 843s Unpacking python3-iniconfig (1.1.1-2) ... 843s Selecting previously unselected package python3-rapidfuzz. 843s Preparing to unpack .../27-python3-rapidfuzz_3.9.4+ds-1_armhf.deb ... 843s Unpacking python3-rapidfuzz (3.9.4+ds-1) ... 843s Selecting previously unselected package python3-levenshtein. 843s Preparing to unpack .../28-python3-levenshtein_0.25.1-3_armhf.deb ... 843s Unpacking python3-levenshtein (0.25.1-3) ... 843s Selecting previously unselected package python3-lxml:armhf. 843s Preparing to unpack .../29-python3-lxml_5.3.0-1_armhf.deb ... 843s Unpacking python3-lxml:armhf (5.3.0-1) ... 843s Selecting previously unselected package python3-mistletoe. 843s Preparing to unpack .../30-python3-mistletoe_1.3.0-1_all.deb ... 843s Unpacking python3-mistletoe (1.3.0-1) ... 843s Selecting previously unselected package python3-packaging. 843s Preparing to unpack .../31-python3-packaging_24.1-1_all.deb ... 843s Unpacking python3-packaging (24.1-1) ... 843s Selecting previously unselected package python3-ply. 843s Preparing to unpack .../32-python3-ply_3.11-7_all.deb ... 843s Unpacking python3-ply (3.11-7) ... 843s Selecting previously unselected package python3-phply. 843s Preparing to unpack .../33-python3-phply_1.2.6-1_all.deb ... 843s Unpacking python3-phply (1.2.6-1) ... 843s Selecting previously unselected package python3-pluggy. 843s Preparing to unpack .../34-python3-pluggy_1.5.0-1_all.deb ... 843s Unpacking python3-pluggy (1.5.0-1) ... 843s Selecting previously unselected package python3-pytest. 843s Preparing to unpack .../35-python3-pytest_8.3.2-1_all.deb ... 843s Unpacking python3-pytest (8.3.2-1) ... 843s Selecting previously unselected package python3-ruamel.yaml.clib:armhf. 843s Preparing to unpack .../36-python3-ruamel.yaml.clib_0.2.8+ds-2_armhf.deb ... 843s Unpacking python3-ruamel.yaml.clib:armhf (0.2.8+ds-2) ... 843s Selecting previously unselected package python3-ruamel.yaml. 843s Preparing to unpack .../37-python3-ruamel.yaml_0.18.6+ds-3_all.deb ... 843s Unpacking python3-ruamel.yaml (0.18.6+ds-3) ... 843s Selecting previously unselected package python3-simplejson. 843s Preparing to unpack .../38-python3-simplejson_3.19.2-1build2_armhf.deb ... 843s Unpacking python3-simplejson (3.19.2-1build2) ... 843s Selecting previously unselected package python3-syrupy. 843s Preparing to unpack .../39-python3-syrupy_4.6.1-1_all.deb ... 843s Unpacking python3-syrupy (4.6.1-1) ... 843s Selecting previously unselected package python3-wcwidth. 843s Preparing to unpack .../40-python3-wcwidth_0.2.13+dfsg1-1_all.deb ... 843s Unpacking python3-wcwidth (0.2.13+dfsg1-1) ... 843s Selecting previously unselected package python3-translate. 843s Preparing to unpack .../41-python3-translate_3.13.2-2_all.deb ... 843s Unpacking python3-translate (3.13.2-2) ... 843s Selecting previously unselected package python3-vobject. 843s Preparing to unpack .../42-python3-vobject_0.9.6.1-2_all.deb ... 843s Unpacking python3-vobject (0.9.6.1-2) ... 843s Selecting previously unselected package python3-xapian. 843s Preparing to unpack .../43-python3-xapian_1.4.25-1build3_armhf.deb ... 843s Unpacking python3-xapian (1.4.25-1build3) ... 844s Selecting previously unselected package subversion. 844s Preparing to unpack .../44-subversion_1.14.4-2_armhf.deb ... 844s Unpacking subversion (1.14.4-2) ... 844s Selecting previously unselected package translate-toolkit. 844s Preparing to unpack .../45-translate-toolkit_3.13.2-2_all.deb ... 844s Unpacking translate-toolkit (3.13.2-2) ... 844s Selecting previously unselected package python3-iniparse. 844s Preparing to unpack .../46-python3-iniparse_0.5-2_all.deb ... 844s Unpacking python3-iniparse (0.5-2) ... 844s Selecting previously unselected package python3-pycountry. 844s Preparing to unpack .../47-python3-pycountry_24.6.1+ds1-1_all.deb ... 844s Unpacking python3-pycountry (24.6.1+ds1-1) ... 844s Selecting previously unselected package autopkgtest-satdep. 844s Preparing to unpack .../48-3-autopkgtest-satdep.deb ... 844s Unpacking autopkgtest-satdep (0) ... 844s Setting up python3-iniconfig (1.1.1-2) ... 844s Setting up libxapian30:armhf (1.4.25-1) ... 844s Setting up python3-rapidfuzz (3.9.4+ds-1) ... 844s Setting up python3-diff-match-patch (20230430-1) ... 844s Setting up python3-aeidon (1.15-1) ... 844s Setting up libutf8proc3:armhf (2.9.0-1build1) ... 844s Setting up libaspell15:armhf (0.60.8.1-1build1) ... 844s Setting up python3-charset-normalizer (3.3.2-2) ... 845s Setting up python3-ply (3.11-7) ... 845s Setting up python3-ruamel.yaml.clib:armhf (0.2.8+ds-2) ... 845s Setting up python3-all (3.12.6-0ubuntu1) ... 845s Setting up libgomp1:armhf (14.2.0-7ubuntu1) ... 845s Setting up python3-six (1.16.0-7) ... 845s Setting up python3-simplejson (3.19.2-1build2) ... 845s Setting up python3-packaging (24.1-1) ... 845s Setting up python3-wcwidth (0.2.13+dfsg1-1) ... 845s Setting up emacsen-common (3.0.5) ... 845s Setting up python3-cheroot (10.0.0+ds1-2) ... 845s Setting up python3-pycountry (24.6.1+ds1-1) ... 846s Setting up python3-xapian (1.4.25-1build3) ... 846s Setting up python3-pluggy (1.5.0-1) ... 846s Setting up python3-ruamel.yaml (0.18.6+ds-3) ... 846s Setting up python3-mistletoe (1.3.0-1) ... 846s Setting up libexttextcat-data (3.4.7-1build1) ... 846s Setting up libapr1t64:armhf (1.7.2-3.2ubuntu1) ... 846s Setting up libxslt1.1:armhf (1.1.39-0exp1ubuntu1) ... 846s Setting up python3-dateutil (2.9.0-2) ... 847s Setting up python3-levenshtein (0.25.1-3) ... 847s Setting up libhunspell-1.7-0:armhf (1.7.2+really1.7.2-10build3) ... 847s Setting up python3-soupsieve (2.6-1) ... 847s Setting up python3-iniparse (0.5-2) ... 847s Setting up libaprutil1t64:armhf (1.6.3-3ubuntu1) ... 847s Setting up python3-vobject (0.9.6.1-2) ... 847s /usr/lib/python3/dist-packages/vobject/base.py:736: SyntaxWarning: invalid escape sequence '\-' 847s patterns['name'] = '[a-zA-Z0-9\-_]+' 847s /usr/lib/python3/dist-packages/vobject/base.py:1219: SyntaxWarning: invalid escape sequence '\;' 847s s = s.replace("\\", "\\\\").replace(";", "\;").replace(",", "\,") 847s /usr/lib/python3/dist-packages/vobject/base.py:1219: SyntaxWarning: invalid escape sequence '\,' 847s s = s.replace("\\", "\\\\").replace(";", "\;").replace(",", "\,") 847s /usr/lib/python3/dist-packages/vobject/hcalendar.py:1: SyntaxWarning: invalid escape sequence '\,' 847s """ 847s Setting up gettext (0.22.5-2) ... 847s Setting up python3-phply (1.2.6-1) ... 847s Setting up dictionaries-common (1.29.7) ... 848s Setting up python3-pytest (8.3.2-1) ... 848s Setting up python3-syrupy (4.6.1-1) ... 848s Setting up libserf-1-1:armhf (1.3.10-3ubuntu1) ... 848s Setting up python3-bs4 (4.12.3-3) ... 849s Setting up python3-lxml:armhf (5.3.0-1) ... 849s Setting up hunspell-en-us (1:2020.12.07-2) ... 849s Setting up libsvn1:armhf (1.14.4-2) ... 849s Setting up libenchant-2-2:armhf (2.3.3-2build2) ... 849s Setting up subversion (1.14.4-2) ... 849s Setting up python3-enchant (3.2.2-1) ... 849s Setting up python3-translate (3.13.2-2) ... 850s Setting up translate-toolkit (3.13.2-2) ... 850s Setting up autopkgtest-satdep (0) ... 850s Processing triggers for man-db (2.12.1-3) ... 850s Processing triggers for install-info (7.1.1-1) ... 850s Processing triggers for libc-bin (2.40-1ubuntu3) ... 850s Processing triggers for dictionaries-common (1.29.7) ... 869s (Reading database ... 63218 files and directories currently installed.) 869s Removing autopkgtest-satdep (0) ... 881s autopkgtest [11:06:39]: test python3-translate-commands: [----------------------- 883s ============================= test session starts ============================== 883s platform linux -- Python 3.12.7, pytest-8.3.2, pluggy-1.5.0 -- /usr/bin/python3.12 883s cachedir: .pytest_cache 883s rootdir: /tmp/autopkgtest.zokjht/autopkgtest_tmp 883s plugins: typeguard-4.3.0, syrupy-4.6.1 889s collecting ... collected 3340 items / 2 skipped 889s 889s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff PASSED [ 0%] 889s tests/odf_xliff/test_odf_xliff.py::test_roundtrip PASSED [ 0%] 889s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff2_inline PASSED [ 0%] 889s tests/translate/convert/test_accesskey.py::test_get_label_and_accesskey PASSED [ 0%] 889s tests/translate/convert/test_accesskey.py::test_extract_bad_accesskeys PASSED [ 0%] 889s tests/translate/convert/test_accesskey.py::test_ignore_entities PASSED [ 0%] 889s tests/translate/convert/test_accesskey.py::test_alternate_accesskey_marker PASSED [ 0%] 889s tests/translate/convert/test_accesskey.py::test_unicode PASSED [ 0%] 889s tests/translate/convert/test_accesskey.py::test_numeric PASSED [ 0%] 889s tests/translate/convert/test_accesskey.py::test_empty_string PASSED [ 0%] 889s tests/translate/convert/test_accesskey.py::test_end_of_string PASSED [ 0%] 889s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey PASSED [ 0%] 889s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey_different_capitals PASSED [ 0%] 889s tests/translate/convert/test_accesskey.py::test_uncombinable PASSED [ 0%] 889s tests/translate/convert/test_accesskey.py::test_accesskey_already_in_text PASSED [ 0%] 889s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_no_template_units PASSED [ 0%] 889s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_template_units PASSED [ 0%] 889s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_no_template_units PASSED [ 0%] 889s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_template_units PASSED [ 0%] 889s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_help PASSED [ 0%] 889s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid PASSED [ 0%] 889s tests/translate/convert/test_convert.py::TestConvertCommand::test_help PASSED [ 0%] 889s tests/translate/convert/test_csv2po.py::test_replacestrings PASSED [ 0%] 889s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity PASSED [ 0%] 889s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity_with_template PASSED [ 0%] 889s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_newlines PASSED [ 0%] 889s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_tabs PASSED [ 0%] 889s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_quotes PASSED [ 0%] 889s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_empties PASSED [ 0%] 889s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_kdecomment PASSED [ 0%] 889s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_escaped_newlines PASSED [ 0%] 889s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity PASSED [ 0%] 889s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity_with_template PASSED [ 0%] 889s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_newlines PASSED [ 1%] 889s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_tabs PASSED [ 1%] 889s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_quotes PASSED [ 1%] 889s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_empties PASSED [ 1%] 889s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_kdecomment PASSED [ 1%] 889s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_escaped_newlines PASSED [ 1%] 889s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_help PASSED [ 1%] 889s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_simpleentity PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_convertdtd PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_apos PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_quotes PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_two_empty_entities PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity_translated PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisaton_note_simple PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisation_note_merge PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_simple PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_label PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_onlyentity PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_commentedout PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_spaces_at_start_of_dtd_lines PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_folding PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_mismatch PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_carriage_return_in_multiline_dtd PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_with_blankline PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_closing_quotes PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_preserving_spaces PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_escaping_newline_tabs PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_abandoned_accelerator PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_unassociable_accelerator PASSED [ 1%] 889s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_changed_labels_and_accelerators PASSED [ 1%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence XFAIL [ 1%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_exclude_entity_includes PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_linewraps PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merging_with_new_untranslated PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merge_without_template PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_simpleentity PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_convertdtd PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_apos PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_quotes PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_two_empty_entities PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity_translated PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisaton_note_simple PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisation_note_merge PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_simple PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_label PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_onlyentity PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_commentedout PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_spaces_at_start_of_dtd_lines PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_folding PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_mismatch PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_carriage_return_in_multiline_dtd PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_with_blankline PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_closing_quotes PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_preserving_spaces PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_escaping_newline_tabs PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_abandoned_accelerator PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_unassociable_accelerator PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_changed_labels_and_accelerators PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence XFAIL [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_exclude_entity_includes PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_linewraps PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merging_with_new_untranslated PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merge_without_template PASSED [ 2%] 890s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_help PASSED [ 2%] 890s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_defaults PASSED [ 3%] 890s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_root_name PASSED [ 3%] 890s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_value_name PASSED [ 3%] 890s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_key PASSED [ 3%] 890s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_default_namespace PASSED [ 3%] 890s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_namespace_prefix PASSED [ 3%] 890s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_all_parameters PASSED [ 3%] 890s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_empty_file_is_empty_store PASSED [ 3%] 890s tests/translate/convert/test_flatxml2po.py::TestFlatXML2POCommand::test_help PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_extract_lang_attribute_from_html_tag PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title_with_linebreak PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_meta PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_br PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak_and_embedded_br PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_uppercase_html PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div_with_linebreaks PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a_with_linebreak PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_sequence_of_anchor_elements PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_img_empty PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img_inside_a PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_table_summary PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_simple PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_complex PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_empty PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_address PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings PASSED [ 3%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings_with_linebreaks PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dt PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dd PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_span PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_ul PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_lists PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_duplicates PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiline_reflow PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_tags PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_carriage_return PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_encoding_latin1 PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_strip_html PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_text PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_attributes PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_charrefs PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiple_php PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_multiline PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_with_embedded_html PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_comments PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2PO::test_attribute_without_value PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_extract_lang_attribute_from_html_tag PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title_with_linebreak PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_meta PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_br PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak_and_embedded_br PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_uppercase_html PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div_with_linebreaks PASSED [ 4%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a_with_linebreak PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_sequence_of_anchor_elements PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_img_empty PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img_inside_a PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_table_summary PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_simple PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_complex PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_empty PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_address PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings_with_linebreaks PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dt PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dd PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_span PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_ul PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_lists PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_duplicates PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiline_reflow PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_tags PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_carriage_return PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_encoding_latin1 PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_strip_html PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_text PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_attributes PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_charrefs PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiple_php PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_multiline PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_with_embedded_html PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_comments PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_attribute_without_value PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_help PASSED [ 5%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_single PASSED [ 6%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile PASSED [ 6%] 890s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile_to_stdout PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_convert_empty_file PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_translations PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_summary PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_description PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_location PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_comment PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_template_duplicate_style PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_misaligned_files PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_blank_msgstr PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_duplicate_style PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_convert_empty_file PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_translations PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_summary PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_description PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_location PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_comment PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_template_duplicate_style PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_misaligned_files PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_blank_msgstr PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_duplicate_style PASSED [ 6%] 890s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_help PASSED [ 6%] 890s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_help PASSED [ 6%] 890s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_convert PASSED [ 6%] 890s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_empty_file PASSED [ 6%] 890s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_no_translation PASSED [ 6%] 890s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_simple PASSED [ 6%] 890s tests/translate/convert/test_ini2po.py::TestIni2PO::test_no_duplicates PASSED [ 6%] 890s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_simple PASSED [ 6%] 890s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_misaligned_files PASSED [ 7%] 890s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_blank_msgstr PASSED [ 7%] 890s tests/translate/convert/test_ini2po.py::TestIni2PO::test_dialects_inno PASSED [ 7%] 890s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_empty_file PASSED [ 7%] 890s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_no_translation PASSED [ 7%] 890s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_simple PASSED [ 7%] 890s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_no_duplicates PASSED [ 7%] 890s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_simple PASSED [ 7%] 890s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_misaligned_files PASSED [ 7%] 890s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_blank_msgstr PASSED [ 7%] 890s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_dialects_inno PASSED [ 7%] 890s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_help PASSED [ 7%] 890s tests/translate/convert/test_json2po.py::TestJson2PO::test_simple PASSED [ 7%] 890s tests/translate/convert/test_json2po.py::TestJson2PO::test_three_same_keys PASSED [ 7%] 890s tests/translate/convert/test_json2po.py::TestJson2PO::test_filter PASSED [ 7%] 890s tests/translate/convert/test_json2po.py::TestJson2PO::test_miltiple_units PASSED [ 7%] 890s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_simple PASSED [ 7%] 890s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_three_same_keys PASSED [ 7%] 890s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_filter PASSED [ 7%] 890s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_miltiple_units PASSED [ 7%] 890s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_help PASSED [ 7%] 890s tests/translate/convert/test_md2po.py::TestMD2PO::test_help PASSED [ 7%] 890s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_single PASSED [ 7%] 890s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_onefile PASSED [ 7%] 890s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_single PASSED [ 7%] 890s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_onefile PASSED [ 7%] 890s tests/translate/convert/test_moz2po.py::TestMoz2POCommand::test_help PASSED [ 7%] 890s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_simpleentry PASSED [ 7%] 890s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_uncomment_contributors PASSED [ 7%] 890s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_convert_empty PASSED [ 7%] 890s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_string PASSED [ 7%] 890s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_merge PASSED [ 7%] 890s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_entry PASSED [ 7%] 890s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_comment PASSED [ 7%] 890s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_meta_tags PASSED [ 8%] 890s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_keep_duplicates PASSED [ 8%] 890s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_drop_duplicates PASSED [ 8%] 890s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_convert_empty PASSED [ 8%] 890s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_string PASSED [ 8%] 890s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_merge PASSED [ 8%] 890s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_entry PASSED [ 8%] 890s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_comment PASSED [ 8%] 890s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_meta_tags PASSED [ 8%] 890s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_keep_duplicates PASSED [ 8%] 890s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_drop_duplicates PASSED [ 8%] 890s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_help PASSED [ 8%] 890s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_help PASSED [ 8%] 890s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_convert PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2PO::test_simpleentity PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_escape PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_whitespaceonly PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2PO::test_double_escapes PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes_helpcontent2 PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2PO::test_msgid_bug_error_address PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2PO::test_x_comment_inclusion PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simpleentity PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_double_escapes PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_help PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_preserve_filename PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot PASSED [ 8%] 890s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 890s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 890s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_simpleentity PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_escape PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_whitespaceonly PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_double_escapes PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes_helpcontent2 PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_x_comment_inclusion PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_msgid_bug_error_address PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simpleentity PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_double_escapes PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_help PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_preserve_filename PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 890s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 890s tests/translate/convert/test_php2po.py::TestPhp2PO::test_simpleentry PASSED [ 9%] 890s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphp PASSED [ 9%] 890s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphptemplate PASSED [ 9%] 890s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpmissing PASSED [ 9%] 890s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpempty PASSED [ 9%] 890s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unicode PASSED [ 9%] 890s tests/translate/convert/test_php2po.py::TestPhp2PO::test_multiline PASSED [ 9%] 890s tests/translate/convert/test_php2po.py::TestPhp2PO::test_comments_before PASSED [ 9%] 890s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry PASSED [ 9%] 890s tests/translate/convert/test_php2po.py::TestPhp2PO::test_hash_comment_with_equals PASSED [ 10%] 890s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry_translated PASSED [ 10%] 890s tests/translate/convert/test_php2po.py::TestPhp2PO::test_newlines_in_value PASSED [ 10%] 890s tests/translate/convert/test_php2po.py::TestPhp2PO::test_spaces_in_name PASSED [ 10%] 890s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_array PASSED [ 10%] 890s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_array PASSED [ 10%] 890s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_nested_arrays PASSED [ 10%] 890s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_nested_arrays PASSED [ 10%] 890s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_simpleentry PASSED [ 10%] 890s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphp PASSED [ 10%] 890s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphptemplate PASSED [ 10%] 890s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpmissing PASSED [ 10%] 891s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpempty PASSED [ 10%] 891s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unicode PASSED [ 10%] 891s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_multiline PASSED [ 10%] 891s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_comments_before PASSED [ 10%] 891s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry PASSED [ 10%] 891s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_hash_comment_with_equals PASSED [ 10%] 891s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry_translated PASSED [ 10%] 891s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_newlines_in_value PASSED [ 10%] 891s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_spaces_in_name PASSED [ 10%] 891s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_array PASSED [ 10%] 891s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_array PASSED [ 10%] 891s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_nested_arrays PASSED [ 10%] 891s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_nested_arrays PASSED [ 10%] 891s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_help PASSED [ 10%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_simpleentity PASSED [ 10%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_multiline PASSED [ 10%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapednewlines PASSED [ 10%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedtabs PASSED [ 10%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedquotes PASSED [ 10%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedescape PASSED [ 10%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_singlequotes PASSED [ 10%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_empties PASSED [ 10%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_kdecomments PASSED [ 11%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_simpleentity PASSED [ 11%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_multiline PASSED [ 11%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapednewlines PASSED [ 11%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedtabs PASSED [ 11%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedquotes PASSED [ 11%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedescape PASSED [ 11%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_singlequotes PASSED [ 11%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_empties PASSED [ 11%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_kdecomments PASSED [ 11%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_help PASSED [ 11%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder PASSED [ 11%] 891s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_joinlines PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_escapedstr PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_missingaccesskey PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskeycase PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_types PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities_two PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments_translator PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_retains_hashprefix PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_convertdtd PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_with_template PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_without_template PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_blank_source PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_newlines_escapes PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_simple PASSED [ 11%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_escape PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_quotes PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_amp PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_merging_entries_with_spaces_removed PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces_after_value PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_duplicates PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_joinlines PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_escapedstr PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_missingaccesskey PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskeycase PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_types PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities_two PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments_translator PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_retains_hashprefix PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_convertdtd PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_with_template PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_without_template PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_blank_source PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_newlines_escapes PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_simple PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_escape PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_quotes PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_amp PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_merging_entries_with_spaces_removed PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces_after_value PASSED [ 12%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments PASSED [ 13%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_duplicates PASSED [ 13%] 891s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_help PASSED [ 13%] 891s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_defaults PASSED [ 13%] 891s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_root_name PASSED [ 13%] 891s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_value_name PASSED [ 13%] 891s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_key PASSED [ 13%] 891s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_default_namespace PASSED [ 13%] 891s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_namespace_prefix PASSED [ 13%] 891s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_indent_eight PASSED [ 13%] 891s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_noindent PASSED [ 13%] 891s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXMLCommand::test_help PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2Html::test_simple PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2Html::test_linebreaks PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2Html::test_replace_substrings PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_outside_translatable_content PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_embedded_within_translatable_content PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_without_value PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2Html::test_entities PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2Html::test_escapes PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_translated PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_untranslated PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_fuzzy PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2Html::test_untranslated_attributes PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_simple PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_linebreaks PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_replace_substrings PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_outside_translatable_content PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_embedded_within_translatable_content PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_without_value PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_entities PASSED [ 13%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_escapes PASSED [ 14%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_translated PASSED [ 14%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_untranslated PASSED [ 14%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_fuzzy PASSED [ 14%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_untranslated_attributes PASSED [ 14%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_help PASSED [ 14%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_individual_files PASSED [ 14%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_fully_recursive PASSED [ 14%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_input_specified PASSED [ 14%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified PASSED [ 14%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_output_specified PASSED [ 14%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file PASSED [ 14%] 891s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_empty_file PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_summary PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_description PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_location PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_comment PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_complex_icalendar PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_skip_fuzzy PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_include_fuzzy PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_no_template PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_template_location_not_in_source_file PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_below_threshold PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_above_threshold PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_empty_file PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_summary PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_description PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_location PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_comment PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_complex_icalendar PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_skip_fuzzy PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_include_fuzzy PASSED [ 14%] 891s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_no_template PASSED [ 15%] 891s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_template_location_not_in_source_file PASSED [ 15%] 891s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_below_threshold PASSED [ 15%] 891s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_above_threshold PASSED [ 15%] 891s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_help PASSED [ 15%] 891s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_help PASSED [ 15%] 891s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_no_templates PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_simple PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_space_preservation PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_blank_entries PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_fuzzy PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_propertyless_template PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_empty_value PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_dialects_inno PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_misaligned_files PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_below_threshold PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_above_threshold PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_no_fuzzy PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_allow_fuzzy PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_missing_source PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_repeated_locations PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_no_templates PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_simple PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_space_preservation PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_blank_entries PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_fuzzy PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_propertyless_template PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_empty_value PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_dialects_inno PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_misaligned_files PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_below_threshold PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_above_threshold PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_no_fuzzy PASSED [ 15%] 891s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_allow_fuzzy PASSED [ 16%] 891s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_missing_source PASSED [ 16%] 891s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_repeated_locations PASSED [ 16%] 891s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_help PASSED [ 16%] 891s tests/translate/convert/test_po2json.py::TestPO2JSON::test_basic PASSED [ 16%] 891s tests/translate/convert/test_po2json.py::TestPO2JSON::test_ordering_serialize PASSED [ 16%] 891s tests/translate/convert/test_po2json.py::TestPO2JSON::test_dont_use_empty_translation PASSED [ 16%] 891s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_false PASSED [ 16%] 891s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_true PASSED [ 16%] 891s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_false PASSED [ 16%] 891s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_true PASSED [ 16%] 891s tests/translate/convert/test_po2md.py::TestPO2MD::test_help PASSED [ 16%] 891s tests/translate/convert/test_po2md.py::TestPO2MD::test_single_markdown_file_with_single_po PASSED [ 16%] 891s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po PASSED [ 16%] 891s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_and_directory_of_po_files PASSED [ 16%] 891s tests/translate/convert/test_po2moz.py::TestPO2MozCommand::test_help PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_empty PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_simple PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_comment PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_ok_marker PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_below_threshold PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_above_threshold PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_skip_non_translatable_input PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_no_fuzzy PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_allow_fuzzy PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_mark_active PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_empty PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_simple PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_comment PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_ok_marker PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_below_threshold PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_above_threshold PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_skip_non_translatable_input PASSED [ 16%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_no_fuzzy PASSED [ 17%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_allow_fuzzy PASSED [ 17%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_mark_active PASSED [ 17%] 891s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_help PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OO::test_convertoo PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OO::test_pofilter PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_simple PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_escape PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_quotes PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_spaces PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OO::test_default_timestamp PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OO::test_escape_conversion PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes2 PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_convertoo PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_pofilter PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_simple PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_quotes PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_spaces PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_escape_conversion PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes2 PASSED [ 17%] 891s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_help PASSED [ 17%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp PASSED [ 17%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_notemplate PASSED [ 17%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_empty_template PASSED [ 17%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_simple PASSED [ 17%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_space_preservation PASSED [ 17%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_preserve_unused_statement PASSED [ 17%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_not_translated_multiline PASSED [ 17%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_blank_entries PASSED [ 17%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_fuzzy PASSED [ 17%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_locations_with_spaces PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_inline_comments PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_block_comments PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_variables PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_multiline PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_hash_comment PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_arrays PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_nested_array PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_unnamed_nested_arrays PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template XFAIL [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_notemplate PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_empty_template PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_simple PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_space_preservation PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_preserve_unused_statement PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_not_translated_multiline PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_blank_entries PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_fuzzy PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_locations_with_spaces PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_inline_comments PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_block_comments PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_variables PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_multiline PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_hash_comment PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_arrays PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_nested_array PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_unnamed_nested_arrays PASSED [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template XFAIL [ 18%] 891s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_help PASSED [ 18%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_simple PASSED [ 18%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated PASSED [ 18%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_hard_newlines_preserved PASSED [ 18%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_space_preservation PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_value PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_separator PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank_entries PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_fuzzy PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_margin_whitespace PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_all_whitespace PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_propertyless_template PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_delimiters PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_empty_value PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_personalities PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_simple PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline2 PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_comments PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_unchanged PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gaia_plurals PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_duplicates PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gwt_plurals PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_simple PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_hard_newlines_preserved PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_space_preservation PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_value PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_separator PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank_entries PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_fuzzy PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_margin_whitespace PASSED [ 19%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_all_whitespace PASSED [ 20%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_propertyless_template PASSED [ 20%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_delimiters PASSED [ 20%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_empty_value PASSED [ 20%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_personalities PASSED [ 20%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_simple PASSED [ 20%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline PASSED [ 20%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline2 PASSED [ 20%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_comments PASSED [ 20%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_unchanged PASSED [ 20%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank PASSED [ 20%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gaia_plurals PASSED [ 20%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_duplicates PASSED [ 20%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gwt_plurals PASSED [ 20%] 891s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_help PASSED [ 20%] 891s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_help PASSED [ 20%] 892s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert PASSED [ 20%] 892s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_quotes PASSED [ 20%] 892s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment PASSED [ 20%] 892s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_dos_eol PASSED [ 20%] 892s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_double_string PASSED [ 20%] 892s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_popup PASSED [ 20%] 892s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_discardable PASSED [ 20%] 892s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_menuex PASSED [ 20%] 892s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_newlines PASSED [ 20%] 892s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_after PASSED [ 20%] 892s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_block_language PASSED [ 20%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_simpleunit PASSED [ 20%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_basic PASSED [ 20%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_multiline PASSED [ 20%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapednewlines PASSED [ 20%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedtabs PASSED [ 20%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedquotes PASSED [ 20%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_exclusions PASSED [ 20%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingcomment PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingcomment PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingduplicatecomment PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingcomment PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_existingcomments PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_simpleunit PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_basic PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_multiline PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapednewlines PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedtabs PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedquotes PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_exclusions PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingcomment PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingcomment PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingduplicatecomment PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingcomment PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_existingcomments PASSED [ 21%] 892s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_help PASSED [ 21%] 892s tests/translate/convert/test_po2sub.py::TestPO2Sub::test_subrip PASSED [ 21%] 892s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_subrip PASSED [ 21%] 892s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_help PASSED [ 21%] 892s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_empty PASSED [ 22%] 892s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert PASSED [ 22%] 892s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_marked_untranslated PASSED [ 22%] 892s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_empty PASSED [ 22%] 892s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert PASSED [ 22%] 892s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_marked_untranslated PASSED [ 22%] 892s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_help PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_basic PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcelanguage PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_targetlanguage PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_multiline PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapednewlines PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedtabs PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedquotes PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_exclusions PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonascii PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonecomments PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_otherscomments PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcecomments PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_typecomments PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_basic PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcelanguage PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_targetlanguage PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_multiline PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapednewlines PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedtabs PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedquotes PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_exclusions PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonascii PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonecomments PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_otherscomments PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcecomments PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_typecomments PASSED [ 22%] 892s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_help PASSED [ 22%] 892s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simpleunit PASSED [ 23%] 892s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simple_unicode_unit PASSED [ 23%] 892s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fullunit PASSED [ 23%] 892s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fuzzyunit PASSED [ 23%] 892s tests/translate/convert/test_po2ts.py::TestPO2TS::test_obsolete PASSED [ 23%] 892s tests/translate/convert/test_po2ts.py::TestPO2TS::test_duplicates PASSED [ 23%] 892s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak PASSED [ 23%] 892s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak_consecutive PASSED [ 23%] 892s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simpleunit PASSED [ 23%] 892s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simple_unicode_unit PASSED [ 23%] 892s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fullunit PASSED [ 23%] 892s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fuzzyunit PASSED [ 23%] 892s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_obsolete PASSED [ 23%] 892s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_duplicates PASSED [ 23%] 892s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak PASSED [ 23%] 892s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak_consecutive PASSED [ 23%] 892s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_help PASSED [ 23%] 892s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_basic PASSED [ 23%] 892s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_nonascii PASSED [ 23%] 892s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_blank_handling PASSED [ 23%] 892s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_fuzzy_handling PASSED [ 23%] 892s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_obsolete_ignore PASSED [ 23%] 892s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_header_ignore PASSED [ 23%] 892s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_below_threshold PASSED [ 23%] 892s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_above_threshold PASSED [ 23%] 892s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_basic PASSED [ 23%] 892s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_nonascii PASSED [ 23%] 892s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_blank_handling PASSED [ 23%] 892s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_fuzzy_handling PASSED [ 23%] 892s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_obsolete_ignore PASSED [ 23%] 892s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_header_ignore PASSED [ 23%] 892s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_below_threshold PASSED [ 23%] 892s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_above_threshold PASSED [ 23%] 892s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_help PASSED [ 24%] 892s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_basic PASSED [ 24%] 892s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_unicode PASSED [ 24%] 892s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_ordering_serialize PASSED [ 24%] 892s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_markmin PASSED [ 24%] 892s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_minimal PASSED [ 24%] 892s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_basic PASSED [ 24%] 892s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_multiline PASSED [ 24%] 892s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapednewlines PASSED [ 24%] 892s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedtabs PASSED [ 24%] 892s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedquotes PASSED [ 24%] 892s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_locationcomments PASSED [ 24%] 892s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_othercomments PASSED [ 24%] 892s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_automaticcomments PASSED [ 24%] 892s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_header PASSED [ 24%] 892s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_fuzzy PASSED [ 24%] 892s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_germanic_plurals PASSED [ 24%] 892s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_funny_plurals PASSED [ 24%] 892s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_language_tags PASSED [ 24%] 892s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_variables PASSED [ 24%] 892s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_approved PASSED [ 24%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_empty_PO PASSED [ 24%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_no_templates PASSED [ 24%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple_output PASSED [ 24%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple PASSED [ 24%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_translated PASSED [ 24%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_no_fuzzy PASSED [ 24%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_allow_fuzzy PASSED [ 24%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_nested PASSED [ 24%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_below_threshold PASSED [ 24%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_above_threshold PASSED [ 24%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_empty_PO PASSED [ 24%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_no_templates PASSED [ 24%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple_output PASSED [ 25%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple PASSED [ 25%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_translated PASSED [ 25%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_no_fuzzy PASSED [ 25%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_allow_fuzzy PASSED [ 25%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_nested PASSED [ 25%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_below_threshold PASSED [ 25%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_above_threshold PASSED [ 25%] 892s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_help PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank_plurals PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_simple PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_messages_marked_fuzzy PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals_with_fuzzy_matching PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change XFAIL [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_change PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_and_whitespace_change PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_ambiguous_with_disambiguous PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes XFAIL [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently XFAIL [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_dont_duplicate PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_new_overides_old PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments_with_blank_comment_lines PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_commentlines PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgidcomments PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_with_msgidcomment PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_obsoleting_messages PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_not_obsoleting_empty_messages PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_new_before_obsolete PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_header_initialisation PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments PASSED [ 25%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_typecomments PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt_multiline PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_location PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_id PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_msgid PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_migrate_msgidcomment_to_msgctxt PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_obsolete_msgctxt PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_small_strings PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank_plurals PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_simple PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_messages_marked_fuzzy PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change XFAIL [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_change PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_and_whitespace_change PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_ambiguous_with_disambiguous PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes XFAIL [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently XFAIL [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_new_overides_old PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments_with_blank_comment_lines PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_commentlines PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgidcomments PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_with_msgidcomment PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_obsoleting_messages PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_not_obsoleting_empty_messages PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_new_before_obsolete PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_header_initialisation PASSED [ 26%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments PASSED [ 27%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_typecomments PASSED [ 27%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt PASSED [ 27%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt_multiline PASSED [ 27%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_location PASSED [ 27%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_id PASSED [ 27%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_msgid PASSED [ 27%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_migrate_msgidcomment_to_msgctxt PASSED [ 27%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_obsolete_msgctxt PASSED [ 27%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_small_strings PASSED [ 27%] 892s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_help PASSED [ 27%] 892s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_no_endlines_added PASSED [ 27%] 892s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_uncomment_contributors PASSED [ 27%] 892s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_multiline_comment_newlines PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_simpleentry PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_convertprop PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_value_entry PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_separator_entry PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_end_of_string PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_start_of_value PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unicode PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_escaping PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_comments PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_comments PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_folding_accesskeys PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_dont_translate PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty_translated PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_newlines_in_value PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_header_comments PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unassociated_comment_order PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_x_header PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gaia_plurals PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_successive_gaia_plurals PASSED [ 27%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_duplicate_keys PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gwt_plurals PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_simpleentry PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_convertprop PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_value_entry PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_separator_entry PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_end_of_string PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_start_of_value PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unicode PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_escaping PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_comments PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_comments PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_folding_accesskeys PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_dont_translate PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty_translated PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_newlines_in_value PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_header_comments PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unassociated_comment_order PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_x_header PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gaia_plurals PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_successive_gaia_plurals PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_duplicate_keys PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gwt_plurals PASSED [ 28%] 892s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_help PASSED [ 28%] 892s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_help PASSED [ 28%] 893s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert PASSED [ 28%] 893s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 PASSED [ 28%] 893s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong PASSED [ 28%] 893s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 PASSED [ 28%] 893s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex PASSED [ 28%] 893s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_simple PASSED [ 28%] 893s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_multiple_units PASSED [ 28%] 893s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_automaticcomments PASSED [ 29%] 893s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_translatorcomments PASSED [ 29%] 893s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_locations PASSED [ 29%] 893s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple PASSED [ 29%] 893s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_multiple_units PASSED [ 29%] 893s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_automaticcomments PASSED [ 29%] 893s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_translatorcomments PASSED [ 29%] 893s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_locations PASSED [ 29%] 893s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_help PASSED [ 29%] 893s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot PASSED [ 29%] 893s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po PASSED [ 29%] 893s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates PASSED [ 29%] 893s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_convert_empty PASSED [ 29%] 893s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_defaults PASSED [ 29%] 893s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_includeunused PASSED [ 29%] 893s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_convert_empty PASSED [ 29%] 893s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_defaults PASSED [ 29%] 893s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_includeunused PASSED [ 29%] 893s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_help PASSED [ 29%] 893s tests/translate/convert/test_ts2po.py::TestTS2PO::test_blank PASSED [ 29%] 893s tests/translate/convert/test_ts2po.py::TestTS2PO::test_basic PASSED [ 29%] 893s tests/translate/convert/test_ts2po.py::TestTS2PO::test_unfinished PASSED [ 29%] 893s tests/translate/convert/test_ts2po.py::TestTS2PO::test_multiline PASSED [ 29%] 893s tests/translate/convert/test_ts2po.py::TestTS2PO::test_obsolete PASSED [ 29%] 893s tests/translate/convert/test_ts2po.py::TestTS2PO::test_comment PASSED [ 29%] 893s tests/translate/convert/test_ts2po.py::TestTS2PO::test_extracomment PASSED [ 29%] 893s tests/translate/convert/test_ts2po.py::TestTS2PO::test_emptycontext PASSED [ 29%] 893s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_blank PASSED [ 29%] 893s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_basic PASSED [ 29%] 893s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_unfinished PASSED [ 29%] 893s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_multiline PASSED [ 29%] 893s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_obsolete PASSED [ 29%] 893s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_comment PASSED [ 29%] 893s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_extracomment PASSED [ 30%] 893s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_emptycontext PASSED [ 30%] 893s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_help PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_convert_empty PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_keep_duplicates PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_drop_duplicates PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_simple PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_multiple_units PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_carriage_return PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_merge PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_no_segmentation PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestDoku2po::test_convert_empty PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestDoku2po::test_keep_duplicates PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestDoku2po::test_drop_duplicates PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestDoku2po::test_basic PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestDoku2po::test_bullet_list PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestDoku2po::test_numbered_list PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestDoku2po::test_spacing PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestDoku2po::test_merge PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_convert_empty PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_keep_duplicates PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_drop_duplicates PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_simple PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_multiple_units PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_carriage_return PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_merge PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_no_segmentation PASSED [ 30%] 893s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_help PASSED [ 30%] 893s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_basic PASSED [ 30%] 893s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_unicode PASSED [ 30%] 893s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_markmin PASSED [ 30%] 893s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_help PASSED [ 30%] 893s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert PASSED [ 30%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_minimal PASSED [ 30%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_basic PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_translatorcomments PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_autocomment PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_locations PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_fuzzy PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_plurals PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_minimal PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_basic PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_translatorcomments PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_autocomment PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_locations PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_fuzzy PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_plurals PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_help PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_simple_convert PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_minimal PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_basic PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_translatorcomments PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_autocomment PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_locations PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_fuzzy PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_plurals PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_help PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po PASSED [ 31%] 893s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates PASSED [ 31%] 893s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_empty_YAML PASSED [ 31%] 893s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple_output PASSED [ 31%] 893s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple PASSED [ 31%] 893s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_nested PASSED [ 31%] 893s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates XFAIL [ 31%] 893s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_with_template PASSED [ 31%] 893s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_empty_YAML PASSED [ 32%] 893s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple_output PASSED [ 32%] 893s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple PASSED [ 32%] 893s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_nested PASSED [ 32%] 893s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates XFAIL [ 32%] 893s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_with_template PASSED [ 32%] 893s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_help PASSED [ 32%] 893s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_empty_target PASSED [ 32%] 893s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_ellipsis PASSED [ 32%] 893s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_spacestart_spaceend PASSED [ 32%] 893s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_start_capitals PASSED [ 32%] 893s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_end_punc PASSED [ 32%] 893s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_combinations PASSED [ 32%] 893s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_nothing_to_do PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_defaults PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_construct PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_accelerator_markers PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_messages PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_accelerators PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_acceleratedvariables XFAIL [ 32%] 893s tests/translate/filters/test_checks.py::test_acronyms PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_blank PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_brackets PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_compendiumconflicts PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_doublequoting PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_doublespacing PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_doublewords PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_endpunc PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_endwhitespace PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_escapes PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_newlines PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_tabs PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_filepaths PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_kdecomments PASSED [ 32%] 893s tests/translate/filters/test_checks.py::test_long PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_musttranslatewords XFAIL [ 33%] 893s tests/translate/filters/test_checks.py::test_notranslatewords PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_numbers PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_persian_numbers PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_bengali_numbers PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_arabic_numbers PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_assamese_numbers PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_options PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_printf PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_pythonbraceformat PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_puncspacing PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_purepunc PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_sentencecount PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_short PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_singlequoting PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_vietnamese_singlequoting PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time XFAIL [ 33%] 893s tests/translate/filters/test_checks.py::test_persian_quoting PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_simplecaps PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_spellcheck SKIPPED (Spe...) [ 33%] 893s tests/translate/filters/test_checks.py::test_startcaps PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_startpunc PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_startwhitespace PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_unchanged PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_untranslated PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_validchars PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_minimalchecker PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_reducedchecker PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_variables_kde PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_variables_gnome PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_variables_mozilla PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_variables_openoffice PASSED [ 33%] 893s tests/translate/filters/test_checks.py::test_variables_cclicense PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_variables_ios PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_xmltags PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags XFAIL [ 34%] 893s tests/translate/filters/test_checks.py::test_ooxmltags PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_functions PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_emails PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_urls PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_simpleplurals PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_nplurals PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_credits PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_gconf PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_validxml PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_hassuggestion PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_dialogsizes PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_mozilla_no_accelerators_for_indic PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_ensure_bengali_languages_script_is_correct PASSED [ 34%] 893s tests/translate/filters/test_checks.py::test_category PASSED [ 34%] 893s tests/translate/filters/test_decoration.py::test_spacestart PASSED [ 34%] 893s tests/translate/filters/test_decoration.py::test_isvalidaccelerator PASSED [ 34%] 893s tests/translate/filters/test_decoration.py::test_find_marked_variables PASSED [ 34%] 893s tests/translate/filters/test_decoration.py::test_getnumbers PASSED [ 34%] 893s tests/translate/filters/test_decoration.py::test_getfunctions PASSED [ 34%] 893s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplepass PASSED [ 34%] 893s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplefail PASSED [ 34%] 893s tests/translate/filters/test_pofilter.py::TestPOFilter::test_variables_across_lines PASSED [ 34%] 893s tests/translate/filters/test_pofilter.py::TestPOFilter::test_ignore_if_already_marked PASSED [ 34%] 893s tests/translate/filters/test_pofilter.py::TestPOFilter::test_non_existant_check PASSED [ 34%] 893s tests/translate/filters/test_pofilter.py::TestPOFilter::test_list_all_tests PASSED [ 34%] 893s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_fuzzy PASSED [ 34%] 893s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_review PASSED [ 35%] 893s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isfuzzy PASSED [ 35%] 893s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isreview PASSED [ 35%] 893s tests/translate/filters/test_pofilter.py::TestPOFilter::test_notes PASSED [ 35%] 893s tests/translate/filters/test_pofilter.py::TestPOFilter::test_unicode PASSED [ 35%] 893s tests/translate/filters/test_pofilter.py::TestPOFilter::test_preconditions PASSED [ 35%] 893s tests/translate/filters/test_pofilter.py::TestPOFilter::test_msgid_comments PASSED [ 35%] 893s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplepass PASSED [ 35%] 893s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplefail PASSED [ 35%] 893s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_variables_across_lines PASSED [ 35%] 893s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_ignore_if_already_marked PASSED [ 35%] 893s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_non_existant_check PASSED [ 35%] 893s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_list_all_tests PASSED [ 35%] 893s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_fuzzy PASSED [ 35%] 893s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_review PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isfuzzy PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isreview PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_notes PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_unicode PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_preconditions PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplepass PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplefail PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_variables_across_lines PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_ignore_if_already_marked PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_non_existant_check PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_list_all_tests PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_notes PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_unicode PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_preconditions PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_fuzzy PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_review PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isfuzzy PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isreview PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplepass PASSED [ 35%] 894s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplefail PASSED [ 36%] 894s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_variables_across_lines PASSED [ 36%] 894s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_ignore_if_already_marked PASSED [ 36%] 894s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_non_existant_check PASSED [ 36%] 894s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_list_all_tests PASSED [ 36%] 894s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_fuzzy PASSED [ 36%] 894s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_review PASSED [ 36%] 894s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isfuzzy PASSED [ 36%] 894s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isreview PASSED [ 36%] 894s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_notes PASSED [ 36%] 894s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_unicode PASSED [ 36%] 894s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_preconditions PASSED [ 36%] 894s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_msgid_comments PASSED [ 36%] 894s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_cedillas PASSED [ 36%] 894s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_niciun PASSED [ 36%] 894s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_nicio PASSED [ 36%] 894s tests/translate/filters/test_prefilters.py::test_removekdecomments PASSED [ 36%] 894s tests/translate/filters/test_prefilters.py::test_filterwordswithpunctuation PASSED [ 36%] 894s tests/translate/lang/test_af.py::test_sentences PASSED [ 36%] 894s tests/translate/lang/test_af.py::test_capsstart PASSED [ 36%] 894s tests/translate/lang/test_af.py::test_transliterate_cyrillic PASSED [ 36%] 894s tests/translate/lang/test_am.py::test_punctranslate PASSED [ 36%] 894s tests/translate/lang/test_am.py::test_sentences PASSED [ 36%] 894s tests/translate/lang/test_ar.py::test_punctranslate PASSED [ 36%] 894s tests/translate/lang/test_ar.py::test_sentences PASSED [ 36%] 894s tests/translate/lang/test_common.py::test_characters PASSED [ 36%] 894s tests/translate/lang/test_common.py::test_words PASSED [ 36%] 894s tests/translate/lang/test_common.py::test_word_khmer XFAIL (ZWS is n...) [ 36%] 894s tests/translate/lang/test_common.py::test_sentences PASSED [ 36%] 894s tests/translate/lang/test_common.py::test_capsstart PASSED [ 36%] 894s tests/translate/lang/test_common.py::test_numstart PASSED [ 36%] 894s tests/translate/lang/test_common.py::test_punctranslate PASSED [ 36%] 894s tests/translate/lang/test_common.py::test_length_difference PASSED [ 36%] 894s tests/translate/lang/test_common.py::test_alter_length PASSED [ 37%] 894s tests/translate/lang/test_data.py::test_normalise_code PASSED [ 37%] 894s tests/translate/lang/test_data.py::test_simplify_to_common PASSED [ 37%] 894s tests/translate/lang/test_el.py::test_punctranslate PASSED [ 37%] 894s tests/translate/lang/test_el.py::test_sentences PASSED [ 37%] 894s tests/translate/lang/test_es.py::test_punctranslate PASSED [ 37%] 894s tests/translate/lang/test_es.py::test_sentences PASSED [ 37%] 894s tests/translate/lang/test_fa.py::test_punctranslate PASSED [ 37%] 894s tests/translate/lang/test_fa.py::test_sentences PASSED [ 37%] 894s tests/translate/lang/test_factory.py::test_getlanguage PASSED [ 37%] 894s tests/translate/lang/test_factory.py::test_get_all_languages PASSED [ 37%] 894s tests/translate/lang/test_fr.py::test_punctranslate PASSED [ 37%] 894s tests/translate/lang/test_fr.py::test_sentences PASSED [ 37%] 894s tests/translate/lang/test_hy.py::test_punctranslate PASSED [ 37%] 894s tests/translate/lang/test_hy.py::test_sentences PASSED [ 37%] 894s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_lang PASSED [ 37%] 894s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_store PASSED [ 37%] 894s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_bad_init_data PASSED [ 37%] 894s tests/translate/lang/test_ja.py::test_punctranslate PASSED [ 37%] 894s tests/translate/lang/test_ja.py::test_sentences PASSED [ 37%] 894s tests/translate/lang/test_km.py::test_punctranslate PASSED [ 37%] 894s tests/translate/lang/test_km.py::test_sentences PASSED [ 37%] 894s tests/translate/lang/test_ko.py::test_punctranslate PASSED [ 37%] 894s tests/translate/lang/test_ko.py::test_sentences PASSED [ 37%] 894s tests/translate/lang/test_ne.py::test_punctranslate PASSED [ 37%] 894s tests/translate/lang/test_ne.py::test_sentences PASSED [ 37%] 894s tests/translate/lang/test_nqo.py::test_punctranslate PASSED [ 37%] 894s tests/translate/lang/test_nqo.py::test_sentences PASSED [ 37%] 894s tests/translate/lang/test_or.py::test_punctranslate PASSED [ 37%] 894s tests/translate/lang/test_or.py::test_country_code PASSED [ 37%] 894s tests/translate/lang/test_or.py::test_sentences PASSED [ 37%] 894s tests/translate/lang/test_poedit.py::test_isocode PASSED [ 37%] 894s tests/translate/lang/test_ro.py::test_cedillas PASSED [ 37%] 894s tests/translate/lang/test_ro.py::test_niciun PASSED [ 37%] 894s tests/translate/lang/test_scn.py::test_italianisms PASSED [ 38%] 894s tests/translate/lang/test_scn.py::test_vocalism PASSED [ 38%] 894s tests/translate/lang/test_scn.py::test_suffixes PASSED [ 38%] 894s tests/translate/lang/test_team.py::test_simple PASSED [ 38%] 894s tests/translate/lang/test_th.py::test_punctranslate PASSED [ 38%] 894s tests/translate/lang/test_th.py::test_sentences PASSED [ 38%] 894s tests/translate/lang/test_tr.py::test_sentences PASSED [ 38%] 894s tests/translate/lang/test_uk.py::test_sentences PASSED [ 38%] 894s tests/translate/lang/test_vi.py::test_punctranslate PASSED [ 38%] 894s tests/translate/lang/test_vi.py::test_sentences PASSED [ 38%] 894s tests/translate/lang/test_zh.py::test_punctranslate PASSED [ 38%] 894s tests/translate/lang/test_zh.py::test_sentences PASSED [ 38%] 894s tests/translate/misc/test_deprecation.py::TestDeprecation::test_deprecated_decorator PASSED [ 38%] 894s tests/translate/misc/test_deprecation.py::TestDeprecation::test_no_deprecated_decorator PASSED [ 38%] 894s tests/translate/misc/test_dictutils.py::test_cidict_has_key PASSED [ 38%] 894s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor PASSED [ 38%] 894s tests/translate/misc/test_multistring.py::TestMultistring::test_repr PASSED [ 38%] 894s tests/translate/misc/test_multistring.py::TestMultistring::test_replace PASSED [ 38%] 894s tests/translate/misc/test_multistring.py::TestMultistring::test_comparison PASSED [ 38%] 894s tests/translate/misc/test_multistring.py::TestMultistring::test_coercion PASSED [ 38%] 894s tests/translate/misc/test_multistring.py::TestMultistring::test_unicode_coercion PASSED [ 38%] 894s tests/translate/misc/test_multistring.py::TestMultistring::test_list_coercion PASSED [ 38%] 894s tests/translate/misc/test_multistring.py::TestMultistring::test_multistring_hash PASSED [ 38%] 894s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_splitext PASSED [ 38%] 894s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_outputfile_receives_bytes PASSED [ 38%] 894s tests/translate/misc/test_progressbar.py::test_hashprogressbar PASSED [ 38%] 894s tests/translate/misc/test_quote.py::test_find_all PASSED [ 38%] 894s tests/translate/misc/test_quote.py::test_extract PASSED [ 38%] 894s tests/translate/misc/test_quote.py::test_extractwithoutquotes PASSED [ 38%] 894s tests/translate/misc/test_quote.py::test_extractwithoutquotes_passfunc PASSED [ 38%] 894s tests/translate/misc/test_quote.py::test_stripcomment PASSED [ 38%] 894s tests/translate/misc/test_quote.py::TestEncoding::test_javapropertiesencode PASSED [ 38%] 894s tests/translate/misc/test_quote.py::TestEncoding::test_java_utf8_properties_encode PASSED [ 38%] 894s tests/translate/misc/test_quote.py::TestEncoding::test_escapespace PASSED [ 39%] 894s tests/translate/misc/test_quote.py::TestEncoding::test_mozillaescapemarginspaces PASSED [ 39%] 894s tests/translate/misc/test_quote.py::TestEncoding::test_mozilla_control_escapes PASSED [ 39%] 894s tests/translate/misc/test_quote.py::TestEncoding::test_propertiesdecode PASSED [ 39%] 894s tests/translate/misc/test_quote.py::TestEncoding::test_controlchars PASSED [ 39%] 894s tests/translate/misc/test_quote.py::TestEncoding::test_properties_decode_slashu PASSED [ 39%] 894s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding PASSED [ 39%] 894s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_existing_entities PASSED [ 39%] 894s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_passthrough PASSED [ 39%] 894s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_nonentities PASSED [ 39%] 894s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_four_spaces PASSED [ 39%] 894s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_tab PASSED [ 39%] 894s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_distance PASSED [ 39%] 894s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_similarity PASSED [ 39%] 894s tests/translate/search/test_lshtein.py::TestLevenshtein::test_long_similarity PASSED [ 39%] 894s tests/translate/search/test_match.py::TestMatch::test_matching PASSED [ 39%] 894s tests/translate/search/test_match.py::TestMatch::test_multiple_store PASSED [ 39%] 894s tests/translate/search/test_match.py::TestMatch::test_extendtm PASSED [ 39%] 894s tests/translate/search/test_match.py::TestMatch::test_terminology PASSED [ 39%] 894s tests/translate/search/test_match.py::TestMatch::test_brackets PASSED [ 39%] 894s tests/translate/search/test_match.py::TestMatch::test_past_tences PASSED [ 39%] 894s tests/translate/search/test_match.py::TestMatch::test_space_mismatch PASSED [ 39%] 894s tests/translate/search/test_match.py::TestMatch::test_hyphen_mismatch PASSED [ 39%] 894s tests/translate/search/test_terminology.py::TestTerminology::test_basic PASSED [ 39%] 894s tests/translate/services/test_tmserver.py::TestTMServer::test_import PASSED [ 39%] 895s tests/translate/services/test_tmserver.py::TestTMServer::test_server PASSED [ 39%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_parse PASSED [ 39%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_tree PASSED [ 39%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_add PASSED [ 39%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_contains PASSED [ 39%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getitem PASSED [ 39%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getslice PASSED [ 39%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_iter PASSED [ 39%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_len PASSED [ 40%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_mul PASSED [ 40%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_offset PASSED [ 40%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_at_offset PASSED [ 40%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find PASSED [ 40%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find_elems_with PASSED [ 40%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_flatten PASSED [ 40%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case1 PASSED [ 40%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case2 PASSED [ 40%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case3 PASSED [ 40%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case4 PASSED [ 40%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_insert PASSED [ 40%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_isleaf PASSED [ 40%] 895s tests/translate/storage/placeables/test_base.py::TestStringElem::test_prune PASSED [ 40%] 895s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_base_placeables PASSED [ 40%] 895s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables XFAIL [ 40%] 895s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables XFAIL [ 40%] 895s tests/translate/storage/placeables/test_general.py::test_placeable_numbers PASSED [ 40%] 895s tests/translate/storage/placeables/test_general.py::test_placeable_newline PASSED [ 40%] 895s tests/translate/storage/placeables/test_general.py::test_placeable_alt_attr PASSED [ 40%] 895s tests/translate/storage/placeables/test_general.py::test_placeable_qt_formatting PASSED [ 40%] 895s tests/translate/storage/placeables/test_general.py::test_placeable_camelcase PASSED [ 40%] 895s tests/translate/storage/placeables/test_general.py::test_placeable_space PASSED [ 40%] 895s tests/translate/storage/placeables/test_general.py::test_placeable_punctuation PASSED [ 40%] 895s tests/translate/storage/placeables/test_general.py::test_placeable_xml_entity PASSED [ 40%] 895s tests/translate/storage/placeables/test_general.py::test_placeable_xml_tag PASSED [ 40%] 895s tests/translate/storage/placeables/test_general.py::test_placeable_option PASSED [ 40%] 895s tests/translate/storage/placeables/test_general.py::test_placeable_file PASSED [ 40%] 895s tests/translate/storage/placeables/test_general.py::test_placeable_email PASSED [ 40%] 895s tests/translate/storage/placeables/test_general.py::test_placeable_caps PASSED [ 40%] 895s tests/translate/storage/placeables/test_general.py::test_placeable_formatting PASSED [ 40%] 895s tests/translate/storage/placeables/test_general.py::test_placeable_doubleat PASSED [ 40%] 895s tests/translate/storage/placeables/test_general.py::test_placeable_brace PASSED [ 40%] 895s tests/translate/storage/placeables/test_general.py::test_python_placeable PASSED [ 40%] 895s tests/translate/storage/placeables/test_lisa.py::test_xml_to_strelem PASSED [ 41%] 895s tests/translate/storage/placeables/test_lisa.py::test_xml_space PASSED [ 41%] 895s tests/translate/storage/placeables/test_lisa.py::test_chunk_list PASSED [ 41%] 895s tests/translate/storage/placeables/test_lisa.py::test_set_strelem_to_xml PASSED [ 41%] 895s tests/translate/storage/placeables/test_lisa.py::test_unknown_xml_placeable PASSED [ 41%] 895s tests/translate/storage/placeables/test_terminology.py::TestTerminologyPlaceable::test_simple_terminology PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_isfuzzy PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_create PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_eq PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escapes PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_difficult_escapes PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_note_sanity PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_target PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_get PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_set PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quotes_with_newline PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline_in_xml PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_twitter PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quote PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_question PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_double_space PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_leading_space PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_tailing_space PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_xml_entities PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote_newline PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_arrows PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link_and_text PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_blank_string PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_escape_message_with_newline PASSED [ 41%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_invalid_lang PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_quote PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_leading_space PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_trailing_space PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_with_ampersand PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_double_space PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_deep_double_space PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_complex_xml PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quoted_newlines PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline_in_xml PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_twitter PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_question PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quote PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_space PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_space PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_newlines PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_xml_entities PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_code PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_arrows PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link_and_text PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_space PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_spaces PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_spaces PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_newline PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_many_quotes PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string_again PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_quotes_string PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_newline_in_string PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_not_translatable_string PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_newline PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_comments PASSED [ 42%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_quote PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space_quoted PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space_quoted PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_with_ampersand PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_double_space_quoted PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_deep_double_space_quoted PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_complex_xml PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unicode PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_unescaped PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_alone PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_full PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_create_blank PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_remove PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_find PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_parse PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_files PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_save PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_extensions PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_mimetypes PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translate PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_nonascii PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_default_handlings PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_invalid_filename PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_namespaces PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_serialize PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add_formatting PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity PASSED [ 43%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_invalid_entity PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_indent PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_markup PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_noedit PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_remove PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_set PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_others PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_quotes_set PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_g PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_namespace PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_zh_hk PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_b_zh_hk PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_missing_plural PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_removeunit PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_prefix PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_rtl PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_isfuzzy PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_create PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_eq PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_escapes PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_difficult_escapes PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_note_sanity PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_target PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_get PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_set PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_create_blank PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_add PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_remove PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_find PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_parse PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_files PASSED [ 44%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_save PASSED [ 45%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_extensions PASSED [ 45%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_mimetypes PASSED [ 45%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_translate PASSED [ 45%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_markup PASSED [ 45%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_nonascii PASSED [ 45%] 895s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_plural PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationUnit::test_isfuzzy PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationUnit::test_create PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationUnit::test_eq PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationUnit::test_target PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationUnit::test_escapes PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationUnit::test_difficult_escapes PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationUnit::test_note_sanity PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_get PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_set PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationStore::test_create_blank PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationStore::test_add PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationStore::test_remove PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationStore::test_find PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationStore::test_translate PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationStore::test_parse PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationStore::test_files PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationStore::test_save PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationStore::test_markup PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationStore::test_nonascii PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationStore::test_extensions PASSED [ 45%] 895s tests/translate/storage/test_base.py::TestTranslationStore::test_mimetypes PASSED [ 45%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_isfuzzy PASSED [ 45%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_create PASSED [ 45%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_eq PASSED [ 45%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_target PASSED [ 45%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_escapes PASSED [ 45%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_get PASSED [ 45%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_set PASSED [ 46%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_difficult_escapes PASSED [ 46%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_newlines PASSED [ 46%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_istranslated PASSED [ 46%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_note_sanity PASSED [ 46%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_create_blank PASSED [ 46%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_add PASSED [ 46%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_remove PASSED [ 46%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_find PASSED [ 46%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_translate PASSED [ 46%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_parse PASSED [ 46%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_files PASSED [ 46%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_save PASSED [ 46%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_markup PASSED [ 46%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_nonascii PASSED [ 46%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_extensions PASSED [ 46%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_mimetypes PASSED [ 46%] 895s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_checksum PASSED [ 46%] 895s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_isfuzzy PASSED [ 46%] 895s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_create PASSED [ 46%] 895s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_eq PASSED [ 46%] 895s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_target PASSED [ 46%] 895s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_escapes PASSED [ 46%] 895s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_difficult_escapes PASSED [ 46%] 895s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_note_sanity PASSED [ 46%] 895s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_get PASSED [ 46%] 895s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_set PASSED [ 46%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_create_blank PASSED [ 46%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_add PASSED [ 46%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_remove PASSED [ 46%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_find PASSED [ 46%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_translate PASSED [ 46%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse PASSED [ 46%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_files PASSED [ 47%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_save PASSED [ 47%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_markup PASSED [ 47%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_nonascii PASSED [ 47%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_extensions PASSED [ 47%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_mimetypes PASSED [ 47%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_singlequoting PASSED [ 47%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8 PASSED [ 47%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_dialect PASSED [ 47%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_sig PASSED [ 47%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_default PASSED [ 47%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_location_is_parsed PASSED [ 47%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_context_is_parsed PASSED [ 47%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_newline PASSED [ 47%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse_sample PASSED [ 47%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_detection PASSED [ 47%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding PASSED [ 47%] 895s tests/translate/storage/test_csvl10n.py::TestCSV::test_corrupt PASSED [ 47%] 895s tests/translate/storage/test_directory.py::TestDirectory::test_created PASSED [ 47%] 895s tests/translate/storage/test_directory.py::TestDirectory::test_basic PASSED [ 47%] 895s tests/translate/storage/test_directory.py::TestDirectory::test_structure PASSED [ 47%] 895s tests/translate/storage/test_directory.py::TestDirectory::test_getunits PASSED [ 47%] 895s tests/translate/storage/test_dtd.py::test_roundtrip_quoting PASSED [ 47%] 895s tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases XFAIL [ 47%] 895s tests/translate/storage/test_dtd.py::test_quotefordtd PASSED [ 47%] 895s tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases XFAIL [ 47%] 895s tests/translate/storage/test_dtd.py::test_unquotefromdtd PASSED [ 47%] 895s tests/translate/storage/test_dtd.py::test_android_roundtrip_quoting PASSED [ 47%] 895s tests/translate/storage/test_dtd.py::test_quoteforandroid PASSED [ 47%] 895s tests/translate/storage/test_dtd.py::test_unquotefromandroid PASSED [ 47%] 895s tests/translate/storage/test_dtd.py::test_removeinvalidamp PASSED [ 47%] 895s tests/translate/storage/test_dtd.py::TestDTDUnit::test_isfuzzy PASSED [ 47%] 895s tests/translate/storage/test_dtd.py::TestDTDUnit::test_create PASSED [ 47%] 895s tests/translate/storage/test_dtd.py::TestDTDUnit::test_eq PASSED [ 47%] 895s tests/translate/storage/test_dtd.py::TestDTDUnit::test_escapes PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTDUnit::test_difficult_escapes PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTDUnit::test_note_sanity PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTDUnit::test_target PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_get PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_set PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_create_blank PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_add PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_remove PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_find PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_parse PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_files PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_save PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_extensions PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_mimetypes PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_translate PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_markup PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_nonascii PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_blanklines PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity_source PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_hashcomment_source PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_commentclosing PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_commententity PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_newlines_in_entity PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_conflate_comments PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_localisation_notes PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_in_source PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_order_in_source PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_comment_following XFAIL [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_comment_newline_space_closing PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting XFAIL [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_missing_quotes PASSED [ 48%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping PASSED [ 49%] 895s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping_roundtrip PASSED [ 49%] 895s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_create_blank PASSED [ 49%] 895s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_add PASSED [ 49%] 895s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_remove PASSED [ 49%] 895s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_find PASSED [ 49%] 895s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_parse PASSED [ 49%] 895s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_files PASSED [ 49%] 895s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_save PASSED [ 49%] 895s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_extensions PASSED [ 49%] 895s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_mimetypes PASSED [ 49%] 895s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_translate PASSED [ 49%] 895s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_markup PASSED [ 49%] 895s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_nonascii PASSED [ 49%] 895s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape PASSED [ 49%] 895s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape_parse_and_convert_back PASSED [ 49%] 895s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape PASSED [ 49%] 895s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape_parse_and_convert_back PASSED [ 49%] 895s tests/translate/storage/test_factory.py::TestPOFactory::test_getclass PASSED [ 49%] 895s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject_store PASSED [ 49%] 895s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject PASSED [ 49%] 895s tests/translate/storage/test_factory.py::TestPOFactory::test_get_noname_object PASSED [ 49%] 895s tests/translate/storage/test_factory.py::TestPOFactory::test_gzfile PASSED [ 49%] 895s tests/translate/storage/test_factory.py::TestPOFactory::test_bz2file PASSED [ 49%] 895s tests/translate/storage/test_factory.py::TestPOFactory::test_directory PASSED [ 49%] 895s tests/translate/storage/test_factory.py::TestXliffFactory::test_getclass PASSED [ 49%] 895s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject_store PASSED [ 49%] 895s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject PASSED [ 49%] 895s tests/translate/storage/test_factory.py::TestXliffFactory::test_get_noname_object PASSED [ 49%] 895s tests/translate/storage/test_factory.py::TestXliffFactory::test_gzfile PASSED [ 49%] 895s tests/translate/storage/test_factory.py::TestXliffFactory::test_bz2file PASSED [ 49%] 895s tests/translate/storage/test_factory.py::TestXliffFactory::test_directory PASSED [ 49%] 895s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getclass PASSED [ 49%] 895s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject_store PASSED [ 50%] 895s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject PASSED [ 50%] 895s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_get_noname_object PASSED [ 50%] 895s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_gzfile PASSED [ 50%] 895s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_bz2file PASSED [ 50%] 895s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_directory PASSED [ 50%] 895s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getclass PASSED [ 50%] 895s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject_store PASSED [ 50%] 895s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject PASSED [ 50%] 895s tests/translate/storage/test_factory.py::TestWordfastFactory::test_get_noname_object PASSED [ 50%] 895s tests/translate/storage/test_factory.py::TestWordfastFactory::test_gzfile PASSED [ 50%] 895s tests/translate/storage/test_factory.py::TestWordfastFactory::test_bz2file PASSED [ 50%] 895s tests/translate/storage/test_factory.py::TestWordfastFactory::test_directory PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_isfuzzy PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_create PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_eq PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_escapes PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_difficult_escapes PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_note_sanity PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_target PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_get PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_set PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_create_blank PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_add PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_remove PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_find PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_parse PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_files PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_save PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_extensions PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_mimetypes PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_translate PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_markup PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_nonascii PASSED [ 50%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_root_config_detect PASSED [ 51%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_detect PASSED [ 51%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_key_config_detect PASSED [ 51%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_mixed_ok PASSED [ 51%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_namespace_config_detect PASSED [ 51%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_four_spaces PASSED [ 51%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_tab PASSED [ 51%] 895s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_none_linearizes PASSED [ 51%] 895s tests/translate/storage/test_html.py::test_guess_encoding PASSED [ 51%] 895s tests/translate/storage/test_html.py::TestHTMLParsing::test_mismatched_tags PASSED [ 51%] 895s tests/translate/storage/test_html.py::TestHTMLParsing::test_self_closing_tags PASSED [ 51%] 895s tests/translate/storage/test_html.py::TestHTMLParsing::test_escaping_script_and_pre PASSED [ 51%] 895s tests/translate/storage/test_html.py::TestHTMLExtraction::test_strip_html PASSED [ 51%] 895s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_figcaption PASSED [ 51%] 895s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_caption_td_th PASSED [ 51%] 895s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_alt PASSED [ 51%] 895s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_title PASSED [ 51%] 895s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre PASSED [ 51%] 895s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre_code PASSED [ 51%] 895s tests/translate/storage/test_ini.py::TestINIUnit::test_isfuzzy PASSED [ 51%] 895s tests/translate/storage/test_ini.py::TestINIUnit::test_create PASSED [ 51%] 895s tests/translate/storage/test_ini.py::TestINIUnit::test_eq PASSED [ 51%] 895s tests/translate/storage/test_ini.py::TestINIUnit::test_escapes PASSED [ 51%] 895s tests/translate/storage/test_ini.py::TestINIUnit::test_difficult_escapes PASSED [ 51%] 895s tests/translate/storage/test_ini.py::TestINIUnit::test_note_sanity PASSED [ 51%] 895s tests/translate/storage/test_ini.py::TestINIUnit::test_target PASSED [ 51%] 895s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_get PASSED [ 51%] 895s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_set PASSED [ 51%] 895s tests/translate/storage/test_ini.py::TestINIStore::test_create_blank PASSED [ 51%] 895s tests/translate/storage/test_ini.py::TestINIStore::test_add PASSED [ 51%] 895s tests/translate/storage/test_ini.py::TestINIStore::test_remove PASSED [ 51%] 895s tests/translate/storage/test_ini.py::TestINIStore::test_find PASSED [ 51%] 895s tests/translate/storage/test_ini.py::TestINIStore::test_parse PASSED [ 51%] 895s tests/translate/storage/test_ini.py::TestINIStore::test_files PASSED [ 52%] 895s tests/translate/storage/test_ini.py::TestINIStore::test_save PASSED [ 52%] 895s tests/translate/storage/test_ini.py::TestINIStore::test_extensions PASSED [ 52%] 895s tests/translate/storage/test_ini.py::TestINIStore::test_mimetypes PASSED [ 52%] 895s tests/translate/storage/test_ini.py::TestINIStore::test_translate PASSED [ 52%] 895s tests/translate/storage/test_ini.py::TestINIStore::test_markup PASSED [ 52%] 895s tests/translate/storage/test_ini.py::TestINIStore::test_nonascii PASSED [ 52%] 895s tests/translate/storage/test_ini.py::TestINIStore::test_serialize PASSED [ 52%] 895s tests/translate/storage/test_ini.py::TestINIStore::test_rem PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_isfuzzy PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_create PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_eq PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_escapes PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_difficult_escapes PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_note_sanity PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_target PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_get PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_set PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_create_blank PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_remove PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_find PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_parse PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_files PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_save PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_extensions PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_mimetypes PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_translate PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_markup PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_nonascii PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_serialize PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_can_not_detect PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_error PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_filter PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_ordering PASSED [ 52%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_args PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_bom PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex_array PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_list_like PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_blank PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_types PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_null PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_isfuzzy PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_create PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_eq PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_escapes PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_difficult_escapes PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_note_sanity PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_target PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_get PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_set PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_serialize PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_ordering PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_array PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index_nested PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_nested_list_mixed PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_list_to_dict PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_complex_keys PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_other PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0]-expected0] PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0]-expected1] PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0][1][2][3]-expected2] PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test]selection-expected3] PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test][0]selection-expected4] PASSED [ 53%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0][test]selection-expected5] PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[-expected6] PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_isfuzzy PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_create PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_eq PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_escapes PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_difficult_escapes PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_note_sanity PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_target PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_get PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_set PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_create_blank PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_add PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_remove PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_find PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_parse PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_files PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_save PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_extensions PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_mimetypes PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_translate PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_markup PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_nonascii PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize_no_description PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_set_target PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_placeholders PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_create_blank PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_add PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_remove PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_find PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_parse PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_files PASSED [ 54%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_save PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_extensions PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_mimetypes PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_translate PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_markup PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nonascii PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_serialize PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_units PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_plurals PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nested_array PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural_id PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_create_blank PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_add PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_remove PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_find PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_parse PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_files PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_save PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_extensions PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_mimetypes PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_translate PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_markup PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_nonascii PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals_missing PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_case_no_msg PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_complex_id PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_create_blank PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_add PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_remove PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_find PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_parse PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_files PASSED [ 55%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_save PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_extensions PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_mimetypes PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_translate PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_markup PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nonascii PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_serialize PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_units PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_plurals PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nested_array PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_new_plural PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_ru PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_create_blank PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_add PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_remove PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_find PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_parse PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_files PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_save PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_extensions PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_mimetypes PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_translate PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_markup PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nonascii PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_serialize PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_units PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_plurals PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nested_array PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_new_plural PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_ru PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_create_blank PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_add PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_remove PASSED [ 56%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_find PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_parse PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_files PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_save PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_extensions PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_mimetypes PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_translate PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_markup PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_nonascii PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals_missing PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_invalid PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_create_blank PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_add PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_remove PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_find PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_parse PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_files PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_save PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_extensions PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_mimetypes PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_translate PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_markup PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_nonascii PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_1 PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_2 PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_blank PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_missing PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_simplification PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_invalid PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_create_blank PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_add PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_remove PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_find PASSED [ 57%] 895s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_parse PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_files PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_save PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_extensions PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_mimetypes PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_translate PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_markup PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_nonascii PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_roundtrip PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_create_blank PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_add PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_remove PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_find PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_parse PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_files PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_save PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_extensions PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_mimetypes PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_translate PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_markup PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_nonascii PASSED [ 58%] 895s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_roundtrip PASSED [ 58%] 895s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_atx_heading PASSED [ 58%] 895s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_autolink PASSED [ 58%] 895s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_block_quote PASSED [ 58%] 895s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_block PASSED [ 58%] 895s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_span PASSED [ 58%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_atx_heading PASSED [ 58%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_document PASSED [ 58%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_list_item PASSED [ 58%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_escaped_character PASSED [ 58%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_hard_line_break PASSED [ 58%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_block PASSED [ 58%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_character_entities PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_span PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_image_embedded_in_link PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_collapsed_reference_link PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_full_reference_link PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_shortcut_reference_link PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_merging_of_adjacent_placeholders PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_block_tokens PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_list PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_basic_markup PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_only_whitespace_and_placeholders PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_placeholder_trimming PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image_no_title PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_link PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_text_paragraph PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_remove_placeholders_from_both_ends_of_translation_units PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_setext_heading PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_table_with_header PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_thematic_break PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_hard_line_break_in_translation_unit PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_missing_placeholder PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_duplicate_placeholder PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_extraneous_placeholder PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_reordered_placeholders PASSED [ 59%] 896s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_invalid_markdown_in_translation PASSED [ 59%] 896s tests/translate/storage/test_mo.py::TestMOUnit::test_isfuzzy PASSED [ 59%] 896s tests/translate/storage/test_mo.py::TestMOUnit::test_create PASSED [ 59%] 896s tests/translate/storage/test_mo.py::TestMOUnit::test_eq PASSED [ 59%] 896s tests/translate/storage/test_mo.py::TestMOUnit::test_target PASSED [ 59%] 896s tests/translate/storage/test_mo.py::TestMOUnit::test_escapes PASSED [ 59%] 896s tests/translate/storage/test_mo.py::TestMOUnit::test_difficult_escapes PASSED [ 59%] 896s tests/translate/storage/test_mo.py::TestMOUnit::test_note_sanity PASSED [ 59%] 896s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_get PASSED [ 60%] 896s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_set PASSED [ 60%] 896s tests/translate/storage/test_mo.py::TestMOUnit::test_context PASSED [ 60%] 896s tests/translate/storage/test_mo.py::TestMOFile::test_create_blank PASSED [ 60%] 896s tests/translate/storage/test_mo.py::TestMOFile::test_add PASSED [ 60%] 896s tests/translate/storage/test_mo.py::TestMOFile::test_remove PASSED [ 60%] 896s tests/translate/storage/test_mo.py::TestMOFile::test_find PASSED [ 60%] 896s tests/translate/storage/test_mo.py::TestMOFile::test_translate PASSED [ 60%] 896s tests/translate/storage/test_mo.py::TestMOFile::test_parse PASSED [ 60%] 896s tests/translate/storage/test_mo.py::TestMOFile::test_files PASSED [ 60%] 896s tests/translate/storage/test_mo.py::TestMOFile::test_save PASSED [ 60%] 896s tests/translate/storage/test_mo.py::TestMOFile::test_markup PASSED [ 60%] 896s tests/translate/storage/test_mo.py::TestMOFile::test_nonascii PASSED [ 60%] 896s tests/translate/storage/test_mo.py::TestMOFile::test_extensions PASSED [ 60%] 896s tests/translate/storage/test_mo.py::TestMOFile::test_mimetypes PASSED [ 60%] 896s tests/translate/storage/test_mo.py::TestMOFile::test_language PASSED [ 60%] 896s tests/translate/storage/test_mo.py::TestMOFile::test_context PASSED [ 60%] 896s tests/translate/storage/test_mo.py::TestMOFile::test_output PASSED [ 60%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_isfuzzy PASSED [ 60%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_create PASSED [ 60%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_eq PASSED [ 60%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_escapes PASSED [ 60%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_difficult_escapes PASSED [ 60%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_note_sanity PASSED [ 60%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_target PASSED [ 60%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_get PASSED [ 60%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_set PASSED [ 60%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_create_blank PASSED [ 60%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_add PASSED [ 60%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_remove PASSED [ 60%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_find PASSED [ 60%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_parse PASSED [ 60%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_files PASSED [ 60%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_save PASSED [ 60%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_extensions PASSED [ 61%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_mimetypes PASSED [ 61%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_translate PASSED [ 61%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_markup PASSED [ 61%] 896s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_nonascii PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[-] PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String-String] PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {OK}-String] PASSED [ 61%] 896s 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%] 896s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{ok}-String] PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{OK}-String] PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok} -String] PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_isfuzzy PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_create PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_eq PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_target PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_escapes PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_difficult_escapes PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_note_sanity PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_get PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_set PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_translate_but_same PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_untranslated PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_comments PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_copy_target PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_create_blank PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_add PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_remove PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_find PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_translate PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_parse PASSED [ 61%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_files PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_save PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_markup PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_extensions PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_mimetypes PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_nonascii PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_format_layout PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_crlf PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_active_flag PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_multiline_comments PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_template PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[--False] PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ -Source -True] PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok}-Source-True] PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok} -Source-True] PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[{ok}-Source-True] PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_headers PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_not_headers PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[0] PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[1] PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[2] PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[3] PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_tag_comments PASSED [ 62%] 896s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_maxlength PASSED [ 62%] 896s tests/translate/storage/test_omegat.py::TestOtUnit::test_isfuzzy PASSED [ 62%] 896s tests/translate/storage/test_omegat.py::TestOtUnit::test_create PASSED [ 62%] 896s tests/translate/storage/test_omegat.py::TestOtUnit::test_eq PASSED [ 62%] 896s tests/translate/storage/test_omegat.py::TestOtUnit::test_target PASSED [ 62%] 896s tests/translate/storage/test_omegat.py::TestOtUnit::test_escapes PASSED [ 62%] 896s tests/translate/storage/test_omegat.py::TestOtUnit::test_difficult_escapes PASSED [ 62%] 896s tests/translate/storage/test_omegat.py::TestOtUnit::test_note_sanity PASSED [ 62%] 896s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_get PASSED [ 62%] 896s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_set PASSED [ 62%] 896s tests/translate/storage/test_omegat.py::TestOtFile::test_create_blank PASSED [ 62%] 896s tests/translate/storage/test_omegat.py::TestOtFile::test_add PASSED [ 63%] 896s tests/translate/storage/test_omegat.py::TestOtFile::test_remove PASSED [ 63%] 896s tests/translate/storage/test_omegat.py::TestOtFile::test_find PASSED [ 63%] 896s tests/translate/storage/test_omegat.py::TestOtFile::test_translate PASSED [ 63%] 896s tests/translate/storage/test_omegat.py::TestOtFile::test_parse PASSED [ 63%] 896s tests/translate/storage/test_omegat.py::TestOtFile::test_files PASSED [ 63%] 896s tests/translate/storage/test_omegat.py::TestOtFile::test_save PASSED [ 63%] 896s tests/translate/storage/test_omegat.py::TestOtFile::test_markup PASSED [ 63%] 896s tests/translate/storage/test_omegat.py::TestOtFile::test_nonascii PASSED [ 63%] 896s tests/translate/storage/test_omegat.py::TestOtFile::test_mimetypes PASSED [ 63%] 896s tests/translate/storage/test_omegat.py::TestOtFile::test_extensions XFAIL [ 63%] 896s tests/translate/storage/test_oo.py::test_makekey PASSED [ 63%] 896s tests/translate/storage/test_oo.py::test_escape_help_text PASSED [ 63%] 896s tests/translate/storage/test_oo.py::TestOO::test_simpleentry PASSED [ 63%] 896s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_quickhelptest PASSED [ 63%] 896s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_title PASSED [ 63%] 896s tests/translate/storage/test_oo.py::TestOO::test_blankline PASSED [ 63%] 896s tests/translate/storage/test_oo.py::TestOO::test_fieldlength PASSED [ 63%] 896s tests/translate/storage/test_oo.py::TestOO::test_escapes PASSED [ 63%] 896s tests/translate/storage/test_php.py::test_php_escaping_single_quote PASSED [ 63%] 896s tests/translate/storage/test_php.py::test_php_escaping_double_quote PASSED [ 63%] 896s tests/translate/storage/test_php.py::TestPhpUnit::test_isfuzzy PASSED [ 63%] 896s tests/translate/storage/test_php.py::TestPhpUnit::test_create PASSED [ 63%] 896s tests/translate/storage/test_php.py::TestPhpUnit::test_eq PASSED [ 63%] 896s tests/translate/storage/test_php.py::TestPhpUnit::test_escapes PASSED [ 63%] 896s tests/translate/storage/test_php.py::TestPhpUnit::test_note_sanity PASSED [ 63%] 896s tests/translate/storage/test_php.py::TestPhpUnit::test_target PASSED [ 63%] 896s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_get PASSED [ 63%] 896s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_set PASSED [ 63%] 896s tests/translate/storage/test_php.py::TestPhpUnit::test_difficult_escapes PASSED [ 63%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_create_blank PASSED [ 63%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_add PASSED [ 63%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_remove PASSED [ 63%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_find PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parse PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_files PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_save PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_extensions PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_mimetypes PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_translate PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_markup PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_nonascii PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_source PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_spaces_in_name PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_comment_definition PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_comment_blocks PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_comment_output PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_comment_add PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_multiline PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_no_array_syntax PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_spaces PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_non_textual PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define_with_spaces_before_key PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter_and_before_key PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equal_delimiter PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equaldel_but_before_key PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_entries_with_quotes PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_comments_at_entry_line_end PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_double_slash_comments_before_entries PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_before_end_delimiter PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simpledefinition_spaces_before_end_delimiter PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_no_trailing_comma PASSED [ 64%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_space_before_comma PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_space_before_array_declaration PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_declared_in_a_single_line PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys_assigned_to_array PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_no_keys PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_assignment_in_line_where_multiline_comment_ends PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_using_short_array_syntax PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_space_before_array_declaration PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_unnamed_nested_arrays PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_array_declaration_in_next_line PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_with_newline_after_delimiter PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_blank_entries PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_slashstar_in_string PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_heredoc_syntax PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_after_define PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_quotes PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_concatenation PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_serialize PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_space_before_comma PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_equals_in_id PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_comma_in_string PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_nowdoc PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_plain_concatenation PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_array_keys PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_double_var PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_return_array PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short_quotes PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestPhpFile::test_addunit PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_isfuzzy PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_create PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_eq PASSED [ 65%] 896s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_escapes PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_difficult_escapes PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_note_sanity PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_target PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_get PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_set PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_create_blank PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_add PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_remove PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_find PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_parse PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_files PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_save PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_extensions PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_mimetypes PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_translate PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_markup PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_nonascii PASSED [ 66%] 896s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_plurals PASSED [ 66%] 896s tests/translate/storage/test_po.py::test_roundtrip_quoting PASSED [ 66%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_isfuzzy PASSED [ 66%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_create PASSED [ 66%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_eq PASSED [ 66%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_target PASSED [ 66%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_escapes PASSED [ 66%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_difficult_escapes PASSED [ 66%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_note_sanity PASSED [ 66%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_rich_get PASSED [ 66%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_rich_set PASSED [ 66%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_istranslatable PASSED [ 66%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_locations PASSED [ 66%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_nongettext_location PASSED [ 66%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_adding_empty_note PASSED [ 66%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_markreview PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_errors PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_no_plural_settarget PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_wrapping_bug PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_extract_msgidcomments_from_text PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_isheader PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOUnit::test_buildfromunit PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_create_blank PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_add PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_remove PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_find PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_translate PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_parse PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_files PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_save PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_markup PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_nonascii PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_extensions PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_mimetypes PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_context_only PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_simpleentry PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_copy PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_parse_source_string PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_parse_file PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_unicode PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_plurals PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_plural_unicode PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_nongettext_location PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_percent_location PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals XFAIL [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_empty_lines_notes PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_fuzzy PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated XFAIL [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_merging_automaticcomments PASSED [ 67%] 896s tests/translate/storage/test_po.py::TestPOFile::test_malformed_units PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_malformed_obsolete_units PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_uniforum_po PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_obsolete PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_obsolete_with_prev_msgid PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_header_escapes PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_plural PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgctxt PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgidcomments PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_multiline_obsolete PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_merge_duplicates PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_merge_mixed_sources PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_parse_context PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_parse_advanced_context PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_kde_context PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_broken_kde_context PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_id PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments_2 PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_final_slash PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_unfinished_lines PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_encoding_change PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_istranslated PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_wrapping PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_wrapping_cjk PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_wrap_emoji PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis XFAIL [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_wrap_gettext PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_msgidcomments PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_unicode_ids PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_syntax_error PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_invalid PASSED [ 68%] 896s tests/translate/storage/test_po.py::TestPOFile::test_wrapped_msgid PASSED [ 69%] 896s tests/translate/storage/test_po.py::TestPOFile::test_missing_plural PASSED [ 69%] 896s tests/translate/storage/test_pocommon.py::test_roundtrip_quote_plus PASSED [ 69%] 896s tests/translate/storage/test_poheader.py::test_parseheaderstring PASSED [ 69%] 896s tests/translate/storage/test_poheader.py::test_update PASSED [ 69%] 896s tests/translate/storage/test_poheader.py::test_po_dates PASSED [ 69%] 896s tests/translate/storage/test_poheader.py::test_timezones PASSED [ 69%] 896s tests/translate/storage/test_poheader.py::test_header_blank PASSED [ 69%] 896s tests/translate/storage/test_poheader.py::test_plural_equation PASSED [ 69%] 896s tests/translate/storage/test_poheader.py::test_plural_equation_across_lines PASSED [ 69%] 896s tests/translate/storage/test_poheader.py::test_updatecontributor PASSED [ 69%] 896s tests/translate/storage/test_poheader.py::test_updatecontributor_header PASSED [ 69%] 896s tests/translate/storage/test_poheader.py::test_language PASSED [ 69%] 896s tests/translate/storage/test_poheader.py::test_project PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_isfuzzy PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_create PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_eq PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_target PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_escapes PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_difficult_escapes PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_note_sanity PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_get PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_set PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_markreview PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_errors PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_accepted_control_chars PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_unaccepted_control_chars PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_plurals PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_ids PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_create_blank PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_remove PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_find PASSED [ 69%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_translate PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_files PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_save PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_markup PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_nonascii PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_extensions PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_mimetypes PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_basic PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_namespace PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_source PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_target PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_source PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_target PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_sourcelanguage PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage_multi PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_alttrans PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_fuzzy PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_xml_space PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parsing PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_entities PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_multiple_filenodes PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_indent PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add_target PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_closing_tags PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_context_groups PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_getlocations PASSED [ 70%] 896s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_addlocation PASSED [ 70%] 897s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_huge PASSED [ 70%] 897s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve_add PASSED [ 70%] 897s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse PASSED [ 70%] 897s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse_plural_alpha_id PASSED [ 70%] 897s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_notes PASSED [ 70%] 897s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_plural PASSED [ 71%] 897s tests/translate/storage/test_properties.py::test_find_delimiter_pos_simple PASSED [ 71%] 897s tests/translate/storage/test_properties.py::test_find_delimiter_pos_multiple PASSED [ 71%] 897s tests/translate/storage/test_properties.py::test_find_delimiter_pos_none PASSED [ 71%] 897s tests/translate/storage/test_properties.py::test_find_delimiter_pos_whitespace PASSED [ 71%] 897s tests/translate/storage/test_properties.py::test_find_delimiter_pos_escapes PASSED [ 71%] 897s tests/translate/storage/test_properties.py::test_is_line_continuation PASSED [ 71%] 897s tests/translate/storage/test_properties.py::test_key_strip PASSED [ 71%] 897s tests/translate/storage/test_properties.py::test_get_comment_one_line PASSED [ 71%] 897s tests/translate/storage/test_properties.py::test_get_comment_start PASSED [ 71%] 897s tests/translate/storage/test_properties.py::test_get_comment_end PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestPropUnit::test_isfuzzy PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestPropUnit::test_create PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestPropUnit::test_eq PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestPropUnit::test_escapes PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestPropUnit::test_difficult_escapes PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestPropUnit::test_note_sanity PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestPropUnit::test_target PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_get PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_set PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_create_blank PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_add PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_remove PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_find PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_parse PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_files PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_save PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_extensions PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_mimetypes PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_translate PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_markup PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_nonascii PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_quotes PASSED [ 71%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_simpledefinition PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition_source PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_reduce PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_increase PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_extra_plurals PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_non_plurals PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestGwtProp::test_encoding PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_create_blank PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_add PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_remove PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_find PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_parse PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_files PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_save PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_extensions PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_mimetypes PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_translate PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_markup PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_nonascii PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition_source PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_controlutf8_source PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_control_source PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_unicode_escaping PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_newlines_startend PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_space PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_whitespace_handling PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_key_value_delimiters_simple PASSED [ 72%] 897s tests/translate/storage/test_properties.py::TestProp::test_comments PASSED [ 72%] 898s tests/translate/storage/test_properties.py::TestProp::test_latin1 PASSED [ 72%] 898s tests/translate/storage/test_properties.py::TestProp::test_fullspec_delimiters PASSED [ 72%] 898s tests/translate/storage/test_properties.py::TestProp::test_fullspec_escaped_key PASSED [ 72%] 898s tests/translate/storage/test_properties.py::TestProp::test_fullspec_line_continuation PASSED [ 72%] 898s tests/translate/storage/test_properties.py::TestProp::test_fullspec_key_without_value PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_mac_strings PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_utf_16_save PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_mac_multiline_strings PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_unicode PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_utf8 PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_newlines PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_multilines_comments PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments_dropping PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_quotes PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_equals PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_serialization PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_double_backslashes PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_override_encoding PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_trailing_comments PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_utf16_byte_order_mark PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_raise_ioerror_if_cannot_detect_encoding PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_utf8_byte_order_mark PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_joomla_set_target PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_joomla PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_joomla_escape PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_delimiter PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_value PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_multi_comments PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_serialize_note PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestProp::test_serialize_long_note PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_create_blank PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_add PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_remove PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_find PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_parse PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_files PASSED [ 73%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_save PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_extensions PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_mimetypes PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_translate PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_markup PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_nonascii PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_simpledefinition PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition_source PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote_and_argument PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_header_preserved PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_blank_line_before_comment_preserved PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWiki::test_deprecated_comments_preserved PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_create_blank PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_add PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_remove PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_find PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_parse PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_files PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_save PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_extensions PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_mimetypes PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_markup PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_nonascii PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_simpledefinition PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition_source PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote_and_argument PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_encoded_html PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_cleaning_attributes PASSED [ 74%] 898s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate_source PASSED [ 75%] 898s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_create_blank PASSED [ 75%] 898s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_add PASSED [ 75%] 898s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_find PASSED [ 75%] 898s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_extensions PASSED [ 75%] 898s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_mimetypes PASSED [ 75%] 898s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_translate PASSED [ 75%] 898s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_markup PASSED [ 75%] 898s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_nonascii PASSED [ 75%] 898s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_simpledefinition PASSED [ 75%] 898s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_parse PASSED [ 75%] 898s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_files PASSED [ 75%] 898s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_save PASSED [ 75%] 898s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_cleaning_attributes PASSED [ 75%] 898s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove XFAIL [ 75%] 898s tests/translate/storage/test_pypo.py::TestHelpers::test_unescape PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo_escaped_quotes PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isfuzzy PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_create PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_eq PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_target PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_escapes PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_difficult_escapes PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_note_sanity PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_get PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_set PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_istranslatable PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_locations PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_nongettext_location PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_adding_empty_note PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_markreview PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_errors PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_no_plural_settarget PASSED [ 75%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrapping_bug PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_extract_msgidcomments_from_text PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isheader PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_buildfromunit PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plurals PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plural_reduction PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes_withcomments PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_firstlines PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_newlines PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_max_line_length PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_slash PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_spacing_max_line PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_create_blank PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_add PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_remove PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_find PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_translate PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_files PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_save PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_markup PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nonascii PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_extensions PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mimetypes PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_context_only PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_simpleentry PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_copy PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_source_string PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_file PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plurals PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plural_unicode PASSED [ 76%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nongettext_location PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_percent_location PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals XFAIL [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_empty_lines_notes PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_fuzzy PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated XFAIL [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merging_automaticcomments PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_units PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_obsolete_units PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_uniforum_po PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete_with_prev_msgid PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_header_escapes PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_plural PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgctxt PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgidcomments PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_multiline_obsolete PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_mixed_sources PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_context PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_advanced_context PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_context PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_broken_kde_context PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_id PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments_2 PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_final_slash PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unfinished_lines PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_encoding_change PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_istranslated PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping_cjk PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_emoji PASSED [ 77%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis XFAIL [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_gettext PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_msgidcomments PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_ids PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_syntax_error PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapped_msgid PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_missing_plural PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_combine_msgidcomments PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates_msgctxt PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_blanks PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_output_str_unicode PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_posections PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_typecomments PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unassociated_comments PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_header PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_prevmsgid_parse PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_newlines PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unix_newlines PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mac_newlines PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_header PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_comment PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_bom PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_long_msgidcomments PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_incomplete PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_invalid PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_write PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment XFAIL [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_typecomment PASSED [ 78%] 898s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_custom PASSED [ 78%] 898s tests/translate/storage/test_qm.py::TestQtUnit::test_isfuzzy PASSED [ 78%] 898s tests/translate/storage/test_qm.py::TestQtUnit::test_create PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtUnit::test_eq PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtUnit::test_target PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtUnit::test_escapes PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtUnit::test_difficult_escapes PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtUnit::test_note_sanity PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_get PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_set PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtFile::test_create_blank PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtFile::test_find PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtFile::test_translate PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtFile::test_markup PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtFile::test_extensions PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtFile::test_mimetypes PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtFile::test_parse PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtFile::test_save PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtFile::test_files PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtFile::test_nonascii PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtFile::test_add PASSED [ 79%] 898s tests/translate/storage/test_qm.py::TestQtFile::test_remove PASSED [ 79%] 898s tests/translate/storage/test_qph.py::TestQphUnit::test_isfuzzy PASSED [ 79%] 898s tests/translate/storage/test_qph.py::TestQphUnit::test_create PASSED [ 79%] 898s tests/translate/storage/test_qph.py::TestQphUnit::test_eq PASSED [ 79%] 898s tests/translate/storage/test_qph.py::TestQphUnit::test_target PASSED [ 79%] 898s tests/translate/storage/test_qph.py::TestQphUnit::test_escapes PASSED [ 79%] 898s tests/translate/storage/test_qph.py::TestQphUnit::test_difficult_escapes PASSED [ 79%] 898s tests/translate/storage/test_qph.py::TestQphUnit::test_note_sanity PASSED [ 79%] 898s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_get PASSED [ 79%] 898s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_set PASSED [ 79%] 898s tests/translate/storage/test_qph.py::TestQphFile::test_create_blank PASSED [ 79%] 898s tests/translate/storage/test_qph.py::TestQphFile::test_add PASSED [ 79%] 898s tests/translate/storage/test_qph.py::TestQphFile::test_remove PASSED [ 79%] 898s tests/translate/storage/test_qph.py::TestQphFile::test_find PASSED [ 79%] 898s tests/translate/storage/test_qph.py::TestQphFile::test_translate PASSED [ 80%] 898s tests/translate/storage/test_qph.py::TestQphFile::test_parse PASSED [ 80%] 898s tests/translate/storage/test_qph.py::TestQphFile::test_files PASSED [ 80%] 898s tests/translate/storage/test_qph.py::TestQphFile::test_save PASSED [ 80%] 898s tests/translate/storage/test_qph.py::TestQphFile::test_markup PASSED [ 80%] 898s tests/translate/storage/test_qph.py::TestQphFile::test_nonascii PASSED [ 80%] 898s tests/translate/storage/test_qph.py::TestQphFile::test_extensions PASSED [ 80%] 898s tests/translate/storage/test_qph.py::TestQphFile::test_mimetypes PASSED [ 80%] 898s tests/translate/storage/test_qph.py::TestQphFile::test_basic PASSED [ 80%] 898s tests/translate/storage/test_qph.py::TestQphFile::test_source PASSED [ 80%] 898s tests/translate/storage/test_qph.py::TestQphFile::test_target PASSED [ 80%] 898s tests/translate/storage/test_qph.py::TestQphFile::test_language PASSED [ 80%] 898s tests/translate/storage/test_rc.py::test_escaping PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_comments PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_textinclude PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_parse_dialog PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_parse_stringtable PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_lf PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_crlf PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_cr PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_parse_no_language PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_multiline PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_str PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_empty PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_utf_8 PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_utf_16 PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_comment PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_stringtables PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude_appstudio PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_id_whitespace PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_menu_comment PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_decompiled PASSED [ 80%] 898s tests/translate/storage/test_rc.py::TestRcFile::test_quotes PASSED [ 80%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_isfuzzy PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_create PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_eq PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_escapes PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_difficult_escapes PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_note_sanity PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_target PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_get PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_set PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_create_blank PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_add PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_remove PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_find PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_parse PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_files PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_save PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_extensions PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_mimetypes PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_translate PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_markup PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_nonascii PASSED [ 81%] 898s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_roundtrip PASSED [ 81%] 898s tests/translate/storage/test_resx.py::TestRESXUnit::test_isfuzzy PASSED [ 81%] 898s tests/translate/storage/test_resx.py::TestRESXUnit::test_create PASSED [ 81%] 898s tests/translate/storage/test_resx.py::TestRESXUnit::test_eq PASSED [ 81%] 898s tests/translate/storage/test_resx.py::TestRESXUnit::test_escapes PASSED [ 81%] 898s tests/translate/storage/test_resx.py::TestRESXUnit::test_difficult_escapes PASSED [ 81%] 898s tests/translate/storage/test_resx.py::TestRESXUnit::test_note_sanity PASSED [ 81%] 898s tests/translate/storage/test_resx.py::TestRESXUnit::test_target PASSED [ 81%] 898s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_get PASSED [ 81%] 898s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_set PASSED [ 81%] 898s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_isfuzzy PASSED [ 81%] 898s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_create PASSED [ 81%] 898s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_eq PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_escapes PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_difficult_escapes PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_note_sanity PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_target PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_get PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_set PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit_comment PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXfile::test_create_blank PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXfile::test_add PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXfile::test_remove PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXfile::test_find PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXfile::test_parse PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXfile::test_files PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXfile::test_save PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXfile::test_extensions PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXfile::test_mimetypes PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXfile::test_translate PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXfile::test_markup PASSED [ 82%] 898s tests/translate/storage/test_resx.py::TestRESXfile::test_nonascii PASSED [ 82%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_isfuzzy PASSED [ 82%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_create PASSED [ 82%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq PASSED [ 82%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_escapes PASSED [ 82%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_difficult_escapes PASSED [ 82%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_note_sanity PASSED [ 82%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_target PASSED [ 82%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_get PASSED [ 82%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_set PASSED [ 82%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_source PASSED [ 82%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq_formatvaluetype PASSED [ 82%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_innerkey PASSED [ 82%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_create_blank PASSED [ 82%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add PASSED [ 83%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_remove PASSED [ 83%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_find PASSED [ 83%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_parse PASSED [ 83%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_files PASSED [ 83%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_save PASSED [ 83%] 898s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_extensions PASSED [ 83%] 899s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_mimetypes PASSED [ 83%] 899s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_translate PASSED [ 83%] 899s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_markup PASSED [ 83%] 899s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_nonascii PASSED [ 83%] 899s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_serialize PASSED [ 83%] 899s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_default_handlings PASSED [ 83%] 899s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename PASSED [ 83%] 899s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_base_filename PASSED [ 83%] 899s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 83%] 899s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_plural_zero_always_set PASSED [ 83%] 899s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add_unit PASSED [ 83%] 899s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_isfuzzy PASSED [ 83%] 899s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_create PASSED [ 83%] 899s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_eq PASSED [ 83%] 899s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_escapes PASSED [ 83%] 899s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_difficult_escapes PASSED [ 83%] 899s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_target PASSED [ 83%] 899s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_get PASSED [ 83%] 899s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_set PASSED [ 83%] 899s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity XFAIL [ 83%] 899s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_create_blank PASSED [ 83%] 899s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_add PASSED [ 83%] 899s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_remove PASSED [ 83%] 899s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_find PASSED [ 83%] 899s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_parse PASSED [ 83%] 899s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_files PASSED [ 83%] 899s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_save PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_extensions PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_mimetypes PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_translate PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_markup PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_nonascii PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_create_blank PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_add PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_remove PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_find PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_parse PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_files PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_save PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_extensions PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_mimetypes PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_translate PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_markup PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_nonascii PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_create_blank PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_add PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_remove PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_find PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_parse PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_files PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_save PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_extensions PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_mimetypes PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_translate PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_markup PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_nonascii PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_create_blank PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_add PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_remove PASSED [ 84%] 899s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_find PASSED [ 85%] 899s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_parse PASSED [ 85%] 899s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_files PASSED [ 85%] 899s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_save PASSED [ 85%] 899s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_extensions PASSED [ 85%] 899s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_mimetypes PASSED [ 85%] 899s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_translate PASSED [ 85%] 899s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_markup PASSED [ 85%] 899s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_nonascii PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXUnit::test_isfuzzy PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXUnit::test_create PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXUnit::test_eq PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXUnit::test_target PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXUnit::test_escapes PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXUnit::test_difficult_escapes PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXUnit::test_note_sanity PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_get PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_set PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_create_blank PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_add PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_remove PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_find PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_translate PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_parse PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_files PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_save PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_markup PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_nonascii PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_extensions PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_mimetypes PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_basic PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_source PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_target PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_setid PASSED [ 85%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_indent PASSED [ 86%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_descrip PASSED [ 86%] 899s tests/translate/storage/test_tbx.py::TestTBXfile::test_note_from PASSED [ 86%] 899s tests/translate/storage/test_tiki.py::TestTikiUnit::test_locations PASSED [ 86%] 899s tests/translate/storage/test_tiki.py::TestTikiUnit::test_to_unicode PASSED [ 86%] 899s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_simple PASSED [ 86%] 899s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_encode PASSED [ 86%] 899s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_locations PASSED [ 86%] 899s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_ignore_extras PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnit::test_isfuzzy PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnit::test_create PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnit::test_eq PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnit::test_target PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnit::test_escapes PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnit::test_difficult_escapes PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnit::test_note_sanity PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_get PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_set PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_isfuzzy PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_create PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_eq PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_target PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_escapes PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_difficult_escapes PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_note_sanity PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_get PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_set PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXfile::test_create_blank PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXfile::test_add PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXfile::test_remove PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXfile::test_find PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXfile::test_parse PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXfile::test_files PASSED [ 86%] 899s tests/translate/storage/test_tmx.py::TestTMXfile::test_save PASSED [ 87%] 899s tests/translate/storage/test_tmx.py::TestTMXfile::test_markup PASSED [ 87%] 899s tests/translate/storage/test_tmx.py::TestTMXfile::test_nonascii PASSED [ 87%] 899s tests/translate/storage/test_tmx.py::TestTMXfile::test_extensions PASSED [ 87%] 899s tests/translate/storage/test_tmx.py::TestTMXfile::test_mimetypes PASSED [ 87%] 899s tests/translate/storage/test_tmx.py::TestTMXfile::test_translate PASSED [ 87%] 899s tests/translate/storage/test_tmx.py::TestTMXfile::test_addtranslation PASSED [ 87%] 899s tests/translate/storage/test_tmx.py::TestTMXfile::test_withcomment PASSED [ 87%] 899s tests/translate/storage/test_tmx.py::TestTMXfile::test_withnewlines PASSED [ 87%] 899s tests/translate/storage/test_tmx.py::TestTMXfile::test_xmlentities PASSED [ 87%] 899s tests/translate/storage/test_tmx.py::TestTMXfile::test_controls_cleaning PASSED [ 87%] 899s tests/translate/storage/test_trados.py::test_unescape PASSED [ 87%] 899s tests/translate/storage/test_trados.py::test_escape PASSED [ 87%] 899s tests/translate/storage/test_ts.py::TestTS::test_construct PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSUnit::test_isfuzzy PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSUnit::test_create PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSUnit::test_eq PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSUnit::test_target PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSUnit::test_escapes PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSUnit::test_difficult_escapes PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSUnit::test_note_sanity PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_get PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_set PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_create_blank PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_add PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_remove PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_find PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_translate PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_parse PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_files PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_save PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_markup PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_nonascii PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_extensions PASSED [ 87%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_mimetypes PASSED [ 88%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_basic PASSED [ 88%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_source PASSED [ 88%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_target PASSED [ 88%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_plurals PASSED [ 88%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_nplural PASSED [ 88%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_language PASSED [ 88%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_edit PASSED [ 88%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_obsolete PASSED [ 88%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_locations PASSED [ 88%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_merge_with_fuzzies PASSED [ 88%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_getid PASSED [ 88%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_backnforth PASSED [ 88%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_context PASSED [ 88%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_roundtrip_context PASSED [ 88%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_edit_missing_translation PASSED [ 88%] 899s tests/translate/storage/test_ts2.py::TestTSfile::test_missing_source PASSED [ 88%] 899s tests/translate/storage/test_txt.py::TestTxtUnit::test_isfuzzy PASSED [ 88%] 899s tests/translate/storage/test_txt.py::TestTxtUnit::test_create PASSED [ 88%] 899s tests/translate/storage/test_txt.py::TestTxtUnit::test_eq PASSED [ 88%] 899s tests/translate/storage/test_txt.py::TestTxtUnit::test_escapes PASSED [ 88%] 899s tests/translate/storage/test_txt.py::TestTxtUnit::test_difficult_escapes PASSED [ 88%] 899s tests/translate/storage/test_txt.py::TestTxtUnit::test_note_sanity PASSED [ 88%] 899s tests/translate/storage/test_txt.py::TestTxtUnit::test_target PASSED [ 88%] 899s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_get PASSED [ 88%] 899s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_set PASSED [ 88%] 899s tests/translate/storage/test_txt.py::TestTxtFile::test_create_blank PASSED [ 88%] 899s tests/translate/storage/test_txt.py::TestTxtFile::test_add PASSED [ 88%] 899s tests/translate/storage/test_txt.py::TestTxtFile::test_remove PASSED [ 88%] 899s tests/translate/storage/test_txt.py::TestTxtFile::test_find PASSED [ 88%] 899s tests/translate/storage/test_txt.py::TestTxtFile::test_parse PASSED [ 88%] 899s tests/translate/storage/test_txt.py::TestTxtFile::test_files PASSED [ 88%] 899s tests/translate/storage/test_txt.py::TestTxtFile::test_save PASSED [ 88%] 899s tests/translate/storage/test_txt.py::TestTxtFile::test_extensions PASSED [ 89%] 899s tests/translate/storage/test_txt.py::TestTxtFile::test_mimetypes PASSED [ 89%] 899s tests/translate/storage/test_txt.py::TestTxtFile::test_translate PASSED [ 89%] 899s tests/translate/storage/test_txt.py::TestTxtFile::test_markup PASSED [ 89%] 899s tests/translate/storage/test_txt.py::TestTxtFile::test_nonascii PASSED [ 89%] 899s tests/translate/storage/test_txt.py::TestTxtFile::test_simpleblock PASSED [ 89%] 899s tests/translate/storage/test_txt.py::TestTxtFile::test_multipleblocks PASSED [ 89%] 899s tests/translate/storage/test_txt.py::TestTxtFile::test_no_segmentation PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxUnit::test_isfuzzy PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxUnit::test_create PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxUnit::test_eq PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxUnit::test_target PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxUnit::test_escapes PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxUnit::test_difficult_escapes PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxUnit::test_note_sanity PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_get PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_set PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxFile::test_create_blank PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxFile::test_add PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxFile::test_remove PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxFile::test_find PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxFile::test_translate PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxFile::test_parse PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxFile::test_files PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxFile::test_save PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxFile::test_markup PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxFile::test_nonascii PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxFile::test_extensions PASSED [ 89%] 899s tests/translate/storage/test_utx.py::TestUtxFile::test_mimetypes PASSED [ 89%] 899s tests/translate/storage/test_wordfast.py::TestWFTime::test_timestring PASSED [ 89%] 899s tests/translate/storage/test_wordfast.py::TestWFTime::test_time PASSED [ 89%] 899s tests/translate/storage/test_wordfast.py::TestWFUnit::test_isfuzzy PASSED [ 89%] 899s tests/translate/storage/test_wordfast.py::TestWFUnit::test_create PASSED [ 89%] 899s tests/translate/storage/test_wordfast.py::TestWFUnit::test_eq PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFUnit::test_target PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFUnit::test_escapes PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFUnit::test_note_sanity PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_get PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_set PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFUnit::test_difficult_escapes PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFUnit::test_wordfast_escaping PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFUnit::test_newlines PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFUnit::test_language_setting PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFUnit::test_istranslated PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFFile::test_create_blank PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFFile::test_add PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFFile::test_remove PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFFile::test_find PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFFile::test_translate PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFFile::test_parse PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFFile::test_files PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFFile::test_save PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFFile::test_markup PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFFile::test_nonascii PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFFile::test_extensions PASSED [ 90%] 899s tests/translate/storage/test_wordfast.py::TestWFFile::test_mimetypes PASSED [ 90%] 899s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_isfuzzy PASSED [ 90%] 899s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_create PASSED [ 90%] 899s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_eq PASSED [ 90%] 899s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_target PASSED [ 90%] 899s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_escapes PASSED [ 90%] 899s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_difficult_escapes PASSED [ 90%] 899s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_note_sanity PASSED [ 90%] 899s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_get PASSED [ 90%] 899s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_set PASSED [ 90%] 899s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_markreview PASSED [ 90%] 899s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_errors PASSED [ 90%] 899s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_accepted_control_chars PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_unaccepted_control_chars PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_create_blank PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_remove PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_find PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_translate PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parse PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_files PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_save PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_markup PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_nonascii PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_extensions PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_mimetypes PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_basic PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_namespace PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_source PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_target PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_source PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_target PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_sourcelanguage PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage_multi PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_notes PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_alttrans PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_fuzzy PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_xml_space PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parsing PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_entities PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_multiple_filenodes PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_indent PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add_target PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve PASSED [ 91%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_closing_tags PASSED [ 92%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_context_groups PASSED [ 92%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_getlocations PASSED [ 92%] 899s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_addlocation PASSED [ 92%] 900s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_huge PASSED [ 92%] 900s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve_add PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_isfuzzy PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_create PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_eq PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_escapes PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_difficult_escapes PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_note_sanity PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_target PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_get PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_set PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_getlocations PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_create_blank PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_find PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_files PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_save PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_extensions PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_mimetypes PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_translate PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_markup PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nonascii PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_serialize PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit_unicode PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse_unicode_list PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_ordering PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_initial_comments PASSED [ 92%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_string_key PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nested PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_multiline PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_boolean PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_integer PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_no_quote_strings PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_double_quote_strings PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_single_quote_strings PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_double_quote_strings PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_single_quote_strings PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_escaped_double_quotes PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_newlines PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_list PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_dictionary PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_key_nesting PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add_to_mepty PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty_key PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dict_in_list PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dump_args PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_anchors PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_tagged_scalar PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_numeric PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_remove PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_special PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_quotes_roundtrip PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_create_blank PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_remove PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_find PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_parse PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_files PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_save PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_extensions PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_mimetypes PASSED [ 93%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_translate PASSED [ 94%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_markup PASSED [ 94%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_nonascii PASSED [ 94%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_list PASSED [ 94%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby PASSED [ 94%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_wrong PASSED [ 94%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_invalid_value PASSED [ 94%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural PASSED [ 94%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_empty PASSED [ 94%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_anchors PASSED [ 94%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_type_change PASSED [ 94%] 900s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_add PASSED [ 94%] 900s tests/translate/storage/test_zip.py::TestZIPFile::test_created PASSED [ 94%] 900s tests/translate/storage/test_zip.py::TestZIPFile::test_basic PASSED [ 94%] 900s tests/translate/storage/test_zip.py::TestZIPFile::test_structure PASSED [ 94%] 900s tests/translate/storage/test_zip.py::TestZIPFile::test_getunits PASSED [ 94%] 900s tests/translate/storage/xml_extract/test_misc.py::test_reduce_tree PASSED [ 94%] 900s tests/translate/storage/xml_extract/test_misc.py::test_compose_mappings PASSED [ 94%] 900s tests/translate/storage/xml_extract/test_misc.py::test_parse_tag PASSED [ 94%] 900s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath_component PASSED [ 94%] 900s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath PASSED [ 94%] 900s tests/translate/storage/xml_extract/test_unit_tree.py::test__add_unit_to_tree PASSED [ 94%] 900s tests/translate/storage/xml_extract/test_xpath_breadcrumb.py::test_breadcrumb PASSED [ 94%] 900s tests/translate/tools/test_help.py::test_help[build_tmdb] PASSED [ 94%] 900s tests/translate/tools/test_help.py::test_help[phppo2pypo] PASSED [ 94%] 900s tests/translate/tools/test_help.py::test_help[poclean] PASSED [ 94%] 900s tests/translate/tools/test_help.py::test_help[pocompile] PASSED [ 94%] 900s tests/translate/tools/test_help.py::test_help[poconflicts] PASSED [ 94%] 901s tests/translate/tools/test_help.py::test_help[pocount] PASSED [ 94%] 901s tests/translate/tools/test_help.py::test_help[podebug] PASSED [ 94%] 901s tests/translate/tools/test_help.py::test_help[pogrep] PASSED [ 94%] 901s tests/translate/tools/test_help.py::test_help[pomerge] PASSED [ 94%] 901s tests/translate/tools/test_help.py::test_help[porestructure] PASSED [ 94%] 901s tests/translate/tools/test_help.py::test_help[posegment] PASSED [ 95%] 901s tests/translate/tools/test_help.py::test_help[poswap] PASSED [ 95%] 901s tests/translate/tools/test_help.py::test_help[poterminology] PASSED [ 95%] 901s tests/translate/tools/test_help.py::test_help[pretranslate] PASSED [ 95%] 901s tests/translate/tools/test_help.py::test_help[pydiff] PASSED [ 95%] 901s tests/translate/tools/test_help.py::test_help[pypo2phppo] PASSED [ 95%] 901s tests/translate/tools/test_junitmsgfmt.py::test_output[failure] PASSED [ 95%] 901s tests/translate/tools/test_junitmsgfmt.py::test_output[untranslated] PASSED [ 95%] 901s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_single_po PASSED [ 95%] 901s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_plural_po PASSED [ 95%] 901s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_single_po PASSED [ 95%] 901s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_plural_po PASSED [ 95%] 901s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_help PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_zero PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_one PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_two PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::TestCount::test_punctuation_divides_words PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::TestCount::test_xml_tags PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::TestCount::test_newlines PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::TestCount::test_variables_are_words PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::TestCount::test_plurals PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde XFAIL [ 95%] 901s tests/translate/tools/test_pocount.py::TestCount::test_msgid_blank PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::TestPOCount::test_translated PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzy PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslated PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::TestPOCount::test_total PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::TestPOCount::test_translatedsourcewords PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzysourcewords PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslatedsourcewords PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::TestPOCount::test_totalsourcewords PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-csv] PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-full] PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-strings] PASSED [ 95%] 901s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-words] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-csv] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-full] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-strings] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-words] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-csv] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-full] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-strings] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-words] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-csv] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-full] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-strings] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-words] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_cases[po-file] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_cases[po-file-fuzzy] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_cases[po-file-csv] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_cases[xliff-states-yes] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_cases[xliff-states-no] PASSED [ 96%] 901s tests/translate/tools/test_pocount.py::test_error_cases[mutually-exclusive] PASSED [ 96%] 902s tests/translate/tools/test_pocount.py::test_error_cases[missing-file] PASSED [ 96%] 902s tests/translate/tools/test_pocount.py::test_error_cases[no-args] PASSED [ 96%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_ignore_gtk PASSED [ 96%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_keep_target PASSED [ 96%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_blank PASSED [ 96%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_en PASSED [ 96%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_xxx PASSED [ 96%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_bracket PASSED [ 96%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode PASSED [ 96%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_at_placeholders PASSED [ 96%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_single_brace_placeholders PASSED [ 96%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_double_brace_placeholders PASSED [ 96%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_html PASSED [ 96%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_multiple_styles_of_placeholder PASSED [ 96%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped PASSED [ 97%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_at_placeholders PASSED [ 97%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_single_brace_placeholders PASSED [ 97%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_double_brace_placeholders PASSED [ 97%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_html PASSED [ 97%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_multiple_styles_of_placeholder PASSED [ 97%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified PASSED [ 97%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_at_placeholders PASSED [ 97%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_single_brace_placeholders PASSED [ 97%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_double_brace_placeholders PASSED [ 97%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_html PASSED [ 97%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_multiple_styles_of_placeholder PASSED [ 97%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_chef PASSED [ 97%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_po_variables PASSED [ 97%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_xliff_rewrite PASSED [ 97%] 902s tests/translate/tools/test_podebug.py::TestPODebug::test_hash PASSED [ 97%] 902s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgid PASSED [ 97%] 902s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgstr PASSED [ 97%] 902s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations PASSED [ 97%] 902s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_comments PASSED [ 97%] 902s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations_with_comment_enabled PASSED [ 97%] 902s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_searchstring PASSED [ 97%] 902s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_regex_searchstring PASSED [ 97%] 902s tests/translate/tools/test_pogrep.py::TestPOGrep::test_keep_translations PASSED [ 97%] 902s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_normalise PASSED [ 97%] 902s tests/translate/tools/test_pogrep.py::TestXLiffGrep::test_simplegrep PASSED [ 97%] 902s tests/translate/tools/test_pomerge.py::test_str2bool PASSED [ 97%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_mergesore_bad_data PASSED [ 97%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge PASSED [ 97%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge_no_locations PASSED [ 97%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_replacemerge PASSED [ 97%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_blanks PASSED [ 97%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_fuzzies PASSED [ 97%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_locations PASSED [ 97%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_with_locations PASSED [ 98%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_no_locations PASSED [ 98%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_reflowed_source_comments PASSED [ 98%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_comments_with_blank_lines PASSED [ 98%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dont_delete_unassociated_comments PASSED [ 98%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_trailing_newlines PASSED [ 98%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_minor_start_and_end_of_sentence_changes PASSED [ 98%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_last_entry_in_a_file PASSED [ 98%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs XFAIL [ 98%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_comments_layout PASSED [ 98%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dos2unix PASSED [ 98%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_xliff PASSED [ 98%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_po_into_xliff PASSED [ 98%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_po PASSED [ 98%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_dont_merge_kde_comments_found_in_translation PASSED [ 98%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_untranslated_with_kde_disambiguation PASSED [ 98%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_header_entries PASSED [ 98%] 902s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_different_locations PASSED [ 98%] 902s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_simple PASSED [ 98%] 902s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_punctuation PASSED [ 98%] 902s tests/translate/tools/test_poterminology.py::TestPOTerminology::test_term_extraction PASSED [ 98%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_pretranslatepo_blank PASSED [ 98%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_simple PASSED [ 98%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_messages_marked_fuzzy PASSED [ 98%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals_with_fuzzy_matching PASSED [ 98%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change XFAIL [ 98%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_change PASSED [ 98%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_and_whitespace_change PASSED [ 98%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes XFAIL [ 98%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently XFAIL [ 98%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_dont_duplicate PASSED [ 98%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_new_overides_old PASSED [ 98%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments_with_blank_comment_lines PASSED [ 98%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_empty_commentlines PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgidcomments PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_resurect_obsolete_messages PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_typecomments PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_xliff_states PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_pretranslatepo_blank PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_simple PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_messages_marked_fuzzy PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change XFAIL [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_change PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_and_whitespace_change PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes XFAIL [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently XFAIL [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_new_overides_old PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments_with_blank_comment_lines PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_empty_commentlines PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgidcomments PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_resurect_obsolete_messages PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_typecomments PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_xliff_states PASSED [ 99%] 902s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_help PASSED [ 99%] 902s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_single_po PASSED [ 99%] 902s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_plural_po PASSED [ 99%] 902s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_single_po PASSED [ 99%] 902s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_plural_po PASSED [ 99%] 902s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_help PASSED [ 99%] 902s tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff PASSED [ 99%] 903s tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff PASSED [100%] 903s 903s =============================== warnings summary =============================== 903s tests/translate/storage/test_cpo.py:15 903s Warning: 903s Module 'translate.storage.cpo' was found, but when imported by pytest it raised: 903s ImportError('gettext PO library not found') 903s In pytest 9.1 this warning will become an error by default. 903s You can fix the underlying problem, or alternatively overwrite this behavior and silence this warning by passing exc_type=ImportError explicitly. 903s See https://docs.pytest.org/en/stable/deprecations.html#pytest-importorskip-default-behavior-regarding-importerror 903s 903s tests/odf_xliff/test_odf_xliff.py::test_roundtrip 903s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.zokjht/autopkgtest_tmp/tests/odf_xliff/test_2.odt'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid 903s Warning: unclosed file <_io.TextIOWrapper name='TestAndroid2POCommand_test_convertandroid/en.po' mode='r' encoding='UTF-8'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 903s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 903s Warning: unclosed file <_io.TextIOWrapper name='TestCSV2POCommand_test_columnorder/test.po' mode='r' encoding='UTF-8'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot 903s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_pot/simple.pot'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po 903s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po 903s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_po/simple.po'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates 903s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_remove_duplicates/simple.po'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf 903s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_xlf/simple.xlf'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 903s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 903s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_columnorder/test.csv' mode='r' encoding='UTF-8'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context 903s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_context/test.csv' mode='r' encoding='UTF-8'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing 903s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey 903s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey 903s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing 903s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey 903s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey 903s Warning: Could not find accesskey for key.accesskey 903s 903s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 903s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file 903s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten 903s Warning: unclosed file <_io.BufferedReader name='translation/file1.po'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 903s Warning: unclosed file <_io.BufferedWriter name='translated/file1.html'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert 903s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.zokjht/autopkgtest_tmp/tests/translate/convert/test.idml'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po 903s Warning: unclosed file <_io.BufferedReader name='translation.po'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 903s Warning: unclosed file <_io.FileIO name='input.oo' mode='rb' closefd=True> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 903s Warning: unclosed file <_io.FileIO name='output.oo' mode='wb' closefd=True> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey 903s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey 903s Warning: Could not find accesskey for prop.accesskey 903s 903s tests/translate/convert/test_po2tmx.py: 26 warnings 903s tests/translate/filters/test_pofilter.py: 13 warnings 903s tests/translate/storage/test_tbx.py: 17 warnings 903s tests/translate/storage/test_tmx.py: 24 warnings 903s Warning: This search incorrectly ignores the root element, and will be fixed in a future version. If you rely on the current behaviour, change it to './/body' 903s 903s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert 903s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert/simple.po'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 903s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf16/simple.po'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 903s Warning: unclosed file <_io.BufferedWriter name='simple.po'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 903s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 903s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_wrong/simple.po'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 903s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf8/simple.po'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex 903s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_menuex/simple.po'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot 903s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_pot/simple.pot'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po 903s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_po/simple.po'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates 903s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_remove_duplicates/simple.po'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 903s Warning: unclosed file <_io.BufferedWriter name='simple.odt'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 903s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.zokjht/autopkgtest_tmp/tests/translate/convert/test.odt'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename 903s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_preserve_filename/snippet.xlf'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot 903s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_pot/simple.pot'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po 903s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_po/simple.po'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates 903s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_remove_duplicates/simple.po'> 903s Enable tracemalloc to get traceback where the object was allocated. 903s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 903s 903s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 903s Warning: DTD parse error: :1:36:FATAL:PARSER:ERR_ENTITY_NOT_FINISHED: xmlParseEntityDecl: entity test.me not terminated 903s 903s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 903s Warning: DTD file '' does not validate 903s 903s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 903s --------------------------- snapshot report summary ---------------------------- 903s 23 snapshots passed. 903s =========================== short test summary info ============================ 903s SKIPPED [1] tests/translate/storage/test_cpo.py:15: could not import 'translate.storage.cpo': gettext PO library not found 903s SKIPPED [1] tests/translate/storage/test_fluent.py:29: could not import 'translate.storage.fluent': No module named 'fluent' 903s SKIPPED [1] tests/translate/filters/test_checks.py:1429: Spell checking for af is not available 903s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence - Not Implemented 903s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence - Not Implemented 903s XFAIL tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template - Need to review if we want this behaviour 903s XFAIL tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template - Need to review if we want this behaviour 903s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change - Not implemented - review if this is even correct 903s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes - Not Implemented - needs review 903s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently - Not Implemented - review if this is even correct 903s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change - Not implemented - review if this is even correct 903s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes - Not Implemented - needs review 903s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently - Not Implemented - review if this is even correct 903s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates - This is invalid YAML document 903s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates - This is invalid YAML document 903s XFAIL tests/translate/filters/test_checks.py::test_acceleratedvariables - Accelerated variables needs a better implementation 903s XFAIL tests/translate/filters/test_checks.py::test_musttranslatewords - FIXME: All fails() tests are not working 903s XFAIL tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time - Bug #3408 903s XFAIL tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags - Bug #3506 903s 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. 903s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables - Test needs fixing, disabled for now 903s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables - Test needs fixing, disabled for now 903s XFAIL tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases - Not Implemented 903s XFAIL tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases - Not Implemented 903s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_comment_following - Not Implemented 903s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting - Not Implemented 903s 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 903s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals - Not Implemented 903s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 903s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis - Incompatible wrapping with gettext, see #5251 903s XFAIL tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove - removal not working in full page 903s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals - Not Implemented 903s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 903s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis - Incompatible wrapping with gettext, see #5251 903s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment - Not sure if this can not be parsed gracefully 903s XFAIL tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity - Not Implemented 903s XFAIL tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde - Support commented out pending removal 903s XFAIL tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs - Not Implemented 903s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change - Not Implemented 903s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes - Not Implemented 903s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently - Not Implemented 903s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change - Not Implemented 903s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes - Not Implemented 903s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently - Not Implemented 903s ========== 3298 passed, 3 skipped, 41 xfailed, 127 warnings in 19.71s ========== 904s autopkgtest [11:07:02]: test python3-translate-commands: -----------------------] 908s autopkgtest [11:07:06]: test python3-translate-commands: - - - - - - - - - - results - - - - - - - - - - 908s python3-translate-commands PASS 912s autopkgtest [11:07:10]: @@@@@@@@@@@@@@@@@@@@ summary 912s translate-toolkit PASS 912s python3-translate PASS 912s python3-translate-commands PASS