0s autopkgtest [00:41:44]: starting date and time: 2025-10-21 00:41:44+0000 0s autopkgtest [00:41:44]: git checkout: 508d4a25 a-v-ssh wait_for_ssh: demote "ssh connection failed" to a debug message 0s autopkgtest [00:41:44]: host juju-7f2275-prod-proposed-migration-environment-9; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.6gqxfckn/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,localhost,localdomain,internal,login.ubuntu.com,archive.ubuntu.com,ports.ubuntu.com,security.ubuntu.com,ddebs.ubuntu.com,changelogs.ubuntu.com,keyserver.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com,radosgw.ps5.canonical.com\n" >> /etc/environment' --apt-pocket=proposed=src:pytest,src:python-pluggy --apt-upgrade translate-toolkit --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 '--env=ADT_TEST_TRIGGERS=pytest/8.4.2-1 python-pluggy/1.6.0-1' -- lxd -r lxd-armhf-10.145.243.149 lxd-armhf-10.145.243.149:autopkgtest/ubuntu/resolute/armhf 20s autopkgtest [00:42:04]: testbed dpkg architecture: armhf 22s autopkgtest [00:42:06]: testbed apt version: 3.1.6ubuntu2 26s autopkgtest [00:42:10]: @@@@@@@@@@@@@@@@@@@@ test bed setup 28s autopkgtest [00:42:12]: testbed release detected to be: None 35s autopkgtest [00:42:19]: updating testbed package index (apt update) 37s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [83.3 kB] 38s Get:2 http://ftpmaster.internal/ubuntu resolute InRelease [83.3 kB] 38s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 38s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 38s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [5028 B] 38s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [15.0 kB] 38s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [683 kB] 38s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [63.1 kB] 38s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main armhf Packages [109 kB] 38s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/restricted armhf Packages [940 B] 38s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/universe armhf Packages [429 kB] 38s Get:12 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse armhf Packages [3200 B] 38s Get:13 http://ftpmaster.internal/ubuntu resolute/main Sources [1413 kB] 38s Get:14 http://ftpmaster.internal/ubuntu resolute/multiverse Sources [307 kB] 38s Get:15 http://ftpmaster.internal/ubuntu resolute/restricted Sources [14.4 kB] 38s Get:16 http://ftpmaster.internal/ubuntu resolute/universe Sources [21.1 MB] 45s Get:17 http://ftpmaster.internal/ubuntu resolute/main armhf Packages [1357 kB] 45s Get:18 http://ftpmaster.internal/ubuntu resolute/restricted armhf Packages [1672 B] 45s Get:19 http://ftpmaster.internal/ubuntu resolute/universe armhf Packages [15.3 MB] 50s Get:20 http://ftpmaster.internal/ubuntu resolute/multiverse armhf Packages [182 kB] 51s Fetched 41.1 MB in 14s (2970 kB/s) 52s Reading package lists... 58s autopkgtest [00:42:42]: upgrading testbed (apt dist-upgrade and autopurge) 60s Reading package lists... 60s Building dependency tree... 60s Reading state information... 60s Calculating upgrade... 61s The following packages will be upgraded: 61s apparmor apt base-files binutils binutils-arm-linux-gnueabihf 61s binutils-common cloud-init cloud-init-base distro-info-data dpkg dpkg-dev 61s gcc-15-base gir1.2-girepository-2.0 libapparmor1 libapt-pkg7.0 libatomic1 61s libaudit-common libaudit1 libbinutils libbrotli1 libcap-ng0 libctf-nobfd0 61s libctf0 libdpkg-perl libgcc-s1 libgirepository-1.0-1 libjson-c5 libnewt0.52 61s libnftables1 libp11-kit0 libseccomp2 libselinux1 libsemanage-common 61s libsemanage2 libsframe2 libstdc++6 lto-disabled-list nftables 61s python-apt-common python3-apt python3-cffi-backend python3-inflect 61s python3-markupsafe python3-oauthlib python3-zipp sudo-rs whiptail 61s 47 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 61s Need to get 11.8 MB of archives. 61s After this operation, 694 kB of additional disk space will be used. 61s Get:1 http://ftpmaster.internal/ubuntu resolute/main armhf base-files armhf 14ubuntu4 [75.4 kB] 62s Get:2 http://ftpmaster.internal/ubuntu resolute/main armhf libatomic1 armhf 15.2.0-5ubuntu1 [7942 B] 62s Get:3 http://ftpmaster.internal/ubuntu resolute/main armhf gcc-15-base armhf 15.2.0-5ubuntu1 [58.1 kB] 62s Get:4 http://ftpmaster.internal/ubuntu resolute/main armhf libgcc-s1 armhf 15.2.0-5ubuntu1 [40.6 kB] 62s Get:5 http://ftpmaster.internal/ubuntu resolute/main armhf libstdc++6 armhf 15.2.0-5ubuntu1 [731 kB] 62s Get:6 http://ftpmaster.internal/ubuntu resolute/main armhf libapt-pkg7.0 armhf 3.1.8ubuntu1 [1148 kB] 62s Get:7 http://ftpmaster.internal/ubuntu resolute/main armhf dpkg armhf 1.22.21ubuntu4 [1245 kB] 62s Get:8 http://ftpmaster.internal/ubuntu resolute/main armhf libseccomp2 armhf 2.6.0-2ubuntu3 [53.5 kB] 62s Get:9 http://ftpmaster.internal/ubuntu resolute/main armhf apt armhf 3.1.8ubuntu1 [1404 kB] 62s Get:10 http://ftpmaster.internal/ubuntu resolute/main armhf libaudit-common all 1:4.0.5-1build2 [6596 B] 62s Get:11 http://ftpmaster.internal/ubuntu resolute/main armhf libcap-ng0 armhf 0.8.5-4build3 [14.0 kB] 62s Get:12 http://ftpmaster.internal/ubuntu resolute/main armhf libaudit1 armhf 1:4.0.5-1build2 [51.7 kB] 62s Get:13 http://ftpmaster.internal/ubuntu resolute/main armhf libselinux1 armhf 3.8.1-1build2 [81.3 kB] 63s Get:14 http://ftpmaster.internal/ubuntu resolute/main armhf libsemanage-common all 3.8.1-1build1 [7916 B] 63s Get:15 http://ftpmaster.internal/ubuntu resolute/main armhf libsemanage2 armhf 3.8.1-1build1 [89.2 kB] 63s Get:16 http://ftpmaster.internal/ubuntu resolute/main armhf distro-info-data all 0.68 [7378 B] 63s Get:17 http://ftpmaster.internal/ubuntu resolute/main armhf libgirepository-1.0-1 armhf 1.86.0-6 [111 kB] 63s Get:18 http://ftpmaster.internal/ubuntu resolute/main armhf gir1.2-girepository-2.0 armhf 1.86.0-6 [25.3 kB] 63s Get:19 http://ftpmaster.internal/ubuntu resolute/main armhf libapparmor1 armhf 5.0.0~alpha1-0ubuntu8.1 [52.9 kB] 63s Get:20 http://ftpmaster.internal/ubuntu resolute/main armhf libjson-c5 armhf 0.18+ds-1.1 [33.3 kB] 63s Get:21 http://ftpmaster.internal/ubuntu resolute/main armhf libnewt0.52 armhf 0.52.25-1ubuntu2 [39.9 kB] 63s Get:22 http://ftpmaster.internal/ubuntu resolute/main armhf libp11-kit0 armhf 0.25.9-2 [265 kB] 63s Get:23 http://ftpmaster.internal/ubuntu resolute/main armhf python-apt-common all 3.0.0ubuntu2 [21.7 kB] 63s Get:24 http://ftpmaster.internal/ubuntu resolute/main armhf python3-apt armhf 3.0.0ubuntu2 [189 kB] 63s Get:25 http://ftpmaster.internal/ubuntu resolute/main armhf python3-cffi-backend armhf 1.17.1-3build1 [98.4 kB] 63s Get:26 http://ftpmaster.internal/ubuntu resolute/main armhf sudo-rs armhf 0.2.8-1ubuntu5.1 [548 kB] 63s Get:27 http://ftpmaster.internal/ubuntu resolute/main armhf whiptail armhf 0.52.25-1ubuntu2 [17.1 kB] 63s Get:28 http://ftpmaster.internal/ubuntu resolute/main armhf apparmor armhf 5.0.0~alpha1-0ubuntu8.1 [631 kB] 63s Get:29 http://ftpmaster.internal/ubuntu resolute/main armhf nftables armhf 1.1.5-2 [73.2 kB] 63s Get:30 http://ftpmaster.internal/ubuntu resolute/main armhf libnftables1 armhf 1.1.5-2 [329 kB] 63s Get:31 http://ftpmaster.internal/ubuntu resolute/main armhf libctf0 armhf 2.45-7ubuntu2 [75.7 kB] 63s Get:32 http://ftpmaster.internal/ubuntu resolute/main armhf libctf-nobfd0 armhf 2.45-7ubuntu2 [79.1 kB] 63s Get:33 http://ftpmaster.internal/ubuntu resolute/main armhf binutils-arm-linux-gnueabihf armhf 2.45-7ubuntu2 [1022 kB] 63s Get:34 http://ftpmaster.internal/ubuntu resolute/main armhf libbinutils armhf 2.45-7ubuntu2 [411 kB] 63s Get:35 http://ftpmaster.internal/ubuntu resolute/main armhf binutils armhf 2.45-7ubuntu2 [3240 B] 63s Get:36 http://ftpmaster.internal/ubuntu resolute/main armhf binutils-common armhf 2.45-7ubuntu2 [220 kB] 63s Get:37 http://ftpmaster.internal/ubuntu resolute/main armhf libsframe2 armhf 2.45-7ubuntu2 [13.4 kB] 63s Get:38 http://ftpmaster.internal/ubuntu resolute/main armhf cloud-init-base all 25.3-0ubuntu1 [625 kB] 63s Get:39 http://ftpmaster.internal/ubuntu resolute/main armhf cloud-init all 25.3-0ubuntu1 [2106 B] 63s Get:40 http://ftpmaster.internal/ubuntu resolute/main armhf python3-oauthlib all 3.3.1-1 [93.5 kB] 63s Get:41 http://ftpmaster.internal/ubuntu resolute/main armhf dpkg-dev all 1.22.21ubuntu4 [1088 kB] 63s Get:42 http://ftpmaster.internal/ubuntu resolute/main armhf libdpkg-perl all 1.22.21ubuntu4 [280 kB] 63s Get:43 http://ftpmaster.internal/ubuntu resolute/main armhf lto-disabled-list all 71 [12.5 kB] 63s Get:44 http://ftpmaster.internal/ubuntu resolute/main armhf libbrotli1 armhf 1.1.0-2build6 [320 kB] 63s Get:45 http://ftpmaster.internal/ubuntu resolute/main armhf python3-inflect all 7.5.0-1 [33.9 kB] 63s Get:46 http://ftpmaster.internal/ubuntu resolute/main armhf python3-markupsafe armhf 2.1.5-1build5 [13.3 kB] 63s Get:47 http://ftpmaster.internal/ubuntu resolute/main armhf python3-zipp all 3.23.0-1 [10.4 kB] 64s Preconfiguring packages ... 64s Fetched 11.8 MB in 2s (5510 kB/s) 64s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 61081 files and directories currently installed.) 64s Preparing to unpack .../base-files_14ubuntu4_armhf.deb ... 64s Unpacking base-files (14ubuntu4) over (14ubuntu3) ... 64s Setting up base-files (14ubuntu4) ... 64s Installing new version of config file /etc/issue ... 64s Installing new version of config file /etc/issue.net ... 64s Installing new version of config file /etc/lsb-release ... 65s motd-news.service is a disabled or a static unit not running, not starting it. 65s (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 ... 61081 files and directories currently installed.) 65s Preparing to unpack .../libatomic1_15.2.0-5ubuntu1_armhf.deb ... 65s Unpacking libatomic1:armhf (15.2.0-5ubuntu1) over (15.2.0-4ubuntu4) ... 65s Preparing to unpack .../gcc-15-base_15.2.0-5ubuntu1_armhf.deb ... 65s Unpacking gcc-15-base:armhf (15.2.0-5ubuntu1) over (15.2.0-4ubuntu4) ... 65s Setting up gcc-15-base:armhf (15.2.0-5ubuntu1) ... 65s (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 ... 61081 files and directories currently installed.) 65s Preparing to unpack .../libgcc-s1_15.2.0-5ubuntu1_armhf.deb ... 65s Unpacking libgcc-s1:armhf (15.2.0-5ubuntu1) over (15.2.0-4ubuntu4) ... 65s Setting up libgcc-s1:armhf (15.2.0-5ubuntu1) ... 65s (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 ... 61081 files and directories currently installed.) 65s Preparing to unpack .../libstdc++6_15.2.0-5ubuntu1_armhf.deb ... 65s Unpacking libstdc++6:armhf (15.2.0-5ubuntu1) over (15.2.0-4ubuntu4) ... 65s Setting up libstdc++6:armhf (15.2.0-5ubuntu1) ... 66s (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 ... 61081 files and directories currently installed.) 66s Preparing to unpack .../libapt-pkg7.0_3.1.8ubuntu1_armhf.deb ... 66s Unpacking libapt-pkg7.0:armhf (3.1.8ubuntu1) over (3.1.6ubuntu2) ... 66s Setting up libapt-pkg7.0:armhf (3.1.8ubuntu1) ... 66s (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 ... 61081 files and directories currently installed.) 66s Preparing to unpack .../dpkg_1.22.21ubuntu4_armhf.deb ... 66s Unpacking dpkg (1.22.21ubuntu4) over (1.22.21ubuntu3) ... 66s Setting up dpkg (1.22.21ubuntu4) ... 66s (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 ... 61081 files and directories currently installed.) 66s Preparing to unpack .../libseccomp2_2.6.0-2ubuntu3_armhf.deb ... 66s Unpacking libseccomp2:armhf (2.6.0-2ubuntu3) over (2.6.0-2ubuntu2) ... 66s Setting up libseccomp2:armhf (2.6.0-2ubuntu3) ... 66s (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 ... 61081 files and directories currently installed.) 66s Preparing to unpack .../apt_3.1.8ubuntu1_armhf.deb ... 66s Unpacking apt (3.1.8ubuntu1) over (3.1.6ubuntu2) ... 67s Setting up apt (3.1.8ubuntu1) ... 67s (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 ... 61081 files and directories currently installed.) 67s Preparing to unpack .../libaudit-common_1%3a4.0.5-1build2_all.deb ... 67s Unpacking libaudit-common (1:4.0.5-1build2) over (1:4.0.5-1build1) ... 67s Setting up libaudit-common (1:4.0.5-1build2) ... 67s (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 ... 61081 files and directories currently installed.) 67s Preparing to unpack .../libcap-ng0_0.8.5-4build3_armhf.deb ... 67s Unpacking libcap-ng0:armhf (0.8.5-4build3) over (0.8.5-4build2) ... 67s Setting up libcap-ng0:armhf (0.8.5-4build3) ... 67s (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 ... 61081 files and directories currently installed.) 67s Preparing to unpack .../libaudit1_1%3a4.0.5-1build2_armhf.deb ... 67s Unpacking libaudit1:armhf (1:4.0.5-1build2) over (1:4.0.5-1build1) ... 68s Setting up libaudit1:armhf (1:4.0.5-1build2) ... 68s (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 ... 61081 files and directories currently installed.) 68s Preparing to unpack .../libselinux1_3.8.1-1build2_armhf.deb ... 68s Unpacking libselinux1:armhf (3.8.1-1build2) over (3.8.1-1build1) ... 68s Setting up libselinux1:armhf (3.8.1-1build2) ... 68s (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 ... 61081 files and directories currently installed.) 68s Preparing to unpack .../libsemanage-common_3.8.1-1build1_all.deb ... 68s Unpacking libsemanage-common (3.8.1-1build1) over (3.8.1-1) ... 68s Setting up libsemanage-common (3.8.1-1build1) ... 68s (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 ... 61081 files and directories currently installed.) 68s Preparing to unpack .../libsemanage2_3.8.1-1build1_armhf.deb ... 68s Unpacking libsemanage2:armhf (3.8.1-1build1) over (3.8.1-1) ... 68s Setting up libsemanage2:armhf (3.8.1-1build1) ... 68s (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 ... 61081 files and directories currently installed.) 68s Preparing to unpack .../00-distro-info-data_0.68_all.deb ... 68s Unpacking distro-info-data (0.68) over (0.66) ... 68s Preparing to unpack .../01-libgirepository-1.0-1_1.86.0-6_armhf.deb ... 68s Unpacking libgirepository-1.0-1:armhf (1.86.0-6) over (1.84.0-1) ... 68s Preparing to unpack .../02-gir1.2-girepository-2.0_1.86.0-6_armhf.deb ... 68s Unpacking gir1.2-girepository-2.0:armhf (1.86.0-6) over (1.84.0-1) ... 68s Preparing to unpack .../03-libapparmor1_5.0.0~alpha1-0ubuntu8.1_armhf.deb ... 68s Unpacking libapparmor1:armhf (5.0.0~alpha1-0ubuntu8.1) over (5.0.0~alpha1-0ubuntu8) ... 68s Preparing to unpack .../04-libjson-c5_0.18+ds-1.1_armhf.deb ... 68s Unpacking libjson-c5:armhf (0.18+ds-1.1) over (0.18+ds-1) ... 68s Preparing to unpack .../05-libnewt0.52_0.52.25-1ubuntu2_armhf.deb ... 68s Unpacking libnewt0.52:armhf (0.52.25-1ubuntu2) over (0.52.25-1ubuntu1) ... 68s Preparing to unpack .../06-libp11-kit0_0.25.9-2_armhf.deb ... 68s Unpacking libp11-kit0:armhf (0.25.9-2) over (0.25.5-3ubuntu1) ... 68s Preparing to unpack .../07-python-apt-common_3.0.0ubuntu2_all.deb ... 68s Unpacking python-apt-common (3.0.0ubuntu2) over (3.0.0ubuntu1) ... 68s Preparing to unpack .../08-python3-apt_3.0.0ubuntu2_armhf.deb ... 68s Unpacking python3-apt (3.0.0ubuntu2) over (3.0.0ubuntu1) ... 68s Preparing to unpack .../09-python3-cffi-backend_1.17.1-3build1_armhf.deb ... 68s Unpacking python3-cffi-backend:armhf (1.17.1-3build1) over (1.17.1-3) ... 68s Preparing to unpack .../10-sudo-rs_0.2.8-1ubuntu5.1_armhf.deb ... 68s Unpacking sudo-rs (0.2.8-1ubuntu5.1) over (0.2.8-1ubuntu5) ... 68s Preparing to unpack .../11-whiptail_0.52.25-1ubuntu2_armhf.deb ... 68s Unpacking whiptail (0.52.25-1ubuntu2) over (0.52.25-1ubuntu1) ... 69s Preparing to unpack .../12-apparmor_5.0.0~alpha1-0ubuntu8.1_armhf.deb ... 70s Unpacking apparmor (5.0.0~alpha1-0ubuntu8.1) over (5.0.0~alpha1-0ubuntu8) ... 71s Preparing to unpack .../13-nftables_1.1.5-2_armhf.deb ... 71s Unpacking nftables (1.1.5-2) over (1.1.5-1) ... 71s Preparing to unpack .../14-libnftables1_1.1.5-2_armhf.deb ... 71s Unpacking libnftables1:armhf (1.1.5-2) over (1.1.5-1) ... 71s Preparing to unpack .../15-libctf0_2.45-7ubuntu2_armhf.deb ... 71s Unpacking libctf0:armhf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 71s Preparing to unpack .../16-libctf-nobfd0_2.45-7ubuntu2_armhf.deb ... 71s Unpacking libctf-nobfd0:armhf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 71s Preparing to unpack .../17-binutils-arm-linux-gnueabihf_2.45-7ubuntu2_armhf.deb ... 71s Unpacking binutils-arm-linux-gnueabihf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 71s Preparing to unpack .../18-libbinutils_2.45-7ubuntu2_armhf.deb ... 71s Unpacking libbinutils:armhf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 71s Preparing to unpack .../19-binutils_2.45-7ubuntu2_armhf.deb ... 71s Unpacking binutils (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 71s Preparing to unpack .../20-binutils-common_2.45-7ubuntu2_armhf.deb ... 71s Unpacking binutils-common:armhf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 71s Preparing to unpack .../21-libsframe2_2.45-7ubuntu2_armhf.deb ... 71s Unpacking libsframe2:armhf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 71s Preparing to unpack .../22-cloud-init-base_25.3-0ubuntu1_all.deb ... 71s Unpacking cloud-init-base (25.3-0ubuntu1) over (25.3~2g890873f5-0ubuntu2) ... 72s Preparing to unpack .../23-cloud-init_25.3-0ubuntu1_all.deb ... 72s Unpacking cloud-init (25.3-0ubuntu1) over (25.3~2g890873f5-0ubuntu2) ... 72s Preparing to unpack .../24-python3-oauthlib_3.3.1-1_all.deb ... 72s Unpacking python3-oauthlib (3.3.1-1) over (3.2.2-3) ... 72s Preparing to unpack .../25-dpkg-dev_1.22.21ubuntu4_all.deb ... 72s Unpacking dpkg-dev (1.22.21ubuntu4) over (1.22.21ubuntu3) ... 72s Preparing to unpack .../26-libdpkg-perl_1.22.21ubuntu4_all.deb ... 72s Unpacking libdpkg-perl (1.22.21ubuntu4) over (1.22.21ubuntu3) ... 72s Preparing to unpack .../27-lto-disabled-list_71_all.deb ... 72s Unpacking lto-disabled-list (71) over (69) ... 72s Preparing to unpack .../28-libbrotli1_1.1.0-2build6_armhf.deb ... 72s Unpacking libbrotli1:armhf (1.1.0-2build6) over (1.1.0-2build5) ... 72s Preparing to unpack .../29-python3-inflect_7.5.0-1_all.deb ... 72s Unpacking python3-inflect (7.5.0-1) over (7.3.1-2) ... 72s Preparing to unpack .../30-python3-markupsafe_2.1.5-1build5_armhf.deb ... 72s Unpacking python3-markupsafe (2.1.5-1build5) over (2.1.5-1build4) ... 72s Preparing to unpack .../31-python3-zipp_3.23.0-1_all.deb ... 73s Unpacking python3-zipp (3.23.0-1) over (3.21.0-1) ... 73s Setting up lto-disabled-list (71) ... 73s Setting up libapparmor1:armhf (5.0.0~alpha1-0ubuntu8.1) ... 73s Setting up libnewt0.52:armhf (0.52.25-1ubuntu2) ... 73s Setting up libnftables1:armhf (1.1.5-2) ... 73s Setting up nftables (1.1.5-2) ... 73s Setting up distro-info-data (0.68) ... 73s Setting up libsframe2:armhf (2.45-7ubuntu2) ... 73s Setting up libbrotli1:armhf (1.1.0-2build6) ... 73s Setting up binutils-common:armhf (2.45-7ubuntu2) ... 73s Setting up libctf-nobfd0:armhf (2.45-7ubuntu2) ... 73s Setting up python3-zipp (3.23.0-1) ... 73s Setting up python3-markupsafe (2.1.5-1build5) ... 73s Setting up apparmor (5.0.0~alpha1-0ubuntu8.1) ... 73s Installing new version of config file /etc/apparmor.d/fusermount3 ... 74s apparmor_parser: Unable to replace "lsb_release". apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 74s 74s apparmor_parser: Unable to replace "kmod". apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 74s 74s apparmor_parser: Unable to replace "nvidia_modprobe". apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 74s 75s Reloading AppArmor profiles 75s /sbin/apparmor_parser: Unable to replace "1password". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "Discord". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "MongoDB Compass". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "QtWebEngineProcess". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "balena-etcher". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "brave". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "buildah". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "cam". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "ch-checkns". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "ch-run". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "bwrap". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "chrome". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "chromium". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "vscode". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "crun". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "devhelp". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "babeld". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "bfdd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "alsamixer". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "element-desktop". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "epiphany". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "bgpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "evolution". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "firefox". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "flatpak". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "foliate". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "geary". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "github-desktop". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "goldendict". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "eigrpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "dnstracer". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "dig". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "fabricd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "hostname". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "iotop-c". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "kchmviewer". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "keybase". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "lc-compliance". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "isisd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "fusermount3". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "libcamerify". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "Xorg". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "linux-sandbox". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "ldpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "loupe". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "john". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "gs". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "ipa_verify". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "lxc-attach". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "lxc-create". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "lxc-destroy". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "lxc-execute". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "lxc-stop". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "lxc-unshare". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "lxc-usernsexec". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "mmdebstrap". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "lsusb". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "lsblk". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "compressor". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "locale". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "msedge". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "irssi". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "lsb_release". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "notepadqq". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "linux-boot-prober". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "obsidian". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "mbsync". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "opam". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "opera". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "mosquitto". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "nhrpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "nslookup". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "pageedit". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "notify-send". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "kmod". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "nvidia_modprobe". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "ospf6d". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "nc.openbsd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "ospfd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "pathd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "os-prober". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "podman". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "polypane". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "privacybrowser". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "qcam". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "qmapshack". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "qutebrowser". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "pbrd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "pim6d". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "QtWebEngineProcess". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "plasmashell". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "rootlesskit". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "rpm". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "pimd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "rssguard". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "runc". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "sbuild". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "sbuild-abort". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "sbuild-adduser". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "sbuild-apt". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "qpdf". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "sbuild-checkpackages". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "sbuild-clean". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "ripngd". /sbin/apparmor_parser: Unable to replace "ripd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "sbuild-createchroot". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "sbuild-destroychroot". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "sbuild-distupgrade". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "sbuild-hold". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "sbuild-unhold". /sbin/apparmor_parser: Unable to replace "sbuild-shell". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "sbuild-update". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "sbuild-upgrade". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "scide". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "signal-desktop". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "slack". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "slirp4netns". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "steam". /sbin/apparmor_parser: Unable to replace "stress-ng". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "surfshark". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "systemd-coredump". /sbin/apparmor_parser: Unable to replace "thunderbird". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "proftpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "ssh-keyscan". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "systemd-detect-virt". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "trinity". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "staticd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "tup". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "tuxedo-control-center". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "tinyproxy". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "ip". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "openvpn". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "unprivileged_userns". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "userbindmount". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "mx-extract". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "rygel". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "unix-chkpwd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "ubuntu_pro_apt_news". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "/usr/bin/man". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "uwsgi-core". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "vdens". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "virtiofsd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "vivaldi-bin". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "/usr/sbin/chronyd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "vpnns". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "wg". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "vrrpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "rsyslogd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "wike". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "cmds". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "tnftp". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "wpcom". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "who". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "dumpcap". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "tshark". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "ip". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "wg-quick". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "znc". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "tcpdump". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "apt_methods". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "ubuntu_pro_esm_cache". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s /sbin/apparmor_parser: Unable to replace "transmission-cli". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 75s 75s Error: At least one profile failed to load 75s Setting up python3-inflect (7.5.0-1) ... 76s Setting up python3-oauthlib (3.3.1-1) ... 76s Setting up libp11-kit0:armhf (0.25.9-2) ... 76s Setting up libatomic1:armhf (15.2.0-5ubuntu1) ... 76s Setting up libdpkg-perl (1.22.21ubuntu4) ... 76s Setting up whiptail (0.52.25-1ubuntu2) ... 76s Setting up python-apt-common (3.0.0ubuntu2) ... 76s Setting up libgirepository-1.0-1:armhf (1.86.0-6) ... 76s Setting up libbinutils:armhf (2.45-7ubuntu2) ... 76s Setting up libjson-c5:armhf (0.18+ds-1.1) ... 76s Setting up sudo-rs (0.2.8-1ubuntu5.1) ... 76s Setting up python3-cffi-backend:armhf (1.17.1-3build1) ... 76s Setting up libctf0:armhf (2.45-7ubuntu2) ... 76s Setting up python3-apt (3.0.0ubuntu2) ... 76s Setting up cloud-init-base (25.3-0ubuntu1) ... 78s Setting up gir1.2-girepository-2.0:armhf (1.86.0-6) ... 78s Setting up binutils-arm-linux-gnueabihf (2.45-7ubuntu2) ... 78s Setting up cloud-init (25.3-0ubuntu1) ... 78s Setting up binutils (2.45-7ubuntu2) ... 78s Setting up dpkg-dev (1.22.21ubuntu4) ... 78s Processing triggers for procps (2:4.0.4-8ubuntu3) ... 78s Processing triggers for install-info (7.1.1-1ubuntu1) ... 78s Processing triggers for libc-bin (2.42-0ubuntu3) ... 78s Processing triggers for rsyslog (8.2504.0-1ubuntu2) ... 78s Processing triggers for systemd (257.9-0ubuntu2) ... 79s Processing triggers for man-db (2.13.1-1) ... 80s Processing triggers for plymouth-theme-ubuntu-text (24.004.60+git20250831.4a3c171d-0ubuntu1) ... 83s Reading package lists... 84s Building dependency tree... 84s Reading state information... 84s Solving dependencies... 85s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 87s autopkgtest [00:43:11]: rebooting testbed after setup commands that affected boot 126s autopkgtest [00:43:50]: testbed running kernel: Linux 6.8.0-58-generic #60~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Fri Mar 28 14:48:37 UTC 2 150s autopkgtest [00:44:14]: @@@@@@@@@@@@@@@@@@@@ apt-source translate-toolkit 168s Get:1 http://ftpmaster.internal/ubuntu resolute/universe translate-toolkit 3.15.1-1 (dsc) [3193 B] 168s Get:2 http://ftpmaster.internal/ubuntu resolute/universe translate-toolkit 3.15.1-1 (tar) [1170 kB] 168s Get:3 http://ftpmaster.internal/ubuntu resolute/universe translate-toolkit 3.15.1-1 (diff) [24.9 kB] 168s gpgv: Signature made Fri Mar 14 13:03:50 2025 UTC 168s gpgv: using RSA key 90E2D2C1AD146A1B7EBB891DBBC17EBB1396F2F7 168s gpgv: Can't check signature: No public key 168s dpkg-source: warning: cannot verify inline signature for ./translate-toolkit_3.15.1-1.dsc: no acceptable signature found 169s autopkgtest [00:44:33]: testing package translate-toolkit version 3.15.1-1 170s autopkgtest [00:44:34]: build not needed 173s autopkgtest [00:44:37]: test translate-toolkit: preparing testbed 175s Reading package lists... 175s Building dependency tree... 175s Reading state information... 175s Solving dependencies... 176s The following NEW packages will be installed: 176s dictionaries-common emacsen-common gettext hunspell-en-us libapr1t64 176s libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data libgomp1 176s libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 libxslt1.1 176s python3-aeidon python3-bs4 python3-charset-normalizer python3-cheroot 176s python3-cwcwidth python3-dateutil python3-diff-match-patch python3-enchant 176s python3-iniparse python3-levenshtein python3-lxml python3-mistletoe 176s python3-phply python3-ply python3-pycountry python3-pytz python3-rapidfuzz 176s python3-ruamel.yaml python3-ruamel.yaml.clib python3-soupsieve 176s python3-translate python3-tz python3-vobject python3-xapian subversion 176s translate-toolkit 176s 0 upgraded, 42 newly installed, 0 to remove and 0 not upgraded. 176s Need to get 11.3 MB of archives. 176s After this operation, 47.1 MB of additional disk space will be used. 176s Get:1 http://ftpmaster.internal/ubuntu resolute/main armhf emacsen-common all 3.0.8 [13.9 kB] 176s Get:2 http://ftpmaster.internal/ubuntu resolute/main armhf dictionaries-common all 1.30.10 [178 kB] 176s Get:3 http://ftpmaster.internal/ubuntu resolute/main armhf libgomp1 armhf 15.2.0-5ubuntu1 [129 kB] 176s Get:4 http://ftpmaster.internal/ubuntu resolute/main armhf gettext armhf 0.23.1-2build2 [1059 kB] 176s Get:5 http://ftpmaster.internal/ubuntu resolute/main armhf hunspell-en-us all 1:2020.12.07-4 [585 kB] 177s Get:6 http://ftpmaster.internal/ubuntu resolute/main armhf libapr1t64 armhf 1.7.5-1 [88.2 kB] 177s Get:7 http://ftpmaster.internal/ubuntu resolute/main armhf libaprutil1t64 armhf 1.6.3-3ubuntu2 [83.1 kB] 177s Get:8 http://ftpmaster.internal/ubuntu resolute/main armhf libaspell15 armhf 0.60.8.1-4 [306 kB] 177s Get:9 http://ftpmaster.internal/ubuntu resolute/main armhf libhunspell-1.7-0 armhf 1.7.2+really1.7.2-10build3 [307 kB] 177s Get:10 http://ftpmaster.internal/ubuntu resolute/main armhf libenchant-2-2 armhf 2.8.2+dfsg1-3 [51.3 kB] 177s Get:11 http://ftpmaster.internal/ubuntu resolute/main armhf libexttextcat-data all 3.4.7-1ubuntu1 [193 kB] 177s Get:12 http://ftpmaster.internal/ubuntu resolute/universe armhf libserf-1-1 armhf 1.3.10-3ubuntu1 [40.5 kB] 177s Get:13 http://ftpmaster.internal/ubuntu resolute/universe armhf libutf8proc3 armhf 2.10.0-2 [70.0 kB] 177s Get:14 http://ftpmaster.internal/ubuntu resolute/universe armhf libsvn1 armhf 1.14.5-3 [1202 kB] 177s Get:15 http://ftpmaster.internal/ubuntu resolute/universe armhf libxapian30 armhf 1.4.29-3 [690 kB] 177s Get:16 http://ftpmaster.internal/ubuntu resolute/main armhf libxslt1.1 armhf 1.1.43-0.1 [146 kB] 177s Get:17 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-aeidon all 1.15-2 [231 kB] 177s Get:18 http://ftpmaster.internal/ubuntu resolute/main armhf python3-soupsieve all 2.7-2 [33.6 kB] 177s Get:19 http://ftpmaster.internal/ubuntu resolute/main armhf python3-bs4 all 4.13.4-3 [137 kB] 177s Get:20 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-charset-normalizer armhf 3.4.2-1 [122 kB] 177s Get:21 http://ftpmaster.internal/ubuntu resolute/main armhf python3-cheroot all 10.0.1+ds1-4 [78.6 kB] 177s Get:22 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-cwcwidth armhf 0.1.10-1build1 [20.5 kB] 177s Get:23 http://ftpmaster.internal/ubuntu resolute/main armhf python3-dateutil all 2.9.0-4 [80.3 kB] 177s Get:24 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-diff-match-patch all 20241021-1 [33.6 kB] 177s Get:25 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-enchant all 3.3.0~rc1-1 [35.1 kB] 177s Get:26 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-rapidfuzz armhf 3.12.2+ds-1 [1249 kB] 177s Get:27 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-levenshtein armhf 0.27.1-2 [139 kB] 177s Get:28 http://ftpmaster.internal/ubuntu resolute/main armhf python3-lxml armhf 6.0.1-1 [1430 kB] 177s Get:29 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-mistletoe all 1.4.0-1 [38.2 kB] 177s Get:30 http://ftpmaster.internal/ubuntu resolute/main armhf python3-ply all 3.11-9 [45.8 kB] 177s Get:31 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-phply all 1.2.6-1 [50.5 kB] 177s Get:32 http://ftpmaster.internal/ubuntu resolute/main armhf python3-pytz all 2025.2-3 [163 kB] 177s Get:33 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-ruamel.yaml.clib armhf 0.2.12+ds-1build1 [130 kB] 177s Get:34 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-ruamel.yaml all 0.18.10+ds-1 [127 kB] 177s Get:35 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-translate all 3.15.1-1 [319 kB] 177s Get:36 http://ftpmaster.internal/ubuntu resolute/main armhf python3-tz all 2025.2-3 [1866 B] 177s Get:37 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-vobject all 0.9.8+dfsg-2 [41.3 kB] 177s Get:38 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-xapian armhf 1.4.29-1build1 [607 kB] 177s Get:39 http://ftpmaster.internal/ubuntu resolute/universe armhf subversion armhf 1.14.5-3 [893 kB] 177s Get:40 http://ftpmaster.internal/ubuntu resolute/universe armhf translate-toolkit all 3.15.1-1 [81.0 kB] 177s Get:41 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-iniparse all 0.5.1-1 [21.2 kB] 177s Get:42 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-pycountry all 24.6.1+ds1-1 [30.0 kB] 178s Preconfiguring packages ... 178s Fetched 11.3 MB in 1s (8739 kB/s) 178s Selecting previously unselected package emacsen-common. 178s (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 ... 61097 files and directories currently installed.) 178s Preparing to unpack .../00-emacsen-common_3.0.8_all.deb ... 178s Unpacking emacsen-common (3.0.8) ... 178s Selecting previously unselected package dictionaries-common. 178s Preparing to unpack .../01-dictionaries-common_1.30.10_all.deb ... 178s Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common' 178s Unpacking dictionaries-common (1.30.10) ... 178s Selecting previously unselected package libgomp1:armhf. 178s Preparing to unpack .../02-libgomp1_15.2.0-5ubuntu1_armhf.deb ... 178s Unpacking libgomp1:armhf (15.2.0-5ubuntu1) ... 178s Selecting previously unselected package gettext. 178s Preparing to unpack .../03-gettext_0.23.1-2build2_armhf.deb ... 178s Unpacking gettext (0.23.1-2build2) ... 178s Selecting previously unselected package hunspell-en-us. 178s Preparing to unpack .../04-hunspell-en-us_1%3a2020.12.07-4_all.deb ... 178s Unpacking hunspell-en-us (1:2020.12.07-4) ... 178s Selecting previously unselected package libapr1t64:armhf. 178s Preparing to unpack .../05-libapr1t64_1.7.5-1_armhf.deb ... 178s Unpacking libapr1t64:armhf (1.7.5-1) ... 178s Selecting previously unselected package libaprutil1t64:armhf. 178s Preparing to unpack .../06-libaprutil1t64_1.6.3-3ubuntu2_armhf.deb ... 178s Unpacking libaprutil1t64:armhf (1.6.3-3ubuntu2) ... 178s Selecting previously unselected package libaspell15:armhf. 178s Preparing to unpack .../07-libaspell15_0.60.8.1-4_armhf.deb ... 178s Unpacking libaspell15:armhf (0.60.8.1-4) ... 178s Selecting previously unselected package libhunspell-1.7-0:armhf. 178s Preparing to unpack .../08-libhunspell-1.7-0_1.7.2+really1.7.2-10build3_armhf.deb ... 178s Unpacking libhunspell-1.7-0:armhf (1.7.2+really1.7.2-10build3) ... 178s Selecting previously unselected package libenchant-2-2:armhf. 178s Preparing to unpack .../09-libenchant-2-2_2.8.2+dfsg1-3_armhf.deb ... 178s Unpacking libenchant-2-2:armhf (2.8.2+dfsg1-3) ... 178s Selecting previously unselected package libexttextcat-data. 178s Preparing to unpack .../10-libexttextcat-data_3.4.7-1ubuntu1_all.deb ... 178s Unpacking libexttextcat-data (3.4.7-1ubuntu1) ... 178s Selecting previously unselected package libserf-1-1:armhf. 178s Preparing to unpack .../11-libserf-1-1_1.3.10-3ubuntu1_armhf.deb ... 178s Unpacking libserf-1-1:armhf (1.3.10-3ubuntu1) ... 178s Selecting previously unselected package libutf8proc3:armhf. 178s Preparing to unpack .../12-libutf8proc3_2.10.0-2_armhf.deb ... 178s Unpacking libutf8proc3:armhf (2.10.0-2) ... 178s Selecting previously unselected package libsvn1:armhf. 178s Preparing to unpack .../13-libsvn1_1.14.5-3_armhf.deb ... 178s Unpacking libsvn1:armhf (1.14.5-3) ... 178s Selecting previously unselected package libxapian30:armhf. 178s Preparing to unpack .../14-libxapian30_1.4.29-3_armhf.deb ... 178s Unpacking libxapian30:armhf (1.4.29-3) ... 178s Selecting previously unselected package libxslt1.1:armhf. 178s Preparing to unpack .../15-libxslt1.1_1.1.43-0.1_armhf.deb ... 178s Unpacking libxslt1.1:armhf (1.1.43-0.1) ... 178s Selecting previously unselected package python3-aeidon. 179s Preparing to unpack .../16-python3-aeidon_1.15-2_all.deb ... 179s Unpacking python3-aeidon (1.15-2) ... 179s Selecting previously unselected package python3-soupsieve. 179s Preparing to unpack .../17-python3-soupsieve_2.7-2_all.deb ... 179s Unpacking python3-soupsieve (2.7-2) ... 179s Selecting previously unselected package python3-bs4. 179s Preparing to unpack .../18-python3-bs4_4.13.4-3_all.deb ... 179s Unpacking python3-bs4 (4.13.4-3) ... 179s Selecting previously unselected package python3-charset-normalizer. 179s Preparing to unpack .../19-python3-charset-normalizer_3.4.2-1_armhf.deb ... 179s Unpacking python3-charset-normalizer (3.4.2-1) ... 179s Selecting previously unselected package python3-cheroot. 179s Preparing to unpack .../20-python3-cheroot_10.0.1+ds1-4_all.deb ... 179s Unpacking python3-cheroot (10.0.1+ds1-4) ... 179s Selecting previously unselected package python3-cwcwidth. 179s Preparing to unpack .../21-python3-cwcwidth_0.1.10-1build1_armhf.deb ... 179s Unpacking python3-cwcwidth (0.1.10-1build1) ... 179s Selecting previously unselected package python3-dateutil. 179s Preparing to unpack .../22-python3-dateutil_2.9.0-4_all.deb ... 179s Unpacking python3-dateutil (2.9.0-4) ... 179s Selecting previously unselected package python3-diff-match-patch. 179s Preparing to unpack .../23-python3-diff-match-patch_20241021-1_all.deb ... 179s Unpacking python3-diff-match-patch (20241021-1) ... 179s Selecting previously unselected package python3-enchant. 179s Preparing to unpack .../24-python3-enchant_3.3.0~rc1-1_all.deb ... 179s Unpacking python3-enchant (3.3.0~rc1-1) ... 179s Selecting previously unselected package python3-rapidfuzz. 179s Preparing to unpack .../25-python3-rapidfuzz_3.12.2+ds-1_armhf.deb ... 179s Unpacking python3-rapidfuzz (3.12.2+ds-1) ... 179s Selecting previously unselected package python3-levenshtein. 179s Preparing to unpack .../26-python3-levenshtein_0.27.1-2_armhf.deb ... 179s Unpacking python3-levenshtein (0.27.1-2) ... 179s Selecting previously unselected package python3-lxml:armhf. 179s Preparing to unpack .../27-python3-lxml_6.0.1-1_armhf.deb ... 179s Unpacking python3-lxml:armhf (6.0.1-1) ... 179s Selecting previously unselected package python3-mistletoe. 179s Preparing to unpack .../28-python3-mistletoe_1.4.0-1_all.deb ... 179s Unpacking python3-mistletoe (1.4.0-1) ... 179s Selecting previously unselected package python3-ply. 179s Preparing to unpack .../29-python3-ply_3.11-9_all.deb ... 179s Unpacking python3-ply (3.11-9) ... 179s Selecting previously unselected package python3-phply. 179s Preparing to unpack .../30-python3-phply_1.2.6-1_all.deb ... 179s Unpacking python3-phply (1.2.6-1) ... 179s Selecting previously unselected package python3-pytz. 179s Preparing to unpack .../31-python3-pytz_2025.2-3_all.deb ... 179s Unpacking python3-pytz (2025.2-3) ... 179s Selecting previously unselected package python3-ruamel.yaml.clib. 179s Preparing to unpack .../32-python3-ruamel.yaml.clib_0.2.12+ds-1build1_armhf.deb ... 179s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 179s Selecting previously unselected package python3-ruamel.yaml. 179s Preparing to unpack .../33-python3-ruamel.yaml_0.18.10+ds-1_all.deb ... 179s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ... 179s Selecting previously unselected package python3-translate. 179s Preparing to unpack .../34-python3-translate_3.15.1-1_all.deb ... 179s Unpacking python3-translate (3.15.1-1) ... 179s Selecting previously unselected package python3-tz. 179s Preparing to unpack .../35-python3-tz_2025.2-3_all.deb ... 179s Unpacking python3-tz (2025.2-3) ... 179s Selecting previously unselected package python3-vobject. 179s Preparing to unpack .../36-python3-vobject_0.9.8+dfsg-2_all.deb ... 179s Unpacking python3-vobject (0.9.8+dfsg-2) ... 179s Selecting previously unselected package python3-xapian. 179s Preparing to unpack .../37-python3-xapian_1.4.29-1build1_armhf.deb ... 179s Unpacking python3-xapian (1.4.29-1build1) ... 180s Selecting previously unselected package subversion. 180s Preparing to unpack .../38-subversion_1.14.5-3_armhf.deb ... 180s Unpacking subversion (1.14.5-3) ... 180s Selecting previously unselected package translate-toolkit. 180s Preparing to unpack .../39-translate-toolkit_3.15.1-1_all.deb ... 180s Unpacking translate-toolkit (3.15.1-1) ... 180s Selecting previously unselected package python3-iniparse. 180s Preparing to unpack .../40-python3-iniparse_0.5.1-1_all.deb ... 180s Unpacking python3-iniparse (0.5.1-1) ... 180s Selecting previously unselected package python3-pycountry. 180s Preparing to unpack .../41-python3-pycountry_24.6.1+ds1-1_all.deb ... 180s Unpacking python3-pycountry (24.6.1+ds1-1) ... 180s Setting up libxapian30:armhf (1.4.29-3) ... 180s Setting up python3-rapidfuzz (3.12.2+ds-1) ... 180s Setting up python3-diff-match-patch (20241021-1) ... 180s Setting up python3-aeidon (1.15-2) ... 180s Setting up libutf8proc3:armhf (2.10.0-2) ... 180s Setting up libaspell15:armhf (0.60.8.1-4) ... 180s Setting up python3-charset-normalizer (3.4.2-1) ... 181s Setting up python3-ply (3.11-9) ... 181s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 181s Setting up python3-pytz (2025.2-3) ... 181s Setting up libgomp1:armhf (15.2.0-5ubuntu1) ... 181s Setting up python3-tz (2025.2-3) ... 181s Setting up emacsen-common (3.0.8) ... 181s Setting up python3-cheroot (10.0.1+ds1-4) ... 181s Setting up python3-pycountry (24.6.1+ds1-1) ... 181s Setting up python3-xapian (1.4.29-1build1) ... 182s Setting up python3-cwcwidth (0.1.10-1build1) ... 182s Setting up python3-ruamel.yaml (0.18.10+ds-1) ... 182s Setting up python3-mistletoe (1.4.0-1) ... 182s Setting up libexttextcat-data (3.4.7-1ubuntu1) ... 182s Setting up libapr1t64:armhf (1.7.5-1) ... 182s Setting up libxslt1.1:armhf (1.1.43-0.1) ... 182s Setting up python3-dateutil (2.9.0-4) ... 182s Setting up python3-levenshtein (0.27.1-2) ... 182s Setting up libhunspell-1.7-0:armhf (1.7.2+really1.7.2-10build3) ... 182s Setting up python3-soupsieve (2.7-2) ... 183s Setting up python3-iniparse (0.5.1-1) ... 183s Setting up libaprutil1t64:armhf (1.6.3-3ubuntu2) ... 183s Setting up python3-vobject (0.9.8+dfsg-2) ... 183s Setting up gettext (0.23.1-2build2) ... 183s Setting up python3-phply (1.2.6-1) ... 183s Setting up dictionaries-common (1.30.10) ... 184s Setting up libserf-1-1:armhf (1.3.10-3ubuntu1) ... 184s Setting up python3-bs4 (4.13.4-3) ... 184s Setting up python3-lxml:armhf (6.0.1-1) ... 184s Setting up hunspell-en-us (1:2020.12.07-4) ... 184s Setting up libsvn1:armhf (1.14.5-3) ... 184s Setting up libenchant-2-2:armhf (2.8.2+dfsg1-3) ... 184s Setting up subversion (1.14.5-3) ... 184s Setting up python3-enchant (3.3.0~rc1-1) ... 184s Setting up python3-translate (3.15.1-1) ... 185s Setting up translate-toolkit (3.15.1-1) ... 185s Processing triggers for libc-bin (2.42-0ubuntu3) ... 185s Processing triggers for man-db (2.13.1-1) ... 186s Processing triggers for install-info (7.1.1-1ubuntu1) ... 186s Processing triggers for dictionaries-common (1.30.10) ... 194s autopkgtest [00:44:58]: test translate-toolkit: [----------------------- 196s ========= SMOKE TEST: /usr/bin/android2po =========== 196s Usage: android2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 196s 196s Convert Android string files to Gettext PO localization files. See: 196s http://docs.translatehouse.org/projects/translate- 196s toolkit/en/latest/commands/android2po.html for examples and usage 196s instructions. 196s 196s Options: 196s --version show program's version number and exit 196s -h, --help show this help message and exit 196s --manpage output a manpage based on the help 196s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 196s --errorlevel=ERRORLEVEL 196s show errorlevel as: none, message, exception, 196s traceback 196s -i INPUT, --input=INPUT 196s read from INPUT in xml format 196s -x EXCLUDE, --exclude=EXCLUDE 196s exclude names matching EXCLUDE from input paths 196s -o OUTPUT, --output=OUTPUT 196s write to OUTPUT in po, pot formats 196s -t TEMPLATE, --template=TEMPLATE 196s read from TEMPLATE in xml format 196s -S, --timestamp skip conversion if the output file has newer timestamp 196s --duplicates=DUPLICATESTYLE 196s what to do with duplicate strings (identical source 196s text): merge, msgctxt (default: 'msgctxt') 196s ========= SMOKE TEST: /usr/bin/build_tmdb =========== 196s usage: build_tmdb [-h] [-d TMDB_FILE] [-s SOURCE_LANG] -t TARGET_LANG 196s input files [input files ...] 196s 196s positional arguments: 196s input files 196s 196s options: 196s -h, --help show this help message and exit 196s -d, --tmdb TMDB_FILE translation memory database file (default: tm.db) 196s -s, --import-source-lang SOURCE_LANG 196s source language of translation files (default: en) 196s -t, --import-target-lang TARGET_LANG 196s target language of translation files 196s ========= SMOKE TEST: /usr/bin/csv2po =========== 196s 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] 196s 196s Convert Comma-Separated Value (.csv) files to Gettext PO localization files. 196s See: http://docs.translatehouse.org/projects/translate- 196s toolkit/en/latest/commands/csv2po.html for examples and usage instructions. 196s 196s Options: 196s --version show program's version number and exit 196s -h, --help show this help message and exit 196s --manpage output a manpage based on the help 196s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 196s --errorlevel=ERRORLEVEL 196s show errorlevel as: none, message, exception, 196s traceback 196s -i INPUT, --input=INPUT 196s read from INPUT in csv format 196s -x EXCLUDE, --exclude=EXCLUDE 196s exclude names matching EXCLUDE from input paths 196s -o OUTPUT, --output=OUTPUT 196s write to OUTPUT in po, pot formats 196s -t TEMPLATE, --template=TEMPLATE 196s read from TEMPLATE in po, pot, pot formats 196s -S, --timestamp skip conversion if the output file has newer timestamp 196s -P, --pot output PO Templates (.pot) rather than PO files (.po) 196s --charset=CHARSET set charset to decode from csv files 196s --columnorder=COLUMNORDER 196s specify the order and position of columns 196s (location,source,target,context) 196s --duplicates=DUPLICATESTYLE 196s what to do with duplicate strings (identical source 196s text): merge, msgctxt (default: 'msgctxt') 196s ========= SMOKE TEST: /usr/bin/csv2tbx =========== 196s Usage: csv2tbx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 196s 196s Convert Comma-Separated Value (.csv) files to a TermBase eXchange (.tbx) 196s glossary file. See: http://docs.translatehouse.org/projects/translate- 196s toolkit/en/latest/commands/csv2tbx.html for examples and usage instructions 196s 196s Options: 196s --version show program's version number and exit 196s -h, --help show this help message and exit 196s --manpage output a manpage based on the help 196s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 196s --errorlevel=ERRORLEVEL 196s show errorlevel as: none, message, exception, 196s traceback 196s -i INPUT, --input=INPUT 196s read from INPUT in csv format 196s -x EXCLUDE, --exclude=EXCLUDE 196s exclude names matching EXCLUDE from input paths 196s -o OUTPUT, --output=OUTPUT 196s write to OUTPUT in tbx format 196s -S, --timestamp skip conversion if the output file has newer timestamp 196s --charset=CHARSET set charset to decode from csv files 196s --columnorder=COLUMNORDER 196s specify the order and position of columns 196s (comment,source,target) 197s ========= SMOKE TEST: /usr/bin/dtd2po =========== 197s 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] 197s 197s Convert a Mozilla .dtd UTF-8 localization format to a Gettext PO localization 197s file. Uses the po and dtd modules, and the dtd2po convertor class which is in 197s this module You can convert back to .dtd using po2dtd.py. 197s 197s Options: 197s --version show program's version number and exit 197s -h, --help show this help message and exit 197s --manpage output a manpage based on the help 197s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 197s --errorlevel=ERRORLEVEL 197s show errorlevel as: none, message, exception, 197s traceback 197s -i INPUT, --input=INPUT 197s read from INPUT in dtd format 197s -x EXCLUDE, --exclude=EXCLUDE 197s exclude names matching EXCLUDE from input paths 197s -o OUTPUT, --output=OUTPUT 197s write to OUTPUT in po, pot formats 197s -t TEMPLATE, --template=TEMPLATE 197s read from TEMPLATE in dtd format 197s -S, --timestamp skip conversion if the output file has newer timestamp 197s -P, --pot output PO Templates (.pot) rather than PO files (.po) 197s --duplicates=DUPLICATESTYLE 197s what to do with duplicate strings (identical source 197s text): merge, msgctxt (default: 'msgctxt') 197s ========= SMOKE TEST: /usr/bin/flatxml2po =========== 197s Usage: flatxml2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 197s 197s Convert flat XML files to Gettext PO localization files. See: 197s http://docs.translatehouse.org/projects/translate- 197s toolkit/en/latest/commands/flatxml2po.html for examples and usage 197s instructions. 197s 197s Options: 197s --version show program's version number and exit 197s -h, --help show this help message and exit 197s --manpage output a manpage based on the help 197s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 197s --errorlevel=ERRORLEVEL 197s show errorlevel as: none, message, exception, 197s traceback 197s -i INPUT, --input=INPUT 197s read from INPUT in xml format 197s -x EXCLUDE, --exclude=EXCLUDE 197s exclude names matching EXCLUDE from input paths 197s -o OUTPUT, --output=OUTPUT 197s write to OUTPUT in po, pot formats 197s -S, --timestamp skip conversion if the output file has newer timestamp 197s -r ROOT, --root=ROOT name of the XML root element (default: "root") 197s -v VALUE, --value=VALUE 197s name of the XML value element (default: "str") 197s -k KEY, --key=KEY name of the XML key attribute (default: "key") 197s -n NS, --namespace=NS 197s XML namespace uri (default: None) 197s ========= SMOKE TEST: /usr/bin/html2po =========== 197s Usage: html2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 197s 197s Convert HTML files to Gettext PO localization files. See: 197s http://docs.translatehouse.org/projects/translate- 197s toolkit/en/latest/commands/html2po.html for examples and usage instructions. 197s 197s Options: 197s --version show program's version number and exit 197s -h, --help show this help message and exit 197s --manpage output a manpage based on the help 197s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 197s --errorlevel=ERRORLEVEL 197s show errorlevel as: none, message, exception, 197s traceback 197s -i INPUT, --input=INPUT 197s read from INPUT in htm, html, xhtml formats 197s -x EXCLUDE, --exclude=EXCLUDE 197s exclude names matching EXCLUDE from input paths 197s -o OUTPUT, --output=OUTPUT 197s write to OUTPUT in po, pot formats 197s -S, --timestamp skip conversion if the output file has newer timestamp 197s -P, --pot output PO Templates (.pot) rather than PO files (.po) 197s --keepcomments preserve html comments as translation notes in the 197s output 197s --duplicates=DUPLICATESTYLE 197s what to do with duplicate strings (identical source 197s text): merge, msgctxt (default: 'msgctxt') 197s --multifile=MULTIFILESTYLE 197s how to split po/pot files (single, toplevel or 197s onefile) 197s ========= SMOKE TEST: /usr/bin/ical2po =========== 198s 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] 198s 198s Convert iCalendar files to Gettext PO localization files. See: 198s http://docs.translatehouse.org/projects/translate- 198s toolkit/en/latest/commands/ical2po.html for examples and usage instructions. 198s 198s Options: 198s --version show program's version number and exit 198s -h, --help show this help message and exit 198s --manpage output a manpage based on the help 198s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 198s --errorlevel=ERRORLEVEL 198s show errorlevel as: none, message, exception, 198s traceback 198s -i INPUT, --input=INPUT 198s read from INPUT in ics format 198s -x EXCLUDE, --exclude=EXCLUDE 198s exclude names matching EXCLUDE from input paths 198s -o OUTPUT, --output=OUTPUT 198s write to OUTPUT in po, pot formats 198s -t TEMPLATE, --template=TEMPLATE 198s read from TEMPLATE in ics format 198s -S, --timestamp skip conversion if the output file has newer timestamp 198s -P, --pot output PO Templates (.pot) rather than PO files (.po) 198s --duplicates=DUPLICATESTYLE 198s what to do with duplicate strings (identical source 198s text): merge, msgctxt (default: 'msgctxt') 198s ========= SMOKE TEST: /usr/bin/idml2po =========== 198s Usage: idml2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 198s 198s Convert IDML files to PO localization files. 198s 198s Options: 198s --version show program's version number and exit 198s -h, --help show this help message and exit 198s --manpage output a manpage based on the help 198s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 198s --errorlevel=ERRORLEVEL 198s show errorlevel as: none, message, exception, 198s traceback 198s -i INPUT, --input=INPUT 198s read from INPUT in idml format 198s -x EXCLUDE, --exclude=EXCLUDE 198s exclude names matching EXCLUDE from input paths 198s -o OUTPUT, --output=OUTPUT 198s write to OUTPUT in po, pot formats 198s -S, --timestamp skip conversion if the output file has newer timestamp 198s ========= SMOKE TEST: /usr/bin/ini2po =========== 198s 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] 198s 198s Convert .ini files to Gettext PO localization files. See: 198s http://docs.translatehouse.org/projects/translate- 198s toolkit/en/latest/commands/ini2po.html for examples and usage instructions. 198s 198s Options: 198s --version show program's version number and exit 198s -h, --help show this help message and exit 198s --manpage output a manpage based on the help 198s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 198s --errorlevel=ERRORLEVEL 198s show errorlevel as: none, message, exception, 198s traceback 198s -i INPUT, --input=INPUT 198s read from INPUT in ini, isl, iss formats 198s -x EXCLUDE, --exclude=EXCLUDE 198s exclude names matching EXCLUDE from input paths 198s -o OUTPUT, --output=OUTPUT 198s write to OUTPUT in po, pot formats 198s -t TEMPLATE, --template=TEMPLATE 198s read from TEMPLATE in ini, isl, iss formats 198s -S, --timestamp skip conversion if the output file has newer timestamp 198s -P, --pot output PO Templates (.pot) rather than PO files (.po) 198s --duplicates=DUPLICATESTYLE 198s what to do with duplicate strings (identical source 198s text): merge, msgctxt (default: 'msgctxt') 198s ========= SMOKE TEST: /usr/bin/json2po =========== 198s 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] 198s 198s Convert JSON files to Gettext PO localization files. See: 198s http://docs.translatehouse.org/projects/translate- 198s toolkit/en/latest/commands/json2po.html for examples and usage instructions. 198s 198s Options: 198s --version show program's version number and exit 198s -h, --help show this help message and exit 198s --manpage output a manpage based on the help 198s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 198s --errorlevel=ERRORLEVEL 198s show errorlevel as: none, message, exception, 198s traceback 198s -i INPUT, --input=INPUT 198s read from INPUT in json format 198s -x EXCLUDE, --exclude=EXCLUDE 198s exclude names matching EXCLUDE from input paths 198s -o OUTPUT, --output=OUTPUT 198s write to OUTPUT in po, pot formats 198s -t TEMPLATE, --template=TEMPLATE 198s read from TEMPLATE in json format 198s -S, --timestamp skip conversion if the output file has newer timestamp 198s -P, --pot output PO Templates (.pot) rather than PO files (.po) 198s --filter=FILTER leaves to extract e.g. 'name,desc': (default: extract 198s everything) 198s --duplicates=DUPLICATESTYLE 198s what to do with duplicate strings (identical source 198s text): merge, msgctxt (default: 'msgctxt') 198s ========= SMOKE TEST: /usr/bin/md2po =========== 199s Usage: md2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 199s 199s Convert Markdown files to Gettext PO localization files. See: 199s http://docs.translatehouse.org/projects/translate- 199s toolkit/en/latest/commands/md2po.html for examples and usage instructions. 199s 199s Options: 199s --version show program's version number and exit 199s -h, --help show this help message and exit 199s --manpage output a manpage based on the help 199s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 199s --errorlevel=ERRORLEVEL 199s show errorlevel as: none, message, exception, 199s traceback 199s -i INPUT, --input=INPUT 199s read from INPUT in markdown, md, text, txt formats 199s -x EXCLUDE, --exclude=EXCLUDE 199s exclude names matching EXCLUDE from input paths 199s -o OUTPUT, --output=OUTPUT 199s write to OUTPUT in po, pot formats 199s -S, --timestamp skip conversion if the output file has newer timestamp 199s -P, --pot output PO Templates (.pot) rather than PO files (.po) 199s --duplicates=DUPLICATESTYLE 199s what to do with duplicate strings (identical source 199s text): merge, msgctxt (default: 'msgctxt') 199s --multifile=MULTIFILESTYLE 199s how to split po/pot files (single, toplevel or 199s onefile) 199s ========= SMOKE TEST: /usr/bin/moz2po =========== 199s 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] 199s 199s Convert Mozilla .dtd and .properties files to Gettext PO localization files. 199s See: http://docs.translatehouse.org/projects/translate- 199s toolkit/en/latest/commands/moz2po.html for examples and usage instructions. 199s 199s Options: 199s --version show program's version number and exit 199s -h, --help show this help message and exit 199s --manpage output a manpage based on the help 199s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 199s --errorlevel=ERRORLEVEL 199s show errorlevel as: none, message, exception, 199s traceback 199s -i INPUT, --input=INPUT 199s read from INPUT in *, dtd, inc, ini, it, js, lang, 199s manifest, properties, rdf formats 199s -x EXCLUDE, --exclude=EXCLUDE 199s exclude names matching EXCLUDE from input paths 199s -o OUTPUT, --output=OUTPUT 199s write to OUTPUT in *, dtd.po, dtd.pot, inc.po, 199s inc.pot, ini.po, ini.pot, it.po, it.pot, js, lang.po, 199s lang.pot, manifest, properties.po, properties.pot, rdf 199s formats 199s -t TEMPLATE, --template=TEMPLATE 199s read from TEMPLATE in *, dtd, inc, ini, it, js, lang, 199s manifest, properties, rdf formats 199s -S, --timestamp skip conversion if the output file has newer timestamp 199s -P, --pot output PO Templates (.pot) rather than PO files (.po) 199s --duplicates=DUPLICATESTYLE 199s what to do with duplicate strings (identical source 199s text): merge, msgctxt (default: 'msgctxt') 199s ========= SMOKE TEST: /usr/bin/mozlang2po =========== 199s Usage: mozlang2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 199s 199s Convert Mozilla .lang files to Gettext PO localization files. 199s 199s Options: 199s --version show program's version number and exit 199s -h, --help show this help message and exit 199s --manpage output a manpage based on the help 199s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 199s --errorlevel=ERRORLEVEL 199s show errorlevel as: none, message, exception, 199s traceback 199s -i INPUT, --input=INPUT 199s read from INPUT in lang format 199s -x EXCLUDE, --exclude=EXCLUDE 199s exclude names matching EXCLUDE from input paths 199s -o OUTPUT, --output=OUTPUT 199s write to OUTPUT in po, pot formats 199s -S, --timestamp skip conversion if the output file has newer timestamp 199s -P, --pot output PO Templates (.pot) rather than PO files (.po) 199s --encoding=ENCODING The encoding of the input file (default: UTF-8) 199s --duplicates=DUPLICATESTYLE 199s what to do with duplicate strings (identical source 199s text): merge, msgctxt (default: 'msgctxt') 199s ========= SMOKE TEST: /usr/bin/msghack =========== 199s Usage: /usr/bin/msghack [OPTION] file.po [ref.po] 199s This program can be used to alter .po files in ways no sane mind would think about. 199s -o result will be written to FILE 199s --invert invert a po file by switching msgid and msgstr 199s --master join any number of files in a master-formatted catalog 199s --empty empty the contents of the .po file, creating a .pot 199s --append append entries from ref.po that don't exist in file.po 199s 199s Note: It is just a replacement of msghack for backward support. 199s 199s ========= SMOKE TEST: /usr/bin/odf2xliff =========== 200s Usage: odf2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 200s 200s Convert OpenDocument (ODF) files to XLIFF localization files. See: 200s http://docs.translatehouse.org/projects/translate- 200s toolkit/en/latest/commands/odf2xliff.html for examples and usage instructions. 200s 200s Options: 200s --version show program's version number and exit 200s -h, --help show this help message and exit 200s --manpage output a manpage based on the help 200s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 200s --errorlevel=ERRORLEVEL 200s show errorlevel as: none, message, exception, 200s traceback 200s -i INPUT, --input=INPUT 200s read from INPUT in odc, odf, odg, odi, odm, odp, ods, 200s odt, otc, otf, otg, oth, oti, otp, ots, ott, sxw 200s formats 200s -x EXCLUDE, --exclude=EXCLUDE 200s exclude names matching EXCLUDE from input paths 200s -o OUTPUT, --output=OUTPUT 200s write to OUTPUT in xlf, xliff formats 200s -S, --timestamp skip conversion if the output file has newer timestamp 200s ========= SMOKE TEST: /usr/bin/oo2po =========== 200s Usage: oo2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 200s 200s Convert an OpenOffice.org (SDF) localization file to Gettext PO localization 200s files. See: http://docs.translatehouse.org/projects/translate- 200s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 200s 200s Options: 200s --version show program's version number and exit 200s -h, --help show this help message and exit 200s --manpage output a manpage based on the help 200s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 200s --errorlevel=ERRORLEVEL 200s show errorlevel as: none, message, exception, 200s traceback 200s -i INPUT, --input=INPUT 200s read from INPUT in oo, sdf formats 200s -x EXCLUDE, --exclude=EXCLUDE 200s exclude names matching EXCLUDE from input paths 200s -o OUTPUT, --output=OUTPUT 200s write to OUTPUT in po, pot formats 200s -S, --timestamp skip conversion if the output file has newer timestamp 200s -P, --pot output PO Templates (.pot) rather than PO files (.po) 200s -l LANG, --language=LANG 200s set target language to extract from oo file (e.g. af- 200s ZA) 200s --source-language=LANG 200s set source language code (default en-US) 200s --nonrecursiveinput don't treat the input oo as a recursive store 200s --duplicates=DUPLICATESTYLE 200s what to do with duplicate strings (identical source 200s text): merge, msgctxt (default: 'msgctxt') 200s --multifile=MULTIFILESTYLE 200s how to split po/pot files (single, toplevel or 200s onefile) 200s ========= SMOKE TEST: /usr/bin/oo2xliff =========== 200s Usage: oo2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 200s 200s Convert an OpenOffice.org (SDF) localization file to XLIFF localization 200s files. See: http://docs.translatehouse.org/projects/translate- 200s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 200s 200s Options: 200s --version show program's version number and exit 200s -h, --help show this help message and exit 200s --manpage output a manpage based on the help 200s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 200s --errorlevel=ERRORLEVEL 200s show errorlevel as: none, message, exception, 200s traceback 200s -i INPUT, --input=INPUT 200s read from INPUT in oo, sdf formats 200s -x EXCLUDE, --exclude=EXCLUDE 200s exclude names matching EXCLUDE from input paths 200s -o OUTPUT, --output=OUTPUT 200s write to OUTPUT in xlf, xliff formats 200s -S, --timestamp skip conversion if the output file has newer timestamp 200s -l LANG, --language=LANG 200s set target language to extract from oo file (e.g. af- 200s ZA) 200s --source-language=LANG 200s set source language code (default en-US) 200s --nonrecursiveinput don't treat the input oo as a recursive store 200s --duplicates=DUPLICATESTYLE 200s what to do with duplicate strings (identical source 200s text): merge, msgctxt (default: 'msgctxt') 200s --multifile=MULTIFILESTYLE 200s how to split po/pot files (single, toplevel or 200s onefile) 200s ========= SMOKE TEST: /usr/bin/php2po =========== 200s 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] 200s 200s Convert PHP localization files to Gettext PO localization files. See: 200s http://docs.translatehouse.org/projects/translate- 200s toolkit/en/latest/commands/php2po.html for examples and usage instructions. 200s 200s Options: 200s --version show program's version number and exit 200s -h, --help show this help message and exit 200s --manpage output a manpage based on the help 200s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 200s --errorlevel=ERRORLEVEL 200s show errorlevel as: none, message, exception, 200s traceback 200s -i INPUT, --input=INPUT 200s read from INPUT in html, php formats 200s -x EXCLUDE, --exclude=EXCLUDE 200s exclude names matching EXCLUDE from input paths 200s -o OUTPUT, --output=OUTPUT 200s write to OUTPUT in po, pot formats 200s -t TEMPLATE, --template=TEMPLATE 200s read from TEMPLATE in html, php formats 200s -S, --timestamp skip conversion if the output file has newer timestamp 200s -P, --pot output PO Templates (.pot) rather than PO files (.po) 200s --duplicates=DUPLICATESTYLE 200s what to do with duplicate strings (identical source 200s text): merge, msgctxt (default: 'msgctxt') 200s ========= SMOKE TEST: /usr/bin/phppo2pypo =========== 200s Usage: phppo2pypo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 200s 200s Convert PHP format .po files to Python format .po files. 200s 200s Options: 200s --version show program's version number and exit 200s -h, --help show this help message and exit 200s --manpage output a manpage based on the help 200s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 200s --errorlevel=ERRORLEVEL 200s show errorlevel as: none, message, exception, 200s traceback 200s -i INPUT, --input=INPUT 200s read from INPUT in po, pot formats 200s -x EXCLUDE, --exclude=EXCLUDE 200s exclude names matching EXCLUDE from input paths 200s -o OUTPUT, --output=OUTPUT 200s write to OUTPUT in po, pot formats 200s -S, --timestamp skip conversion if the output file has newer timestamp 201s ========= SMOKE TEST: /usr/bin/po2csv =========== 201s Usage: po2csv [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 201s 201s Convert Gettext PO localization files to Comma-Separated Value (.csv) files. 201s See: http://docs.translatehouse.org/projects/translate- 201s toolkit/en/latest/commands/csv2po.html for examples and usage instructions. 201s 201s Options: 201s --version show program's version number and exit 201s -h, --help show this help message and exit 201s --manpage output a manpage based on the help 201s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 201s --errorlevel=ERRORLEVEL 201s show errorlevel as: none, message, exception, 201s traceback 201s -i INPUT, --input=INPUT 201s read from INPUT in po, pot formats 201s -x EXCLUDE, --exclude=EXCLUDE 201s exclude names matching EXCLUDE from input paths 201s -o OUTPUT, --output=OUTPUT 201s write to OUTPUT in csv format 201s -S, --timestamp skip conversion if the output file has newer timestamp 201s --columnorder=COLUMNORDER 201s specify the order and position of columns 201s (location,source,target,context) 201s ========= SMOKE TEST: /usr/bin/po2dtd =========== 201s Usage: po2dtd [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 201s 201s Converts a Gettext PO file to a UTF-8 encoded Mozilla .dtd file. .. note: 201s Conversion is either done using a template plus PO file or just using the 201s .po file. 201s 201s Options: 201s --version show program's version number and exit 201s -h, --help show this help message and exit 201s --manpage output a manpage based on the help 201s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 201s --errorlevel=ERRORLEVEL 201s show errorlevel as: none, message, exception, 201s traceback 201s -i INPUT, --input=INPUT 201s read from INPUT in po, pot formats 201s -x EXCLUDE, --exclude=EXCLUDE 201s exclude names matching EXCLUDE from input paths 201s -o OUTPUT, --output=OUTPUT 201s write to OUTPUT in dtd format 201s -t TEMPLATE, --template=TEMPLATE 201s read from TEMPLATE in dtd format 201s -S, --timestamp skip conversion if the output file has newer timestamp 201s --threshold=PERCENT only convert files where the translation completion is 201s above PERCENT 201s --fuzzy use translations marked fuzzy 201s --nofuzzy don't use translations marked fuzzy (default) 201s --removeuntranslated remove untranslated strings from output 201s ========= SMOKE TEST: /usr/bin/po2flatxml =========== 201s Usage: po2flatxml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 201s 201s Convert Gettext PO localization files to flat XML files. See: 201s http://docs.translatehouse.org/projects/translate- 201s toolkit/en/latest/commands/flatxml2po.html for examples and usage 201s instructions. 201s 201s Options: 201s --version show program's version number and exit 201s -h, --help show this help message and exit 201s --manpage output a manpage based on the help 201s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 201s --errorlevel=ERRORLEVEL 201s show errorlevel as: none, message, exception, 201s traceback 201s -i INPUT, --input=INPUT 201s read from INPUT in po, pot formats 201s -x EXCLUDE, --exclude=EXCLUDE 201s exclude names matching EXCLUDE from input paths 201s -o OUTPUT, --output=OUTPUT 201s write to OUTPUT in xml format 201s -t TEMPLATE, --template=TEMPLATE 201s read from TEMPLATE in xml format 201s -S, --timestamp skip conversion if the output file has newer timestamp 201s -r ROOT, --root=ROOT name of the XML root element (default: "root") 201s -v VALUE, --value=VALUE 201s name of the XML value element (default: "str") 201s -k KEY, --key=KEY name of the XML key attribute (default: "key") 201s -n NS, --namespace=NS 201s XML namespace uri (default: None) 201s -w INDENT, --indent=INDENT 201s indent width in spaces, 0 for no indent (default: 2) 201s ========= SMOKE TEST: /usr/bin/po2html =========== 201s Usage: po2html [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 201s 201s Translate HTML files using Gettext PO localization files. See: 201s http://docs.translatehouse.org/projects/translate- 201s toolkit/en/latest/commands/html2po.html for examples and usage instructions. 201s 201s Options: 201s --version show program's version number and exit 201s -h, --help show this help message and exit 201s --manpage output a manpage based on the help 201s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 201s --errorlevel=ERRORLEVEL 201s show errorlevel as: none, message, exception, 201s traceback 201s -i INPUT, --input=INPUT 201s read from INPUT in po, pot formats 201s -x EXCLUDE, --exclude=EXCLUDE 201s exclude names matching EXCLUDE from input paths 201s -o OUTPUT, --output=OUTPUT 201s write to OUTPUT in htm, html, xhtml formats 201s -t TEMPLATE, --template=TEMPLATE 201s read from TEMPLATE in htm, html, xhtml formats 201s -S, --timestamp skip conversion if the output file has newer timestamp 201s --threshold=PERCENT only convert files where the translation completion is 201s above PERCENT 201s --fuzzy use translations marked fuzzy 201s --nofuzzy don't use translations marked fuzzy (default) 201s ========= SMOKE TEST: /usr/bin/po2ical =========== 202s Usage: po2ical [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 202s 202s Convert Gettext PO localization files to iCalendar files. See: 202s http://docs.translatehouse.org/projects/translate- 202s toolkit/en/latest/commands/ical2po.html for examples and usage instructions. 202s 202s Options: 202s --version show program's version number and exit 202s -h, --help show this help message and exit 202s --manpage output a manpage based on the help 202s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 202s --errorlevel=ERRORLEVEL 202s show errorlevel as: none, message, exception, 202s traceback 202s -i INPUT, --input=INPUT 202s read from INPUT in po, pot formats 202s -x EXCLUDE, --exclude=EXCLUDE 202s exclude names matching EXCLUDE from input paths 202s -o OUTPUT, --output=OUTPUT 202s write to OUTPUT in ics format 202s -t TEMPLATE, --template=TEMPLATE 202s read from TEMPLATE in ics format 202s -S, --timestamp skip conversion if the output file has newer timestamp 202s --threshold=PERCENT only convert files where the translation completion is 202s above PERCENT 202s --fuzzy use translations marked fuzzy 202s --nofuzzy don't use translations marked fuzzy (default) 202s ========= SMOKE TEST: /usr/bin/po2idml =========== 202s Usage: po2idml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 202s 202s Takes an IDML template file and a PO file containing translations of strings 202s in the IDML template. It creates a new IDML file using the translations of the 202s PO file. 202s 202s Options: 202s --version show program's version number and exit 202s -h, --help show this help message and exit 202s --manpage output a manpage based on the help 202s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 202s --errorlevel=ERRORLEVEL 202s show errorlevel as: none, message, exception, 202s traceback 202s -i INPUT, --input=INPUT 202s read from INPUT in po, pot formats 202s -x EXCLUDE, --exclude=EXCLUDE 202s exclude names matching EXCLUDE from input paths 202s -o OUTPUT, --output=OUTPUT 202s write to OUTPUT in idml format 202s -t TEMPLATE, --template=TEMPLATE 202s read from TEMPLATE in idml format 202s -S, --timestamp skip conversion if the output file has newer timestamp 202s ========= SMOKE TEST: /usr/bin/po2ini =========== 202s Usage: po2ini [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 202s 202s Convert Gettext PO localization files to .ini files. See: 202s http://docs.translatehouse.org/projects/translate- 202s toolkit/en/latest/commands/ini2po.html for examples and usage instructions. 202s 202s Options: 202s --version show program's version number and exit 202s -h, --help show this help message and exit 202s --manpage output a manpage based on the help 202s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 202s --errorlevel=ERRORLEVEL 202s show errorlevel as: none, message, exception, 202s traceback 202s -i INPUT, --input=INPUT 202s read from INPUT in po, pot formats 202s -x EXCLUDE, --exclude=EXCLUDE 202s exclude names matching EXCLUDE from input paths 202s -o OUTPUT, --output=OUTPUT 202s write to OUTPUT in ini, isl formats 202s -t TEMPLATE, --template=TEMPLATE 202s read from TEMPLATE in ini, isl formats 202s -S, --timestamp skip conversion if the output file has newer timestamp 202s --threshold=PERCENT only convert files where the translation completion is 202s above PERCENT 202s --fuzzy use translations marked fuzzy 202s --nofuzzy don't use translations marked fuzzy (default) 202s ========= SMOKE TEST: /usr/bin/po2json =========== 202s Usage: po2json [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 202s 202s Convert Gettext PO localization files to JSON files. See: 202s http://docs.translatehouse.org/projects/translate- 202s toolkit/en/latest/commands/json2po.html for examples and usage instructions. 202s 202s Options: 202s --version show program's version number and exit 202s -h, --help show this help message and exit 202s --manpage output a manpage based on the help 202s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 202s --errorlevel=ERRORLEVEL 202s show errorlevel as: none, message, exception, 202s traceback 202s -i INPUT, --input=INPUT 202s read from INPUT in po, pot formats 202s -x EXCLUDE, --exclude=EXCLUDE 202s exclude names matching EXCLUDE from input paths 202s -o OUTPUT, --output=OUTPUT 202s write to OUTPUT in json format 202s -t TEMPLATE, --template=TEMPLATE 202s read from TEMPLATE in json format 202s -S, --timestamp skip conversion if the output file has newer timestamp 202s --threshold=PERCENT only convert files where the translation completion is 202s above PERCENT 202s --fuzzy use translations marked fuzzy 202s --nofuzzy don't use translations marked fuzzy (default) 202s --removeuntranslated remove untranslated strings from output 202s ========= SMOKE TEST: /usr/bin/po2md =========== 203s Usage: po2md [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 203s 203s Translate Markdown files using Gettext PO localization files. See: 203s http://docs.translatehouse.org/projects/translate- 203s toolkit/en/latest/commands/md2po.html for examples and usage instructions. 203s 203s Options: 203s --version show program's version number and exit 203s -h, --help show this help message and exit 203s --manpage output a manpage based on the help 203s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 203s --errorlevel=ERRORLEVEL 203s show errorlevel as: none, message, exception, 203s traceback 203s -i INPUT, --input=INPUT 203s read from INPUT in po, pot formats 203s -x EXCLUDE, --exclude=EXCLUDE 203s exclude names matching EXCLUDE from input paths 203s -o OUTPUT, --output=OUTPUT 203s write to OUTPUT in markdown, md, text, txt formats 203s -t TEMPLATE, --template=TEMPLATE 203s read from TEMPLATE in markdown, md, text, txt formats 203s -S, --timestamp skip conversion if the output file has newer timestamp 203s -m MAXLENGTH, --maxlinelength=MAXLENGTH 203s reflow (word wrap) the output to the given maximum 203s line length. set to 0 to disable 203s --threshold=PERCENT only convert files where the translation completion is 203s above PERCENT 203s --fuzzy use translations marked fuzzy 203s --nofuzzy don't use translations marked fuzzy (default) 203s ========= SMOKE TEST: /usr/bin/po2moz =========== 203s Usage: po2moz [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 203s 203s Convert Gettext PO localization files to Mozilla .dtd and .properties files. 203s See: http://docs.translatehouse.org/projects/translate- 203s toolkit/en/latest/commands/moz2po.html for examples and usage instructions. 203s 203s Options: 203s --version show program's version number and exit 203s -h, --help show this help message and exit 203s --manpage output a manpage based on the help 203s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 203s --errorlevel=ERRORLEVEL 203s show errorlevel as: none, message, exception, 203s traceback 203s -i INPUT, --input=INPUT 203s read from INPUT in *, dtd.po, dtd.pot, inc.po, 203s inc.pot, ini.po, ini.pot, it.po, it.pot, js, lang.po, 203s lang.pot, manifest, properties.po, properties.pot, rdf 203s formats 203s -x EXCLUDE, --exclude=EXCLUDE 203s exclude names matching EXCLUDE from input paths 203s -o OUTPUT, --output=OUTPUT 203s write to OUTPUT in *, dtd, inc, ini, it, js, lang, 203s manifest, properties, rdf formats 203s -t TEMPLATE, --template=TEMPLATE 203s read from TEMPLATE in *, dtd, inc, ini, it, js, lang, 203s manifest, properties, rdf formats 203s -S, --timestamp skip conversion if the output file has newer timestamp 203s -l LOCALE, --locale=LOCALE 203s set output locale (required as this sets the directory 203s names) 203s --threshold=PERCENT only convert files where the translation completion is 203s above PERCENT 203s --fuzzy use translations marked fuzzy 203s --nofuzzy don't use translations marked fuzzy (default) 203s --removeuntranslated remove untranslated strings from output 203s ========= SMOKE TEST: /usr/bin/po2mozlang =========== 203s Usage: po2mozlang [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 203s 203s Convert Gettext PO localization files to Mozilla .lang files. 203s 203s Options: 203s --version show program's version number and exit 203s -h, --help show this help message and exit 203s --manpage output a manpage based on the help 203s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 203s --errorlevel=ERRORLEVEL 203s show errorlevel as: none, message, exception, 203s traceback 203s -i INPUT, --input=INPUT 203s read from INPUT in po, pot formats 203s -x EXCLUDE, --exclude=EXCLUDE 203s exclude names matching EXCLUDE from input paths 203s -o OUTPUT, --output=OUTPUT 203s write to OUTPUT in lang format 203s -t TEMPLATE, --template=TEMPLATE 203s read from TEMPLATE in lang format 203s -S, --timestamp skip conversion if the output file has newer timestamp 203s --mark-active mark the file as active 203s --threshold=PERCENT only convert files where the translation completion is 203s above PERCENT 203s --fuzzy use translations marked fuzzy 203s --nofuzzy don't use translations marked fuzzy (default) 203s ========= SMOKE TEST: /usr/bin/po2oo =========== 203s Usage: po2oo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 203s 203s Convert Gettext PO localization files to an OpenOffice.org (SDF) localization 203s file. See: http://docs.translatehouse.org/projects/translate- 203s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 203s 203s Options: 203s --version show program's version number and exit 203s -h, --help show this help message and exit 203s --manpage output a manpage based on the help 203s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 203s --errorlevel=ERRORLEVEL 203s show errorlevel as: none, message, exception, 203s traceback 203s -i INPUT, --input=INPUT 203s read from INPUT in po, pot, xlf, xliff formats 203s -x EXCLUDE, --exclude=EXCLUDE 203s exclude names matching EXCLUDE from input paths 203s -o OUTPUT, --output=OUTPUT 203s write to OUTPUT in oo, sdf formats 203s -t TEMPLATE, --template=TEMPLATE 203s read from TEMPLATE in oo, sdf formats 203s -S, --timestamp skip conversion if the output file has newer timestamp 203s -l LANG, --language=LANG 203s set target language code (e.g. af-ZA) [required] 203s --source-language=LANG 203s set source language code (default en-US) 203s -T, --keeptimestamp don't change the timestamps of the strings 203s --nonrecursiveoutput don't treat the output oo as a recursive store 203s --nonrecursivetemplate 203s don't treat the template oo as a recursive store 203s --skipsource don't output the source language, but fallback to it 203s where needed 203s --filteraction=ACTION 203s action on pofilter failure: none (default), warn, 203s exclude-serious, exclude-all 203s --threshold=PERCENT only convert files where the translation completion is 203s above PERCENT 203s --fuzzy use translations marked fuzzy 203s --nofuzzy don't use translations marked fuzzy (default) 203s --multifile=MULTIFILESTYLE 203s how to split po/pot files (single, toplevel or 203s onefile) 204s ========= SMOKE TEST: /usr/bin/po2php =========== 204s Usage: po2php [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 204s 204s Convert Gettext PO localization files to PHP localization files. See: 204s http://docs.translatehouse.org/projects/translate- 204s toolkit/en/latest/commands/php2po.html for examples and usage instructions. 204s 204s Options: 204s --version show program's version number and exit 204s -h, --help show this help message and exit 204s --manpage output a manpage based on the help 204s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 204s --errorlevel=ERRORLEVEL 204s show errorlevel as: none, message, exception, 204s traceback 204s -i INPUT, --input=INPUT 204s read from INPUT in po, pot formats 204s -x EXCLUDE, --exclude=EXCLUDE 204s exclude names matching EXCLUDE from input paths 204s -o OUTPUT, --output=OUTPUT 204s write to OUTPUT in html, php formats 204s -t TEMPLATE, --template=TEMPLATE 204s read from TEMPLATE in html, php formats 204s -S, --timestamp skip conversion if the output file has newer timestamp 204s --threshold=PERCENT only convert files where the translation completion is 204s above PERCENT 204s --fuzzy use translations marked fuzzy 204s --nofuzzy don't use translations marked fuzzy (default) 204s ========= SMOKE TEST: /usr/bin/po2prop =========== 204s Usage: po2prop [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 204s 204s Convert Gettext PO localization files to Java/Mozilla .properties files. 204s See: http://docs.translatehouse.org/projects/translate- 204s toolkit/en/latest/commands/prop2po.html for examples and usage instructions. 204s 204s Options: 204s --version show program's version number and exit 204s -h, --help show this help message and exit 204s --manpage output a manpage based on the help 204s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 204s --errorlevel=ERRORLEVEL 204s show errorlevel as: none, message, exception, 204s traceback 204s -i INPUT, --input=INPUT 204s read from INPUT in po, pot formats 204s -x EXCLUDE, --exclude=EXCLUDE 204s exclude names matching EXCLUDE from input paths 204s -o OUTPUT, --output=OUTPUT 204s write to OUTPUT in lang, properties, strings formats 204s -t TEMPLATE, --template=TEMPLATE 204s read from TEMPLATE in lang, properties, strings 204s formats 204s -S, --timestamp skip conversion if the output file has newer timestamp 204s --personality=TYPE override the input file format: java, java-utf8, java- 204s utf16, xwiki, flex, mozilla, gaia, gwt, skype, 204s strings, strings-utf8, joomla (for .properties files, 204s default: java) 204s --encoding=ENCODING override the encoding set by the personality 204s --threshold=PERCENT only convert files where the translation completion is 204s above PERCENT 204s --fuzzy use translations marked fuzzy 204s --nofuzzy don't use translations marked fuzzy (default) 204s --removeuntranslated remove untranslated strings from output 204s ========= SMOKE TEST: /usr/bin/po2rc =========== 204s Usage: po2rc [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 204s 204s Convert Gettext PO localization files back to Windows Resource (.rc) files. 204s See: http://docs.translatehouse.org/projects/translate- 204s toolkit/en/latest/commands/rc2po.html for examples and usage instructions. 204s 204s Options: 204s --version show program's version number and exit 204s -h, --help show this help message and exit 204s --manpage output a manpage based on the help 204s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 204s --errorlevel=ERRORLEVEL 204s show errorlevel as: none, message, exception, 204s traceback 204s -i INPUT, --input=INPUT 204s read from INPUT in po, pot formats 204s -x EXCLUDE, --exclude=EXCLUDE 204s exclude names matching EXCLUDE from input paths 204s -o OUTPUT, --output=OUTPUT 204s write to OUTPUT in rc format 204s -t TEMPLATE, --template=TEMPLATE 204s read from TEMPLATE in rc format 204s -S, --timestamp skip conversion if the output file has newer timestamp 204s --charset=CHARSET charset to use to decode the template RC files 204s (default: utf-8) 204s --charset-output=CHARSET 204s charset to use to encode the RC file (default: auto) 204s -l LANG, --lang=LANG LANG entry 204s --sublang=SUBLANG SUBLANG entry (default: SUBLANG_DEFAULT) 204s --threshold=PERCENT only convert files where the translation completion is 204s above PERCENT 204s --fuzzy use translations marked fuzzy 204s --nofuzzy don't use translations marked fuzzy (default) 205s ========= SMOKE TEST: /usr/bin/po2resx =========== 205s Usage: po2resx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 205s 205s Convert Gettext PO localisation files to .Net Resource (.resx) files. See: 205s http://docs.translatehouse.org/projects/translate- 205s toolkit/en/latest/commands/resx2po.html for examples and usage instructions. 205s 205s Options: 205s --version show program's version number and exit 205s -h, --help show this help message and exit 205s --manpage output a manpage based on the help 205s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 205s --errorlevel=ERRORLEVEL 205s show errorlevel as: none, message, exception, 205s traceback 205s -i INPUT, --input=INPUT 205s read from INPUT in po, pot formats 205s -x EXCLUDE, --exclude=EXCLUDE 205s exclude names matching EXCLUDE from input paths 205s -o OUTPUT, --output=OUTPUT 205s write to OUTPUT in resx format 205s -t TEMPLATE, --template=TEMPLATE 205s read from TEMPLATE in resx format 205s -S, --timestamp skip conversion if the output file has newer timestamp 205s --fuzzy use translations marked fuzzy 205s --nofuzzy don't use translations marked fuzzy (default) 205s ========= SMOKE TEST: /usr/bin/po2sub =========== 205s Usage: po2sub [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 205s 205s Convert Gettext PO localization files to subtitle files. See: 205s http://docs.translatehouse.org/projects/translate- 205s toolkit/en/latest/commands/sub2po.html for examples and usage instructions. 205s 205s Options: 205s --version show program's version number and exit 205s -h, --help show this help message and exit 205s --manpage output a manpage based on the help 205s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 205s --errorlevel=ERRORLEVEL 205s show errorlevel as: none, message, exception, 205s traceback 205s -i INPUT, --input=INPUT 205s read from INPUT in po, pot formats 205s -x EXCLUDE, --exclude=EXCLUDE 205s exclude names matching EXCLUDE from input paths 205s -o OUTPUT, --output=OUTPUT 205s write to OUTPUT in ass, srt, ssa, sub formats 205s -t TEMPLATE, --template=TEMPLATE 205s read from TEMPLATE in ass, srt, ssa, sub formats 205s -S, --timestamp skip conversion if the output file has newer timestamp 205s --threshold=PERCENT only convert files where the translation completion is 205s above PERCENT 205s --fuzzy use translations marked fuzzy 205s --nofuzzy don't use translations marked fuzzy (default) 205s ========= SMOKE TEST: /usr/bin/po2symb =========== 205s Usage: po2symb [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 205s 205s Convert Gettext PO localization files to Symbian translation files. See: 205s http://docs.translatehouse.org/projects/translate- 205s toolkit/en/latest/commands/symb2po.html for examples and usage instructions. 205s 205s Options: 205s --version show program's version number and exit 205s -h, --help show this help message and exit 205s --manpage output a manpage based on the help 205s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 205s --errorlevel=ERRORLEVEL 205s show errorlevel as: none, message, exception, 205s traceback 205s -i INPUT, --input=INPUT 205s read from INPUT in po, pot formats 205s -x EXCLUDE, --exclude=EXCLUDE 205s exclude names matching EXCLUDE from input paths 205s -o OUTPUT, --output=OUTPUT 205s write to OUTPUT in r0 format 205s -t TEMPLATE, --template=TEMPLATE 205s read from TEMPLATE in 205s -S, --timestamp skip conversion if the output file has newer timestamp 205s --duplicates=DUPLICATESTYLE 205s what to do with duplicate strings (identical source 205s text): merge, msgctxt (default: 'msgctxt') 205s ========= SMOKE TEST: /usr/bin/po2tiki =========== 205s Usage: po2tiki [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 205s 205s Convert Gettext PO files to TikiWiki's language.php files. See: 205s http://docs.translatehouse.org/projects/translate- 205s toolkit/en/latest/commands/tiki2po.html for examples and usage instructions. 205s 205s Options: 205s --version show program's version number and exit 205s -h, --help show this help message and exit 205s --manpage output a manpage based on the help 205s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 205s --errorlevel=ERRORLEVEL 205s show errorlevel as: none, message, exception, 205s traceback 205s -i INPUT, --input=INPUT 205s read from INPUT in po, pot formats 205s -x EXCLUDE, --exclude=EXCLUDE 205s exclude names matching EXCLUDE from input paths 205s -o OUTPUT, --output=OUTPUT 205s write to OUTPUT in tiki format 205s -S, --timestamp skip conversion if the output file has newer timestamp 205s ========= SMOKE TEST: /usr/bin/po2tmx =========== 205s Usage: po2tmx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 205s 205s Convert Gettext PO localization files to a TMX (Translation Memory eXchange) 205s file. See: http://docs.translatehouse.org/projects/translate- 205s toolkit/en/latest/commands/po2tmx.html for examples and usage instructions. 205s 205s Options: 205s --version show program's version number and exit 205s -h, --help show this help message and exit 205s --manpage output a manpage based on the help 205s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 205s --errorlevel=ERRORLEVEL 205s show errorlevel as: none, message, exception, 205s traceback 205s -i INPUT, --input=INPUT 205s read from INPUT in po, pot formats 205s -x EXCLUDE, --exclude=EXCLUDE 205s exclude names matching EXCLUDE from input paths 205s -o OUTPUT, --output=OUTPUT 205s write to OUTPUT in tmx format 205s -S, --timestamp skip conversion if the output file has newer timestamp 205s -l LANG, --language=LANG 205s set target language code (e.g. af-ZA) [required] 205s --source-language=LANG 205s set source language code (default: en) 205s --comments=COMMENT set default comment import: none, source, type or 205s others (default: none) 206s ========= SMOKE TEST: /usr/bin/po2ts =========== 206s Usage: po2ts [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 206s 206s Convert Gettext PO localization files to Qt Linguist (.ts) files. See: 206s http://docs.translatehouse.org/projects/translate- 206s toolkit/en/latest/commands/ts2po.html for examples and usage instructions. 206s 206s Options: 206s --version show program's version number and exit 206s -h, --help show this help message and exit 206s --manpage output a manpage based on the help 206s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 206s --errorlevel=ERRORLEVEL 206s show errorlevel as: none, message, exception, 206s traceback 206s -i INPUT, --input=INPUT 206s read from INPUT in po, pot formats 206s -x EXCLUDE, --exclude=EXCLUDE 206s exclude names matching EXCLUDE from input paths 206s -o OUTPUT, --output=OUTPUT 206s write to OUTPUT in ts format 206s -t TEMPLATE, --template=TEMPLATE 206s read from TEMPLATE in ts format 206s -S, --timestamp skip conversion if the output file has newer timestamp 206s -c CONTEXT, --context=CONTEXT 206s use supplied context instead of the one in the .po 206s file comment 206s ========= SMOKE TEST: /usr/bin/po2txt =========== 206s Usage: po2txt [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 206s 206s Convert Gettext PO localization files to plain text (.txt) files. See: 206s http://docs.translatehouse.org/projects/translate- 206s toolkit/en/latest/commands/txt2po.html for examples and usage instructions. 206s 206s Options: 206s --version show program's version number and exit 206s -h, --help show this help message and exit 206s --manpage output a manpage based on the help 206s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 206s --errorlevel=ERRORLEVEL 206s show errorlevel as: none, message, exception, 206s traceback 206s -i INPUT, --input=INPUT 206s read from INPUT in po, pot, xlf, xliff formats 206s -x EXCLUDE, --exclude=EXCLUDE 206s exclude names matching EXCLUDE from input paths 206s -o OUTPUT, --output=OUTPUT 206s write to OUTPUT in txt format 206s -t TEMPLATE, --template=TEMPLATE 206s read from TEMPLATE in txt format 206s -S, --timestamp skip conversion if the output file has newer timestamp 206s --encoding=ENCODING The encoding of the template file (default: UTF-8) 206s -w WRAP, --wrap=WRAP set number of columns to wrap text at 206s --threshold=PERCENT only convert files where the translation completion is 206s above PERCENT 206s --fuzzy use translations marked fuzzy 206s --nofuzzy don't use translations marked fuzzy (default) 206s ========= SMOKE TEST: /usr/bin/po2web2py =========== 206s Usage: po2web2py [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 206s 206s Convert GNU/gettext PO files to web2py translation dictionaries (.py). See: 206s http://docs.translatehouse.org/projects/translate- 206s toolkit/en/latest/commands/web2py2po.html for examples and usage instructions. 206s 206s Options: 206s --version show program's version number and exit 206s -h, --help show this help message and exit 206s --manpage output a manpage based on the help 206s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 206s --errorlevel=ERRORLEVEL 206s show errorlevel as: none, message, exception, 206s traceback 206s -i INPUT, --input=INPUT 206s read from INPUT in po, pot formats 206s -x EXCLUDE, --exclude=EXCLUDE 206s exclude names matching EXCLUDE from input paths 206s -o OUTPUT, --output=OUTPUT 206s write to OUTPUT in py format 206s -S, --timestamp skip conversion if the output file has newer timestamp 206s --threshold=PERCENT only convert files where the translation completion is 206s above PERCENT 206s --fuzzy use translations marked fuzzy 206s --nofuzzy don't use translations marked fuzzy (default) 206s ========= SMOKE TEST: /usr/bin/po2wordfast =========== 206s Usage: po2wordfast [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 206s 206s Convert Gettext PO localization files to a Wordfast translation memory file. 206s See: http://docs.translatehouse.org/projects/translate- 206s toolkit/en/latest/commands/po2wordfast.html for examples and usage 206s instructions. 206s 206s Options: 206s --version show program's version number and exit 206s -h, --help show this help message and exit 206s --manpage output a manpage based on the help 206s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 206s --errorlevel=ERRORLEVEL 206s show errorlevel as: none, message, exception, 206s traceback 206s -i INPUT, --input=INPUT 206s read from INPUT in po, pot formats 206s -x EXCLUDE, --exclude=EXCLUDE 206s exclude names matching EXCLUDE from input paths 206s -o OUTPUT, --output=OUTPUT 206s write to OUTPUT in txt format 206s -S, --timestamp skip conversion if the output file has newer timestamp 206s -l LANG, --language=LANG 206s set target language code (e.g. af-ZA) [required] 206s --source-language=LANG 206s set source language code (default: en) 206s ========= SMOKE TEST: /usr/bin/po2xliff =========== 206s Usage: po2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 206s 206s Convert Gettext PO localization files to XLIFF localization files. See: 206s http://docs.translatehouse.org/projects/translate- 206s toolkit/en/latest/commands/xliff2po.html for examples and usage instructions. 206s 206s Options: 206s --version show program's version number and exit 206s -h, --help show this help message and exit 206s --manpage output a manpage based on the help 206s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 206s --errorlevel=ERRORLEVEL 206s show errorlevel as: none, message, exception, 206s traceback 206s -i INPUT, --input=INPUT 206s read from INPUT in po, pot formats 206s -x EXCLUDE, --exclude=EXCLUDE 206s exclude names matching EXCLUDE from input paths 206s -o OUTPUT, --output=OUTPUT 206s write to OUTPUT in xlf, xliff formats 206s -t TEMPLATE, --template=TEMPLATE 206s read from TEMPLATE in xlf, xliff formats 206s -S, --timestamp skip conversion if the output file has newer timestamp 207s ========= SMOKE TEST: /usr/bin/po2yaml =========== 207s Usage: po2yaml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 207s 207s Convert Gettext PO localization files to YAML files. See: 207s http://docs.translatehouse.org/projects/translate- 207s toolkit/en/latest/commands/yaml2po.html for examples and usage instructions. 207s 207s Options: 207s --version show program's version number and exit 207s -h, --help show this help message and exit 207s --manpage output a manpage based on the help 207s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 207s --errorlevel=ERRORLEVEL 207s show errorlevel as: none, message, exception, 207s traceback 207s -i INPUT, --input=INPUT 207s read from INPUT in po, pot formats 207s -x EXCLUDE, --exclude=EXCLUDE 207s exclude names matching EXCLUDE from input paths 207s -o OUTPUT, --output=OUTPUT 207s write to OUTPUT in yaml, yml formats 207s -t TEMPLATE, --template=TEMPLATE 207s read from TEMPLATE in yaml, yml formats 207s -S, --timestamp skip conversion if the output file has newer timestamp 207s --threshold=PERCENT only convert files where the translation completion is 207s above PERCENT 207s --fuzzy use translations marked fuzzy 207s --nofuzzy don't use translations marked fuzzy (default) 207s ========= SMOKE TEST: /usr/bin/poclean =========== 207s Usage: poclean [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 207s 207s Produces a clean file from an unclean file (Trados/Wordfast) by stripping out 207s the tw4win indicators. This does not convert an RTF file to PO/XLIFF, but 207s produces the target file with only the target text in from a text version of 207s the RTF. 207s 207s Options: 207s --version show program's version number and exit 207s -h, --help show this help message and exit 207s --manpage output a manpage based on the help 207s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 207s --errorlevel=ERRORLEVEL 207s show errorlevel as: none, message, exception, 207s traceback 207s -i INPUT, --input=INPUT 207s read from INPUT in po, pot, xlf, xliff formats 207s -x EXCLUDE, --exclude=EXCLUDE 207s exclude names matching EXCLUDE from input paths 207s -o OUTPUT, --output=OUTPUT 207s write to OUTPUT in po, pot, xlf, xliff formats 207s -S, --timestamp skip conversion if the output file has newer timestamp 207s ========= SMOKE TEST: /usr/bin/pocompendium =========== 207s Usage: pocompendium [options] output.po <-d directory(s)|file(s)> 207s The first parameter is the output file, standard output if the output file is '-'. 207s Any number of directories may be specified for input files. 207s Options: 207s --invert|v Creates an inverse compendium with msgid and msgstr swapped 207s --errors|e Only ouput msg bundles that have errors 207s --correct|c Only ouput msg bundles that are correctly translated 207s --ignore-case|i Drops all strings to lowercase 207s --strip-accel-tilde|-st Strip all tilde (~) accelerator characters 207s --strip-accel-amp|-sa Strip all ampersand (&) accelerator characters 207s --strip-accel-under|-su Strip all underscore (_) accelerator characters 207s ========= SMOKE TEST: /usr/bin/pocompile =========== 207s Usage: pocompile [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 207s 207s Compile XLIFF and Gettext PO localization files into Gettext MO (Machine 207s Object) files. See: http://docs.translatehouse.org/projects/translate- 207s toolkit/en/latest/commands/pocompile.html for examples and usage instructions. 207s 207s Options: 207s --version show program's version number and exit 207s -h, --help show this help message and exit 207s --manpage output a manpage based on the help 207s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 207s --errorlevel=ERRORLEVEL 207s show errorlevel as: none, message, exception, 207s traceback 207s -i INPUT, --input=INPUT 207s read from INPUT in po, pot, xlf, xliff formats 207s -x EXCLUDE, --exclude=EXCLUDE 207s exclude names matching EXCLUDE from input paths 207s -o OUTPUT, --output=OUTPUT 207s write to OUTPUT in mo format 207s -S, --timestamp skip conversion if the output file has newer timestamp 207s --fuzzy use translations marked fuzzy 207s --nofuzzy don't use translations marked fuzzy (default) 207s ========= SMOKE TEST: /usr/bin/poconflicts =========== 207s 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] 207s input directory is searched for PO files, PO files with name of conflicting string are output in output directory 207s 207s Conflict finder for Gettext PO localization files. See: 207s http://docs.translatehouse.org/projects/translate- 207s toolkit/en/latest/commands/poconflicts.html for examples and usage 207s instructions. 207s 207s Options: 207s --version show program's version number and exit 207s -h, --help show this help message and exit 207s --manpage output a manpage based on the help 207s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 207s --errorlevel=ERRORLEVEL 207s show errorlevel as: none, message, exception, 207s traceback 207s -i INPUT, --input=INPUT 207s read from INPUT in po format 207s -x EXCLUDE, --exclude=EXCLUDE 207s exclude names matching EXCLUDE from input paths 207s -o OUTPUT, --output=OUTPUT 207s write to OUTPUT in po format 207s -I, --ignore-case ignore case distinctions 207s -v, --invert invert the conflicts thus extracting conflicting 207s destination words 207s --accelerator=ACCELERATORS 207s ignores the given accelerator characters when matching 207s ========= SMOKE TEST: /usr/bin/pocount =========== 207s usage: pocount [-h] [--incomplete] [--full | --csv | --short | 207s --short-strings | --short-words] [--no-color] 207s files [files ...] 207s 207s positional arguments: 207s files 207s 207s options: 207s -h, --help show this help message and exit 207s --incomplete skip 100% translated files. 207s 207s Output format: 207s --full (default) statistics in full, verbose format 207s --csv statistics in CSV format 207s --short same as --short-strings 207s --short-strings statistics of strings in short format - one line per file 207s --short-words statistics of words in short format - one line per file 207s --no-color show output without color 207s ========= SMOKE TEST: /usr/bin/podebug =========== 208s Usage: podebug [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 208s 208s Insert debug messages into XLIFF and Gettext PO localization files. See: 208s http://docs.translatehouse.org/projects/translate- 208s toolkit/en/latest/commands/podebug.html for examples and usage instructions. 208s 208s Options: 208s --version show program's version number and exit 208s -h, --help show this help message and exit 208s --manpage output a manpage based on the help 208s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 208s --errorlevel=ERRORLEVEL 208s show errorlevel as: none, message, exception, 208s traceback 208s -i INPUT, --input=INPUT 208s read from INPUT in po, pot, pot, tmx, xlf, xliff 208s formats 208s -x EXCLUDE, --exclude=EXCLUDE 208s exclude names matching EXCLUDE from input paths 208s -o OUTPUT, --output=OUTPUT 208s write to OUTPUT in po, pot, tmx, xlf, xliff formats 208s -S, --timestamp skip conversion if the output file has newer timestamp 208s -f FORMAT, --format=FORMAT 208s specify format string 208s --rewrite=STYLE the translation rewrite style: blank, bracket, chef, 208s classified, en, flipped, unicode, xxx 208s --ignore=APPLICATION apply tagging ignore rules for the given application: 208s gtk, kde, libreoffice, mozilla, openoffice 208s --preserveplaceholders 208s attempt to exclude characters that are part of 208s placeholders when performing character-level rewrites 208s so that consuming applications can still use the 208s placeholders to generate final output 208s ========= SMOKE TEST: /usr/bin/pofilter =========== 208s Usage: pofilter [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT 208s 208s Perform quality checks on Gettext PO, XLIFF and TMX localization files. 208s Snippet files are created whenever a test fails. These can be examined, 208s corrected and merged back into the originals using pomerge. See: 208s http://docs.translatehouse.org/projects/translate- 208s toolkit/en/latest/commands/pofilter.html for examples and usage instructions 208s and http://docs.translatehouse.org/projects/translate- 208s toolkit/en/latest/commands/pofilter_tests.html for full descriptions of all 208s tests. 208s 208s Options: 208s --version show program's version number and exit 208s -h, --help show this help message and exit 208s --manpage output a manpage based on the help 208s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 208s --errorlevel=ERRORLEVEL 208s show errorlevel as: none, message, exception, 208s traceback 208s -i INPUT, --input=INPUT 208s read from INPUT in po, pot, tmx, xlf, xliff formats 208s -x EXCLUDE, --exclude=EXCLUDE 208s exclude names matching EXCLUDE from input paths 208s -o OUTPUT, --output=OUTPUT 208s write to OUTPUT in po, pot, tmx, xlf, xliff formats 208s -l, --listfilters list filters available 208s --review include units marked for review (default) 208s --noreview exclude units marked for review 208s --fuzzy include units marked fuzzy (default) 208s --nofuzzy exclude units marked fuzzy 208s --nonotes don't add notes about the errors 208s --autocorrect output automatic corrections where possible rather 208s than describing issues 208s --language=LANG set target language code (e.g. af-ZA) [required for 208s spell check and recommended in general] 208s --openoffice use the standard checks for OpenOffice translations 208s --libreoffice use the standard checks for LibreOffice translations 208s --mozilla use the standard checks for Mozilla translations 208s --drupal use the standard checks for Drupal translations 208s --gnome use the standard checks for Gnome translations 208s --kde use the standard checks for KDE translations 208s --wx use the standard checks for wxWidgets translations 208s --excludefilter=FILTER 208s don't use FILTER when filtering 208s -t FILTER, --test=FILTER 208s only use test FILTERs specified with this option when 208s filtering 208s --notranslatefile=FILE 208s read list of untranslatable words from FILE (must not 208s be translated) 208s --musttranslatefile=FILE 208s read list of translatable words from FILE (must be 208s translated) 208s --validcharsfile=FILE 208s read list of all valid characters from FILE (must be 208s in UTF-8) 208s ========= SMOKE TEST: /usr/bin/pogrep =========== 208s 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] 208s 208s Grep XLIFF, Gettext PO and TMX localization files. Matches are output to 208s snippet files of the same type which can then be reviewed and later merged 208s using :doc:`pomerge `. See: 208s http://docs.translatehouse.org/projects/translate- 208s toolkit/en/latest/commands/pogrep.html for examples and usage instructions. 208s 208s Options: 208s --version show program's version number and exit 208s -h, --help show this help message and exit 208s --manpage output a manpage based on the help 208s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 208s --errorlevel=ERRORLEVEL 208s show errorlevel as: none, message, exception, 208s traceback 208s -i INPUT, --input=INPUT 208s read from INPUT in gmo, mo, po, pot, tmx, xlf, xlff, 208s xliff formats 208s -x EXCLUDE, --exclude=EXCLUDE 208s exclude names matching EXCLUDE from input paths 208s -o OUTPUT, --output=OUTPUT 208s write to OUTPUT in gmo, mo, po, pot, tmx, xlf, xlff, 208s xliff formats 208s --search=SEARCHPARTS searches the given parts (source, target, notes and 208s locations) 208s -I, --ignore-case ignore case distinctions 208s -e, --regexp use regular expression matching 208s -v, --invert-match select non-matching lines 208s --accelerator=ACCELERATOR 208s ignores the given accelerator when matching 208s -k, --keep-translations 208s always extract units with translations 208s ========= SMOKE TEST: /usr/bin/pomerge =========== 208s Usage: pomerge [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 208s 208s Merges XLIFF and Gettext PO localization files. Snippet file produced by 208s e.g. :doc:`pogrep ` and updated by a translator can be 208s merged back into the original files. See: 208s http://docs.translatehouse.org/projects/translate- 208s toolkit/en/latest/commands/pomerge.html for examples and usage instructions. 208s 208s Options: 208s --version show program's version number and exit 208s -h, --help show this help message and exit 208s --manpage output a manpage based on the help 208s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 208s --errorlevel=ERRORLEVEL 208s show errorlevel as: none, message, exception, 208s traceback 208s -i INPUT, --input=INPUT 208s read from INPUT in po, pot, pot, xlf, xliff formats 208s -x EXCLUDE, --exclude=EXCLUDE 208s exclude names matching EXCLUDE from input paths 208s -o OUTPUT, --output=OUTPUT 208s write to OUTPUT in po, pot, pot, xlf, xliff formats 208s -t TEMPLATE, --template=TEMPLATE 208s read from TEMPLATE in po, pot, pot, xlf, xliff formats 208s -S, --timestamp skip conversion if the output file has newer timestamp 208s --mergeblanks=MERGEBLANKS 208s whether to overwrite existing translations with blank 208s translations (yes/no). Default is yes. 208s --mergefuzzy=MERGEFUZZY 208s whether to consider fuzzy translations from input 208s (yes/no). Default is yes. 208s --mergecomments=MERGECOMMENTS 208s whether to merge comments as well as translations 208s (yes/no). Default is yes. 208s ========= SMOKE TEST: /usr/bin/pomigrate2 =========== 208s Usage pomigrate2 [options] 208s 208s Options: 208s -F|--use-fuzzy-matching - use fuzzy algorithms when merging to attempt to match strings 208s -C|--use-compendium - create and use a compendium built from the migrating files 208s -C|--use-compendium=some-compendium.po 208s - use an external compendium during the migration 208s --no-wrap - do not wrap long lines 208s --locale=lang - set locale for newly born files 208s -q|--quiet - suppress most output 208s -p|--pot2po - use pot2po instead of msgmerge to migrate 208s ========= SMOKE TEST: /usr/bin/popuretext =========== 208s Usage: popuretext ( -P pot-dir | po-dir ) file.txt [accelerator] 208s ========= SMOKE TEST: /usr/bin/poreencode =========== 208s Usage: poreencode 208s eg: poreencode UTF-8 af/ 208s ========= SMOKE TEST: /usr/bin/porestructure =========== 208s Usage: porestructure [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT 208s input directory is searched for PO files with (poconflicts) comments, all entries are written to files in a directory structure for pomerge 208s 208s Restructure Gettxt PO files produced by :doc:`poconflicts 208s ` into the original directory tree for merging using 208s :doc:`pomerge `. See: 208s http://docs.translatehouse.org/projects/translate- 208s toolkit/en/latest/commands/pomerge.html for examples and usage instructions. 208s 208s Options: 208s --version show program's version number and exit 208s -h, --help show this help message and exit 208s --manpage output a manpage based on the help 208s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 208s --errorlevel=ERRORLEVEL 208s show errorlevel as: none, message, exception, 208s traceback 208s -i INPUT, --input=INPUT 208s read from INPUT in po format 208s -x EXCLUDE, --exclude=EXCLUDE 208s exclude names matching EXCLUDE from input paths 208s -o OUTPUT, --output=OUTPUT 208s write to OUTPUT in po format 208s ========= SMOKE TEST: /usr/bin/posegment =========== 209s Usage: posegment [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 209s 209s Segment Gettext PO, XLIFF and TMX localization files at the sentence level. 209s See: http://docs.translatehouse.org/projects/translate- 209s toolkit/en/latest/commands/posegment.html for examples and usage instructions. 209s 209s Options: 209s --version show program's version number and exit 209s -h, --help show this help message and exit 209s --manpage output a manpage based on the help 209s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 209s --errorlevel=ERRORLEVEL 209s show errorlevel as: none, message, exception, 209s traceback 209s -i INPUT, --input=INPUT 209s read from INPUT in po, pot, tmx, xlf, xliff formats 209s -x EXCLUDE, --exclude=EXCLUDE 209s exclude names matching EXCLUDE from input paths 209s -o OUTPUT, --output=OUTPUT 209s write to OUTPUT in po, pot, tmx, xlf, xliff formats 209s -S, --timestamp skip conversion if the output file has newer timestamp 209s -P, --pot output PO Templates (.pot) rather than PO files (.po) 209s -l LANG, --language=LANG 209s the target language code 209s --source-language=LANG 209s the source language code (default 'en') 209s --keepspaces Disable automatic stripping of whitespace 209s --only-aligned Removes units where sentence number does not 209s correspond 209s ========= SMOKE TEST: /usr/bin/poswap =========== 209s Usage: poswap [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 209s 209s Builds a new translation file with the target of the input language as source 209s language. .. note:: Ensure that the two po files correspond 100% to the same 209s pot file before using this. To translate Kurdish (ku) through French:: 209s poswap -i fr/ -t ku -o fr-ku To convert the fr-ku files back to en-ku:: 209s poswap --reverse -i fr/ -t fr-ku -o en-ku See: 209s http://docs.translatehouse.org/projects/translate- 209s toolkit/en/latest/commands/poswap.html for examples and usage instructions. 209s 209s Options: 209s --version show program's version number and exit 209s -h, --help show this help message and exit 209s --manpage output a manpage based on the help 209s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 209s --errorlevel=ERRORLEVEL 209s show errorlevel as: none, message, exception, 209s traceback 209s -i INPUT, --input=INPUT 209s read from INPUT in po, pot formats 209s -x EXCLUDE, --exclude=EXCLUDE 209s exclude names matching EXCLUDE from input paths 209s -o OUTPUT, --output=OUTPUT 209s write to OUTPUT in po, pot formats 209s -t TEMPLATE, --template=TEMPLATE 209s read from TEMPLATE in po, pot, pot formats 209s -S, --timestamp skip conversion if the output file has newer timestamp 209s --reverse reverse the process of intermediate language 209s conversion 209s ========= SMOKE TEST: /usr/bin/pot2po =========== 209s 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] 209s 209s Convert template files (like .pot or template .xlf files) to translation 209s files, preserving existing translations. See: 209s http://docs.translatehouse.org/projects/translate- 209s toolkit/en/latest/commands/pot2po.html for examples and usage instructions. 209s 209s Options: 209s --version show program's version number and exit 209s -h, --help show this help message and exit 209s --manpage output a manpage based on the help 209s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 209s --errorlevel=ERRORLEVEL 209s show errorlevel as: none, message, exception, 209s traceback 209s -i INPUT, --input=INPUT 209s read from INPUT in catkeys, lang, pot, ts, xlf, xliff 209s formats 209s -x EXCLUDE, --exclude=EXCLUDE 209s exclude names matching EXCLUDE from input paths 209s -o OUTPUT, --output=OUTPUT 209s write to OUTPUT in catkeys, lang, po, pot, ts, xlf, 209s xliff formats 209s -t TEMPLATE, --template=TEMPLATE 209s read from TEMPLATE in catkeys, lang, po, pot, ts, xlf, 209s xliff formats 209s -S, --timestamp skip conversion if the output file has newer timestamp 209s -P, --pot output PO Templates (.pot) rather than PO files (.po) 209s --tm=TM The file to use as translation memory when fuzzy 209s matching 209s -s MIN_SIMILARITY, --similarity=MIN_SIMILARITY 209s The minimum similarity for inclusion (default: 75%) 209s --nofuzzymatching Disable fuzzy matching 209s ========= SMOKE TEST: /usr/bin/poterminology =========== 209s 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] 209s input directory is searched for PO files, terminology PO file is output file 209s 209s Create a terminology file by reading a set of .po or .pot files to produce a 209s pootle-terminology.pot. See: 209s http://docs.translatehouse.org/projects/translate- 209s toolkit/en/latest/commands/poterminology.html for examples and usage 209s instructions. 209s 209s Options: 209s --version show program's version number and exit 209s -h, --help show this help message and exit 209s --manpage output a manpage based on the help 209s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 209s --errorlevel=ERRORLEVEL 209s show errorlevel as: none, message, exception, 209s traceback 209s -i INPUT, --input=INPUT 209s read from INPUT in po, pot formats 209s -x EXCLUDE, --exclude=EXCLUDE 209s exclude names matching EXCLUDE from input paths 209s -o OUTPUT, --output=OUTPUT 209s write to OUTPUT in po, pot formats 209s -u UPDATEFILE, --update=UPDATEFILE 209s update terminology in UPDATEFILE 209s -S STOPFILE, --stopword-list=STOPFILE 209s read stopword (term exclusion) list from STOPFILE 209s (default /usr/share/pyshared/translate/share/stoplist- 209s en) 209s -F, --fold-titlecase fold "Title Case" to lowercase (default) 209s -C, --preserve-case preserve all uppercase/lowercase 209s -I, --ignore-case make all terms lowercase 209s --accelerator=ACCELERATORS 209s ignore the given accelerator characters when matching 209s -t LENGTH, --term-words=LENGTH 209s generate terms of up to LENGTH words (default 3) 209s --nonstop-needed=MIN omit terms with less than MIN nonstop words (default 209s 1) 209s --inputs-needed=MIN omit terms appearing in less than MIN input files 209s (default 2, or 1 if only one input file) 209s --fullmsg-needed=MIN omit full message terms appearing in less than MIN 209s different messages (default 1) 209s --substr-needed=MIN omit substring-only terms appearing in less than MIN 209s different messages (default 2) 209s --locs-needed=MIN omit terms appearing in less than MIN different 209s original source files (default 2) 209s --sort=ORDER output sort order(s): frequency, dictionary, length 209s (may repeat option, default is all in above order) 209s --source-language=LANG 209s the source language code (default 'en') 209s -v, --invert invert the source and target languages for terminology 209s ========= SMOKE TEST: /usr/bin/pretranslate =========== 209s Usage: pretranslate [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 209s 209s Fill localization files with suggested translations based on translation 209s memory and existing translations. See: 209s http://docs.translatehouse.org/projects/translate- 209s toolkit/en/latest/commands/pretranslate.html for examples and usage 209s instructions. 209s 209s Options: 209s --version show program's version number and exit 209s -h, --help show this help message and exit 209s --manpage output a manpage based on the help 209s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 209s --errorlevel=ERRORLEVEL 209s show errorlevel as: none, message, exception, 209s traceback 209s -i INPUT, --input=INPUT 209s read from INPUT in po, pot, pot, xlf, xliff formats 209s -x EXCLUDE, --exclude=EXCLUDE 209s exclude names matching EXCLUDE from input paths 209s -o OUTPUT, --output=OUTPUT 209s write to OUTPUT in po, pot, xlf, xliff formats 209s -t TEMPLATE, --template=TEMPLATE 209s read from TEMPLATE in po, pot, xlf, xliff formats 209s -S, --timestamp skip conversion if the output file has newer timestamp 209s --tm=TM The file to use as translation memory when fuzzy 209s matching 209s -s MIN_SIMILARITY, --similarity=MIN_SIMILARITY 209s The minimum similarity for inclusion (default: 75%) 209s --nofuzzymatching Disable fuzzy matching 209s ========= SMOKE TEST: /usr/bin/prop2po =========== 210s 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] 210s 210s Convert Java/Mozilla .properties files to Gettext PO localization files. 210s See: http://docs.translatehouse.org/projects/translate- 210s toolkit/en/latest/commands/prop2po.html for examples and usage instructions. 210s 210s Options: 210s --version show program's version number and exit 210s -h, --help show this help message and exit 210s --manpage output a manpage based on the help 210s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 210s --errorlevel=ERRORLEVEL 210s show errorlevel as: none, message, exception, 210s traceback 210s -i INPUT, --input=INPUT 210s read from INPUT in lang, properties, strings formats 210s -x EXCLUDE, --exclude=EXCLUDE 210s exclude names matching EXCLUDE from input paths 210s -o OUTPUT, --output=OUTPUT 210s write to OUTPUT in po, pot formats 210s -t TEMPLATE, --template=TEMPLATE 210s read from TEMPLATE in lang, properties, strings 210s formats 210s -S, --timestamp skip conversion if the output file has newer timestamp 210s -P, --pot output PO Templates (.pot) rather than PO files (.po) 210s --personality=TYPE override the input file format: java, java-utf8, java- 210s utf16, xwiki, flex, mozilla, gaia, gwt, skype, 210s strings, strings-utf8, joomla (for .properties files, 210s default: java) 210s --encoding=ENCODING override the encoding set by the personality 210s --duplicates=DUPLICATESTYLE 210s what to do with duplicate strings (identical source 210s text): merge, msgctxt (default: 'msgctxt') 210s ========= SMOKE TEST: /usr/bin/pydiff =========== 210s usage: pydiff [-h] [-i] [-U NUM] [-r] [-N] [--unidirectional-new-file] [-s] 210s [-x PAT] [--fromcontains TEXT] [--tocontains TEXT] 210s [--contains TEXT] [-I] [--accelerator ACCELERATORS] 210s fromfile tofile 210s 210s positional arguments: 210s fromfile 210s tofile 210s 210s options: 210s -h, --help show this help message and exit 210s -i, --ignore-case Ignore case differences in file contents. 210s -U, --unified NUM Output NUM (default 3) lines of unified context 210s -r, --recursive Recursively compare any subdirectories found. 210s -N, --new-file Treat absent files as empty. 210s --unidirectional-new-file 210s Treat absent first files as empty. 210s -s, --report-identical-files 210s Report when two files are the same. 210s -x, --exclude PAT Exclude files that match PAT. 210s --fromcontains TEXT Only show changes where fromfile contains TEXT 210s --tocontains TEXT Only show changes where tofile contains TEXT 210s --contains TEXT Only show changes where fromfile or tofile contains 210s TEXT 210s -I, --ignore-case-contains 210s Ignore case differences when matching any of the 210s changes 210s --accelerator ACCELERATORS 210s ignores the given accelerator characters when matching 210s ========= SMOKE TEST: /usr/bin/pypo2phppo =========== 210s Usage: pypo2phppo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 210s 210s Convert Python format .po files to PHP format .po files. 210s 210s Options: 210s --version show program's version number and exit 210s -h, --help show this help message and exit 210s --manpage output a manpage based on the help 210s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 210s --errorlevel=ERRORLEVEL 210s show errorlevel as: none, message, exception, 210s traceback 210s -i INPUT, --input=INPUT 210s read from INPUT in po, pot formats 210s -x EXCLUDE, --exclude=EXCLUDE 210s exclude names matching EXCLUDE from input paths 210s -o OUTPUT, --output=OUTPUT 210s write to OUTPUT in po, pot formats 210s -S, --timestamp skip conversion if the output file has newer timestamp 210s ========= SMOKE TEST: /usr/bin/rc2po =========== 210s 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] 210s 210s Convert Windows RC files to Gettext PO localization files. See: 210s http://docs.translatehouse.org/projects/translate- 210s toolkit/en/latest/commands/rc2po.html for examples and usage instructions. 210s 210s Options: 210s --version show program's version number and exit 210s -h, --help show this help message and exit 210s --manpage output a manpage based on the help 210s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 210s --errorlevel=ERRORLEVEL 210s show errorlevel as: none, message, exception, 210s traceback 210s -i INPUT, --input=INPUT 210s read from INPUT in nls, rc formats 210s -x EXCLUDE, --exclude=EXCLUDE 210s exclude names matching EXCLUDE from input paths 210s -o OUTPUT, --output=OUTPUT 210s write to OUTPUT in po, pot formats 210s -t TEMPLATE, --template=TEMPLATE 210s read from TEMPLATE in nls, rc formats 210s -S, --timestamp skip conversion if the output file has newer timestamp 210s -P, --pot output PO Templates (.pot) rather than PO files (.po) 210s --charset=CHARSET charset to use to decode the RC files (autodetection 210s is used by default) 210s -l LANG, --lang=LANG LANG entry (default: None) 210s --sublang=SUBLANG SUBLANG entry (default: None) 210s --duplicates=DUPLICATESTYLE 210s what to do with duplicate strings (identical source 210s text): merge, msgctxt (default: 'msgctxt') 210s ========= SMOKE TEST: /usr/bin/resx2po =========== 210s 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] 210s 210s Convert .Net Resource (.resx) to Gettext PO localisation files. See: 210s http://docs.translatehouse.org/projects/translate- 210s toolkit/en/latest/commands/resx2po.html for examples and usage instructions. 210s 210s Options: 210s --version show program's version number and exit 210s -h, --help show this help message and exit 210s --manpage output a manpage based on the help 210s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 210s --errorlevel=ERRORLEVEL 210s show errorlevel as: none, message, exception, 210s traceback 210s -i INPUT, --input=INPUT 210s read from INPUT in resx format 210s -x EXCLUDE, --exclude=EXCLUDE 210s exclude names matching EXCLUDE from input paths 210s -o OUTPUT, --output=OUTPUT 210s write to OUTPUT in po, pot formats 210s -t TEMPLATE, --template=TEMPLATE 210s read from TEMPLATE in resx format 210s -S, --timestamp skip conversion if the output file has newer timestamp 210s -P, --pot output PO Templates (.pot) rather than PO files (.po) 210s --filter=FILTER leaves to extract e.g. 'name,desc': (default: extract 210s everything) 210s --duplicates=DUPLICATESTYLE 210s what to do with duplicate strings (identical source 210s text): merge, msgctxt (default: 'msgctxt') 210s ========= SMOKE TEST: /usr/bin/sub2po =========== 211s 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] 211s 211s Convert subtitle files to Gettext PO localization files. See: 211s http://docs.translatehouse.org/projects/translate- 211s toolkit/en/latest/commands/sub2po.html for examples and usage instructions. 211s 211s Options: 211s --version show program's version number and exit 211s -h, --help show this help message and exit 211s --manpage output a manpage based on the help 211s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 211s --errorlevel=ERRORLEVEL 211s show errorlevel as: none, message, exception, 211s traceback 211s -i INPUT, --input=INPUT 211s read from INPUT in ass, srt, ssa, sub formats 211s -x EXCLUDE, --exclude=EXCLUDE 211s exclude names matching EXCLUDE from input paths 211s -o OUTPUT, --output=OUTPUT 211s write to OUTPUT in po, pot formats 211s -t TEMPLATE, --template=TEMPLATE 211s read from TEMPLATE in ass, srt, ssa, sub formats 211s -S, --timestamp skip conversion if the output file has newer timestamp 211s -P, --pot output PO Templates (.pot) rather than PO files (.po) 211s --duplicates=DUPLICATESTYLE 211s what to do with duplicate strings (identical source 211s text): merge, msgctxt (default: 'msgctxt') 211s ========= SMOKE TEST: /usr/bin/symb2po =========== 211s 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] 211s 211s Convert Symbian localisation files to Gettext PO localization files. See: 211s http://docs.translatehouse.org/projects/translate- 211s toolkit/en/latest/commands/symb2po.html for examples and usage instructions. 211s 211s Options: 211s --version show program's version number and exit 211s -h, --help show this help message and exit 211s --manpage output a manpage based on the help 211s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 211s --errorlevel=ERRORLEVEL 211s show errorlevel as: none, message, exception, 211s traceback 211s -i INPUT, --input=INPUT 211s read from INPUT in r01 format 211s -x EXCLUDE, --exclude=EXCLUDE 211s exclude names matching EXCLUDE from input paths 211s -o OUTPUT, --output=OUTPUT 211s write to OUTPUT in po, pot formats 211s -t TEMPLATE, --template=TEMPLATE 211s read from TEMPLATE in 211s -S, --timestamp skip conversion if the output file has newer timestamp 211s -P, --pot output PO Templates (.pot) rather than PO files (.po) 211s --duplicates=DUPLICATESTYLE 211s what to do with duplicate strings (identical source 211s text): merge, msgctxt (default: 'msgctxt') 211s ========= SMOKE TEST: /usr/bin/tbx2po =========== 211s Usage: tbx2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 211s 211s Convert TermBase eXchange (.tbx) glossary file into a Gettext PO file. See: 211s http://docs.translatehouse.org/projects/translate- 211s toolkit/en/latest/commands/tbx2po.html for examples and usage instructions 211s 211s Options: 211s --version show program's version number and exit 211s -h, --help show this help message and exit 211s --manpage output a manpage based on the help 211s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 211s --errorlevel=ERRORLEVEL 211s show errorlevel as: none, message, exception, 211s traceback 211s -i INPUT, --input=INPUT 211s read from INPUT in tbx format 211s -x EXCLUDE, --exclude=EXCLUDE 211s exclude names matching EXCLUDE from input paths 211s -o OUTPUT, --output=OUTPUT 211s write to OUTPUT in po, pot formats 211s -S, --timestamp skip conversion if the output file has newer timestamp 211s ========= SMOKE TEST: /usr/bin/tiki2po =========== 211s Usage: tiki2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 211s 211s Convert TikiWiki's language.php files to Gettext PO localization files. See: 211s http://docs.translatehouse.org/projects/translate- 211s toolkit/en/latest/commands/tiki2po.html for examples and usage instructions. 211s 211s Options: 211s --version show program's version number and exit 211s -h, --help show this help message and exit 211s --manpage output a manpage based on the help 211s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 211s --errorlevel=ERRORLEVEL 211s show errorlevel as: none, message, exception, 211s traceback 211s -i INPUT, --input=INPUT 211s read from INPUT in php format 211s -x EXCLUDE, --exclude=EXCLUDE 211s exclude names matching EXCLUDE from input paths 211s -o OUTPUT, --output=OUTPUT 211s write to OUTPUT in po, pot formats 211s -S, --timestamp skip conversion if the output file has newer timestamp 211s --include-unused Include strings in the unused section 211s ========= SMOKE TEST: /usr/bin/tmserver =========== 211s usage: tmserver [-h] [-d TMDBFILE] [-f TMFILES] [-t TARGET_LANG] 211s [-s SOURCE_LANG] [-b BIND] [-p PORT] 211s [--max-candidates MAX_CANDIDATES] 211s [--min-similarity MIN_SIMILARITY] [--max-length MAX_LENGTH] 211s [--debug] 211s 211s options: 211s -h, --help show this help message and exit 211s -d, --tmdb TMDBFILE translation memory database file 211s -f, --import-translation-file TMFILES 211s translation file to import into the database 211s -t, --import-target-lang TARGET_LANG 211s target language of translation files 211s -s, --import-source-lang SOURCE_LANG 211s source language of translation files 211s -b, --bind BIND address to bind server to (default: localhost) 211s -p, --port PORT port to listen on (default: 8888) 211s --max-candidates MAX_CANDIDATES 211s Maximum number of candidates 211s --min-similarity MIN_SIMILARITY 211s minimum similarity 211s --max-length MAX_LENGTH 211s Maxmimum string length 211s --debug enable debugging features 212s ========= SMOKE TEST: /usr/bin/ts2po =========== 212s Usage: ts2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 212s 212s Convert Qt Linguist (.ts) files to Gettext PO localization files. See: 212s http://docs.translatehouse.org/projects/translate- 212s toolkit/en/latest/commands/ts2po.html for examples and usage instructions. 212s 212s Options: 212s --version show program's version number and exit 212s -h, --help show this help message and exit 212s --manpage output a manpage based on the help 212s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 212s --errorlevel=ERRORLEVEL 212s show errorlevel as: none, message, exception, 212s traceback 212s -i INPUT, --input=INPUT 212s read from INPUT in ts format 212s -x EXCLUDE, --exclude=EXCLUDE 212s exclude names matching EXCLUDE from input paths 212s -o OUTPUT, --output=OUTPUT 212s write to OUTPUT in po, pot formats 212s -S, --timestamp skip conversion if the output file has newer timestamp 212s -P, --pot output PO Templates (.pot) rather than PO files (.po) 212s --duplicates=DUPLICATESTYLE 212s what to do with duplicate strings (identical source 212s text): merge, msgctxt (default: 'msgctxt') 212s ========= SMOKE TEST: /usr/bin/txt2po =========== 212s Usage: txt2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 212s 212s Convert plain text (.txt) files to Gettext PO localization files. See: 212s http://docs.translatehouse.org/projects/translate- 212s toolkit/en/latest/commands/txt2po.html for examples and usage instructions. 212s 212s Options: 212s --version show program's version number and exit 212s -h, --help show this help message and exit 212s --manpage output a manpage based on the help 212s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 212s --errorlevel=ERRORLEVEL 212s show errorlevel as: none, message, exception, 212s traceback 212s -i INPUT, --input=INPUT 212s read from INPUT in *, txt formats 212s -x EXCLUDE, --exclude=EXCLUDE 212s exclude names matching EXCLUDE from input paths 212s -o OUTPUT, --output=OUTPUT 212s write to OUTPUT in po, pot formats 212s -S, --timestamp skip conversion if the output file has newer timestamp 212s -P, --pot output PO Templates (.pot) rather than PO files (.po) 212s --encoding=ENCODING The encoding of the input file (default: UTF-8) 212s --flavour=FLAVOUR The flavour of text file: plain (default), dokuwiki, 212s mediawiki 212s --no-segmentation Don't segment the file, treat it like a single message 212s --duplicates=DUPLICATESTYLE 212s what to do with duplicate strings (identical source 212s text): merge, msgctxt (default: 'msgctxt') 212s ========= SMOKE TEST: /usr/bin/web2py2po =========== 212s Usage: web2py2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 212s 212s Convert web2py translation dictionaries (.py) to GNU/gettext PO files. See: 212s http://docs.translatehouse.org/projects/translate- 212s toolkit/en/latest/commands/web2py2po.html for examples and usage instructions. 212s 212s Options: 212s --version show program's version number and exit 212s -h, --help show this help message and exit 212s --manpage output a manpage based on the help 212s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 212s --errorlevel=ERRORLEVEL 212s show errorlevel as: none, message, exception, 212s traceback 212s -i INPUT, --input=INPUT 212s read from INPUT in py format 212s -x EXCLUDE, --exclude=EXCLUDE 212s exclude names matching EXCLUDE from input paths 212s -o OUTPUT, --output=OUTPUT 212s write to OUTPUT in po, pot formats 212s -S, --timestamp skip conversion if the output file has newer timestamp 212s -P, --pot output PO Templates (.pot) rather than PO files (.po) 212s --duplicates=DUPLICATESTYLE 212s what to do with duplicate strings (identical source 212s text): merge, msgctxt (default: 'msgctxt') 212s ========= SMOKE TEST: /usr/bin/xliff2odf =========== 212s Usage: xliff2odf [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 212s 212s Convert XLIFF translation files to OpenDocument (ODF) files. See: 212s http://docs.translatehouse.org/projects/translate- 212s toolkit/en/latest/commands/odf2xliff.html for examples and usage instructions. 212s 212s Options: 212s --version show program's version number and exit 212s -h, --help show this help message and exit 212s --manpage output a manpage based on the help 212s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 212s --errorlevel=ERRORLEVEL 212s show errorlevel as: none, message, exception, 212s traceback 212s -i INPUT, --input=INPUT 212s read from INPUT in xlf format 212s -x EXCLUDE, --exclude=EXCLUDE 212s exclude names matching EXCLUDE from input paths 212s -o OUTPUT, --output=OUTPUT 212s write to OUTPUT in odc, odf, odg, odi, odm, odp, ods, 212s odt, otc, otf, otg, oth, oti, otp, ots, ott formats 212s -t TEMPLATE, --template=TEMPLATE 212s read from TEMPLATE in odc, odf, odg, odi, odm, odp, 212s ods, odt, otc, otf, otg, oth, oti, otp, ots, ott 212s formats 212s -S, --timestamp skip conversion if the output file has newer timestamp 212s ========= SMOKE TEST: /usr/bin/xliff2oo =========== 213s Usage: xliff2oo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 213s 213s Convert XLIFF localization files to an OpenOffice.org (SDF) localization 213s file. See: http://docs.translatehouse.org/projects/translate- 213s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 213s 213s Options: 213s --version show program's version number and exit 213s -h, --help show this help message and exit 213s --manpage output a manpage based on the help 213s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 213s --errorlevel=ERRORLEVEL 213s show errorlevel as: none, message, exception, 213s traceback 213s -i INPUT, --input=INPUT 213s read from INPUT in po, pot, xlf, xliff formats 213s -x EXCLUDE, --exclude=EXCLUDE 213s exclude names matching EXCLUDE from input paths 213s -o OUTPUT, --output=OUTPUT 213s write to OUTPUT in oo, sdf formats 213s -t TEMPLATE, --template=TEMPLATE 213s read from TEMPLATE in oo, sdf formats 213s -S, --timestamp skip conversion if the output file has newer timestamp 213s -l LANG, --language=LANG 213s set target language code (e.g. af-ZA) [required] 213s --source-language=LANG 213s set source language code (default en-US) 213s -T, --keeptimestamp don't change the timestamps of the strings 213s --nonrecursiveoutput don't treat the output oo as a recursive store 213s --nonrecursivetemplate 213s don't treat the template oo as a recursive store 213s --skipsource don't output the source language, but fallback to it 213s where needed 213s --filteraction=ACTION 213s action on pofilter failure: none (default), warn, 213s exclude-serious, exclude-all 213s --fuzzy use translations marked fuzzy 213s --nofuzzy don't use translations marked fuzzy (default) 213s --multifile=MULTIFILESTYLE 213s how to split po/pot files (single, toplevel or 213s onefile) 213s ========= SMOKE TEST: /usr/bin/xliff2po =========== 213s Usage: xliff2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 213s 213s Convert XLIFF localization files to Gettext PO localization files. See: 213s http://docs.translatehouse.org/projects/translate- 213s toolkit/en/latest/commands/xliff2po.html for examples and usage instructions. 213s 213s Options: 213s --version show program's version number and exit 213s -h, --help show this help message and exit 213s --manpage output a manpage based on the help 213s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 213s --errorlevel=ERRORLEVEL 213s show errorlevel as: none, message, exception, 213s traceback 213s -i INPUT, --input=INPUT 213s read from INPUT in xlf, xliff formats 213s -x EXCLUDE, --exclude=EXCLUDE 213s exclude names matching EXCLUDE from input paths 213s -o OUTPUT, --output=OUTPUT 213s write to OUTPUT in po, pot formats 213s -S, --timestamp skip conversion if the output file has newer timestamp 213s -P, --pot output PO Templates (.pot) rather than PO files (.po) 213s --duplicates=DUPLICATESTYLE 213s what to do with duplicate strings (identical source 213s text): merge, msgctxt (default: 'msgctxt') 213s ========= SMOKE TEST: /usr/bin/yaml2po =========== 213s 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] 213s 213s Convert YAML files to Gettext PO localization files. See: 213s http://docs.translatehouse.org/projects/translate- 213s toolkit/en/latest/commands/yaml2po.html for examples and usage instructions. 213s 213s Options: 213s --version show program's version number and exit 213s -h, --help show this help message and exit 213s --manpage output a manpage based on the help 213s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 213s --errorlevel=ERRORLEVEL 213s show errorlevel as: none, message, exception, 213s traceback 213s -i INPUT, --input=INPUT 213s read from INPUT in yaml, yml formats 213s -x EXCLUDE, --exclude=EXCLUDE 213s exclude names matching EXCLUDE from input paths 213s -o OUTPUT, --output=OUTPUT 213s write to OUTPUT in po, pot formats 213s -t TEMPLATE, --template=TEMPLATE 213s read from TEMPLATE in yaml, yml formats 213s -S, --timestamp skip conversion if the output file has newer timestamp 213s -P, --pot output PO Templates (.pot) rather than PO files (.po) 213s --duplicates=DUPLICATESTYLE 213s what to do with duplicate strings (identical source 213s text): merge, msgctxt (default: 'msgctxt') 214s autopkgtest [00:45:18]: test translate-toolkit: -----------------------] 217s translate-toolkit PASS 217s autopkgtest [00:45:21]: test translate-toolkit: - - - - - - - - - - results - - - - - - - - - - 221s autopkgtest [00:45:25]: test python3-translate: preparing testbed 244s autopkgtest [00:45:48]: testbed dpkg architecture: armhf 246s autopkgtest [00:45:50]: testbed apt version: 3.1.6ubuntu2 250s autopkgtest [00:45:54]: @@@@@@@@@@@@@@@@@@@@ test bed setup 252s autopkgtest [00:45:56]: testbed release detected to be: resolute 260s autopkgtest [00:46:04]: updating testbed package index (apt update) 262s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [83.3 kB] 262s Get:2 http://ftpmaster.internal/ubuntu resolute InRelease [83.3 kB] 262s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 262s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 263s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [63.1 kB] 263s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [683 kB] 263s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [15.0 kB] 263s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [5028 B] 263s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main armhf Packages [109 kB] 263s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/restricted armhf Packages [940 B] 263s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/universe armhf Packages [429 kB] 263s Get:12 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse armhf Packages [3200 B] 263s Get:13 http://ftpmaster.internal/ubuntu resolute/universe Sources [21.1 MB] 269s Get:14 http://ftpmaster.internal/ubuntu resolute/multiverse Sources [307 kB] 269s Get:15 http://ftpmaster.internal/ubuntu resolute/restricted Sources [14.4 kB] 269s Get:16 http://ftpmaster.internal/ubuntu resolute/main Sources [1413 kB] 269s Get:17 http://ftpmaster.internal/ubuntu resolute/main armhf Packages [1357 kB] 270s Get:18 http://ftpmaster.internal/ubuntu resolute/restricted armhf Packages [1672 B] 270s Get:19 http://ftpmaster.internal/ubuntu resolute/universe armhf Packages [15.3 MB] 271s Get:20 http://ftpmaster.internal/ubuntu resolute/multiverse armhf Packages [182 kB] 273s Fetched 41.1 MB in 11s (3599 kB/s) 274s Reading package lists... 280s autopkgtest [00:46:24]: upgrading testbed (apt dist-upgrade and autopurge) 281s Reading package lists... 282s Building dependency tree... 282s Reading state information... 282s Calculating upgrade... 283s The following packages will be upgraded: 283s apparmor apt base-files binutils binutils-arm-linux-gnueabihf 283s binutils-common cloud-init cloud-init-base distro-info-data dpkg dpkg-dev 283s gcc-15-base gir1.2-girepository-2.0 libapparmor1 libapt-pkg7.0 libatomic1 283s libaudit-common libaudit1 libbinutils libbrotli1 libcap-ng0 libctf-nobfd0 283s libctf0 libdpkg-perl libgcc-s1 libgirepository-1.0-1 libjson-c5 libnewt0.52 283s libnftables1 libp11-kit0 libseccomp2 libselinux1 libsemanage-common 283s libsemanage2 libsframe2 libstdc++6 lto-disabled-list nftables 283s python-apt-common python3-apt python3-cffi-backend python3-inflect 283s python3-markupsafe python3-oauthlib python3-zipp sudo-rs whiptail 283s 47 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 283s Need to get 11.8 MB of archives. 283s After this operation, 694 kB of additional disk space will be used. 283s Get:1 http://ftpmaster.internal/ubuntu resolute/main armhf base-files armhf 14ubuntu4 [75.4 kB] 283s Get:2 http://ftpmaster.internal/ubuntu resolute/main armhf libatomic1 armhf 15.2.0-5ubuntu1 [7942 B] 283s Get:3 http://ftpmaster.internal/ubuntu resolute/main armhf gcc-15-base armhf 15.2.0-5ubuntu1 [58.1 kB] 283s Get:4 http://ftpmaster.internal/ubuntu resolute/main armhf libgcc-s1 armhf 15.2.0-5ubuntu1 [40.6 kB] 283s Get:5 http://ftpmaster.internal/ubuntu resolute/main armhf libstdc++6 armhf 15.2.0-5ubuntu1 [731 kB] 283s Get:6 http://ftpmaster.internal/ubuntu resolute/main armhf libapt-pkg7.0 armhf 3.1.8ubuntu1 [1148 kB] 284s Get:7 http://ftpmaster.internal/ubuntu resolute/main armhf dpkg armhf 1.22.21ubuntu4 [1245 kB] 284s Get:8 http://ftpmaster.internal/ubuntu resolute/main armhf libseccomp2 armhf 2.6.0-2ubuntu3 [53.5 kB] 284s Get:9 http://ftpmaster.internal/ubuntu resolute/main armhf apt armhf 3.1.8ubuntu1 [1404 kB] 284s Get:10 http://ftpmaster.internal/ubuntu resolute/main armhf libaudit-common all 1:4.0.5-1build2 [6596 B] 284s Get:11 http://ftpmaster.internal/ubuntu resolute/main armhf libcap-ng0 armhf 0.8.5-4build3 [14.0 kB] 284s Get:12 http://ftpmaster.internal/ubuntu resolute/main armhf libaudit1 armhf 1:4.0.5-1build2 [51.7 kB] 284s Get:13 http://ftpmaster.internal/ubuntu resolute/main armhf libselinux1 armhf 3.8.1-1build2 [81.3 kB] 284s Get:14 http://ftpmaster.internal/ubuntu resolute/main armhf libsemanage-common all 3.8.1-1build1 [7916 B] 284s Get:15 http://ftpmaster.internal/ubuntu resolute/main armhf libsemanage2 armhf 3.8.1-1build1 [89.2 kB] 284s Get:16 http://ftpmaster.internal/ubuntu resolute/main armhf distro-info-data all 0.68 [7378 B] 284s Get:17 http://ftpmaster.internal/ubuntu resolute/main armhf libgirepository-1.0-1 armhf 1.86.0-6 [111 kB] 284s Get:18 http://ftpmaster.internal/ubuntu resolute/main armhf gir1.2-girepository-2.0 armhf 1.86.0-6 [25.3 kB] 284s Get:19 http://ftpmaster.internal/ubuntu resolute/main armhf libapparmor1 armhf 5.0.0~alpha1-0ubuntu8.1 [52.9 kB] 284s Get:20 http://ftpmaster.internal/ubuntu resolute/main armhf libjson-c5 armhf 0.18+ds-1.1 [33.3 kB] 284s Get:21 http://ftpmaster.internal/ubuntu resolute/main armhf libnewt0.52 armhf 0.52.25-1ubuntu2 [39.9 kB] 284s Get:22 http://ftpmaster.internal/ubuntu resolute/main armhf libp11-kit0 armhf 0.25.9-2 [265 kB] 284s Get:23 http://ftpmaster.internal/ubuntu resolute/main armhf python-apt-common all 3.0.0ubuntu2 [21.7 kB] 284s Get:24 http://ftpmaster.internal/ubuntu resolute/main armhf python3-apt armhf 3.0.0ubuntu2 [189 kB] 284s Get:25 http://ftpmaster.internal/ubuntu resolute/main armhf python3-cffi-backend armhf 1.17.1-3build1 [98.4 kB] 284s Get:26 http://ftpmaster.internal/ubuntu resolute/main armhf sudo-rs armhf 0.2.8-1ubuntu5.1 [548 kB] 284s Get:27 http://ftpmaster.internal/ubuntu resolute/main armhf whiptail armhf 0.52.25-1ubuntu2 [17.1 kB] 284s Get:28 http://ftpmaster.internal/ubuntu resolute/main armhf apparmor armhf 5.0.0~alpha1-0ubuntu8.1 [631 kB] 284s Get:29 http://ftpmaster.internal/ubuntu resolute/main armhf nftables armhf 1.1.5-2 [73.2 kB] 284s Get:30 http://ftpmaster.internal/ubuntu resolute/main armhf libnftables1 armhf 1.1.5-2 [329 kB] 284s Get:31 http://ftpmaster.internal/ubuntu resolute/main armhf libctf0 armhf 2.45-7ubuntu2 [75.7 kB] 284s Get:32 http://ftpmaster.internal/ubuntu resolute/main armhf libctf-nobfd0 armhf 2.45-7ubuntu2 [79.1 kB] 284s Get:33 http://ftpmaster.internal/ubuntu resolute/main armhf binutils-arm-linux-gnueabihf armhf 2.45-7ubuntu2 [1022 kB] 284s Get:34 http://ftpmaster.internal/ubuntu resolute/main armhf libbinutils armhf 2.45-7ubuntu2 [411 kB] 284s Get:35 http://ftpmaster.internal/ubuntu resolute/main armhf binutils armhf 2.45-7ubuntu2 [3240 B] 284s Get:36 http://ftpmaster.internal/ubuntu resolute/main armhf binutils-common armhf 2.45-7ubuntu2 [220 kB] 284s Get:37 http://ftpmaster.internal/ubuntu resolute/main armhf libsframe2 armhf 2.45-7ubuntu2 [13.4 kB] 284s Get:38 http://ftpmaster.internal/ubuntu resolute/main armhf cloud-init-base all 25.3-0ubuntu1 [625 kB] 285s Get:39 http://ftpmaster.internal/ubuntu resolute/main armhf cloud-init all 25.3-0ubuntu1 [2106 B] 285s Get:40 http://ftpmaster.internal/ubuntu resolute/main armhf python3-oauthlib all 3.3.1-1 [93.5 kB] 285s Get:41 http://ftpmaster.internal/ubuntu resolute/main armhf dpkg-dev all 1.22.21ubuntu4 [1088 kB] 285s Get:42 http://ftpmaster.internal/ubuntu resolute/main armhf libdpkg-perl all 1.22.21ubuntu4 [280 kB] 285s Get:43 http://ftpmaster.internal/ubuntu resolute/main armhf lto-disabled-list all 71 [12.5 kB] 285s Get:44 http://ftpmaster.internal/ubuntu resolute/main armhf libbrotli1 armhf 1.1.0-2build6 [320 kB] 285s Get:45 http://ftpmaster.internal/ubuntu resolute/main armhf python3-inflect all 7.5.0-1 [33.9 kB] 285s Get:46 http://ftpmaster.internal/ubuntu resolute/main armhf python3-markupsafe armhf 2.1.5-1build5 [13.3 kB] 285s Get:47 http://ftpmaster.internal/ubuntu resolute/main armhf python3-zipp all 3.23.0-1 [10.4 kB] 285s Preconfiguring packages ... 285s Fetched 11.8 MB in 2s (6353 kB/s) 285s (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 ... 61081 files and directories currently installed.) 285s Preparing to unpack .../base-files_14ubuntu4_armhf.deb ... 286s Unpacking base-files (14ubuntu4) over (14ubuntu3) ... 286s Setting up base-files (14ubuntu4) ... 286s Installing new version of config file /etc/issue ... 286s Installing new version of config file /etc/issue.net ... 286s Installing new version of config file /etc/lsb-release ... 286s motd-news.service is a disabled or a static unit not running, not starting it. 287s (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 ... 61081 files and directories currently installed.) 287s Preparing to unpack .../libatomic1_15.2.0-5ubuntu1_armhf.deb ... 287s Unpacking libatomic1:armhf (15.2.0-5ubuntu1) over (15.2.0-4ubuntu4) ... 287s Preparing to unpack .../gcc-15-base_15.2.0-5ubuntu1_armhf.deb ... 287s Unpacking gcc-15-base:armhf (15.2.0-5ubuntu1) over (15.2.0-4ubuntu4) ... 287s Setting up gcc-15-base:armhf (15.2.0-5ubuntu1) ... 287s (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 ... 61081 files and directories currently installed.) 287s Preparing to unpack .../libgcc-s1_15.2.0-5ubuntu1_armhf.deb ... 287s Unpacking libgcc-s1:armhf (15.2.0-5ubuntu1) over (15.2.0-4ubuntu4) ... 287s Setting up libgcc-s1:armhf (15.2.0-5ubuntu1) ... 287s (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 ... 61081 files and directories currently installed.) 287s Preparing to unpack .../libstdc++6_15.2.0-5ubuntu1_armhf.deb ... 287s Unpacking libstdc++6:armhf (15.2.0-5ubuntu1) over (15.2.0-4ubuntu4) ... 287s Setting up libstdc++6:armhf (15.2.0-5ubuntu1) ... 287s (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 ... 61081 files and directories currently installed.) 287s Preparing to unpack .../libapt-pkg7.0_3.1.8ubuntu1_armhf.deb ... 287s Unpacking libapt-pkg7.0:armhf (3.1.8ubuntu1) over (3.1.6ubuntu2) ... 287s Setting up libapt-pkg7.0:armhf (3.1.8ubuntu1) ... 287s (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 ... 61081 files and directories currently installed.) 287s Preparing to unpack .../dpkg_1.22.21ubuntu4_armhf.deb ... 287s Unpacking dpkg (1.22.21ubuntu4) over (1.22.21ubuntu3) ... 287s Setting up dpkg (1.22.21ubuntu4) ... 288s (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 ... 61081 files and directories currently installed.) 288s Preparing to unpack .../libseccomp2_2.6.0-2ubuntu3_armhf.deb ... 288s Unpacking libseccomp2:armhf (2.6.0-2ubuntu3) over (2.6.0-2ubuntu2) ... 288s Setting up libseccomp2:armhf (2.6.0-2ubuntu3) ... 288s (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 ... 61081 files and directories currently installed.) 288s Preparing to unpack .../apt_3.1.8ubuntu1_armhf.deb ... 288s Unpacking apt (3.1.8ubuntu1) over (3.1.6ubuntu2) ... 288s Setting up apt (3.1.8ubuntu1) ... 289s (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 ... 61081 files and directories currently installed.) 289s Preparing to unpack .../libaudit-common_1%3a4.0.5-1build2_all.deb ... 289s Unpacking libaudit-common (1:4.0.5-1build2) over (1:4.0.5-1build1) ... 289s Setting up libaudit-common (1:4.0.5-1build2) ... 289s (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 ... 61081 files and directories currently installed.) 289s Preparing to unpack .../libcap-ng0_0.8.5-4build3_armhf.deb ... 289s Unpacking libcap-ng0:armhf (0.8.5-4build3) over (0.8.5-4build2) ... 289s Setting up libcap-ng0:armhf (0.8.5-4build3) ... 289s (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 ... 61081 files and directories currently installed.) 289s Preparing to unpack .../libaudit1_1%3a4.0.5-1build2_armhf.deb ... 289s Unpacking libaudit1:armhf (1:4.0.5-1build2) over (1:4.0.5-1build1) ... 289s Setting up libaudit1:armhf (1:4.0.5-1build2) ... 289s (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 ... 61081 files and directories currently installed.) 289s Preparing to unpack .../libselinux1_3.8.1-1build2_armhf.deb ... 289s Unpacking libselinux1:armhf (3.8.1-1build2) over (3.8.1-1build1) ... 289s Setting up libselinux1:armhf (3.8.1-1build2) ... 289s (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 ... 61081 files and directories currently installed.) 289s Preparing to unpack .../libsemanage-common_3.8.1-1build1_all.deb ... 289s Unpacking libsemanage-common (3.8.1-1build1) over (3.8.1-1) ... 289s Setting up libsemanage-common (3.8.1-1build1) ... 289s (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 ... 61081 files and directories currently installed.) 289s Preparing to unpack .../libsemanage2_3.8.1-1build1_armhf.deb ... 289s Unpacking libsemanage2:armhf (3.8.1-1build1) over (3.8.1-1) ... 289s Setting up libsemanage2:armhf (3.8.1-1build1) ... 289s (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 ... 61081 files and directories currently installed.) 289s Preparing to unpack .../00-distro-info-data_0.68_all.deb ... 289s Unpacking distro-info-data (0.68) over (0.66) ... 290s Preparing to unpack .../01-libgirepository-1.0-1_1.86.0-6_armhf.deb ... 290s Unpacking libgirepository-1.0-1:armhf (1.86.0-6) over (1.84.0-1) ... 290s Preparing to unpack .../02-gir1.2-girepository-2.0_1.86.0-6_armhf.deb ... 290s Unpacking gir1.2-girepository-2.0:armhf (1.86.0-6) over (1.84.0-1) ... 290s Preparing to unpack .../03-libapparmor1_5.0.0~alpha1-0ubuntu8.1_armhf.deb ... 290s Unpacking libapparmor1:armhf (5.0.0~alpha1-0ubuntu8.1) over (5.0.0~alpha1-0ubuntu8) ... 290s Preparing to unpack .../04-libjson-c5_0.18+ds-1.1_armhf.deb ... 290s Unpacking libjson-c5:armhf (0.18+ds-1.1) over (0.18+ds-1) ... 290s Preparing to unpack .../05-libnewt0.52_0.52.25-1ubuntu2_armhf.deb ... 290s Unpacking libnewt0.52:armhf (0.52.25-1ubuntu2) over (0.52.25-1ubuntu1) ... 290s Preparing to unpack .../06-libp11-kit0_0.25.9-2_armhf.deb ... 290s Unpacking libp11-kit0:armhf (0.25.9-2) over (0.25.5-3ubuntu1) ... 290s Preparing to unpack .../07-python-apt-common_3.0.0ubuntu2_all.deb ... 290s Unpacking python-apt-common (3.0.0ubuntu2) over (3.0.0ubuntu1) ... 290s Preparing to unpack .../08-python3-apt_3.0.0ubuntu2_armhf.deb ... 290s Unpacking python3-apt (3.0.0ubuntu2) over (3.0.0ubuntu1) ... 290s Preparing to unpack .../09-python3-cffi-backend_1.17.1-3build1_armhf.deb ... 290s Unpacking python3-cffi-backend:armhf (1.17.1-3build1) over (1.17.1-3) ... 290s Preparing to unpack .../10-sudo-rs_0.2.8-1ubuntu5.1_armhf.deb ... 290s Unpacking sudo-rs (0.2.8-1ubuntu5.1) over (0.2.8-1ubuntu5) ... 290s Preparing to unpack .../11-whiptail_0.52.25-1ubuntu2_armhf.deb ... 290s Unpacking whiptail (0.52.25-1ubuntu2) over (0.52.25-1ubuntu1) ... 290s Preparing to unpack .../12-apparmor_5.0.0~alpha1-0ubuntu8.1_armhf.deb ... 292s Unpacking apparmor (5.0.0~alpha1-0ubuntu8.1) over (5.0.0~alpha1-0ubuntu8) ... 292s Preparing to unpack .../13-nftables_1.1.5-2_armhf.deb ... 292s Unpacking nftables (1.1.5-2) over (1.1.5-1) ... 292s Preparing to unpack .../14-libnftables1_1.1.5-2_armhf.deb ... 292s Unpacking libnftables1:armhf (1.1.5-2) over (1.1.5-1) ... 292s Preparing to unpack .../15-libctf0_2.45-7ubuntu2_armhf.deb ... 292s Unpacking libctf0:armhf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 293s Preparing to unpack .../16-libctf-nobfd0_2.45-7ubuntu2_armhf.deb ... 293s Unpacking libctf-nobfd0:armhf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 293s Preparing to unpack .../17-binutils-arm-linux-gnueabihf_2.45-7ubuntu2_armhf.deb ... 293s Unpacking binutils-arm-linux-gnueabihf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 293s Preparing to unpack .../18-libbinutils_2.45-7ubuntu2_armhf.deb ... 293s Unpacking libbinutils:armhf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 293s Preparing to unpack .../19-binutils_2.45-7ubuntu2_armhf.deb ... 293s Unpacking binutils (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 293s Preparing to unpack .../20-binutils-common_2.45-7ubuntu2_armhf.deb ... 293s Unpacking binutils-common:armhf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 293s Preparing to unpack .../21-libsframe2_2.45-7ubuntu2_armhf.deb ... 293s Unpacking libsframe2:armhf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 293s Preparing to unpack .../22-cloud-init-base_25.3-0ubuntu1_all.deb ... 293s Unpacking cloud-init-base (25.3-0ubuntu1) over (25.3~2g890873f5-0ubuntu2) ... 294s Preparing to unpack .../23-cloud-init_25.3-0ubuntu1_all.deb ... 294s Unpacking cloud-init (25.3-0ubuntu1) over (25.3~2g890873f5-0ubuntu2) ... 294s Preparing to unpack .../24-python3-oauthlib_3.3.1-1_all.deb ... 294s Unpacking python3-oauthlib (3.3.1-1) over (3.2.2-3) ... 294s Preparing to unpack .../25-dpkg-dev_1.22.21ubuntu4_all.deb ... 294s Unpacking dpkg-dev (1.22.21ubuntu4) over (1.22.21ubuntu3) ... 294s Preparing to unpack .../26-libdpkg-perl_1.22.21ubuntu4_all.deb ... 294s Unpacking libdpkg-perl (1.22.21ubuntu4) over (1.22.21ubuntu3) ... 294s Preparing to unpack .../27-lto-disabled-list_71_all.deb ... 294s Unpacking lto-disabled-list (71) over (69) ... 294s Preparing to unpack .../28-libbrotli1_1.1.0-2build6_armhf.deb ... 294s Unpacking libbrotli1:armhf (1.1.0-2build6) over (1.1.0-2build5) ... 294s Preparing to unpack .../29-python3-inflect_7.5.0-1_all.deb ... 294s Unpacking python3-inflect (7.5.0-1) over (7.3.1-2) ... 294s Preparing to unpack .../30-python3-markupsafe_2.1.5-1build5_armhf.deb ... 294s Unpacking python3-markupsafe (2.1.5-1build5) over (2.1.5-1build4) ... 294s Preparing to unpack .../31-python3-zipp_3.23.0-1_all.deb ... 295s Unpacking python3-zipp (3.23.0-1) over (3.21.0-1) ... 295s Setting up lto-disabled-list (71) ... 295s Setting up libapparmor1:armhf (5.0.0~alpha1-0ubuntu8.1) ... 295s Setting up libnewt0.52:armhf (0.52.25-1ubuntu2) ... 295s Setting up libnftables1:armhf (1.1.5-2) ... 295s Setting up nftables (1.1.5-2) ... 295s Setting up distro-info-data (0.68) ... 295s Setting up libsframe2:armhf (2.45-7ubuntu2) ... 295s Setting up libbrotli1:armhf (1.1.0-2build6) ... 295s Setting up binutils-common:armhf (2.45-7ubuntu2) ... 295s Setting up libctf-nobfd0:armhf (2.45-7ubuntu2) ... 295s Setting up python3-zipp (3.23.0-1) ... 295s Setting up python3-markupsafe (2.1.5-1build5) ... 295s Setting up apparmor (5.0.0~alpha1-0ubuntu8.1) ... 296s Installing new version of config file /etc/apparmor.d/fusermount3 ... 296s apparmor_parser: Unable to replace "lsb_release". apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 296s 296s apparmor_parser: Unable to replace "kmod". apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 296s 296s apparmor_parser: Unable to replace "nvidia_modprobe". apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 296s 297s Reloading AppArmor profiles 297s /sbin/apparmor_parser: Unable to replace "1password". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "Discord". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "MongoDB Compass". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "QtWebEngineProcess". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "balena-etcher". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "brave". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "buildah". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "cam". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "ch-checkns". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "ch-run". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "babeld". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "chrome". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "bwrap". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "chromium". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "vscode". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "bgpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "crun". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "bfdd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "devhelp". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "alsamixer". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "element-desktop". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "epiphany". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "evolution". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "firefox". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "flatpak". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "foliate". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "geary". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "dnstracer". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "github-desktop". /sbin/apparmor_parser: Unable to replace "goldendict". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "eigrpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "dig". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "fabricd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "hostname". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "iotop-c". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "fusermount3". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "Xorg". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "kchmviewer". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "keybase". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "lc-compliance". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "libcamerify". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "isisd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "linux-sandbox". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "gs". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "loupe". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "john". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "ldpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "lxc-attach". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "lxc-create". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "irssi". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "lxc-destroy". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "ipa_verify". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "lxc-execute". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "lxc-stop". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "lxc-unshare". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "lxc-usernsexec". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "mmdebstrap". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "lsblk". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "msedge". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "compressor". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "locale". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "lsusb". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "lsb_release". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "linux-boot-prober". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "notepadqq". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "obsidian". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "opam". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "mosquitto". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "opera". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "nhrpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "nslookup". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "mbsync". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "notify-send". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "pageedit". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "nc.openbsd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "ospf6d". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "kmod". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "nvidia_modprobe". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "ospfd". /sbin/apparmor_parser: Unable to replace "os-prober". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "podman". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "polypane". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "privacybrowser". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "pathd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "pbrd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "qcam". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "qmapshack". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "qutebrowser". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "QtWebEngineProcess". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "plasmashell". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "pimd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "rpm". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "rootlesskit". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "pim6d". /sbin/apparmor_parser: Unable to replace "rssguard". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "runc". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "qpdf". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "sbuild". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "sbuild-abort". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "ripngd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "ripd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "sbuild-adduser". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "sbuild-apt". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "sbuild-checkpackages". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "sbuild-clean". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "sbuild-createchroot". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "sbuild-destroychroot". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "sbuild-distupgrade". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "sbuild-shell". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "sbuild-update". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "sbuild-hold". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "sbuild-unhold". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "scide". /sbin/apparmor_parser: Unable to replace "signal-desktop". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "slack". /sbin/apparmor_parser: Unable to replace "sbuild-upgrade". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "slirp4netns". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "surfshark". /sbin/apparmor_parser: Unable to replace "steam". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "stress-ng". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "proftpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "systemd-coredump". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "thunderbird". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "ip". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "openvpn". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "trinity". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "ssh-keyscan". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "tinyproxy". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "tup". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "tuxedo-control-center". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "systemd-detect-virt". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 297s /sbin/apparmor_parser: Unable to replace "staticd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 297s 298s /sbin/apparmor_parser: Unable to replace "unprivileged_userns". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "userbindmount". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "mx-extract". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "rygel". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "unix-chkpwd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "/usr/bin/man". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "ubuntu_pro_apt_news". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "uwsgi-core". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "vdens". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "virtiofsd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "vivaldi-bin". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "vpnns". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "cmds". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "tnftp". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "/usr/sbin/chronyd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "vrrpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "wg". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "wike". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "dumpcap". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "tshark". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "wpcom". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "who". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "rsyslogd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "tcpdump". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "znc". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "ip". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "wg-quick". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "apt_methods". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "ubuntu_pro_esm_cache". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s /sbin/apparmor_parser: Unable to replace "transmission-cli". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 298s 298s Error: At least one profile failed to load 298s Setting up python3-inflect (7.5.0-1) ... 298s Setting up python3-oauthlib (3.3.1-1) ... 298s Setting up libp11-kit0:armhf (0.25.9-2) ... 298s Setting up libatomic1:armhf (15.2.0-5ubuntu1) ... 298s Setting up libdpkg-perl (1.22.21ubuntu4) ... 298s Setting up whiptail (0.52.25-1ubuntu2) ... 298s Setting up python-apt-common (3.0.0ubuntu2) ... 298s Setting up libgirepository-1.0-1:armhf (1.86.0-6) ... 298s Setting up libbinutils:armhf (2.45-7ubuntu2) ... 298s Setting up libjson-c5:armhf (0.18+ds-1.1) ... 298s Setting up sudo-rs (0.2.8-1ubuntu5.1) ... 298s Setting up python3-cffi-backend:armhf (1.17.1-3build1) ... 298s Setting up libctf0:armhf (2.45-7ubuntu2) ... 298s Setting up python3-apt (3.0.0ubuntu2) ... 299s Setting up cloud-init-base (25.3-0ubuntu1) ... 300s Setting up gir1.2-girepository-2.0:armhf (1.86.0-6) ... 300s Setting up binutils-arm-linux-gnueabihf (2.45-7ubuntu2) ... 300s Setting up cloud-init (25.3-0ubuntu1) ... 300s Setting up binutils (2.45-7ubuntu2) ... 300s Setting up dpkg-dev (1.22.21ubuntu4) ... 300s Processing triggers for procps (2:4.0.4-8ubuntu3) ... 300s Processing triggers for install-info (7.1.1-1ubuntu1) ... 301s Processing triggers for libc-bin (2.42-0ubuntu3) ... 301s Processing triggers for rsyslog (8.2504.0-1ubuntu2) ... 301s Processing triggers for systemd (257.9-0ubuntu2) ... 301s Processing triggers for man-db (2.13.1-1) ... 303s Processing triggers for plymouth-theme-ubuntu-text (24.004.60+git20250831.4a3c171d-0ubuntu1) ... 306s Reading package lists... 306s Building dependency tree... 306s Reading state information... 307s Solving dependencies... 307s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 309s autopkgtest [00:46:53]: rebooting testbed after setup commands that affected boot 373s Reading package lists... 373s Building dependency tree... 373s Reading state information... 374s Solving dependencies... 374s The following NEW packages will be installed: 374s dictionaries-common emacsen-common gettext hunspell-en-us libapr1t64 374s libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data libgomp1 374s libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 libxslt1.1 374s python3-aeidon python3-all python3-bs4 python3-charset-normalizer 374s python3-cheroot python3-cwcwidth python3-dateutil python3-diff-match-patch 374s python3-enchant python3-iniconfig python3-iniparse python3-levenshtein 374s python3-lxml python3-mistletoe python3-packaging python3-phply 374s python3-pluggy python3-ply python3-pycountry python3-pytest python3-pytz 374s python3-rapidfuzz python3-ruamel.yaml python3-ruamel.yaml.clib 374s python3-soupsieve python3-syrupy python3-translate python3-tz 374s python3-vobject python3-xapian subversion 375s 0 upgraded, 47 newly installed, 0 to remove and 0 not upgraded. 375s Need to get 11.6 MB of archives. 375s After this operation, 48.9 MB of additional disk space will be used. 375s Get:1 http://ftpmaster.internal/ubuntu resolute/main armhf emacsen-common all 3.0.8 [13.9 kB] 375s Get:2 http://ftpmaster.internal/ubuntu resolute/main armhf dictionaries-common all 1.30.10 [178 kB] 375s Get:3 http://ftpmaster.internal/ubuntu resolute/main armhf libgomp1 armhf 15.2.0-5ubuntu1 [129 kB] 375s Get:4 http://ftpmaster.internal/ubuntu resolute/main armhf gettext armhf 0.23.1-2build2 [1059 kB] 375s Get:5 http://ftpmaster.internal/ubuntu resolute/main armhf hunspell-en-us all 1:2020.12.07-4 [585 kB] 375s Get:6 http://ftpmaster.internal/ubuntu resolute/main armhf libapr1t64 armhf 1.7.5-1 [88.2 kB] 375s Get:7 http://ftpmaster.internal/ubuntu resolute/main armhf libaprutil1t64 armhf 1.6.3-3ubuntu2 [83.1 kB] 375s Get:8 http://ftpmaster.internal/ubuntu resolute/main armhf libaspell15 armhf 0.60.8.1-4 [306 kB] 375s Get:9 http://ftpmaster.internal/ubuntu resolute/main armhf libhunspell-1.7-0 armhf 1.7.2+really1.7.2-10build3 [307 kB] 375s Get:10 http://ftpmaster.internal/ubuntu resolute/main armhf libenchant-2-2 armhf 2.8.2+dfsg1-3 [51.3 kB] 375s Get:11 http://ftpmaster.internal/ubuntu resolute/main armhf libexttextcat-data all 3.4.7-1ubuntu1 [193 kB] 375s Get:12 http://ftpmaster.internal/ubuntu resolute/universe armhf libserf-1-1 armhf 1.3.10-3ubuntu1 [40.5 kB] 375s Get:13 http://ftpmaster.internal/ubuntu resolute/universe armhf libutf8proc3 armhf 2.10.0-2 [70.0 kB] 375s Get:14 http://ftpmaster.internal/ubuntu resolute/universe armhf libsvn1 armhf 1.14.5-3 [1202 kB] 375s Get:15 http://ftpmaster.internal/ubuntu resolute/universe armhf libxapian30 armhf 1.4.29-3 [690 kB] 375s Get:16 http://ftpmaster.internal/ubuntu resolute/main armhf libxslt1.1 armhf 1.1.43-0.1 [146 kB] 375s Get:17 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-aeidon all 1.15-2 [231 kB] 375s Get:18 http://ftpmaster.internal/ubuntu resolute/main armhf python3-all armhf 3.13.7-1 [884 B] 375s Get:19 http://ftpmaster.internal/ubuntu resolute/main armhf python3-soupsieve all 2.7-2 [33.6 kB] 375s Get:20 http://ftpmaster.internal/ubuntu resolute/main armhf python3-bs4 all 4.13.4-3 [137 kB] 375s Get:21 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-charset-normalizer armhf 3.4.2-1 [122 kB] 375s Get:22 http://ftpmaster.internal/ubuntu resolute/main armhf python3-cheroot all 10.0.1+ds1-4 [78.6 kB] 375s Get:23 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-cwcwidth armhf 0.1.10-1build1 [20.5 kB] 375s Get:24 http://ftpmaster.internal/ubuntu resolute/main armhf python3-dateutil all 2.9.0-4 [80.3 kB] 376s Get:25 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-diff-match-patch all 20241021-1 [33.6 kB] 376s Get:26 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-enchant all 3.3.0~rc1-1 [35.1 kB] 376s Get:27 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-iniconfig all 1.1.1-2 [6024 B] 376s Get:28 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-rapidfuzz armhf 3.12.2+ds-1 [1249 kB] 376s Get:29 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-levenshtein armhf 0.27.1-2 [139 kB] 376s Get:30 http://ftpmaster.internal/ubuntu resolute/main armhf python3-lxml armhf 6.0.1-1 [1430 kB] 376s Get:31 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-mistletoe all 1.4.0-1 [38.2 kB] 376s Get:32 http://ftpmaster.internal/ubuntu resolute/main armhf python3-packaging all 25.0-1 [52.8 kB] 376s Get:33 http://ftpmaster.internal/ubuntu resolute/main armhf python3-ply all 3.11-9 [45.8 kB] 376s Get:34 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-phply all 1.2.6-1 [50.5 kB] 376s Get:35 http://ftpmaster.internal/ubuntu resolute-proposed/universe armhf python3-pluggy all 1.6.0-1 [21.0 kB] 376s Get:36 http://ftpmaster.internal/ubuntu resolute-proposed/universe armhf python3-pytest all 8.4.2-1 [268 kB] 376s Get:37 http://ftpmaster.internal/ubuntu resolute/main armhf python3-pytz all 2025.2-3 [163 kB] 376s Get:38 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-ruamel.yaml.clib armhf 0.2.12+ds-1build1 [130 kB] 376s Get:39 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-ruamel.yaml all 0.18.10+ds-1 [127 kB] 376s Get:40 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-syrupy all 4.9.1-1 [47.3 kB] 376s Get:41 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-translate all 3.15.1-1 [319 kB] 376s Get:42 http://ftpmaster.internal/ubuntu resolute/main armhf python3-tz all 2025.2-3 [1866 B] 376s Get:43 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-vobject all 0.9.8+dfsg-2 [41.3 kB] 376s Get:44 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-xapian armhf 1.4.29-1build1 [607 kB] 376s Get:45 http://ftpmaster.internal/ubuntu resolute/universe armhf subversion armhf 1.14.5-3 [893 kB] 376s Get:46 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-iniparse all 0.5.1-1 [21.2 kB] 376s Get:47 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-pycountry all 24.6.1+ds1-1 [30.0 kB] 376s Preconfiguring packages ... 376s Fetched 11.6 MB in 2s (7686 kB/s) 376s Selecting previously unselected package emacsen-common. 377s (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 ... 61097 files and directories currently installed.) 377s Preparing to unpack .../00-emacsen-common_3.0.8_all.deb ... 377s Unpacking emacsen-common (3.0.8) ... 377s Selecting previously unselected package dictionaries-common. 377s Preparing to unpack .../01-dictionaries-common_1.30.10_all.deb ... 377s Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common' 377s Unpacking dictionaries-common (1.30.10) ... 377s Selecting previously unselected package libgomp1:armhf. 377s Preparing to unpack .../02-libgomp1_15.2.0-5ubuntu1_armhf.deb ... 377s Unpacking libgomp1:armhf (15.2.0-5ubuntu1) ... 377s Selecting previously unselected package gettext. 377s Preparing to unpack .../03-gettext_0.23.1-2build2_armhf.deb ... 377s Unpacking gettext (0.23.1-2build2) ... 377s Selecting previously unselected package hunspell-en-us. 377s Preparing to unpack .../04-hunspell-en-us_1%3a2020.12.07-4_all.deb ... 377s Unpacking hunspell-en-us (1:2020.12.07-4) ... 377s Selecting previously unselected package libapr1t64:armhf. 377s Preparing to unpack .../05-libapr1t64_1.7.5-1_armhf.deb ... 377s Unpacking libapr1t64:armhf (1.7.5-1) ... 377s Selecting previously unselected package libaprutil1t64:armhf. 377s Preparing to unpack .../06-libaprutil1t64_1.6.3-3ubuntu2_armhf.deb ... 377s Unpacking libaprutil1t64:armhf (1.6.3-3ubuntu2) ... 377s Selecting previously unselected package libaspell15:armhf. 377s Preparing to unpack .../07-libaspell15_0.60.8.1-4_armhf.deb ... 377s Unpacking libaspell15:armhf (0.60.8.1-4) ... 377s Selecting previously unselected package libhunspell-1.7-0:armhf. 377s Preparing to unpack .../08-libhunspell-1.7-0_1.7.2+really1.7.2-10build3_armhf.deb ... 377s Unpacking libhunspell-1.7-0:armhf (1.7.2+really1.7.2-10build3) ... 377s Selecting previously unselected package libenchant-2-2:armhf. 377s Preparing to unpack .../09-libenchant-2-2_2.8.2+dfsg1-3_armhf.deb ... 377s Unpacking libenchant-2-2:armhf (2.8.2+dfsg1-3) ... 377s Selecting previously unselected package libexttextcat-data. 377s Preparing to unpack .../10-libexttextcat-data_3.4.7-1ubuntu1_all.deb ... 377s Unpacking libexttextcat-data (3.4.7-1ubuntu1) ... 377s Selecting previously unselected package libserf-1-1:armhf. 377s Preparing to unpack .../11-libserf-1-1_1.3.10-3ubuntu1_armhf.deb ... 377s Unpacking libserf-1-1:armhf (1.3.10-3ubuntu1) ... 377s Selecting previously unselected package libutf8proc3:armhf. 377s Preparing to unpack .../12-libutf8proc3_2.10.0-2_armhf.deb ... 377s Unpacking libutf8proc3:armhf (2.10.0-2) ... 377s Selecting previously unselected package libsvn1:armhf. 377s Preparing to unpack .../13-libsvn1_1.14.5-3_armhf.deb ... 377s Unpacking libsvn1:armhf (1.14.5-3) ... 377s Selecting previously unselected package libxapian30:armhf. 377s Preparing to unpack .../14-libxapian30_1.4.29-3_armhf.deb ... 377s Unpacking libxapian30:armhf (1.4.29-3) ... 377s Selecting previously unselected package libxslt1.1:armhf. 377s Preparing to unpack .../15-libxslt1.1_1.1.43-0.1_armhf.deb ... 377s Unpacking libxslt1.1:armhf (1.1.43-0.1) ... 377s Selecting previously unselected package python3-aeidon. 377s Preparing to unpack .../16-python3-aeidon_1.15-2_all.deb ... 377s Unpacking python3-aeidon (1.15-2) ... 377s Selecting previously unselected package python3-all. 377s Preparing to unpack .../17-python3-all_3.13.7-1_armhf.deb ... 377s Unpacking python3-all (3.13.7-1) ... 377s Selecting previously unselected package python3-soupsieve. 377s Preparing to unpack .../18-python3-soupsieve_2.7-2_all.deb ... 377s Unpacking python3-soupsieve (2.7-2) ... 377s Selecting previously unselected package python3-bs4. 377s Preparing to unpack .../19-python3-bs4_4.13.4-3_all.deb ... 377s Unpacking python3-bs4 (4.13.4-3) ... 377s Selecting previously unselected package python3-charset-normalizer. 377s Preparing to unpack .../20-python3-charset-normalizer_3.4.2-1_armhf.deb ... 377s Unpacking python3-charset-normalizer (3.4.2-1) ... 377s Selecting previously unselected package python3-cheroot. 377s Preparing to unpack .../21-python3-cheroot_10.0.1+ds1-4_all.deb ... 377s Unpacking python3-cheroot (10.0.1+ds1-4) ... 377s Selecting previously unselected package python3-cwcwidth. 377s Preparing to unpack .../22-python3-cwcwidth_0.1.10-1build1_armhf.deb ... 377s Unpacking python3-cwcwidth (0.1.10-1build1) ... 378s Selecting previously unselected package python3-dateutil. 378s Preparing to unpack .../23-python3-dateutil_2.9.0-4_all.deb ... 378s Unpacking python3-dateutil (2.9.0-4) ... 378s Selecting previously unselected package python3-diff-match-patch. 378s Preparing to unpack .../24-python3-diff-match-patch_20241021-1_all.deb ... 378s Unpacking python3-diff-match-patch (20241021-1) ... 378s Selecting previously unselected package python3-enchant. 378s Preparing to unpack .../25-python3-enchant_3.3.0~rc1-1_all.deb ... 378s Unpacking python3-enchant (3.3.0~rc1-1) ... 378s Selecting previously unselected package python3-iniconfig. 378s Preparing to unpack .../26-python3-iniconfig_1.1.1-2_all.deb ... 378s Unpacking python3-iniconfig (1.1.1-2) ... 378s Selecting previously unselected package python3-rapidfuzz. 378s Preparing to unpack .../27-python3-rapidfuzz_3.12.2+ds-1_armhf.deb ... 378s Unpacking python3-rapidfuzz (3.12.2+ds-1) ... 378s Selecting previously unselected package python3-levenshtein. 378s Preparing to unpack .../28-python3-levenshtein_0.27.1-2_armhf.deb ... 378s Unpacking python3-levenshtein (0.27.1-2) ... 378s Selecting previously unselected package python3-lxml:armhf. 378s Preparing to unpack .../29-python3-lxml_6.0.1-1_armhf.deb ... 378s Unpacking python3-lxml:armhf (6.0.1-1) ... 378s Selecting previously unselected package python3-mistletoe. 378s Preparing to unpack .../30-python3-mistletoe_1.4.0-1_all.deb ... 378s Unpacking python3-mistletoe (1.4.0-1) ... 378s Selecting previously unselected package python3-packaging. 378s Preparing to unpack .../31-python3-packaging_25.0-1_all.deb ... 378s Unpacking python3-packaging (25.0-1) ... 378s Selecting previously unselected package python3-ply. 378s Preparing to unpack .../32-python3-ply_3.11-9_all.deb ... 378s Unpacking python3-ply (3.11-9) ... 378s Selecting previously unselected package python3-phply. 378s Preparing to unpack .../33-python3-phply_1.2.6-1_all.deb ... 378s Unpacking python3-phply (1.2.6-1) ... 378s Selecting previously unselected package python3-pluggy. 378s Preparing to unpack .../34-python3-pluggy_1.6.0-1_all.deb ... 378s Unpacking python3-pluggy (1.6.0-1) ... 378s Selecting previously unselected package python3-pytest. 378s Preparing to unpack .../35-python3-pytest_8.4.2-1_all.deb ... 378s Unpacking python3-pytest (8.4.2-1) ... 378s Selecting previously unselected package python3-pytz. 378s Preparing to unpack .../36-python3-pytz_2025.2-3_all.deb ... 378s Unpacking python3-pytz (2025.2-3) ... 378s Selecting previously unselected package python3-ruamel.yaml.clib. 378s Preparing to unpack .../37-python3-ruamel.yaml.clib_0.2.12+ds-1build1_armhf.deb ... 378s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 378s Selecting previously unselected package python3-ruamel.yaml. 378s Preparing to unpack .../38-python3-ruamel.yaml_0.18.10+ds-1_all.deb ... 378s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ... 378s Selecting previously unselected package python3-syrupy. 378s Preparing to unpack .../39-python3-syrupy_4.9.1-1_all.deb ... 378s Unpacking python3-syrupy (4.9.1-1) ... 378s Selecting previously unselected package python3-translate. 378s Preparing to unpack .../40-python3-translate_3.15.1-1_all.deb ... 378s Unpacking python3-translate (3.15.1-1) ... 378s Selecting previously unselected package python3-tz. 378s Preparing to unpack .../41-python3-tz_2025.2-3_all.deb ... 378s Unpacking python3-tz (2025.2-3) ... 378s Selecting previously unselected package python3-vobject. 378s Preparing to unpack .../42-python3-vobject_0.9.8+dfsg-2_all.deb ... 378s Unpacking python3-vobject (0.9.8+dfsg-2) ... 378s Selecting previously unselected package python3-xapian. 378s Preparing to unpack .../43-python3-xapian_1.4.29-1build1_armhf.deb ... 378s Unpacking python3-xapian (1.4.29-1build1) ... 379s Selecting previously unselected package subversion. 379s Preparing to unpack .../44-subversion_1.14.5-3_armhf.deb ... 379s Unpacking subversion (1.14.5-3) ... 379s Selecting previously unselected package python3-iniparse. 379s Preparing to unpack .../45-python3-iniparse_0.5.1-1_all.deb ... 379s Unpacking python3-iniparse (0.5.1-1) ... 379s Selecting previously unselected package python3-pycountry. 379s Preparing to unpack .../46-python3-pycountry_24.6.1+ds1-1_all.deb ... 379s Unpacking python3-pycountry (24.6.1+ds1-1) ... 379s Setting up python3-iniconfig (1.1.1-2) ... 379s Setting up libxapian30:armhf (1.4.29-3) ... 379s Setting up python3-rapidfuzz (3.12.2+ds-1) ... 379s Setting up python3-diff-match-patch (20241021-1) ... 379s Setting up python3-aeidon (1.15-2) ... 380s Setting up libutf8proc3:armhf (2.10.0-2) ... 380s Setting up libaspell15:armhf (0.60.8.1-4) ... 380s Setting up python3-charset-normalizer (3.4.2-1) ... 380s Setting up python3-ply (3.11-9) ... 380s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 380s Setting up python3-all (3.13.7-1) ... 380s Setting up python3-pytz (2025.2-3) ... 380s Setting up libgomp1:armhf (15.2.0-5ubuntu1) ... 380s Setting up python3-tz (2025.2-3) ... 380s Setting up python3-packaging (25.0-1) ... 380s Setting up emacsen-common (3.0.8) ... 380s Setting up python3-cheroot (10.0.1+ds1-4) ... 381s Setting up python3-pycountry (24.6.1+ds1-1) ... 381s Setting up python3-xapian (1.4.29-1build1) ... 381s Setting up python3-cwcwidth (0.1.10-1build1) ... 381s Setting up python3-pluggy (1.6.0-1) ... 381s Setting up python3-ruamel.yaml (0.18.10+ds-1) ... 382s Setting up python3-mistletoe (1.4.0-1) ... 382s Setting up libexttextcat-data (3.4.7-1ubuntu1) ... 382s Setting up libapr1t64:armhf (1.7.5-1) ... 382s Setting up libxslt1.1:armhf (1.1.43-0.1) ... 382s Setting up python3-dateutil (2.9.0-4) ... 382s Setting up python3-levenshtein (0.27.1-2) ... 382s Setting up libhunspell-1.7-0:armhf (1.7.2+really1.7.2-10build3) ... 382s Setting up python3-soupsieve (2.7-2) ... 382s Setting up python3-iniparse (0.5.1-1) ... 382s Setting up libaprutil1t64:armhf (1.6.3-3ubuntu2) ... 382s Setting up python3-vobject (0.9.8+dfsg-2) ... 383s Setting up gettext (0.23.1-2build2) ... 383s Setting up python3-phply (1.2.6-1) ... 383s Setting up dictionaries-common (1.30.10) ... 383s Setting up python3-pytest (8.4.2-1) ... 384s Setting up python3-syrupy (4.9.1-1) ... 384s Setting up libserf-1-1:armhf (1.3.10-3ubuntu1) ... 384s Setting up python3-bs4 (4.13.4-3) ... 384s Setting up python3-lxml:armhf (6.0.1-1) ... 384s Setting up hunspell-en-us (1:2020.12.07-4) ... 384s Setting up libsvn1:armhf (1.14.5-3) ... 384s Setting up libenchant-2-2:armhf (2.8.2+dfsg1-3) ... 384s Setting up subversion (1.14.5-3) ... 384s Setting up python3-enchant (3.3.0~rc1-1) ... 385s Setting up python3-translate (3.15.1-1) ... 385s Processing triggers for libc-bin (2.42-0ubuntu3) ... 385s Processing triggers for man-db (2.13.1-1) ... 386s Processing triggers for install-info (7.1.1-1ubuntu1) ... 386s Processing triggers for dictionaries-common (1.30.10) ... 407s autopkgtest [00:48:31]: test python3-translate: [----------------------- 410s ============================= test session starts ============================== 410s platform linux -- Python 3.13.7, pytest-8.4.2, pluggy-1.6.0 -- /usr/bin/python3.13 410s cachedir: .pytest_cache 410s rootdir: /tmp/autopkgtest.SjMO23/autopkgtest_tmp 410s plugins: typeguard-4.4.2, syrupy-4.9.1 416s collecting ... collected 3383 items / 2 skipped 416s 416s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff PASSED [ 0%] 416s tests/odf_xliff/test_odf_xliff.py::test_roundtrip PASSED [ 0%] 417s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff2_inline PASSED [ 0%] 417s tests/translate/convert/test_accesskey.py::test_get_label_and_accesskey PASSED [ 0%] 417s tests/translate/convert/test_accesskey.py::test_extract_bad_accesskeys PASSED [ 0%] 417s tests/translate/convert/test_accesskey.py::test_ignore_entities PASSED [ 0%] 417s tests/translate/convert/test_accesskey.py::test_alternate_accesskey_marker PASSED [ 0%] 417s tests/translate/convert/test_accesskey.py::test_unicode PASSED [ 0%] 417s tests/translate/convert/test_accesskey.py::test_numeric PASSED [ 0%] 417s tests/translate/convert/test_accesskey.py::test_empty_string PASSED [ 0%] 417s tests/translate/convert/test_accesskey.py::test_end_of_string PASSED [ 0%] 417s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey PASSED [ 0%] 417s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey_different_capitals PASSED [ 0%] 417s tests/translate/convert/test_accesskey.py::test_uncombinable PASSED [ 0%] 417s tests/translate/convert/test_accesskey.py::test_accesskey_already_in_text PASSED [ 0%] 417s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_no_template_units PASSED [ 0%] 417s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_template_units PASSED [ 0%] 417s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_no_template_units PASSED [ 0%] 417s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_template_units PASSED [ 0%] 417s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_help PASSED [ 0%] 417s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid PASSED [ 0%] 417s tests/translate/convert/test_convert.py::TestConvertCommand::test_help PASSED [ 0%] 417s tests/translate/convert/test_csv2po.py::test_replacestrings PASSED [ 0%] 417s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity PASSED [ 0%] 417s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity_with_template PASSED [ 0%] 417s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_newlines PASSED [ 0%] 417s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_tabs PASSED [ 0%] 417s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_quotes PASSED [ 0%] 417s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_empties PASSED [ 0%] 417s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_kdecomment PASSED [ 0%] 417s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_escaped_newlines PASSED [ 0%] 417s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity PASSED [ 0%] 417s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity_with_template PASSED [ 0%] 417s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_newlines PASSED [ 1%] 417s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_tabs PASSED [ 1%] 417s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_quotes PASSED [ 1%] 417s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_empties PASSED [ 1%] 417s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_kdecomment PASSED [ 1%] 417s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_escaped_newlines PASSED [ 1%] 417s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_help PASSED [ 1%] 417s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_simpleentity PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_convertdtd PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_apos PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_quotes PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_two_empty_entities PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity_translated PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisaton_note_simple PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisation_note_merge PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_simple PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_label PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_onlyentity PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_commentedout PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_spaces_at_start_of_dtd_lines PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_folding PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_mismatch PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_carriage_return_in_multiline_dtd PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_with_blankline PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_closing_quotes PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_preserving_spaces PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_escaping_newline_tabs PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_abandoned_accelerator PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_unassociable_accelerator PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_changed_labels_and_accelerators PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence XFAIL [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_exclude_entity_includes PASSED [ 1%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_linewraps PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merging_with_new_untranslated PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merge_without_template PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_simpleentity PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_convertdtd PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_apos PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_quotes PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_two_empty_entities PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity_translated PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisaton_note_simple PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisation_note_merge PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_simple PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_label PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_onlyentity PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_commentedout PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_spaces_at_start_of_dtd_lines PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_folding PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_mismatch PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_carriage_return_in_multiline_dtd PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_with_blankline PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_closing_quotes PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_preserving_spaces PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_escaping_newline_tabs PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_abandoned_accelerator PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_unassociable_accelerator PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_changed_labels_and_accelerators PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence XFAIL [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_exclude_entity_includes PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_linewraps PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merging_with_new_untranslated PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merge_without_template PASSED [ 2%] 417s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_help PASSED [ 2%] 417s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_defaults PASSED [ 2%] 417s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_root_name PASSED [ 3%] 417s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_value_name PASSED [ 3%] 417s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_key PASSED [ 3%] 417s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_default_namespace PASSED [ 3%] 417s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_namespace_prefix PASSED [ 3%] 417s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_all_parameters PASSED [ 3%] 417s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_empty_file_is_empty_store PASSED [ 3%] 417s tests/translate/convert/test_flatxml2po.py::TestFlatXML2POCommand::test_help PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_extract_lang_attribute_from_html_tag PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title_with_linebreak PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_meta PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_br PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak_and_embedded_br PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_uppercase_html PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div_with_linebreaks PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a_with_linebreak PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_sequence_of_anchor_elements PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_img_empty PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img_inside_a PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_table_summary PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_simple PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_complex PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_empty PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_address PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings_with_linebreaks PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dt PASSED [ 3%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dd PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_span PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_ul PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_lists PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_duplicates PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiline_reflow PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_tags PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_carriage_return PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_encoding_latin1 PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_strip_html PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_text PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_attributes PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_charrefs PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiple_php PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_multiline PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_with_embedded_html PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_comments PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2PO::test_attribute_without_value PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_extract_lang_attribute_from_html_tag PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title_with_linebreak PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_meta PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_br PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak_and_embedded_br PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_uppercase_html PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div_with_linebreaks PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a_with_linebreak PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_sequence_of_anchor_elements PASSED [ 4%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_img_empty PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img_inside_a PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_table_summary PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_simple PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_complex PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_empty PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_address PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings_with_linebreaks PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dt PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dd PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_span PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_ul PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_lists PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_duplicates PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiline_reflow PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_tags PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_carriage_return PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_encoding_latin1 PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_strip_html PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_text PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_attributes PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_charrefs PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiple_php PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_multiline PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_with_embedded_html PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_comments PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_attribute_without_value PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_help PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_single PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile PASSED [ 5%] 417s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile_to_stdout PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_convert_empty_file PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_translations PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_summary PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_description PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_location PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_comment PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_template_duplicate_style PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_misaligned_files PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_blank_msgstr PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_duplicate_style PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_convert_empty_file PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_translations PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_summary PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_description PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_location PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_comment PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_template_duplicate_style PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_misaligned_files PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_blank_msgstr PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_duplicate_style PASSED [ 6%] 417s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_help PASSED [ 6%] 417s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_help PASSED [ 6%] 417s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_convert PASSED [ 6%] 417s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_empty_file PASSED [ 6%] 417s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_no_translation PASSED [ 6%] 417s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_simple PASSED [ 6%] 417s tests/translate/convert/test_ini2po.py::TestIni2PO::test_no_duplicates PASSED [ 6%] 417s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_simple PASSED [ 6%] 417s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_misaligned_files PASSED [ 6%] 417s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_blank_msgstr PASSED [ 6%] 417s tests/translate/convert/test_ini2po.py::TestIni2PO::test_dialects_inno PASSED [ 6%] 417s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_empty_file PASSED [ 7%] 417s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_no_translation PASSED [ 7%] 417s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_simple PASSED [ 7%] 417s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_no_duplicates PASSED [ 7%] 417s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_simple PASSED [ 7%] 417s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_misaligned_files PASSED [ 7%] 417s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_blank_msgstr PASSED [ 7%] 417s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_dialects_inno PASSED [ 7%] 417s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_help PASSED [ 7%] 417s tests/translate/convert/test_json2po.py::TestJson2PO::test_simple PASSED [ 7%] 417s tests/translate/convert/test_json2po.py::TestJson2PO::test_three_same_keys PASSED [ 7%] 417s tests/translate/convert/test_json2po.py::TestJson2PO::test_filter PASSED [ 7%] 417s tests/translate/convert/test_json2po.py::TestJson2PO::test_miltiple_units PASSED [ 7%] 417s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_simple PASSED [ 7%] 417s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_three_same_keys PASSED [ 7%] 417s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_filter PASSED [ 7%] 417s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_miltiple_units PASSED [ 7%] 417s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_help PASSED [ 7%] 417s tests/translate/convert/test_md2po.py::TestMD2PO::test_help PASSED [ 7%] 417s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_single PASSED [ 7%] 417s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_onefile PASSED [ 7%] 417s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_single PASSED [ 7%] 417s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_onefile PASSED [ 7%] 417s tests/translate/convert/test_moz2po.py::TestMoz2POCommand::test_help PASSED [ 7%] 417s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_simpleentry PASSED [ 7%] 417s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_uncomment_contributors PASSED [ 7%] 417s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_convert_empty PASSED [ 7%] 417s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_string PASSED [ 7%] 417s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_merge PASSED [ 7%] 417s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_entry PASSED [ 7%] 417s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_comment PASSED [ 7%] 417s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_meta_tags PASSED [ 7%] 417s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_keep_duplicates PASSED [ 7%] 417s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_drop_duplicates PASSED [ 7%] 417s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_convert_empty PASSED [ 8%] 417s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_string PASSED [ 8%] 417s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_merge PASSED [ 8%] 417s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_entry PASSED [ 8%] 417s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_comment PASSED [ 8%] 417s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_meta_tags PASSED [ 8%] 417s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_keep_duplicates PASSED [ 8%] 417s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_drop_duplicates PASSED [ 8%] 417s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_help PASSED [ 8%] 417s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_help PASSED [ 8%] 417s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_convert PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2PO::test_simpleentity PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_escape PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_whitespaceonly PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2PO::test_double_escapes PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes_helpcontent2 PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2PO::test_msgid_bug_error_address PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2PO::test_x_comment_inclusion PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simpleentity PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_double_escapes PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_help PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_preserve_filename PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 8%] 417s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates PASSED [ 8%] 417s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_simpleentity PASSED [ 8%] 417s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes PASSED [ 9%] 417s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_escape PASSED [ 9%] 417s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_whitespaceonly PASSED [ 9%] 417s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_double_escapes PASSED [ 9%] 417s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes_helpcontent2 PASSED [ 9%] 417s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_x_comment_inclusion PASSED [ 9%] 417s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_msgid_bug_error_address PASSED [ 9%] 418s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simpleentity PASSED [ 9%] 418s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes PASSED [ 9%] 418s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 9%] 418s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 9%] 418s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_double_escapes PASSED [ 9%] 418s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 9%] 418s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 9%] 418s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 9%] 418s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_help PASSED [ 9%] 418s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_preserve_filename PASSED [ 9%] 418s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf PASSED [ 9%] 418s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 418s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 418s tests/translate/convert/test_php2po.py::TestPhp2PO::test_simpleentry PASSED [ 9%] 418s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphp PASSED [ 9%] 418s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphptemplate PASSED [ 9%] 418s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpmissing PASSED [ 9%] 418s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpempty PASSED [ 9%] 418s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unicode PASSED [ 9%] 418s tests/translate/convert/test_php2po.py::TestPhp2PO::test_multiline PASSED [ 9%] 418s tests/translate/convert/test_php2po.py::TestPhp2PO::test_comments_before PASSED [ 9%] 418s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry PASSED [ 9%] 418s tests/translate/convert/test_php2po.py::TestPhp2PO::test_hash_comment_with_equals PASSED [ 9%] 418s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry_translated PASSED [ 9%] 418s tests/translate/convert/test_php2po.py::TestPhp2PO::test_newlines_in_value PASSED [ 9%] 418s tests/translate/convert/test_php2po.py::TestPhp2PO::test_spaces_in_name PASSED [ 9%] 418s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_array PASSED [ 9%] 418s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_array PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_nested_arrays PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_nested_arrays PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_simpleentry PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphp PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphptemplate PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpmissing PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpempty PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unicode PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_multiline PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_comments_before PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_hash_comment_with_equals PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry_translated PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_newlines_in_value PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_spaces_in_name PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_array PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_array PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_nested_arrays PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_nested_arrays PASSED [ 10%] 418s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_help PASSED [ 10%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_simpleentity PASSED [ 10%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_multiline PASSED [ 10%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapednewlines PASSED [ 10%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedtabs PASSED [ 10%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedquotes PASSED [ 10%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedescape PASSED [ 10%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_singlequotes PASSED [ 10%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_empties PASSED [ 10%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_kdecomments PASSED [ 10%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_simpleentity PASSED [ 10%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_multiline PASSED [ 10%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapednewlines PASSED [ 10%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedtabs PASSED [ 10%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedquotes PASSED [ 11%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedescape PASSED [ 11%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_singlequotes PASSED [ 11%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_empties PASSED [ 11%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_kdecomments PASSED [ 11%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_help PASSED [ 11%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder PASSED [ 11%] 418s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_joinlines PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_escapedstr PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_missingaccesskey PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskeycase PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_types PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities_two PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments_translator PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_retains_hashprefix PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_convertdtd PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_with_template PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_without_template PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_blank_source PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_newlines_escapes PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_simple PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_escape PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_quotes PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_amp PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_merging_entries_with_spaces_removed PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces PASSED [ 11%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces_after_value PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_duplicates PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_joinlines PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_escapedstr PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_missingaccesskey PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskeycase PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_types PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities_two PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments_translator PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_retains_hashprefix PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_convertdtd PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_with_template PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_without_template PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_blank_source PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_newlines_escapes PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_simple PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_escape PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_quotes PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_amp PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_merging_entries_with_spaces_removed PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces_after_value PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_duplicates PASSED [ 12%] 418s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_help PASSED [ 12%] 418s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_defaults PASSED [ 12%] 418s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_root_name PASSED [ 12%] 418s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_value_name PASSED [ 13%] 418s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_key PASSED [ 13%] 418s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_default_namespace PASSED [ 13%] 418s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_namespace_prefix PASSED [ 13%] 418s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_indent_eight PASSED [ 13%] 418s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_noindent PASSED [ 13%] 418s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXMLCommand::test_help PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2Html::test_simple PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2Html::test_linebreaks PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2Html::test_replace_substrings PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_outside_translatable_content PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_embedded_within_translatable_content PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_without_value PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2Html::test_entities PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2Html::test_escapes PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_translated PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_untranslated PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_fuzzy PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2Html::test_untranslated_attributes PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_simple PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_linebreaks PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_replace_substrings PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_outside_translatable_content PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_embedded_within_translatable_content PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_without_value PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_entities PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_escapes PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_translated PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_untranslated PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_fuzzy PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_untranslated_attributes PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_help PASSED [ 13%] 418s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_individual_files PASSED [ 14%] 419s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_fully_recursive PASSED [ 14%] 419s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_input_specified PASSED [ 14%] 419s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified PASSED [ 14%] 419s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_output_specified PASSED [ 14%] 419s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file PASSED [ 14%] 419s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_empty_file PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_summary PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_description PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_location PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_comment PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_complex_icalendar PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_skip_fuzzy PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_include_fuzzy PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_no_template PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_template_location_not_in_source_file PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_below_threshold PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_above_threshold PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_empty_file PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_summary PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_description PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_location PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_comment PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_complex_icalendar PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_skip_fuzzy PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_include_fuzzy PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_no_template PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_template_location_not_in_source_file PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_below_threshold PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_above_threshold PASSED [ 14%] 419s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_help PASSED [ 14%] 419s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_help PASSED [ 14%] 419s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert PASSED [ 14%] 419s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_no_templates PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_simple PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_space_preservation PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_blank_entries PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_fuzzy PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_propertyless_template PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_empty_value PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_dialects_inno PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_misaligned_files PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_below_threshold PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_above_threshold PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_no_fuzzy PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_allow_fuzzy PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_missing_source PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_repeated_locations PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_no_templates PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_simple PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_space_preservation PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_blank_entries PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_fuzzy PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_propertyless_template PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_empty_value PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_dialects_inno PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_misaligned_files PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_below_threshold PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_above_threshold PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_no_fuzzy PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_allow_fuzzy PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_missing_source PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_repeated_locations PASSED [ 15%] 419s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_help PASSED [ 15%] 419s tests/translate/convert/test_po2json.py::TestPO2JSON::test_basic PASSED [ 15%] 419s tests/translate/convert/test_po2json.py::TestPO2JSON::test_ordering_serialize PASSED [ 15%] 419s tests/translate/convert/test_po2json.py::TestPO2JSON::test_dont_use_empty_translation PASSED [ 15%] 419s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_false PASSED [ 16%] 419s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_true PASSED [ 16%] 419s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_false PASSED [ 16%] 419s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_true PASSED [ 16%] 419s tests/translate/convert/test_po2md.py::TestPO2MD::test_help PASSED [ 16%] 419s tests/translate/convert/test_po2md.py::TestPO2MD::test_single_markdown_file_with_single_po PASSED [ 16%] 419s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po PASSED [ 16%] 419s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_and_directory_of_po_files PASSED [ 16%] 419s tests/translate/convert/test_po2moz.py::TestPO2MozCommand::test_help PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_empty PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_simple PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_comment PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_ok_marker PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_below_threshold PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_above_threshold PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_skip_non_translatable_input PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_no_fuzzy PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_allow_fuzzy PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_mark_active PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_empty PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_simple PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_comment PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_ok_marker PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_below_threshold PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_above_threshold PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_skip_non_translatable_input PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_no_fuzzy PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_allow_fuzzy PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_mark_active PASSED [ 16%] 419s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_help PASSED [ 16%] 419s tests/translate/convert/test_po2oo.py::TestPO2OO::test_convertoo PASSED [ 16%] 419s tests/translate/convert/test_po2oo.py::TestPO2OO::test_pofilter PASSED [ 16%] 419s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_simple PASSED [ 16%] 419s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_escape PASSED [ 16%] 419s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_quotes PASSED [ 17%] 419s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_spaces PASSED [ 17%] 419s tests/translate/convert/test_po2oo.py::TestPO2OO::test_default_timestamp PASSED [ 17%] 419s tests/translate/convert/test_po2oo.py::TestPO2OO::test_escape_conversion PASSED [ 17%] 419s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes PASSED [ 17%] 419s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes2 PASSED [ 17%] 419s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_convertoo PASSED [ 17%] 419s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_pofilter PASSED [ 17%] 419s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_simple PASSED [ 17%] 419s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape PASSED [ 17%] 419s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_quotes PASSED [ 17%] 419s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_spaces PASSED [ 17%] 419s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp PASSED [ 17%] 419s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_escape_conversion PASSED [ 17%] 419s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes PASSED [ 17%] 419s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes2 PASSED [ 17%] 419s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_help PASSED [ 17%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp PASSED [ 17%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_notemplate PASSED [ 17%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_empty_template PASSED [ 17%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_simple PASSED [ 17%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_space_preservation PASSED [ 17%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_preserve_unused_statement PASSED [ 17%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_not_translated_multiline PASSED [ 17%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_blank_entries PASSED [ 17%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_fuzzy PASSED [ 17%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_locations_with_spaces PASSED [ 17%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_inline_comments PASSED [ 17%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_block_comments PASSED [ 17%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_variables PASSED [ 17%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_multiline PASSED [ 17%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_hash_comment PASSED [ 17%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_arrays PASSED [ 17%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_nested_array PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_unnamed_nested_arrays PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template XFAIL [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_notemplate PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_empty_template PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_simple PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_space_preservation PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_preserve_unused_statement PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_not_translated_multiline PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_blank_entries PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_fuzzy PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_locations_with_spaces PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_inline_comments PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_block_comments PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_variables PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_multiline PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_hash_comment PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_arrays PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_nested_array PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_unnamed_nested_arrays PASSED [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template XFAIL [ 18%] 419s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_help PASSED [ 18%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_simple PASSED [ 18%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated PASSED [ 18%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_hard_newlines_preserved PASSED [ 18%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_space_preservation PASSED [ 18%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_value PASSED [ 18%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_separator PASSED [ 18%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank_entries PASSED [ 18%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_fuzzy PASSED [ 18%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys PASSED [ 18%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey PASSED [ 18%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_margin_whitespace PASSED [ 18%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_all_whitespace PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_propertyless_template PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_delimiters PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_empty_value PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_personalities PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_simple PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline2 PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_comments PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_unchanged PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gaia_plurals PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_duplicates PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gwt_plurals PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_simple PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_hard_newlines_preserved PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_space_preservation PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_value PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_separator PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank_entries PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_fuzzy PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_margin_whitespace PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_all_whitespace PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_propertyless_template PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_delimiters PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_empty_value PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_personalities PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_simple PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline2 PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_comments PASSED [ 19%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_unchanged PASSED [ 20%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank PASSED [ 20%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gaia_plurals PASSED [ 20%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_duplicates PASSED [ 20%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gwt_plurals PASSED [ 20%] 419s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_help PASSED [ 20%] 419s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_help PASSED [ 20%] 419s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert PASSED [ 20%] 419s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_quotes PASSED [ 20%] 419s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment PASSED [ 20%] 419s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_dos_eol PASSED [ 20%] 420s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_double_string PASSED [ 20%] 420s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_popup PASSED [ 20%] 420s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_discardable PASSED [ 20%] 420s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_menuex PASSED [ 20%] 420s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_newlines PASSED [ 20%] 420s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_after PASSED [ 20%] 420s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_block_language PASSED [ 20%] 420s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_output_encoding PASSED [ 20%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_simpleunit PASSED [ 20%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_basic PASSED [ 20%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_multiline PASSED [ 20%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapednewlines PASSED [ 20%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedtabs PASSED [ 20%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedquotes PASSED [ 20%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_exclusions PASSED [ 20%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments PASSED [ 20%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingcomment PASSED [ 20%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecomment PASSED [ 20%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 20%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments PASSED [ 20%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingcomment PASSED [ 20%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingduplicatecomment PASSED [ 20%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments PASSED [ 20%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingduplicatecomment PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingcomment PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_existingcomments PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_simpleunit PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_basic PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_multiline PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapednewlines PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedtabs PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedquotes PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_exclusions PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingcomment PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingcomment PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingduplicatecomment PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingcomment PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_existingcomments PASSED [ 21%] 420s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_help PASSED [ 21%] 420s tests/translate/convert/test_po2sub.py::TestPO2Sub::test_subrip PASSED [ 21%] 420s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_subrip PASSED [ 21%] 420s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_help PASSED [ 21%] 420s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_empty PASSED [ 21%] 420s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert PASSED [ 21%] 420s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_marked_untranslated PASSED [ 21%] 420s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_empty PASSED [ 21%] 420s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert PASSED [ 21%] 420s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_marked_untranslated PASSED [ 21%] 420s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_help PASSED [ 21%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_basic PASSED [ 21%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcelanguage PASSED [ 21%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_targetlanguage PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_multiline PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapednewlines PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedtabs PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedquotes PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_exclusions PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonascii PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonecomments PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_otherscomments PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcecomments PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_typecomments PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_basic PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcelanguage PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_targetlanguage PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_multiline PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapednewlines PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedtabs PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedquotes PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_exclusions PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonascii PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonecomments PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_otherscomments PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcecomments PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_typecomments PASSED [ 22%] 420s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_help PASSED [ 22%] 420s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simpleunit PASSED [ 22%] 420s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simple_unicode_unit PASSED [ 22%] 420s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fullunit PASSED [ 22%] 420s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fuzzyunit PASSED [ 22%] 420s tests/translate/convert/test_po2ts.py::TestPO2TS::test_obsolete PASSED [ 22%] 420s tests/translate/convert/test_po2ts.py::TestPO2TS::test_duplicates PASSED [ 22%] 420s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak PASSED [ 22%] 420s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak_consecutive PASSED [ 22%] 420s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simpleunit PASSED [ 22%] 420s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simple_unicode_unit PASSED [ 23%] 420s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fullunit PASSED [ 23%] 420s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fuzzyunit PASSED [ 23%] 420s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_obsolete PASSED [ 23%] 420s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_duplicates PASSED [ 23%] 420s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak PASSED [ 23%] 420s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak_consecutive PASSED [ 23%] 420s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_help PASSED [ 23%] 420s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_basic PASSED [ 23%] 420s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_nonascii PASSED [ 23%] 420s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_blank_handling PASSED [ 23%] 420s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_fuzzy_handling PASSED [ 23%] 420s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_obsolete_ignore PASSED [ 23%] 420s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_header_ignore PASSED [ 23%] 420s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_below_threshold PASSED [ 23%] 420s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_above_threshold PASSED [ 23%] 420s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_basic PASSED [ 23%] 420s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_nonascii PASSED [ 23%] 420s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_blank_handling PASSED [ 23%] 420s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_fuzzy_handling PASSED [ 23%] 420s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_obsolete_ignore PASSED [ 23%] 420s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_header_ignore PASSED [ 23%] 420s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_below_threshold PASSED [ 23%] 420s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_above_threshold PASSED [ 23%] 420s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_help PASSED [ 23%] 420s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_basic PASSED [ 23%] 420s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_unicode PASSED [ 23%] 420s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_ordering_serialize PASSED [ 23%] 420s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_markmin PASSED [ 23%] 420s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_minimal PASSED [ 23%] 420s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_basic PASSED [ 23%] 420s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_multiline PASSED [ 23%] 420s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapednewlines PASSED [ 23%] 420s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedtabs PASSED [ 24%] 420s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedquotes PASSED [ 24%] 420s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_locationcomments PASSED [ 24%] 420s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_othercomments PASSED [ 24%] 420s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_automaticcomments PASSED [ 24%] 420s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_header PASSED [ 24%] 420s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_fuzzy PASSED [ 24%] 420s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_germanic_plurals PASSED [ 24%] 420s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_funny_plurals PASSED [ 24%] 420s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_language_tags PASSED [ 24%] 420s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_variables PASSED [ 24%] 420s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_approved PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_empty_PO PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_no_templates PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple_output PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_translated PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_no_fuzzy PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_allow_fuzzy PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_nested PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_below_threshold PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_above_threshold PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_empty_PO PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_no_templates PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple_output PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_translated PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_no_fuzzy PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_allow_fuzzy PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_nested PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_below_threshold PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_above_threshold PASSED [ 24%] 420s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_help PASSED [ 24%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank PASSED [ 24%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank_plurals PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_simple PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_messages_marked_fuzzy PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals_with_fuzzy_matching PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change XFAIL [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_change PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_and_whitespace_change PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_ambiguous_with_disambiguous PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes XFAIL [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently XFAIL [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_dont_duplicate PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_new_overides_old PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments_with_blank_comment_lines PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_commentlines PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgidcomments PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_with_msgidcomment PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_obsoleting_messages PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_not_obsoleting_empty_messages PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_new_before_obsolete PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_header_initialisation PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_typecomments PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt_multiline PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_location PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_id PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_msgid PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_migrate_msgidcomment_to_msgctxt PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_obsolete_msgctxt PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_small_strings PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank PASSED [ 25%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank_plurals PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_simple PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_messages_marked_fuzzy PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change XFAIL [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_change PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_and_whitespace_change PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_ambiguous_with_disambiguous PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes XFAIL [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently XFAIL [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_new_overides_old PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments_with_blank_comment_lines PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_commentlines PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgidcomments PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_with_msgidcomment PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_obsoleting_messages PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_not_obsoleting_empty_messages PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_new_before_obsolete PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_header_initialisation PASSED [ 26%] 420s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments PASSED [ 26%] 421s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_typecomments PASSED [ 26%] 421s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt PASSED [ 26%] 421s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt_multiline PASSED [ 26%] 421s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_location PASSED [ 26%] 421s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_id PASSED [ 26%] 421s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_msgid PASSED [ 26%] 421s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_migrate_msgidcomment_to_msgctxt PASSED [ 26%] 421s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_obsolete_msgctxt PASSED [ 26%] 421s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_small_strings PASSED [ 26%] 421s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_help PASSED [ 26%] 421s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_no_endlines_added PASSED [ 27%] 421s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_uncomment_contributors PASSED [ 27%] 421s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_multiline_comment_newlines PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_simpleentry PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_convertprop PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_value_entry PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_separator_entry PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_end_of_string PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_start_of_value PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unicode PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_escaping PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_comments PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_comments PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_folding_accesskeys PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_dont_translate PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty_translated PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_newlines_in_value PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_header_comments PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unassociated_comment_order PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_x_header PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gaia_plurals PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_successive_gaia_plurals PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_duplicate_keys PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gwt_plurals PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_simpleentry PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_convertprop PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_value_entry PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_separator_entry PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_end_of_string PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_start_of_value PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unicode PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_escaping PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_comments PASSED [ 27%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_comments PASSED [ 28%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_folding_accesskeys PASSED [ 28%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_dont_translate PASSED [ 28%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty PASSED [ 28%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty_translated PASSED [ 28%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_newlines_in_value PASSED [ 28%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_header_comments PASSED [ 28%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unassociated_comment_order PASSED [ 28%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_x_header PASSED [ 28%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gaia_plurals PASSED [ 28%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_successive_gaia_plurals PASSED [ 28%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_duplicate_keys PASSED [ 28%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gwt_plurals PASSED [ 28%] 421s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_help PASSED [ 28%] 421s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_help PASSED [ 28%] 421s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert PASSED [ 28%] 421s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 PASSED [ 28%] 421s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong PASSED [ 28%] 421s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 PASSED [ 28%] 421s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex PASSED [ 28%] 421s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_simple PASSED [ 28%] 421s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_multiple_units PASSED [ 28%] 421s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_automaticcomments PASSED [ 28%] 421s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_translatorcomments PASSED [ 28%] 421s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_locations PASSED [ 28%] 421s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple PASSED [ 28%] 421s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_multiple_units PASSED [ 28%] 421s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_automaticcomments PASSED [ 28%] 421s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_translatorcomments PASSED [ 28%] 421s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_locations PASSED [ 28%] 421s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_help PASSED [ 28%] 421s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot PASSED [ 28%] 421s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po PASSED [ 28%] 421s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates PASSED [ 28%] 421s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_convert_empty PASSED [ 29%] 421s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_defaults PASSED [ 29%] 421s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_includeunused PASSED [ 29%] 421s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_convert_empty PASSED [ 29%] 421s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_defaults PASSED [ 29%] 421s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_includeunused PASSED [ 29%] 421s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_help PASSED [ 29%] 421s tests/translate/convert/test_ts2po.py::TestTS2PO::test_blank PASSED [ 29%] 421s tests/translate/convert/test_ts2po.py::TestTS2PO::test_basic PASSED [ 29%] 421s tests/translate/convert/test_ts2po.py::TestTS2PO::test_unfinished PASSED [ 29%] 421s tests/translate/convert/test_ts2po.py::TestTS2PO::test_multiline PASSED [ 29%] 421s tests/translate/convert/test_ts2po.py::TestTS2PO::test_obsolete PASSED [ 29%] 421s tests/translate/convert/test_ts2po.py::TestTS2PO::test_comment PASSED [ 29%] 421s tests/translate/convert/test_ts2po.py::TestTS2PO::test_extracomment PASSED [ 29%] 421s tests/translate/convert/test_ts2po.py::TestTS2PO::test_emptycontext PASSED [ 29%] 421s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_blank PASSED [ 29%] 421s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_basic PASSED [ 29%] 421s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_unfinished PASSED [ 29%] 421s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_multiline PASSED [ 29%] 421s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_obsolete PASSED [ 29%] 421s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_comment PASSED [ 29%] 421s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_extracomment PASSED [ 29%] 421s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_emptycontext PASSED [ 29%] 421s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_help PASSED [ 29%] 421s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_convert_empty PASSED [ 29%] 421s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_keep_duplicates PASSED [ 29%] 421s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_drop_duplicates PASSED [ 29%] 421s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_simple PASSED [ 29%] 421s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_multiple_units PASSED [ 29%] 421s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_carriage_return PASSED [ 29%] 421s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_merge PASSED [ 29%] 421s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_no_segmentation PASSED [ 29%] 421s tests/translate/convert/test_txt2po.py::TestDoku2po::test_convert_empty PASSED [ 29%] 421s tests/translate/convert/test_txt2po.py::TestDoku2po::test_keep_duplicates PASSED [ 30%] 421s tests/translate/convert/test_txt2po.py::TestDoku2po::test_drop_duplicates PASSED [ 30%] 421s tests/translate/convert/test_txt2po.py::TestDoku2po::test_basic PASSED [ 30%] 421s tests/translate/convert/test_txt2po.py::TestDoku2po::test_bullet_list PASSED [ 30%] 421s tests/translate/convert/test_txt2po.py::TestDoku2po::test_numbered_list PASSED [ 30%] 421s tests/translate/convert/test_txt2po.py::TestDoku2po::test_spacing PASSED [ 30%] 421s tests/translate/convert/test_txt2po.py::TestDoku2po::test_merge PASSED [ 30%] 421s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_convert_empty PASSED [ 30%] 421s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_keep_duplicates PASSED [ 30%] 421s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_drop_duplicates PASSED [ 30%] 421s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_simple PASSED [ 30%] 421s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_multiple_units PASSED [ 30%] 421s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_carriage_return PASSED [ 30%] 421s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_merge PASSED [ 30%] 421s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_no_segmentation PASSED [ 30%] 421s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_help PASSED [ 30%] 421s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_basic PASSED [ 30%] 421s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_unicode PASSED [ 30%] 421s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_markmin PASSED [ 30%] 421s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_help PASSED [ 30%] 421s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert PASSED [ 30%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_minimal PASSED [ 30%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_basic PASSED [ 30%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_translatorcomments PASSED [ 30%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_autocomment PASSED [ 30%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_locations PASSED [ 30%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_fuzzy PASSED [ 30%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_plurals PASSED [ 30%] 421s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_minimal PASSED [ 30%] 421s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_basic PASSED [ 30%] 421s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_translatorcomments PASSED [ 30%] 421s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_autocomment PASSED [ 30%] 421s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_locations PASSED [ 30%] 421s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_fuzzy PASSED [ 30%] 421s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_plurals PASSED [ 31%] 421s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_help PASSED [ 31%] 421s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_simple_convert PASSED [ 31%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_minimal PASSED [ 31%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_basic PASSED [ 31%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_translatorcomments PASSED [ 31%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_autocomment PASSED [ 31%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_locations PASSED [ 31%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_fuzzy PASSED [ 31%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_plurals PASSED [ 31%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_help PASSED [ 31%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename PASSED [ 31%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot PASSED [ 31%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po PASSED [ 31%] 421s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates PASSED [ 31%] 421s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_empty_YAML PASSED [ 31%] 421s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple_output PASSED [ 31%] 421s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple PASSED [ 31%] 421s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_nested PASSED [ 31%] 421s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates XFAIL [ 31%] 421s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_with_template PASSED [ 31%] 421s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_empty_YAML PASSED [ 31%] 421s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple_output PASSED [ 31%] 421s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple PASSED [ 31%] 421s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_nested PASSED [ 31%] 421s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates XFAIL [ 31%] 421s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_with_template PASSED [ 31%] 421s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_help PASSED [ 31%] 421s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_empty_target PASSED [ 31%] 421s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_ellipsis PASSED [ 31%] 421s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_spacestart_spaceend PASSED [ 31%] 421s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_start_capitals PASSED [ 31%] 421s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_end_punc PASSED [ 31%] 421s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_combinations PASSED [ 31%] 421s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_nothing_to_do PASSED [ 32%] 421s tests/translate/filters/test_checks.py::test_defaults PASSED [ 32%] 421s tests/translate/filters/test_checks.py::test_construct PASSED [ 32%] 421s tests/translate/filters/test_checks.py::test_accelerator_markers PASSED [ 32%] 421s tests/translate/filters/test_checks.py::test_messages PASSED [ 32%] 421s tests/translate/filters/test_checks.py::test_accelerators PASSED [ 32%] 421s tests/translate/filters/test_checks.py::test_acceleratedvariables XFAIL [ 32%] 421s tests/translate/filters/test_checks.py::test_acronyms PASSED [ 32%] 421s tests/translate/filters/test_checks.py::test_blank PASSED [ 32%] 421s tests/translate/filters/test_checks.py::test_brackets PASSED [ 32%] 421s tests/translate/filters/test_checks.py::test_compendiumconflicts PASSED [ 32%] 421s tests/translate/filters/test_checks.py::test_doublequoting PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_doublespacing PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_doublewords PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_endpunc PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_endwhitespace PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_escapes PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_newlines PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_tabs PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_filepaths PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_kdecomments PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_long PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_musttranslatewords XFAIL [ 32%] 422s tests/translate/filters/test_checks.py::test_notranslatewords PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_numbers PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_persian_numbers PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_bengali_numbers PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_arabic_numbers PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_assamese_numbers PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_options PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_printf PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_pythonbraceformat PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_puncspacing PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_purepunc PASSED [ 32%] 422s tests/translate/filters/test_checks.py::test_sentencecount PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_short PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_singlequoting PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_vietnamese_singlequoting PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time XFAIL [ 33%] 422s tests/translate/filters/test_checks.py::test_persian_quoting PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_simplecaps PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_spellcheck SKIPPED (Spe...) [ 33%] 422s tests/translate/filters/test_checks.py::test_startcaps PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_startpunc PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_startwhitespace PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_unchanged PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_untranslated PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_validchars PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_minimalchecker PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_reducedchecker PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_variables_kde PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_variables_gnome PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_variables_mozilla PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_variables_openoffice PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_variables_cclicense PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_variables_ios PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_xmltags PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags XFAIL [ 33%] 422s tests/translate/filters/test_checks.py::test_ooxmltags PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_functions PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_emails PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_urls PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_simpleplurals PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_nplurals PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_credits PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_gconf PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_validxml PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_hassuggestion PASSED [ 33%] 422s tests/translate/filters/test_checks.py::test_dialogsizes PASSED [ 34%] 422s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers PASSED [ 34%] 422s tests/translate/filters/test_checks.py::test_mozilla_no_accelerators_for_indic PASSED [ 34%] 422s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker PASSED [ 34%] 422s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source PASSED [ 34%] 422s tests/translate/filters/test_checks.py::test_ensure_bengali_languages_script_is_correct PASSED [ 34%] 422s tests/translate/filters/test_checks.py::test_category PASSED [ 34%] 422s tests/translate/filters/test_decoration.py::test_spacestart PASSED [ 34%] 422s tests/translate/filters/test_decoration.py::test_isvalidaccelerator PASSED [ 34%] 422s tests/translate/filters/test_decoration.py::test_find_marked_variables PASSED [ 34%] 422s tests/translate/filters/test_decoration.py::test_getnumbers PASSED [ 34%] 422s tests/translate/filters/test_decoration.py::test_getfunctions PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplepass PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplefail PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestPOFilter::test_variables_across_lines PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestPOFilter::test_ignore_if_already_marked PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestPOFilter::test_non_existant_check PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestPOFilter::test_list_all_tests PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_fuzzy PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_review PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isfuzzy PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isreview PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestPOFilter::test_notes PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestPOFilter::test_unicode PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestPOFilter::test_preconditions PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestPOFilter::test_msgid_comments PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplepass PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplefail PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_variables_across_lines PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_ignore_if_already_marked PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_non_existant_check PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_list_all_tests PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_fuzzy PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_review PASSED [ 34%] 422s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isfuzzy PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isreview PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_notes PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_unicode PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_preconditions PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplepass PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplefail PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_variables_across_lines PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_ignore_if_already_marked PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_non_existant_check PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_list_all_tests PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_notes PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_unicode PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_preconditions PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_fuzzy PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_review PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isfuzzy PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isreview PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplepass PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplefail PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_variables_across_lines PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_ignore_if_already_marked PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_non_existant_check PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_list_all_tests PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_fuzzy PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_review PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isfuzzy PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isreview PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_notes PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_unicode PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_preconditions PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_msgid_comments PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_cedillas PASSED [ 35%] 422s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_niciun PASSED [ 36%] 422s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_nicio PASSED [ 36%] 422s tests/translate/filters/test_prefilters.py::test_removekdecomments PASSED [ 36%] 422s tests/translate/filters/test_prefilters.py::test_filterwordswithpunctuation PASSED [ 36%] 422s tests/translate/lang/test_af.py::test_sentences PASSED [ 36%] 422s tests/translate/lang/test_af.py::test_capsstart PASSED [ 36%] 422s tests/translate/lang/test_af.py::test_transliterate_cyrillic PASSED [ 36%] 422s tests/translate/lang/test_am.py::test_punctranslate PASSED [ 36%] 422s tests/translate/lang/test_am.py::test_sentences PASSED [ 36%] 422s tests/translate/lang/test_ar.py::test_punctranslate PASSED [ 36%] 422s tests/translate/lang/test_ar.py::test_sentences PASSED [ 36%] 422s tests/translate/lang/test_common.py::test_characters PASSED [ 36%] 422s tests/translate/lang/test_common.py::test_words PASSED [ 36%] 422s tests/translate/lang/test_common.py::test_word_khmer XFAIL (ZWS is n...) [ 36%] 422s tests/translate/lang/test_common.py::test_sentences PASSED [ 36%] 422s tests/translate/lang/test_common.py::test_capsstart PASSED [ 36%] 422s tests/translate/lang/test_common.py::test_numstart PASSED [ 36%] 422s tests/translate/lang/test_common.py::test_punctranslate PASSED [ 36%] 422s tests/translate/lang/test_common.py::test_length_difference PASSED [ 36%] 422s tests/translate/lang/test_common.py::test_alter_length PASSED [ 36%] 422s tests/translate/lang/test_data.py::test_normalise_code PASSED [ 36%] 422s tests/translate/lang/test_data.py::test_simplify_to_common PASSED [ 36%] 422s tests/translate/lang/test_el.py::test_punctranslate PASSED [ 36%] 422s tests/translate/lang/test_el.py::test_sentences PASSED [ 36%] 422s tests/translate/lang/test_es.py::test_punctranslate PASSED [ 36%] 422s tests/translate/lang/test_es.py::test_sentences PASSED [ 36%] 422s tests/translate/lang/test_fa.py::test_punctranslate PASSED [ 36%] 422s tests/translate/lang/test_fa.py::test_sentences PASSED [ 36%] 422s tests/translate/lang/test_factory.py::test_getlanguage PASSED [ 36%] 422s tests/translate/lang/test_factory.py::test_get_all_languages PASSED [ 36%] 422s tests/translate/lang/test_fr.py::test_punctranslate PASSED [ 36%] 422s tests/translate/lang/test_fr.py::test_sentences PASSED [ 36%] 422s tests/translate/lang/test_hy.py::test_punctranslate PASSED [ 36%] 422s tests/translate/lang/test_hy.py::test_sentences PASSED [ 36%] 422s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_lang PASSED [ 37%] 422s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_store PASSED [ 37%] 422s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_bad_init_data PASSED [ 37%] 422s tests/translate/lang/test_ja.py::test_punctranslate PASSED [ 37%] 422s tests/translate/lang/test_ja.py::test_sentences PASSED [ 37%] 422s tests/translate/lang/test_km.py::test_punctranslate PASSED [ 37%] 422s tests/translate/lang/test_km.py::test_sentences PASSED [ 37%] 422s tests/translate/lang/test_ko.py::test_punctranslate PASSED [ 37%] 422s tests/translate/lang/test_ko.py::test_sentences PASSED [ 37%] 422s tests/translate/lang/test_ne.py::test_punctranslate PASSED [ 37%] 422s tests/translate/lang/test_ne.py::test_sentences PASSED [ 37%] 422s tests/translate/lang/test_nqo.py::test_punctranslate PASSED [ 37%] 422s tests/translate/lang/test_nqo.py::test_sentences PASSED [ 37%] 422s tests/translate/lang/test_or.py::test_punctranslate PASSED [ 37%] 422s tests/translate/lang/test_or.py::test_country_code PASSED [ 37%] 422s tests/translate/lang/test_or.py::test_sentences PASSED [ 37%] 422s tests/translate/lang/test_poedit.py::test_isocode PASSED [ 37%] 422s tests/translate/lang/test_ro.py::test_cedillas PASSED [ 37%] 422s tests/translate/lang/test_ro.py::test_niciun PASSED [ 37%] 422s tests/translate/lang/test_scn.py::test_italianisms PASSED [ 37%] 422s tests/translate/lang/test_scn.py::test_vocalism PASSED [ 37%] 422s tests/translate/lang/test_scn.py::test_suffixes PASSED [ 37%] 422s tests/translate/lang/test_team.py::test_simple PASSED [ 37%] 422s tests/translate/lang/test_th.py::test_punctranslate PASSED [ 37%] 422s tests/translate/lang/test_th.py::test_sentences PASSED [ 37%] 422s tests/translate/lang/test_tr.py::test_sentences PASSED [ 37%] 422s tests/translate/lang/test_uk.py::test_sentences PASSED [ 37%] 422s tests/translate/lang/test_vi.py::test_punctranslate PASSED [ 37%] 422s tests/translate/lang/test_vi.py::test_sentences PASSED [ 37%] 422s tests/translate/lang/test_zh.py::test_punctranslate PASSED [ 37%] 422s tests/translate/lang/test_zh.py::test_sentences PASSED [ 37%] 422s tests/translate/misc/test_deprecation.py::TestDeprecation::test_deprecated_decorator PASSED [ 37%] 422s tests/translate/misc/test_deprecation.py::TestDeprecation::test_no_deprecated_decorator PASSED [ 37%] 422s tests/translate/misc/test_dictutils.py::test_cidict_has_key PASSED [ 37%] 422s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor PASSED [ 38%] 422s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor_validation PASSED [ 38%] 422s tests/translate/misc/test_multistring.py::TestMultistring::test_repr PASSED [ 38%] 422s tests/translate/misc/test_multistring.py::TestMultistring::test_replace PASSED [ 38%] 422s tests/translate/misc/test_multistring.py::TestMultistring::test_comparison PASSED [ 38%] 422s tests/translate/misc/test_multistring.py::TestMultistring::test_coercion PASSED [ 38%] 422s tests/translate/misc/test_multistring.py::TestMultistring::test_unicode_coercion PASSED [ 38%] 422s tests/translate/misc/test_multistring.py::TestMultistring::test_list_coercion PASSED [ 38%] 422s tests/translate/misc/test_multistring.py::TestMultistring::test_multistring_hash PASSED [ 38%] 422s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_splitext PASSED [ 38%] 422s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_outputfile_receives_bytes PASSED [ 38%] 422s tests/translate/misc/test_progressbar.py::test_hashprogressbar PASSED [ 38%] 422s tests/translate/misc/test_quote.py::test_find_all PASSED [ 38%] 422s tests/translate/misc/test_quote.py::test_extract PASSED [ 38%] 422s tests/translate/misc/test_quote.py::test_extractwithoutquotes PASSED [ 38%] 422s tests/translate/misc/test_quote.py::test_extractwithoutquotes_passfunc PASSED [ 38%] 422s tests/translate/misc/test_quote.py::test_stripcomment PASSED [ 38%] 422s tests/translate/misc/test_quote.py::TestEncoding::test_javapropertiesencode PASSED [ 38%] 422s tests/translate/misc/test_quote.py::TestEncoding::test_java_utf8_properties_encode PASSED [ 38%] 422s tests/translate/misc/test_quote.py::TestEncoding::test_escapespace PASSED [ 38%] 422s tests/translate/misc/test_quote.py::TestEncoding::test_mozillaescapemarginspaces PASSED [ 38%] 422s tests/translate/misc/test_quote.py::TestEncoding::test_mozilla_control_escapes PASSED [ 38%] 422s tests/translate/misc/test_quote.py::TestEncoding::test_propertiesdecode PASSED [ 38%] 422s tests/translate/misc/test_quote.py::TestEncoding::test_controlchars PASSED [ 38%] 422s tests/translate/misc/test_quote.py::TestEncoding::test_properties_decode_slashu PASSED [ 38%] 422s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding PASSED [ 38%] 422s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_existing_entities PASSED [ 38%] 422s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_passthrough PASSED [ 38%] 422s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_nonentities PASSED [ 38%] 422s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_four_spaces PASSED [ 38%] 422s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_tab PASSED [ 38%] 422s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_distance PASSED [ 38%] 422s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_similarity PASSED [ 38%] 422s tests/translate/search/test_lshtein.py::TestLevenshtein::test_long_similarity PASSED [ 38%] 422s tests/translate/search/test_match.py::TestMatch::test_matching PASSED [ 39%] 422s tests/translate/search/test_match.py::TestMatch::test_multiple_store PASSED [ 39%] 422s tests/translate/search/test_match.py::TestMatch::test_extendtm PASSED [ 39%] 422s tests/translate/search/test_match.py::TestMatch::test_terminology PASSED [ 39%] 422s tests/translate/search/test_match.py::TestMatch::test_brackets PASSED [ 39%] 422s tests/translate/search/test_match.py::TestMatch::test_past_tences PASSED [ 39%] 422s tests/translate/search/test_match.py::TestMatch::test_space_mismatch PASSED [ 39%] 422s tests/translate/search/test_match.py::TestMatch::test_hyphen_mismatch PASSED [ 39%] 422s tests/translate/search/test_terminology.py::TestTerminology::test_basic PASSED [ 39%] 422s tests/translate/services/test_tmserver.py::TestTMServer::test_import PASSED [ 39%] 424s tests/translate/services/test_tmserver.py::TestTMServer::test_server PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_parse PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_tree PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_add PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_contains PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getitem PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getslice PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_iter PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_len PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_mul PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_offset PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_at_offset PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find_elems_with PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_flatten PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case1 PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case2 PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case3 PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case4 PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_insert PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_isleaf PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestStringElem::test_prune PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_base_placeables PASSED [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables XFAIL [ 39%] 424s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables XFAIL [ 40%] 424s tests/translate/storage/placeables/test_general.py::test_placeable_numbers PASSED [ 40%] 424s tests/translate/storage/placeables/test_general.py::test_placeable_newline PASSED [ 40%] 424s tests/translate/storage/placeables/test_general.py::test_placeable_alt_attr PASSED [ 40%] 424s tests/translate/storage/placeables/test_general.py::test_placeable_qt_formatting PASSED [ 40%] 424s tests/translate/storage/placeables/test_general.py::test_placeable_camelcase PASSED [ 40%] 424s tests/translate/storage/placeables/test_general.py::test_placeable_space PASSED [ 40%] 424s tests/translate/storage/placeables/test_general.py::test_placeable_punctuation PASSED [ 40%] 424s tests/translate/storage/placeables/test_general.py::test_placeable_xml_entity PASSED [ 40%] 424s tests/translate/storage/placeables/test_general.py::test_placeable_xml_tag PASSED [ 40%] 424s tests/translate/storage/placeables/test_general.py::test_placeable_option PASSED [ 40%] 424s tests/translate/storage/placeables/test_general.py::test_placeable_file PASSED [ 40%] 424s tests/translate/storage/placeables/test_general.py::test_placeable_email PASSED [ 40%] 424s tests/translate/storage/placeables/test_general.py::test_placeable_caps PASSED [ 40%] 424s tests/translate/storage/placeables/test_general.py::test_placeable_formatting PASSED [ 40%] 424s tests/translate/storage/placeables/test_general.py::test_placeable_doubleat PASSED [ 40%] 424s tests/translate/storage/placeables/test_general.py::test_placeable_brace PASSED [ 40%] 424s tests/translate/storage/placeables/test_general.py::test_python_placeable PASSED [ 40%] 424s tests/translate/storage/placeables/test_lisa.py::test_xml_to_strelem PASSED [ 40%] 424s tests/translate/storage/placeables/test_lisa.py::test_xml_space PASSED [ 40%] 424s tests/translate/storage/placeables/test_lisa.py::test_chunk_list PASSED [ 40%] 424s tests/translate/storage/placeables/test_lisa.py::test_set_strelem_to_xml PASSED [ 40%] 424s tests/translate/storage/placeables/test_lisa.py::test_unknown_xml_placeable PASSED [ 40%] 424s tests/translate/storage/placeables/test_terminology.py::TestTerminologyPlaceable::test_simple_terminology PASSED [ 40%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_isfuzzy PASSED [ 40%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_create PASSED [ 40%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_eq PASSED [ 40%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escapes PASSED [ 40%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_difficult_escapes PASSED [ 40%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_note_sanity PASSED [ 40%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_target PASSED [ 40%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_get PASSED [ 40%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_set PASSED [ 40%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline PASSED [ 40%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quotes_with_newline PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline_in_xml PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_twitter PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quote PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_question PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_double_space PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_leading_space PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_tailing_space PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_xml_entities PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote_newline PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_arrows PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link_and_text PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_blank_string PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_escape_message_with_newline PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_invalid_lang PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_quote PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_leading_space PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_trailing_space PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_with_ampersand PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_double_space PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_deep_double_space PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_complex_xml PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quoted_newlines PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline_in_xml PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_twitter PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_question PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quote PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_space PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_space PASSED [ 41%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_newlines PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_xml_entities PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_code PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_arrows PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link_and_text PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_space PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_spaces PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_escaped_newline PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_escaped_newline PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_spaces PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_newline PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_many_quotes PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string_again PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_quotes_string PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_newline_in_string PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_not_translatable_string PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_newline PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_comments PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_quote PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space_quoted PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space_quoted PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_with_ampersand PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_double_space_quoted PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_deep_double_space_quoted PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_complex_xml PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unicode PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_unescaped PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_alone PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_full PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_escaped_percent PASSED [ 42%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_percent PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_quote PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unparied_quote PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_slash PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_ignored PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escaped_quote_end PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_create_blank PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_remove PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_find PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_parse PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_files PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_save PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_extensions PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_mimetypes PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translate PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_nonascii PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_default_handlings PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_invalid_filename PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_namespaces PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_serialize PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add_formatting PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_invalid_entity PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_indent PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_markup PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_edit PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_noedit PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_remove PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_set PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_others PASSED [ 43%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_quotes_set PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_g PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_namespace PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_zh_hk PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_b_zh_hk PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_missing_plural PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_removeunit PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata_text PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_prefix PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_rtl PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_tail PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translatable_marking PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_escaping PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_isfuzzy PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_create PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_eq PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_escapes PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_difficult_escapes PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_note_sanity PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_target PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_get PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_set PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_create_blank PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_add PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_remove PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_find PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_parse PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_files PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_save PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_extensions PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_mimetypes PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_translate PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_markup PASSED [ 44%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_nonascii PASSED [ 45%] 424s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_plural PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationUnit::test_isfuzzy PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationUnit::test_create PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationUnit::test_eq PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationUnit::test_target PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationUnit::test_escapes PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationUnit::test_difficult_escapes PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationUnit::test_note_sanity PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_get PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_set PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationStore::test_create_blank PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationStore::test_add PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationStore::test_remove PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationStore::test_find PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationStore::test_translate PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationStore::test_parse PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationStore::test_files PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationStore::test_save PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationStore::test_markup PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationStore::test_nonascii PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationStore::test_extensions PASSED [ 45%] 424s tests/translate/storage/test_base.py::TestTranslationStore::test_mimetypes PASSED [ 45%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_isfuzzy PASSED [ 45%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_create PASSED [ 45%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_eq PASSED [ 45%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_target PASSED [ 45%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_escapes PASSED [ 45%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_get PASSED [ 45%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_set PASSED [ 45%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_difficult_escapes PASSED [ 45%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_newlines PASSED [ 45%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_istranslated PASSED [ 45%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_note_sanity PASSED [ 45%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_create_blank PASSED [ 46%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_add PASSED [ 46%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_remove PASSED [ 46%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_find PASSED [ 46%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_translate PASSED [ 46%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_parse PASSED [ 46%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_files PASSED [ 46%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_save PASSED [ 46%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_markup PASSED [ 46%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_nonascii PASSED [ 46%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_extensions PASSED [ 46%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_mimetypes PASSED [ 46%] 424s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_checksum PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_isfuzzy PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_create PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_eq PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_target PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_escapes PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_difficult_escapes PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_note_sanity PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_get PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_set PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_create_blank PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_add PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_remove PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_find PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_translate PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_files PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_save PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_markup PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_nonascii PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_extensions PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_mimetypes PASSED [ 46%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_singlequoting PASSED [ 47%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8 PASSED [ 47%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_dialect PASSED [ 47%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_sig PASSED [ 47%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_default PASSED [ 47%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_location_is_parsed PASSED [ 47%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_context_is_parsed PASSED [ 47%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_newline PASSED [ 47%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse_sample PASSED [ 47%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_detection PASSED [ 47%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding PASSED [ 47%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_corrupt PASSED [ 47%] 424s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding_save PASSED [ 47%] 424s tests/translate/storage/test_directory.py::TestDirectory::test_created PASSED [ 47%] 424s tests/translate/storage/test_directory.py::TestDirectory::test_basic PASSED [ 47%] 424s tests/translate/storage/test_directory.py::TestDirectory::test_structure PASSED [ 47%] 424s tests/translate/storage/test_directory.py::TestDirectory::test_getunits PASSED [ 47%] 424s tests/translate/storage/test_dtd.py::test_roundtrip_quoting PASSED [ 47%] 424s tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases XFAIL [ 47%] 424s tests/translate/storage/test_dtd.py::test_quotefordtd PASSED [ 47%] 424s tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases XFAIL [ 47%] 424s tests/translate/storage/test_dtd.py::test_unquotefromdtd PASSED [ 47%] 424s tests/translate/storage/test_dtd.py::test_android_roundtrip_quoting PASSED [ 47%] 424s tests/translate/storage/test_dtd.py::test_quoteforandroid PASSED [ 47%] 424s tests/translate/storage/test_dtd.py::test_unquotefromandroid PASSED [ 47%] 424s tests/translate/storage/test_dtd.py::test_removeinvalidamp PASSED [ 47%] 424s tests/translate/storage/test_dtd.py::TestDTDUnit::test_isfuzzy PASSED [ 47%] 424s tests/translate/storage/test_dtd.py::TestDTDUnit::test_create PASSED [ 47%] 424s tests/translate/storage/test_dtd.py::TestDTDUnit::test_eq PASSED [ 47%] 424s tests/translate/storage/test_dtd.py::TestDTDUnit::test_escapes PASSED [ 47%] 424s tests/translate/storage/test_dtd.py::TestDTDUnit::test_difficult_escapes PASSED [ 47%] 424s tests/translate/storage/test_dtd.py::TestDTDUnit::test_note_sanity PASSED [ 47%] 424s tests/translate/storage/test_dtd.py::TestDTDUnit::test_target PASSED [ 47%] 424s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_get PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_set PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_create_blank PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_add PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_remove PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_find PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_parse PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_files PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_save PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_extensions PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_mimetypes PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_translate PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_markup PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_nonascii PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_blanklines PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity_source PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_hashcomment_source PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_commentclosing PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_commententity PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_newlines_in_entity PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_conflate_comments PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_localisation_notes PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_in_source PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_order_in_source PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_comment_following XFAIL [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_comment_newline_space_closing PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting XFAIL [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_missing_quotes PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping_roundtrip PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_create_blank PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_add PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_remove PASSED [ 48%] 424s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_find PASSED [ 49%] 424s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_parse PASSED [ 49%] 424s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_files PASSED [ 49%] 424s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_save PASSED [ 49%] 424s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_extensions PASSED [ 49%] 424s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_mimetypes PASSED [ 49%] 424s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_translate PASSED [ 49%] 424s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_markup PASSED [ 49%] 424s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_nonascii PASSED [ 49%] 424s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape PASSED [ 49%] 424s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape_parse_and_convert_back PASSED [ 49%] 424s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape PASSED [ 49%] 424s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape_parse_and_convert_back PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestPOFactory::test_getclass PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject_store PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestPOFactory::test_get_noname_object PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestPOFactory::test_gzfile PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestPOFactory::test_bz2file PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestPOFactory::test_directory PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestXliffFactory::test_getclass PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject_store PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestXliffFactory::test_get_noname_object PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestXliffFactory::test_gzfile PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestXliffFactory::test_bz2file PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestXliffFactory::test_directory PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getclass PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject_store PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_get_noname_object PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_gzfile PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_bz2file PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_directory PASSED [ 49%] 424s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getclass PASSED [ 50%] 424s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject_store PASSED [ 50%] 424s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject PASSED [ 50%] 424s tests/translate/storage/test_factory.py::TestWordfastFactory::test_get_noname_object PASSED [ 50%] 424s tests/translate/storage/test_factory.py::TestWordfastFactory::test_gzfile PASSED [ 50%] 424s tests/translate/storage/test_factory.py::TestWordfastFactory::test_bz2file PASSED [ 50%] 424s tests/translate/storage/test_factory.py::TestWordfastFactory::test_directory PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_isfuzzy PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_create PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_eq PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_escapes PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_difficult_escapes PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_note_sanity PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_target PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_get PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_set PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_create_blank PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_add PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_remove PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_find PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_parse PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_files PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_save PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_extensions PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_mimetypes PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_translate PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_markup PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_nonascii PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_root_config_detect PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_detect PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_key_config_detect PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_mixed_ok PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_namespace_config_detect PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_four_spaces PASSED [ 50%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_tab PASSED [ 51%] 424s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_none_linearizes PASSED [ 51%] 424s tests/translate/storage/test_html.py::test_guess_encoding PASSED [ 51%] 424s tests/translate/storage/test_html.py::TestHTMLParsing::test_mismatched_tags PASSED [ 51%] 424s tests/translate/storage/test_html.py::TestHTMLParsing::test_self_closing_tags PASSED [ 51%] 424s tests/translate/storage/test_html.py::TestHTMLParsing::test_escaping_script_and_pre PASSED [ 51%] 424s tests/translate/storage/test_html.py::TestHTMLExtraction::test_strip_html PASSED [ 51%] 424s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_figcaption PASSED [ 51%] 424s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_caption_td_th PASSED [ 51%] 424s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_alt PASSED [ 51%] 424s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_title PASSED [ 51%] 424s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre PASSED [ 51%] 424s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre_code PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIUnit::test_isfuzzy PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIUnit::test_create PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIUnit::test_eq PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIUnit::test_escapes PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIUnit::test_difficult_escapes PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIUnit::test_note_sanity PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIUnit::test_target PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_get PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_set PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIStore::test_create_blank PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIStore::test_add PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIStore::test_remove PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIStore::test_find PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIStore::test_parse PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIStore::test_files PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIStore::test_save PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIStore::test_extensions PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIStore::test_mimetypes PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIStore::test_translate PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIStore::test_markup PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIStore::test_nonascii PASSED [ 51%] 424s tests/translate/storage/test_ini.py::TestINIStore::test_serialize PASSED [ 52%] 424s tests/translate/storage/test_ini.py::TestINIStore::test_rem PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_isfuzzy PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_create PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_eq PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_escapes PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_difficult_escapes PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_note_sanity PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_target PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_get PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_set PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_create_blank PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_remove PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_find PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_parse PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_files PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_save PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_extensions PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_mimetypes PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_translate PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_markup PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_nonascii PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_serialize PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_can_not_detect PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_error PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_filter PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_ordering PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_args PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_bom PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex_array PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_list_like PASSED [ 52%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_blank PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_types PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_null PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_isfuzzy PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_create PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_eq PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_escapes PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_difficult_escapes PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_note_sanity PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_target PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_get PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_set PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_serialize PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_ordering PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_array PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index_nested PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_nested_list_mixed PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_list_to_dict PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_complex_keys PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_other PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0]-expected0] PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0]-expected1] PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0][1][2][3]-expected2] PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test]selection-expected3] PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test][0]selection-expected4] PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0][test]selection-expected5] PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[-expected6] PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_dot_keys PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_isfuzzy PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_create PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_eq PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_escapes PASSED [ 53%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_difficult_escapes PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_note_sanity PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_target PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_get PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_set PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_create_blank PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_add PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_remove PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_find PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_parse PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_files PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_save PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_extensions PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_mimetypes PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_translate PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_markup PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_nonascii PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_dot_keys PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_leading_dot_keys PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize_no_description PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_set_target PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_placeholders PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_comments PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_create_blank PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_add PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_remove PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_find PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_parse PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_files PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_save PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_extensions PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_mimetypes PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_translate PASSED [ 54%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_markup PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nonascii PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_serialize PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_units PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_plurals PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nested_array PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural_id PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_create_blank PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_add PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_remove PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_find PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_parse PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_files PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_save PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_extensions PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_mimetypes PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_translate PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_markup PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_nonascii PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals_missing PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_case_no_msg PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_complex_id PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_create_blank PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_add PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_remove PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_find PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_parse PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_files PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_save PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_extensions PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_mimetypes PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_translate PASSED [ 55%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_markup PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nonascii PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_serialize PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_units PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_plurals PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nested_array PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_new_plural PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_ru PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_create_blank PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_add PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_remove PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_find PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_parse PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_files PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_save PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_extensions PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_mimetypes PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_translate PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_markup PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nonascii PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_serialize PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_units PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_plurals PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nested_array PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_new_plural PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_ru PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_create_blank PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_add PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_remove PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_find PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_parse PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_files PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_save PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_extensions PASSED [ 56%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_mimetypes PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_translate PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_markup PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_nonascii PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals_missing PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_invalid PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_dot_keys PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_create_blank PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_add PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_remove PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_find PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_parse PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_files PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_save PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_extensions PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_mimetypes PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_translate PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_markup PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_nonascii PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_1 PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_2 PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_blank PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_missing PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_simplification PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_invalid PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_dot_keys PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_create_blank PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_add PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_remove PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_find PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_parse PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_files PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_save PASSED [ 57%] 424s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_extensions PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_mimetypes PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_translate PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_markup PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_nonascii PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_roundtrip PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_leading_dot_keys PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_invalid_nesting PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_create_blank PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_add PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_remove PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_find PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_parse PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_files PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_save PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_extensions PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_mimetypes PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_translate PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_markup PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_nonascii PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_roundtrip PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_leading_dot_keys PASSED [ 58%] 424s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_invalid PASSED [ 58%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_atx_heading PASSED [ 58%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_autolink PASSED [ 58%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_block_quote PASSED [ 58%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_block PASSED [ 58%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_span PASSED [ 58%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_atx_heading PASSED [ 58%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_document PASSED [ 58%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_list_item PASSED [ 58%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_escaped_character PASSED [ 58%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_hard_line_break PASSED [ 58%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_block PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_character_entities PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_span PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_image_embedded_in_link PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_collapsed_reference_link PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_full_reference_link PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_shortcut_reference_link PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_merging_of_adjacent_placeholders PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_block_tokens PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_list PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_basic_markup PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_only_whitespace_and_placeholders PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_placeholder_trimming PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image_no_title PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_link PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_text_paragraph PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_remove_placeholders_from_both_ends_of_translation_units PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_setext_heading PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_table_with_header PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_thematic_break PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_hard_line_break_in_translation_unit PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_missing_placeholder PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_duplicate_placeholder PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_extraneous_placeholder PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_reordered_placeholders PASSED [ 59%] 424s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_invalid_markdown_in_translation PASSED [ 59%] 424s tests/translate/storage/test_mo.py::TestMOUnit::test_isfuzzy PASSED [ 59%] 424s tests/translate/storage/test_mo.py::TestMOUnit::test_create PASSED [ 59%] 424s tests/translate/storage/test_mo.py::TestMOUnit::test_eq PASSED [ 59%] 424s tests/translate/storage/test_mo.py::TestMOUnit::test_target PASSED [ 59%] 424s tests/translate/storage/test_mo.py::TestMOUnit::test_escapes PASSED [ 59%] 424s tests/translate/storage/test_mo.py::TestMOUnit::test_difficult_escapes PASSED [ 59%] 424s tests/translate/storage/test_mo.py::TestMOUnit::test_note_sanity PASSED [ 59%] 424s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_get PASSED [ 60%] 424s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_set PASSED [ 60%] 424s tests/translate/storage/test_mo.py::TestMOUnit::test_context PASSED [ 60%] 424s tests/translate/storage/test_mo.py::TestMOFile::test_create_blank PASSED [ 60%] 424s tests/translate/storage/test_mo.py::TestMOFile::test_add PASSED [ 60%] 424s tests/translate/storage/test_mo.py::TestMOFile::test_remove PASSED [ 60%] 424s tests/translate/storage/test_mo.py::TestMOFile::test_find PASSED [ 60%] 424s tests/translate/storage/test_mo.py::TestMOFile::test_translate PASSED [ 60%] 424s tests/translate/storage/test_mo.py::TestMOFile::test_parse PASSED [ 60%] 424s tests/translate/storage/test_mo.py::TestMOFile::test_files PASSED [ 60%] 424s tests/translate/storage/test_mo.py::TestMOFile::test_save PASSED [ 60%] 424s tests/translate/storage/test_mo.py::TestMOFile::test_markup PASSED [ 60%] 424s tests/translate/storage/test_mo.py::TestMOFile::test_nonascii PASSED [ 60%] 424s tests/translate/storage/test_mo.py::TestMOFile::test_extensions PASSED [ 60%] 424s tests/translate/storage/test_mo.py::TestMOFile::test_mimetypes PASSED [ 60%] 424s tests/translate/storage/test_mo.py::TestMOFile::test_language PASSED [ 60%] 424s tests/translate/storage/test_mo.py::TestMOFile::test_context PASSED [ 60%] 424s tests/translate/storage/test_mo.py::TestMOFile::test_output SKIPPED [ 60%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_isfuzzy PASSED [ 60%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_create PASSED [ 60%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_eq PASSED [ 60%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_escapes PASSED [ 60%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_difficult_escapes PASSED [ 60%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_note_sanity PASSED [ 60%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_target PASSED [ 60%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_get PASSED [ 60%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_set PASSED [ 60%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_create_blank PASSED [ 60%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_add PASSED [ 60%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_remove PASSED [ 60%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_find PASSED [ 60%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_parse PASSED [ 60%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_files PASSED [ 60%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_save PASSED [ 60%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_extensions PASSED [ 61%] 424s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_mimetypes PASSED [ 61%] 425s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_translate PASSED [ 61%] 425s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_markup PASSED [ 61%] 425s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_nonascii PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[-] PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String-String] PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {OK}-String] PASSED [ 61%] 425s 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%] 425s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{ok}-String] PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{OK}-String] PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok} -String] PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_isfuzzy PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_create PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_eq PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_target PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_escapes PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_difficult_escapes PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_note_sanity PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_get PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_set PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_translate_but_same PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_untranslated PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_comments PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_copy_target PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_create_blank PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_add PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_remove PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_find PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_translate PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_parse PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_files PASSED [ 61%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_save PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_markup PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_extensions PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_mimetypes PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_nonascii PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_format_layout PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_crlf PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_active_flag PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_multiline_comments PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_template PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[--False] PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ -Source -True] PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok}-Source-True] PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok} -Source-True] PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[{ok}-Source-True] PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_headers PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_not_headers PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[0] PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[1] PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[2] PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[3] PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_tag_comments PASSED [ 62%] 425s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_maxlength PASSED [ 62%] 425s tests/translate/storage/test_omegat.py::TestOtUnit::test_isfuzzy PASSED [ 62%] 425s tests/translate/storage/test_omegat.py::TestOtUnit::test_create PASSED [ 62%] 425s tests/translate/storage/test_omegat.py::TestOtUnit::test_eq PASSED [ 62%] 425s tests/translate/storage/test_omegat.py::TestOtUnit::test_target PASSED [ 62%] 425s tests/translate/storage/test_omegat.py::TestOtUnit::test_escapes PASSED [ 62%] 425s tests/translate/storage/test_omegat.py::TestOtUnit::test_difficult_escapes PASSED [ 62%] 425s tests/translate/storage/test_omegat.py::TestOtUnit::test_note_sanity PASSED [ 62%] 425s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_get PASSED [ 62%] 425s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_set PASSED [ 62%] 425s tests/translate/storage/test_omegat.py::TestOtFile::test_create_blank PASSED [ 62%] 425s tests/translate/storage/test_omegat.py::TestOtFile::test_add PASSED [ 62%] 425s tests/translate/storage/test_omegat.py::TestOtFile::test_remove PASSED [ 63%] 425s tests/translate/storage/test_omegat.py::TestOtFile::test_find PASSED [ 63%] 425s tests/translate/storage/test_omegat.py::TestOtFile::test_translate PASSED [ 63%] 425s tests/translate/storage/test_omegat.py::TestOtFile::test_parse PASSED [ 63%] 425s tests/translate/storage/test_omegat.py::TestOtFile::test_files PASSED [ 63%] 425s tests/translate/storage/test_omegat.py::TestOtFile::test_save PASSED [ 63%] 425s tests/translate/storage/test_omegat.py::TestOtFile::test_markup PASSED [ 63%] 425s tests/translate/storage/test_omegat.py::TestOtFile::test_nonascii PASSED [ 63%] 425s tests/translate/storage/test_omegat.py::TestOtFile::test_mimetypes PASSED [ 63%] 425s tests/translate/storage/test_omegat.py::TestOtFile::test_extensions XFAIL [ 63%] 425s tests/translate/storage/test_oo.py::test_makekey PASSED [ 63%] 425s tests/translate/storage/test_oo.py::test_escape_help_text PASSED [ 63%] 425s tests/translate/storage/test_oo.py::TestOO::test_simpleentry PASSED [ 63%] 425s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_quickhelptest PASSED [ 63%] 425s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_title PASSED [ 63%] 425s tests/translate/storage/test_oo.py::TestOO::test_blankline PASSED [ 63%] 425s tests/translate/storage/test_oo.py::TestOO::test_fieldlength PASSED [ 63%] 425s tests/translate/storage/test_oo.py::TestOO::test_escapes PASSED [ 63%] 425s tests/translate/storage/test_php.py::test_php_escaping_single_quote PASSED [ 63%] 425s tests/translate/storage/test_php.py::test_php_escaping_double_quote PASSED [ 63%] 425s tests/translate/storage/test_php.py::TestPhpUnit::test_isfuzzy PASSED [ 63%] 425s tests/translate/storage/test_php.py::TestPhpUnit::test_create PASSED [ 63%] 425s tests/translate/storage/test_php.py::TestPhpUnit::test_eq PASSED [ 63%] 425s tests/translate/storage/test_php.py::TestPhpUnit::test_escapes PASSED [ 63%] 425s tests/translate/storage/test_php.py::TestPhpUnit::test_note_sanity PASSED [ 63%] 425s tests/translate/storage/test_php.py::TestPhpUnit::test_target PASSED [ 63%] 425s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_get PASSED [ 63%] 425s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_set PASSED [ 63%] 425s tests/translate/storage/test_php.py::TestPhpUnit::test_difficult_escapes PASSED [ 63%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_create_blank PASSED [ 63%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_add PASSED [ 63%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_remove PASSED [ 63%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_find PASSED [ 63%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parse PASSED [ 63%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_files PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_save PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_extensions PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_mimetypes PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_translate PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_markup PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_nonascii PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_source PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_spaces_in_name PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_comment_definition PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_comment_blocks PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_comment_output PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_comment_add PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_multiline PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_no_array_syntax PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_spaces PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_quotes PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_number_as_value PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_non_textual PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define_with_spaces_before_key PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter_and_before_key PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equal_delimiter PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equaldel_but_before_key PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_entries_with_quotes PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_comments_at_entry_line_end PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_double_slash_comments_before_entries PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_before_end_delimiter PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simpledefinition_spaces_before_end_delimiter PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_no_trailing_comma PASSED [ 64%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_space_before_comma PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_space_before_array_declaration PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_declared_in_a_single_line PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys_assigned_to_array PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_no_keys PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_assignment_in_line_where_multiline_comment_ends PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_using_short_array_syntax PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_space_before_array_declaration PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_unnamed_nested_arrays PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_array_declaration_in_next_line PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_with_newline_after_delimiter PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_blank_entries PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_slashstar_in_string PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_heredoc_syntax PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_after_define PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_quotes PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_concatenation PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_serialize PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_space_before_comma PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_equals_in_id PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_comma_in_string PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_nowdoc PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_plain_concatenation PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_array_keys PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_double_var PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_return_array PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short_quotes PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestPhpFile::test_addunit PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_isfuzzy PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_create PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_eq PASSED [ 65%] 425s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_escapes PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_difficult_escapes PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_note_sanity PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_target PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_get PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_set PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_create_blank PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_add PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_remove PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_find PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_parse PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_files PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_save PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_extensions PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_mimetypes PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_translate PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_markup PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_nonascii PASSED [ 66%] 425s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_plurals PASSED [ 66%] 425s tests/translate/storage/test_po.py::test_roundtrip_quoting PASSED [ 66%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_isfuzzy PASSED [ 66%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_create PASSED [ 66%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_eq PASSED [ 66%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_target PASSED [ 66%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_escapes PASSED [ 66%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_difficult_escapes PASSED [ 66%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_note_sanity PASSED [ 66%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_rich_get PASSED [ 66%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_rich_set PASSED [ 66%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_istranslatable PASSED [ 66%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_locations PASSED [ 66%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_nongettext_location PASSED [ 66%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_adding_empty_note PASSED [ 66%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_markreview PASSED [ 66%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_errors PASSED [ 67%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_no_plural_settarget PASSED [ 67%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_wrapping_bug PASSED [ 67%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_extract_msgidcomments_from_text PASSED [ 67%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_isheader PASSED [ 67%] 425s tests/translate/storage/test_po.py::TestPOUnit::test_buildfromunit PASSED [ 67%] 425s tests/translate/storage/test_po.py::TestPOFile::test_create_blank PASSED [ 67%] 425s tests/translate/storage/test_po.py::TestPOFile::test_add PASSED [ 67%] 425s tests/translate/storage/test_po.py::TestPOFile::test_remove PASSED [ 67%] 425s tests/translate/storage/test_po.py::TestPOFile::test_find PASSED [ 67%] 425s tests/translate/storage/test_po.py::TestPOFile::test_translate PASSED [ 67%] 425s tests/translate/storage/test_po.py::TestPOFile::test_parse PASSED [ 67%] 425s tests/translate/storage/test_po.py::TestPOFile::test_files PASSED [ 67%] 425s tests/translate/storage/test_po.py::TestPOFile::test_save PASSED [ 67%] 425s tests/translate/storage/test_po.py::TestPOFile::test_markup PASSED [ 67%] 425s tests/translate/storage/test_po.py::TestPOFile::test_nonascii PASSED [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_extensions PASSED [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_mimetypes PASSED [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_context_only PASSED [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_simpleentry PASSED [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_copy PASSED [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_parse_source_string PASSED [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_parse_file PASSED [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_unicode PASSED [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_plurals PASSED [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_plural_unicode PASSED [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_nongettext_location PASSED [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_percent_location PASSED [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals XFAIL [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_empty_lines_notes PASSED [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_fuzzy PASSED [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated XFAIL [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_merging_automaticcomments PASSED [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_malformed_units PASSED [ 67%] 426s tests/translate/storage/test_po.py::TestPOFile::test_malformed_obsolete_units PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_uniforum_po PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_obsolete PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_obsolete_with_prev_msgid PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_header_escapes PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_plural PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgctxt PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgidcomments PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_multiline_obsolete PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_merge_duplicates PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_merge_mixed_sources PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_parse_context PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_parse_advanced_context PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_kde_context PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_broken_kde_context PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_id PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments_2 PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_final_slash PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_unfinished_lines PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_encoding_change PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_istranslated PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_wrapping PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_wrapping_cjk PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_wrap_emoji PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis_long PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_wrap_gettext PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_msgidcomments PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_unicode_ids PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_syntax_error PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_invalid PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_wrapped_msgid PASSED [ 68%] 426s tests/translate/storage/test_po.py::TestPOFile::test_missing_plural PASSED [ 69%] 426s tests/translate/storage/test_pocommon.py::test_roundtrip_quote_plus PASSED [ 69%] 426s tests/translate/storage/test_poheader.py::test_parseheaderstring PASSED [ 69%] 426s tests/translate/storage/test_poheader.py::test_update PASSED [ 69%] 426s tests/translate/storage/test_poheader.py::test_po_dates PASSED [ 69%] 426s tests/translate/storage/test_poheader.py::test_timezones PASSED [ 69%] 426s tests/translate/storage/test_poheader.py::test_header_blank PASSED [ 69%] 426s tests/translate/storage/test_poheader.py::test_plural_equation PASSED [ 69%] 426s tests/translate/storage/test_poheader.py::test_plural_equation_across_lines PASSED [ 69%] 426s tests/translate/storage/test_poheader.py::test_updatecontributor PASSED [ 69%] 426s tests/translate/storage/test_poheader.py::test_updatecontributor_header PASSED [ 69%] 426s tests/translate/storage/test_poheader.py::test_language PASSED [ 69%] 426s tests/translate/storage/test_poheader.py::test_project PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_isfuzzy PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_create PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_eq PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_target PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_escapes PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_difficult_escapes PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_note_sanity PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_get PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_set PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_markreview PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_errors PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_accepted_control_chars PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_unaccepted_control_chars PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_plurals PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_ids PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_create_blank PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_remove PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_find PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_translate PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_files PASSED [ 69%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_save PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_markup PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_nonascii PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_extensions PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_mimetypes PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_basic PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_namespace PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_source PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_target PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_source PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_target PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_sourcelanguage PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage_multi PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_alttrans PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_fuzzy PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_xml_space PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parsing PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_entities PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_multiple_filenodes PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_indent PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add_target PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_closing_tags PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_context_groups PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_getlocations PASSED [ 70%] 426s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_addlocation PASSED [ 70%] 427s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_huge PASSED [ 70%] 427s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve_add PASSED [ 70%] 427s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse PASSED [ 70%] 427s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse_plural_alpha_id PASSED [ 70%] 427s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_notes PASSED [ 70%] 427s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_plural PASSED [ 70%] 427s tests/translate/storage/test_properties.py::test_find_delimiter_pos_simple PASSED [ 71%] 427s tests/translate/storage/test_properties.py::test_find_delimiter_pos_multiple PASSED [ 71%] 427s tests/translate/storage/test_properties.py::test_find_delimiter_pos_none PASSED [ 71%] 427s tests/translate/storage/test_properties.py::test_find_delimiter_pos_whitespace PASSED [ 71%] 427s tests/translate/storage/test_properties.py::test_find_delimiter_pos_escapes PASSED [ 71%] 427s tests/translate/storage/test_properties.py::test_is_line_continuation PASSED [ 71%] 427s tests/translate/storage/test_properties.py::test_key_strip PASSED [ 71%] 427s tests/translate/storage/test_properties.py::test_get_comment_one_line PASSED [ 71%] 427s tests/translate/storage/test_properties.py::test_get_comment_start PASSED [ 71%] 427s tests/translate/storage/test_properties.py::test_get_comment_end PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestPropUnit::test_isfuzzy PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestPropUnit::test_create PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestPropUnit::test_eq PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestPropUnit::test_escapes PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestPropUnit::test_difficult_escapes PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestPropUnit::test_note_sanity PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestPropUnit::test_target PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_get PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_set PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_create_blank PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_add PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_remove PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_find PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_parse PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_files PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_save PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_extensions PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_mimetypes PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_translate PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_markup PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_nonascii PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_quotes PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_simpledefinition PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition PASSED [ 71%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition_source PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_reduce PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_increase PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_extra_plurals PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_non_plurals PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_encoding PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestGwtProp::test_other_plurals PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_create_blank PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_add PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_remove PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_find PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_parse PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_files PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_save PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_extensions PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_mimetypes PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_translate PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_markup PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_nonascii PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition_source PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_controlutf8_source PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_control_source PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_unicode_escaping PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_newlines_startend PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_space PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_whitespace_handling PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_key_value_delimiters_simple PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_comments PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_latin1 PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_fullspec_delimiters PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_fullspec_escaped_key PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_fullspec_line_continuation PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_fullspec_key_without_value PASSED [ 72%] 427s tests/translate/storage/test_properties.py::TestProp::test_mac_strings PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_utf_16_save PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_mac_multiline_strings PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_unicode PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_utf8 PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_newlines PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_multilines_comments PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments_dropping PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_quotes PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_equals PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_serialization PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_double_backslashes PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_override_encoding PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_trailing_comments PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_utf16_byte_order_mark PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_raise_ioerror_if_cannot_detect_encoding PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_utf8_byte_order_mark PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_joomla_set_target PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_joomla PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_joomla_escape PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_delimiter PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_value PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_multi_comments PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_serialize_note PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_serialize_long_note PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestProp::test_trailing_newlines PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_create_blank PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_add PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_remove PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_find PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_parse PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_files PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_save PASSED [ 73%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_extensions PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_mimetypes PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_translate PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_markup PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_nonascii PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_simpledefinition PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition_source PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote_and_argument PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_header_preserved PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_blank_line_before_comment_preserved PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWiki::test_deprecated_comments_preserved PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_create_blank PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_add PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_remove PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_find PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_parse PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_files PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_save PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_extensions PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_mimetypes PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_markup PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_nonascii PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_simpledefinition PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition_source PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote_and_argument PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_encoded_html PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_cleaning_attributes PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate_source PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_create_blank PASSED [ 74%] 427s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_add PASSED [ 75%] 427s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_find PASSED [ 75%] 427s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_extensions PASSED [ 75%] 427s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_mimetypes PASSED [ 75%] 427s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_translate PASSED [ 75%] 427s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_markup PASSED [ 75%] 427s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_nonascii PASSED [ 75%] 427s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_simpledefinition PASSED [ 75%] 427s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_parse PASSED [ 75%] 427s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_files PASSED [ 75%] 427s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_save PASSED [ 75%] 427s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_cleaning_attributes PASSED [ 75%] 427s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove XFAIL [ 75%] 427s tests/translate/storage/test_pypo.py::TestHelpers::test_unescape PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo_escaped_quotes PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isfuzzy PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_create PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_eq PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_target PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_escapes PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_difficult_escapes PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_note_sanity PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_get PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_set PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_istranslatable PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_locations PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_nongettext_location PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_adding_empty_note PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_markreview PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_errors PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_no_plural_settarget PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrapping_bug PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_extract_msgidcomments_from_text PASSED [ 75%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isheader PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_buildfromunit PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plurals PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plural_reduction PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes_withcomments PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_firstlines PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_newlines PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_max_line_length PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_slash PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_spacing_max_line PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_create_blank PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_add PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_remove PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_find PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_translate PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_files PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_save PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_markup PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nonascii PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_extensions PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mimetypes PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_context_only PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_simpleentry PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_copy PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_source_string PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_file PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plurals PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plural_unicode PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nongettext_location PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_percent_location PASSED [ 76%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals XFAIL [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_empty_lines_notes PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_fuzzy PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated XFAIL [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merging_automaticcomments PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_units PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_obsolete_units PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_uniforum_po PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete_with_prev_msgid PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_header_escapes PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_plural PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgctxt PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgidcomments PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_multiline_obsolete PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_mixed_sources PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_context PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_advanced_context PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_context PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_broken_kde_context PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_id PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments_2 PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_final_slash PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unfinished_lines PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_encoding_change PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_istranslated PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping_cjk PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_emoji PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis_long PASSED [ 77%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_gettext PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_msgidcomments PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_ids PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_syntax_error PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapped_msgid PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_missing_plural PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_combine_msgidcomments PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates_msgctxt PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_blanks PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_output_str_unicode PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_posections PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_typecomments PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unassociated_comments PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_header PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_prevmsgid_parse PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_newlines PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unix_newlines PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mac_newlines PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_header PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_comment PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_bom PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_long_msgidcomments PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_incomplete PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_invalid PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_write PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment XFAIL [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_typecomment PASSED [ 78%] 427s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_custom PASSED [ 78%] 427s tests/translate/storage/test_qm.py::TestQtUnit::test_isfuzzy PASSED [ 78%] 427s tests/translate/storage/test_qm.py::TestQtUnit::test_create PASSED [ 78%] 427s tests/translate/storage/test_qm.py::TestQtUnit::test_eq PASSED [ 78%] 427s tests/translate/storage/test_qm.py::TestQtUnit::test_target PASSED [ 79%] 427s tests/translate/storage/test_qm.py::TestQtUnit::test_escapes PASSED [ 79%] 427s tests/translate/storage/test_qm.py::TestQtUnit::test_difficult_escapes PASSED [ 79%] 427s tests/translate/storage/test_qm.py::TestQtUnit::test_note_sanity PASSED [ 79%] 427s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_get PASSED [ 79%] 427s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_set PASSED [ 79%] 427s tests/translate/storage/test_qm.py::TestQtFile::test_create_blank PASSED [ 79%] 427s tests/translate/storage/test_qm.py::TestQtFile::test_find PASSED [ 79%] 427s tests/translate/storage/test_qm.py::TestQtFile::test_translate PASSED [ 79%] 427s tests/translate/storage/test_qm.py::TestQtFile::test_markup PASSED [ 79%] 427s tests/translate/storage/test_qm.py::TestQtFile::test_extensions PASSED [ 79%] 427s tests/translate/storage/test_qm.py::TestQtFile::test_mimetypes PASSED [ 79%] 427s tests/translate/storage/test_qm.py::TestQtFile::test_parse PASSED [ 79%] 427s tests/translate/storage/test_qm.py::TestQtFile::test_save PASSED [ 79%] 427s tests/translate/storage/test_qm.py::TestQtFile::test_files PASSED [ 79%] 427s tests/translate/storage/test_qm.py::TestQtFile::test_nonascii PASSED [ 79%] 427s tests/translate/storage/test_qm.py::TestQtFile::test_add PASSED [ 79%] 427s tests/translate/storage/test_qm.py::TestQtFile::test_remove PASSED [ 79%] 427s tests/translate/storage/test_qph.py::TestQphUnit::test_isfuzzy PASSED [ 79%] 427s tests/translate/storage/test_qph.py::TestQphUnit::test_create PASSED [ 79%] 427s tests/translate/storage/test_qph.py::TestQphUnit::test_eq PASSED [ 79%] 427s tests/translate/storage/test_qph.py::TestQphUnit::test_target PASSED [ 79%] 427s tests/translate/storage/test_qph.py::TestQphUnit::test_escapes PASSED [ 79%] 427s tests/translate/storage/test_qph.py::TestQphUnit::test_difficult_escapes PASSED [ 79%] 427s tests/translate/storage/test_qph.py::TestQphUnit::test_note_sanity PASSED [ 79%] 427s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_get PASSED [ 79%] 427s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_set PASSED [ 79%] 427s tests/translate/storage/test_qph.py::TestQphFile::test_create_blank PASSED [ 79%] 427s tests/translate/storage/test_qph.py::TestQphFile::test_add PASSED [ 79%] 427s tests/translate/storage/test_qph.py::TestQphFile::test_remove PASSED [ 79%] 427s tests/translate/storage/test_qph.py::TestQphFile::test_find PASSED [ 79%] 427s tests/translate/storage/test_qph.py::TestQphFile::test_translate PASSED [ 79%] 427s tests/translate/storage/test_qph.py::TestQphFile::test_parse PASSED [ 79%] 427s tests/translate/storage/test_qph.py::TestQphFile::test_files PASSED [ 79%] 427s tests/translate/storage/test_qph.py::TestQphFile::test_save PASSED [ 80%] 427s tests/translate/storage/test_qph.py::TestQphFile::test_markup PASSED [ 80%] 427s tests/translate/storage/test_qph.py::TestQphFile::test_nonascii PASSED [ 80%] 427s tests/translate/storage/test_qph.py::TestQphFile::test_extensions PASSED [ 80%] 427s tests/translate/storage/test_qph.py::TestQphFile::test_mimetypes PASSED [ 80%] 427s tests/translate/storage/test_qph.py::TestQphFile::test_basic PASSED [ 80%] 427s tests/translate/storage/test_qph.py::TestQphFile::test_source PASSED [ 80%] 427s tests/translate/storage/test_qph.py::TestQphFile::test_target PASSED [ 80%] 427s tests/translate/storage/test_qph.py::TestQphFile::test_language PASSED [ 80%] 427s tests/translate/storage/test_rc.py::test_escaping PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_comments PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_textinclude PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_parse_dialog PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_parse_stringtable PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_lf PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_crlf PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_cr PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_parse_no_language PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_multiline PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_str PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_empty PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_utf_8 PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_utf_16 PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_comment PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_stringtables PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude_appstudio PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_id_whitespace PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_menu_comment PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_decompiled PASSED [ 80%] 428s tests/translate/storage/test_rc.py::TestRcFile::test_quotes PASSED [ 80%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_isfuzzy PASSED [ 80%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_create PASSED [ 80%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_eq PASSED [ 80%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_escapes PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_difficult_escapes PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_note_sanity PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_target PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_get PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_set PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_create_blank PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_add PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_remove PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_find PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_parse PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_files PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_save PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_extensions PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_mimetypes PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_translate PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_markup PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_nonascii PASSED [ 81%] 428s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_roundtrip PASSED [ 81%] 428s tests/translate/storage/test_resx.py::TestRESXUnit::test_isfuzzy PASSED [ 81%] 428s tests/translate/storage/test_resx.py::TestRESXUnit::test_create PASSED [ 81%] 428s tests/translate/storage/test_resx.py::TestRESXUnit::test_eq PASSED [ 81%] 428s tests/translate/storage/test_resx.py::TestRESXUnit::test_escapes PASSED [ 81%] 428s tests/translate/storage/test_resx.py::TestRESXUnit::test_difficult_escapes PASSED [ 81%] 428s tests/translate/storage/test_resx.py::TestRESXUnit::test_note_sanity PASSED [ 81%] 428s tests/translate/storage/test_resx.py::TestRESXUnit::test_target PASSED [ 81%] 428s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_get PASSED [ 81%] 428s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_set PASSED [ 81%] 428s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_isfuzzy PASSED [ 81%] 428s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_create PASSED [ 81%] 428s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_eq PASSED [ 81%] 428s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_escapes PASSED [ 81%] 428s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_difficult_escapes PASSED [ 81%] 428s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_note_sanity PASSED [ 81%] 428s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_target PASSED [ 82%] 428s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_get PASSED [ 82%] 428s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_set PASSED [ 82%] 428s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit PASSED [ 82%] 428s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit_comment PASSED [ 82%] 428s tests/translate/storage/test_resx.py::TestRESXfile::test_create_blank PASSED [ 82%] 428s tests/translate/storage/test_resx.py::TestRESXfile::test_add PASSED [ 82%] 428s tests/translate/storage/test_resx.py::TestRESXfile::test_remove PASSED [ 82%] 428s tests/translate/storage/test_resx.py::TestRESXfile::test_find PASSED [ 82%] 428s tests/translate/storage/test_resx.py::TestRESXfile::test_parse PASSED [ 82%] 428s tests/translate/storage/test_resx.py::TestRESXfile::test_files PASSED [ 82%] 428s tests/translate/storage/test_resx.py::TestRESXfile::test_save PASSED [ 82%] 428s tests/translate/storage/test_resx.py::TestRESXfile::test_extensions PASSED [ 82%] 428s tests/translate/storage/test_resx.py::TestRESXfile::test_mimetypes PASSED [ 82%] 428s tests/translate/storage/test_resx.py::TestRESXfile::test_translate PASSED [ 82%] 428s tests/translate/storage/test_resx.py::TestRESXfile::test_markup PASSED [ 82%] 428s tests/translate/storage/test_resx.py::TestRESXfile::test_nonascii PASSED [ 82%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_isfuzzy PASSED [ 82%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_create PASSED [ 82%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq PASSED [ 82%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_escapes PASSED [ 82%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_difficult_escapes PASSED [ 82%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_note_sanity PASSED [ 82%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_target PASSED [ 82%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_get PASSED [ 82%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_set PASSED [ 82%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_source PASSED [ 82%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq_formatvaluetype PASSED [ 82%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_innerkey PASSED [ 82%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_create_blank PASSED [ 82%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add PASSED [ 82%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_remove PASSED [ 82%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_find PASSED [ 82%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_parse PASSED [ 83%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_files PASSED [ 83%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_save PASSED [ 83%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_extensions PASSED [ 83%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_mimetypes PASSED [ 83%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_translate PASSED [ 83%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_markup PASSED [ 83%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_nonascii PASSED [ 83%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_serialize PASSED [ 83%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_default_handlings PASSED [ 83%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename PASSED [ 83%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_base_filename PASSED [ 83%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 83%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_plural_zero_always_set PASSED [ 83%] 428s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add_unit PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_create_blank PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_add PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_remove PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_find PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_parse PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_files PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_save PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_extensions PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_mimetypes PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_translate PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_markup PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_nonascii PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_ordering PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_create_blank PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_add PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_remove PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_find PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_parse PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_files PASSED [ 83%] 428s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_save PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_extensions PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_mimetypes PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_translate PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_markup PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_nonascii PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_ordering PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity XFAIL [ 84%] 428s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_create_blank PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_add PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_remove PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_find PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_parse PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_files PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_save PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_extensions PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_mimetypes PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_translate PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_markup PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_nonascii PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_ordering PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_create_blank PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_add PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_remove PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_find PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_parse PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_files PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_save PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_extensions PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_mimetypes PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_translate PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_markup PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_nonascii PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_ordering PASSED [ 84%] 428s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_create_blank PASSED [ 85%] 428s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_add PASSED [ 85%] 428s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_remove PASSED [ 85%] 428s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_find PASSED [ 85%] 428s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_parse PASSED [ 85%] 428s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_files PASSED [ 85%] 428s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_save PASSED [ 85%] 428s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_extensions PASSED [ 85%] 428s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_mimetypes PASSED [ 85%] 428s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_translate PASSED [ 85%] 428s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_markup PASSED [ 85%] 428s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_nonascii PASSED [ 85%] 428s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_ordering PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXUnit::test_isfuzzy PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXUnit::test_create PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXUnit::test_eq PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXUnit::test_target PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXUnit::test_escapes PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXUnit::test_difficult_escapes PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXUnit::test_note_sanity PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_get PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_set PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_create_blank PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_add PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_remove PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_find PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_translate PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_parse PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_files PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_save PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_markup PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_nonascii PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_extensions PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_mimetypes PASSED [ 85%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_basic PASSED [ 86%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_source PASSED [ 86%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_target PASSED [ 86%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_setid PASSED [ 86%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_indent PASSED [ 86%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_descrip PASSED [ 86%] 428s tests/translate/storage/test_tbx.py::TestTBXfile::test_note_from PASSED [ 86%] 428s tests/translate/storage/test_tiki.py::TestTikiUnit::test_locations PASSED [ 86%] 428s tests/translate/storage/test_tiki.py::TestTikiUnit::test_to_unicode PASSED [ 86%] 428s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_simple PASSED [ 86%] 428s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_encode PASSED [ 86%] 428s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_locations PASSED [ 86%] 428s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_ignore_extras PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnit::test_isfuzzy PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnit::test_create PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnit::test_eq PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnit::test_target PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnit::test_escapes PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnit::test_difficult_escapes PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnit::test_note_sanity PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_get PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_set PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_isfuzzy PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_create PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_eq PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_target PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_escapes PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_difficult_escapes PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_note_sanity PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_get PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_set PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXfile::test_create_blank PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXfile::test_add PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXfile::test_remove PASSED [ 86%] 428s tests/translate/storage/test_tmx.py::TestTMXfile::test_find PASSED [ 87%] 428s tests/translate/storage/test_tmx.py::TestTMXfile::test_parse PASSED [ 87%] 428s tests/translate/storage/test_tmx.py::TestTMXfile::test_files PASSED [ 87%] 428s tests/translate/storage/test_tmx.py::TestTMXfile::test_save PASSED [ 87%] 428s tests/translate/storage/test_tmx.py::TestTMXfile::test_markup PASSED [ 87%] 428s tests/translate/storage/test_tmx.py::TestTMXfile::test_nonascii PASSED [ 87%] 428s tests/translate/storage/test_tmx.py::TestTMXfile::test_extensions PASSED [ 87%] 428s tests/translate/storage/test_tmx.py::TestTMXfile::test_mimetypes PASSED [ 87%] 428s tests/translate/storage/test_tmx.py::TestTMXfile::test_translate PASSED [ 87%] 428s tests/translate/storage/test_tmx.py::TestTMXfile::test_addtranslation PASSED [ 87%] 428s tests/translate/storage/test_tmx.py::TestTMXfile::test_withcomment PASSED [ 87%] 428s tests/translate/storage/test_tmx.py::TestTMXfile::test_withnewlines PASSED [ 87%] 428s tests/translate/storage/test_tmx.py::TestTMXfile::test_xmlentities PASSED [ 87%] 428s tests/translate/storage/test_tmx.py::TestTMXfile::test_controls_cleaning PASSED [ 87%] 428s tests/translate/storage/test_trados.py::test_unescape PASSED [ 87%] 428s tests/translate/storage/test_trados.py::test_escape PASSED [ 87%] 428s tests/translate/storage/test_ts.py::TestTS::test_construct PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSUnit::test_isfuzzy PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSUnit::test_create PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSUnit::test_eq PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSUnit::test_target PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSUnit::test_escapes PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSUnit::test_difficult_escapes PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSUnit::test_note_sanity PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_get PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_set PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_create_blank PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_add PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_remove PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_find PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_translate PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_parse PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_files PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_save PASSED [ 87%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_markup PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_nonascii PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_extensions PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_mimetypes PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_basic PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_source PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_target PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_plurals PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_nplural PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_language PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_edit PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_obsolete PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_locations PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_merge_with_fuzzies PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_getid PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_backnforth PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_context PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_roundtrip_context PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_edit_missing_translation PASSED [ 88%] 428s tests/translate/storage/test_ts2.py::TestTSfile::test_missing_source PASSED [ 88%] 428s tests/translate/storage/test_txt.py::TestTxtUnit::test_isfuzzy PASSED [ 88%] 428s tests/translate/storage/test_txt.py::TestTxtUnit::test_create PASSED [ 88%] 428s tests/translate/storage/test_txt.py::TestTxtUnit::test_eq PASSED [ 88%] 428s tests/translate/storage/test_txt.py::TestTxtUnit::test_escapes PASSED [ 88%] 428s tests/translate/storage/test_txt.py::TestTxtUnit::test_difficult_escapes PASSED [ 88%] 428s tests/translate/storage/test_txt.py::TestTxtUnit::test_note_sanity PASSED [ 88%] 428s tests/translate/storage/test_txt.py::TestTxtUnit::test_target PASSED [ 88%] 428s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_get PASSED [ 88%] 428s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_set PASSED [ 88%] 428s tests/translate/storage/test_txt.py::TestTxtFile::test_create_blank PASSED [ 88%] 428s tests/translate/storage/test_txt.py::TestTxtFile::test_add PASSED [ 88%] 428s tests/translate/storage/test_txt.py::TestTxtFile::test_remove PASSED [ 88%] 428s tests/translate/storage/test_txt.py::TestTxtFile::test_find PASSED [ 88%] 428s tests/translate/storage/test_txt.py::TestTxtFile::test_parse PASSED [ 89%] 428s tests/translate/storage/test_txt.py::TestTxtFile::test_files PASSED [ 89%] 428s tests/translate/storage/test_txt.py::TestTxtFile::test_save PASSED [ 89%] 428s tests/translate/storage/test_txt.py::TestTxtFile::test_extensions PASSED [ 89%] 428s tests/translate/storage/test_txt.py::TestTxtFile::test_mimetypes PASSED [ 89%] 428s tests/translate/storage/test_txt.py::TestTxtFile::test_translate PASSED [ 89%] 428s tests/translate/storage/test_txt.py::TestTxtFile::test_markup PASSED [ 89%] 428s tests/translate/storage/test_txt.py::TestTxtFile::test_nonascii PASSED [ 89%] 428s tests/translate/storage/test_txt.py::TestTxtFile::test_simpleblock PASSED [ 89%] 428s tests/translate/storage/test_txt.py::TestTxtFile::test_multipleblocks PASSED [ 89%] 428s tests/translate/storage/test_txt.py::TestTxtFile::test_no_segmentation PASSED [ 89%] 428s tests/translate/storage/test_utx.py::TestUtxUnit::test_isfuzzy PASSED [ 89%] 428s tests/translate/storage/test_utx.py::TestUtxUnit::test_create PASSED [ 89%] 428s tests/translate/storage/test_utx.py::TestUtxUnit::test_eq PASSED [ 89%] 428s tests/translate/storage/test_utx.py::TestUtxUnit::test_target PASSED [ 89%] 428s tests/translate/storage/test_utx.py::TestUtxUnit::test_escapes PASSED [ 89%] 428s tests/translate/storage/test_utx.py::TestUtxUnit::test_difficult_escapes PASSED [ 89%] 429s tests/translate/storage/test_utx.py::TestUtxUnit::test_note_sanity PASSED [ 89%] 429s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_get PASSED [ 89%] 429s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_set PASSED [ 89%] 429s tests/translate/storage/test_utx.py::TestUtxFile::test_create_blank PASSED [ 89%] 429s tests/translate/storage/test_utx.py::TestUtxFile::test_add PASSED [ 89%] 429s tests/translate/storage/test_utx.py::TestUtxFile::test_remove PASSED [ 89%] 429s tests/translate/storage/test_utx.py::TestUtxFile::test_find PASSED [ 89%] 429s tests/translate/storage/test_utx.py::TestUtxFile::test_translate PASSED [ 89%] 429s tests/translate/storage/test_utx.py::TestUtxFile::test_parse PASSED [ 89%] 429s tests/translate/storage/test_utx.py::TestUtxFile::test_files PASSED [ 89%] 429s tests/translate/storage/test_utx.py::TestUtxFile::test_save PASSED [ 89%] 429s tests/translate/storage/test_utx.py::TestUtxFile::test_markup PASSED [ 89%] 429s tests/translate/storage/test_utx.py::TestUtxFile::test_nonascii PASSED [ 89%] 429s tests/translate/storage/test_utx.py::TestUtxFile::test_extensions PASSED [ 89%] 429s tests/translate/storage/test_utx.py::TestUtxFile::test_mimetypes PASSED [ 89%] 429s tests/translate/storage/test_wordfast.py::TestWFTime::test_timestring PASSED [ 89%] 429s tests/translate/storage/test_wordfast.py::TestWFTime::test_time PASSED [ 89%] 429s tests/translate/storage/test_wordfast.py::TestWFUnit::test_isfuzzy PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFUnit::test_create PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFUnit::test_eq PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFUnit::test_target PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFUnit::test_escapes PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFUnit::test_note_sanity PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_get PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_set PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFUnit::test_difficult_escapes PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFUnit::test_wordfast_escaping PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFUnit::test_newlines PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFUnit::test_language_setting PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFUnit::test_istranslated PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFFile::test_create_blank PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFFile::test_add PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFFile::test_remove PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFFile::test_find PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFFile::test_translate PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFFile::test_parse PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFFile::test_files PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFFile::test_save PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFFile::test_markup PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFFile::test_nonascii PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFFile::test_extensions PASSED [ 90%] 429s tests/translate/storage/test_wordfast.py::TestWFFile::test_mimetypes PASSED [ 90%] 429s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_isfuzzy PASSED [ 90%] 429s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_create PASSED [ 90%] 429s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_eq PASSED [ 90%] 429s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_target PASSED [ 90%] 429s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_escapes PASSED [ 90%] 429s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_difficult_escapes PASSED [ 90%] 429s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_note_sanity PASSED [ 90%] 429s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_get PASSED [ 90%] 429s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_set PASSED [ 90%] 429s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_markreview PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_errors PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_accepted_control_chars PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_unaccepted_control_chars PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_create_blank PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_remove PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_find PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_translate PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parse PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_files PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_save PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_markup PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_nonascii PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_extensions PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_mimetypes PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_basic PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_namespace PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_source PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_target PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_source PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_target PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_sourcelanguage PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage_multi PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_notes PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_alttrans PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_fuzzy PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_xml_space PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parsing PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_entities PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_multiple_filenodes PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_indent PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add_target PASSED [ 91%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve PASSED [ 92%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_closing_tags PASSED [ 92%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_context_groups PASSED [ 92%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_getlocations PASSED [ 92%] 429s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_addlocation PASSED [ 92%] 430s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_huge PASSED [ 92%] 430s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve_add PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_isfuzzy PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_create PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_eq PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_escapes PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_difficult_escapes PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_note_sanity PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_target PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_get PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_set PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_getlocations PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_create_blank PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_find PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_files PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_save PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_extensions PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_mimetypes PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_translate PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_markup PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nonascii PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_serialize PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit_unicode PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse_unicode_list PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_ordering PASSED [ 92%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_initial_comments PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_string_key PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nested PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_multiline PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_boolean PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_integer PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_no_quote_strings PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_double_quote_strings PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_single_quote_strings PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_double_quote_strings PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_single_quote_strings PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_escaped_double_quotes PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_newlines PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_list PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_dictionary PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_key_nesting PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add_to_mepty PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty_key PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dict_in_list PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dump_args PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_anchors PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_tagged_scalar PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_numeric PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_remove PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_special PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_quotes_roundtrip PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_create_blank PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_remove PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_find PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_parse PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_files PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_save PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_extensions PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_mimetypes PASSED [ 93%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_translate PASSED [ 94%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_markup PASSED [ 94%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_nonascii PASSED [ 94%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_list PASSED [ 94%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby PASSED [ 94%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_wrong PASSED [ 94%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_invalid_value PASSED [ 94%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural PASSED [ 94%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_empty PASSED [ 94%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_anchors PASSED [ 94%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_type_change PASSED [ 94%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_add PASSED [ 94%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural_blank PASSED [ 94%] 430s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural_partial PASSED [ 94%] 430s tests/translate/storage/test_zip.py::TestZIPFile::test_created PASSED [ 94%] 430s tests/translate/storage/test_zip.py::TestZIPFile::test_basic PASSED [ 94%] 430s tests/translate/storage/test_zip.py::TestZIPFile::test_structure PASSED [ 94%] 430s tests/translate/storage/test_zip.py::TestZIPFile::test_getunits PASSED [ 94%] 430s tests/translate/storage/xml_extract/test_misc.py::test_reduce_tree PASSED [ 94%] 430s tests/translate/storage/xml_extract/test_misc.py::test_compose_mappings PASSED [ 94%] 430s tests/translate/storage/xml_extract/test_misc.py::test_parse_tag PASSED [ 94%] 430s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath_component PASSED [ 94%] 430s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath PASSED [ 94%] 430s tests/translate/storage/xml_extract/test_unit_tree.py::test__add_unit_to_tree PASSED [ 94%] 430s tests/translate/storage/xml_extract/test_xpath_breadcrumb.py::test_breadcrumb PASSED [ 94%] 430s tests/translate/tools/test_help.py::test_help[build_tmdb] SKIPPED (S...) [ 94%] 430s tests/translate/tools/test_help.py::test_help[phppo2pypo] SKIPPED (S...) [ 94%] 430s tests/translate/tools/test_help.py::test_help[poclean] SKIPPED (Skip...) [ 94%] 430s tests/translate/tools/test_help.py::test_help[pocompile] SKIPPED (Sk...) [ 94%] 430s tests/translate/tools/test_help.py::test_help[poconflicts] SKIPPED (...) [ 94%] 430s tests/translate/tools/test_help.py::test_help[pocount] SKIPPED (Skip...) [ 94%] 430s tests/translate/tools/test_help.py::test_help[podebug] SKIPPED (Skip...) [ 94%] 430s tests/translate/tools/test_help.py::test_help[pogrep] SKIPPED (Skip ...) [ 94%] 430s tests/translate/tools/test_help.py::test_help[pomerge] SKIPPED (Skip...) [ 95%] 430s tests/translate/tools/test_help.py::test_help[porestructure] SKIPPED [ 95%] 430s tests/translate/tools/test_help.py::test_help[posegment] SKIPPED (Sk...) [ 95%] 430s tests/translate/tools/test_help.py::test_help[poswap] SKIPPED (Skip ...) [ 95%] 430s tests/translate/tools/test_help.py::test_help[poterminology] SKIPPED [ 95%] 430s tests/translate/tools/test_help.py::test_help[pretranslate] SKIPPED [ 95%] 430s tests/translate/tools/test_help.py::test_help[pydiff] SKIPPED (Skip ...) [ 95%] 430s tests/translate/tools/test_help.py::test_help[pypo2phppo] SKIPPED (S...) [ 95%] 430s tests/translate/tools/test_junitmsgfmt.py::test_output[failure] PASSED [ 95%] 430s tests/translate/tools/test_junitmsgfmt.py::test_output[untranslated] PASSED [ 95%] 430s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_single_po PASSED [ 95%] 430s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_plural_po PASSED [ 95%] 430s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_single_po PASSED [ 95%] 430s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_plural_po PASSED [ 95%] 430s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_help PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_zero PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_one PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_two PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::TestCount::test_punctuation_divides_words PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::TestCount::test_xml_tags PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::TestCount::test_newlines PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::TestCount::test_variables_are_words PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::TestCount::test_plurals PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde XFAIL [ 95%] 430s tests/translate/tools/test_pocount.py::TestCount::test_msgid_blank PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::TestPOCount::test_translated PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzy PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslated PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::TestPOCount::test_total PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::TestPOCount::test_translatedsourcewords PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzysourcewords PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslatedsourcewords PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::TestPOCount::test_totalsourcewords PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-csv] PASSED [ 95%] 430s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-full] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-strings] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-words] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-csv] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-full] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-strings] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-words] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-csv] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-full] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-strings] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-words] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-csv] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-full] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-strings] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-words] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_cases[po-file] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_cases[po-file-fuzzy] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_cases[po-file-csv] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_cases[xliff-states-yes] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_cases[xliff-states-no] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_error_cases[mutually-exclusive] PASSED [ 96%] 430s tests/translate/tools/test_pocount.py::test_error_cases[missing-file] PASSED [ 96%] 431s tests/translate/tools/test_pocount.py::test_error_cases[no-args] PASSED [ 96%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_ignore_gtk PASSED [ 96%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_keep_target PASSED [ 96%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_blank PASSED [ 96%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_en PASSED [ 96%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_xxx PASSED [ 96%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_bracket PASSED [ 96%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode PASSED [ 96%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_at_placeholders PASSED [ 96%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_single_brace_placeholders PASSED [ 96%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_double_brace_placeholders PASSED [ 96%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_html PASSED [ 96%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_multiple_styles_of_placeholder PASSED [ 97%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped PASSED [ 97%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_at_placeholders PASSED [ 97%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_single_brace_placeholders PASSED [ 97%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_double_brace_placeholders PASSED [ 97%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_html PASSED [ 97%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_multiple_styles_of_placeholder PASSED [ 97%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified PASSED [ 97%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_at_placeholders PASSED [ 97%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_single_brace_placeholders PASSED [ 97%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_double_brace_placeholders PASSED [ 97%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_html PASSED [ 97%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_multiple_styles_of_placeholder PASSED [ 97%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_chef PASSED [ 97%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_po_variables PASSED [ 97%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_xliff_rewrite PASSED [ 97%] 431s tests/translate/tools/test_podebug.py::TestPODebug::test_hash PASSED [ 97%] 431s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgid PASSED [ 97%] 431s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgstr PASSED [ 97%] 431s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations PASSED [ 97%] 431s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_comments PASSED [ 97%] 431s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations_with_comment_enabled PASSED [ 97%] 431s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_searchstring PASSED [ 97%] 431s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_regex_searchstring PASSED [ 97%] 431s tests/translate/tools/test_pogrep.py::TestPOGrep::test_keep_translations PASSED [ 97%] 431s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_normalise PASSED [ 97%] 431s tests/translate/tools/test_pogrep.py::TestXLiffGrep::test_simplegrep PASSED [ 97%] 431s tests/translate/tools/test_pomerge.py::test_str2bool PASSED [ 97%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_mergesore_bad_data PASSED [ 97%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge PASSED [ 97%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge_no_locations PASSED [ 97%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_replacemerge PASSED [ 97%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_blanks PASSED [ 97%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_fuzzies PASSED [ 97%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_locations PASSED [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_with_locations PASSED [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_no_locations PASSED [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_reflowed_source_comments PASSED [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_comments_with_blank_lines PASSED [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dont_delete_unassociated_comments PASSED [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_trailing_newlines PASSED [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_minor_start_and_end_of_sentence_changes PASSED [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_last_entry_in_a_file PASSED [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs XFAIL [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_comments_layout PASSED [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dos2unix PASSED [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_xliff PASSED [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_po_into_xliff PASSED [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_po PASSED [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_dont_merge_kde_comments_found_in_translation PASSED [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_untranslated_with_kde_disambiguation PASSED [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_header_entries PASSED [ 98%] 431s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_different_locations PASSED [ 98%] 431s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_simple PASSED [ 98%] 431s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_punctuation PASSED [ 98%] 431s tests/translate/tools/test_poterminology.py::TestPOTerminology::test_term_extraction PASSED [ 98%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_pretranslatepo_blank PASSED [ 98%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_simple PASSED [ 98%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_messages_marked_fuzzy PASSED [ 98%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals_with_fuzzy_matching PASSED [ 98%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change XFAIL [ 98%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_change PASSED [ 98%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_and_whitespace_change PASSED [ 98%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes XFAIL [ 98%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently XFAIL [ 98%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_dont_duplicate PASSED [ 98%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_new_overides_old PASSED [ 98%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments_with_blank_comment_lines PASSED [ 98%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_empty_commentlines PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgidcomments PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_resurect_obsolete_messages PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_typecomments PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_xliff_states PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_pretranslatepo_blank PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_simple PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_messages_marked_fuzzy PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change XFAIL [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_change PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_and_whitespace_change PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes XFAIL [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently XFAIL [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_new_overides_old PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments_with_blank_comment_lines PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_empty_commentlines PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgidcomments PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_resurect_obsolete_messages PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_typecomments PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_xliff_states PASSED [ 99%] 431s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_help PASSED [ 99%] 431s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_single_po PASSED [ 99%] 431s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_plural_po PASSED [ 99%] 431s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_single_po PASSED [ 99%] 431s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_plural_po PASSED [ 99%] 431s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_help PASSED [ 99%] 431s tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff SKIPPED [ 99%] 431s tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff SKIPPED [100%] 431s 431s =============================== warnings summary =============================== 431s tests/translate/storage/test_cpo.py:15 431s Warning: 431s Module 'translate.storage.cpo' was found, but when imported by pytest it raised: 431s ImportError('gettext PO library not found') 431s In pytest 9.1 this warning will become an error by default. 431s You can fix the underlying problem, or alternatively overwrite this behavior and silence this warning by passing exc_type=ImportError explicitly. 431s See https://docs.pytest.org/en/stable/deprecations.html#pytest-importorskip-default-behavior-regarding-importerror 431s 431s tests/odf_xliff/test_odf_xliff.py::test_roundtrip 431s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.SjMO23/autopkgtest_tmp/tests/odf_xliff/test_2.odt'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid 431s Warning: unclosed file <_io.TextIOWrapper name='TestAndroid2POCommand_test_convertandroid/en.po' mode='r' encoding='UTF-8'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 431s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 431s Warning: unclosed file <_io.TextIOWrapper name='TestCSV2POCommand_test_columnorder/test.po' mode='r' encoding='UTF-8'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot 431s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_pot/simple.pot'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po 431s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po 431s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_po/simple.po'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates 431s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_remove_duplicates/simple.po'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf 431s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_xlf/simple.xlf'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 431s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 431s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_columnorder/test.csv' mode='r' encoding='UTF-8'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context 431s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_context/test.csv' mode='r' encoding='UTF-8'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing 431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey 431s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey 431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing 431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey 431s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey 431s Warning: Could not find accesskey for key.accesskey 431s 431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file 431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten 431s Warning: unclosed file <_io.BufferedReader name='translation/file1.po'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 431s Warning: unclosed file <_io.BufferedWriter name='translated/file1.html'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert 431s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.SjMO23/autopkgtest_tmp/tests/translate/convert/test.idml'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po 431s Warning: unclosed file <_io.BufferedReader name='translation.po'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp 431s Warning: unclosed file <_io.FileIO name='input.oo' mode='rb' closefd=True> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp 431s Warning: unclosed file <_io.FileIO name='output.oo' mode='wb' closefd=True> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey 431s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey 431s Warning: Could not find accesskey for prop.accesskey 431s 431s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert 431s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert/simple.po'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 431s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf16/simple.po'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 431s Warning: unclosed file <_io.BufferedWriter name='simple.po'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 431s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 431s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_wrong/simple.po'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 431s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf8/simple.po'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex 431s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_menuex/simple.po'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot 431s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_pot/simple.pot'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po 431s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_po/simple.po'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates 431s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_remove_duplicates/simple.po'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 431s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.SjMO23/autopkgtest_tmp/tests/translate/convert/test.odt'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename 431s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_preserve_filename/snippet.xlf'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot 431s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_pot/simple.pot'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po 431s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_po/simple.po'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates 431s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_remove_duplicates/simple.po'> 431s Enable tracemalloc to get traceback where the object was allocated. 431s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 431s 431s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers 431s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers 431s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker 431s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source 431s Warning: The 'u' type code is deprecated and will be removed in Python 3.16 431s 431s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 431s Warning: DTD parse error: :1:35:FATAL:PARSER:ERR_ENTITY_NOT_FINISHED: xmlParseEntityDecl: entity test.me not terminated 431s 431s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 431s Warning: DTD file '' does not validate 431s 431s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 431s --------------------------- snapshot report summary ---------------------------- 431s 23 snapshots passed. 431s =========================== short test summary info ============================ 431s SKIPPED [1] tests/translate/storage/test_cpo.py:15: could not import 'translate.storage.cpo': gettext PO library not found 431s SKIPPED [1] tests/translate/storage/test_fluent.py:29: could not import 'translate.storage.fluent': No module named 'fluent' 431s SKIPPED [1] tests/translate/filters/test_checks.py:1429: Spell checking for af is not available 431s SKIPPED [1] tests/translate/storage/test_mo.py:498: Skip testing command line tools 431s SKIPPED [16] tests/translate/tools/test_help.py:16: Skip testing command line tools 431s SKIPPED [1] tests/xliff_conformance/test_xliff_conformance.py:49: Skip testing command line tools 431s SKIPPED [1] tests/xliff_conformance/test_xliff_conformance.py:58: Skip testing command line tools 431s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence - Not Implemented 431s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence - Not Implemented 431s XFAIL tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template - Need to review if we want this behaviour 431s XFAIL tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template - Need to review if we want this behaviour 431s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change - Not implemented - review if this is even correct 431s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes - Not Implemented - needs review 431s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently - Not Implemented - review if this is even correct 431s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change - Not implemented - review if this is even correct 431s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes - Not Implemented - needs review 431s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently - Not Implemented - review if this is even correct 431s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates - This is invalid YAML document 431s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates - This is invalid YAML document 431s XFAIL tests/translate/filters/test_checks.py::test_acceleratedvariables - Accelerated variables needs a better implementation 431s XFAIL tests/translate/filters/test_checks.py::test_musttranslatewords - FIXME: All fails() tests are not working 431s XFAIL tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time - Bug #3408 431s XFAIL tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags - Bug #3506 431s 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. 431s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables - Test needs fixing, disabled for now 431s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables - Test needs fixing, disabled for now 432s XFAIL tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases - Not Implemented 432s XFAIL tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases - Not Implemented 432s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_comment_following - Not Implemented 432s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting - Not Implemented 432s 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 432s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals - Not Implemented 432s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 432s XFAIL tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove - removal not working in full page 432s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals - Not Implemented 432s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 432s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment - Not sure if this can not be parsed gracefully 432s XFAIL tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity - Not Implemented 432s XFAIL tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde - Support commented out pending removal 432s XFAIL tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs - Not Implemented 432s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change - Not Implemented 432s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes - Not Implemented 432s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently - Not Implemented 432s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change - Not Implemented 432s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes - Not Implemented 432s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently - Not Implemented 432s ========== 3324 passed, 22 skipped, 39 xfailed, 50 warnings in 21.25s ========== 433s autopkgtest [00:48:57]: test python3-translate: -----------------------] 437s autopkgtest [00:49:01]: test python3-translate: - - - - - - - - - - results - - - - - - - - - - 437s python3-translate PASS 441s autopkgtest [00:49:05]: test python3-translate-commands: preparing testbed 463s autopkgtest [00:49:27]: testbed dpkg architecture: armhf 465s autopkgtest [00:49:29]: testbed apt version: 3.1.6ubuntu2 469s autopkgtest [00:49:33]: @@@@@@@@@@@@@@@@@@@@ test bed setup 471s autopkgtest [00:49:35]: testbed release detected to be: resolute 478s autopkgtest [00:49:42]: updating testbed package index (apt update) 480s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [83.3 kB] 481s Get:2 http://ftpmaster.internal/ubuntu resolute InRelease [83.3 kB] 481s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 481s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 481s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [15.0 kB] 481s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [683 kB] 481s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [5028 B] 481s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [63.1 kB] 481s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main armhf Packages [109 kB] 481s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/restricted armhf Packages [940 B] 481s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/universe armhf Packages [429 kB] 481s Get:12 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse armhf Packages [3200 B] 481s Get:13 http://ftpmaster.internal/ubuntu resolute/restricted Sources [14.4 kB] 481s Get:14 http://ftpmaster.internal/ubuntu resolute/main Sources [1413 kB] 481s Get:15 http://ftpmaster.internal/ubuntu resolute/multiverse Sources [307 kB] 481s Get:16 http://ftpmaster.internal/ubuntu resolute/universe Sources [21.1 MB] 482s Get:17 http://ftpmaster.internal/ubuntu resolute/main armhf Packages [1357 kB] 482s Get:18 http://ftpmaster.internal/ubuntu resolute/restricted armhf Packages [1672 B] 482s Get:19 http://ftpmaster.internal/ubuntu resolute/universe armhf Packages [15.3 MB] 483s Get:20 http://ftpmaster.internal/ubuntu resolute/multiverse armhf Packages [182 kB] 486s Fetched 41.1 MB in 6s (7360 kB/s) 487s Reading package lists... 492s autopkgtest [00:49:56]: upgrading testbed (apt dist-upgrade and autopurge) 494s Reading package lists... 495s Building dependency tree... 495s Reading state information... 495s Calculating upgrade... 496s The following packages will be upgraded: 496s apparmor apt base-files binutils binutils-arm-linux-gnueabihf 496s binutils-common cloud-init cloud-init-base distro-info-data dpkg dpkg-dev 496s gcc-15-base gir1.2-girepository-2.0 libapparmor1 libapt-pkg7.0 libatomic1 496s libaudit-common libaudit1 libbinutils libbrotli1 libcap-ng0 libctf-nobfd0 496s libctf0 libdpkg-perl libgcc-s1 libgirepository-1.0-1 libjson-c5 libnewt0.52 496s libnftables1 libp11-kit0 libseccomp2 libselinux1 libsemanage-common 496s libsemanage2 libsframe2 libstdc++6 lto-disabled-list nftables 496s python-apt-common python3-apt python3-cffi-backend python3-inflect 496s python3-markupsafe python3-oauthlib python3-zipp sudo-rs whiptail 496s 47 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 496s Need to get 11.8 MB of archives. 496s After this operation, 694 kB of additional disk space will be used. 496s Get:1 http://ftpmaster.internal/ubuntu resolute/main armhf base-files armhf 14ubuntu4 [75.4 kB] 496s Get:2 http://ftpmaster.internal/ubuntu resolute/main armhf libatomic1 armhf 15.2.0-5ubuntu1 [7942 B] 496s Get:3 http://ftpmaster.internal/ubuntu resolute/main armhf gcc-15-base armhf 15.2.0-5ubuntu1 [58.1 kB] 496s Get:4 http://ftpmaster.internal/ubuntu resolute/main armhf libgcc-s1 armhf 15.2.0-5ubuntu1 [40.6 kB] 496s Get:5 http://ftpmaster.internal/ubuntu resolute/main armhf libstdc++6 armhf 15.2.0-5ubuntu1 [731 kB] 496s Get:6 http://ftpmaster.internal/ubuntu resolute/main armhf libapt-pkg7.0 armhf 3.1.8ubuntu1 [1148 kB] 497s Get:7 http://ftpmaster.internal/ubuntu resolute/main armhf dpkg armhf 1.22.21ubuntu4 [1245 kB] 497s Get:8 http://ftpmaster.internal/ubuntu resolute/main armhf libseccomp2 armhf 2.6.0-2ubuntu3 [53.5 kB] 497s Get:9 http://ftpmaster.internal/ubuntu resolute/main armhf apt armhf 3.1.8ubuntu1 [1404 kB] 497s Get:10 http://ftpmaster.internal/ubuntu resolute/main armhf libaudit-common all 1:4.0.5-1build2 [6596 B] 497s Get:11 http://ftpmaster.internal/ubuntu resolute/main armhf libcap-ng0 armhf 0.8.5-4build3 [14.0 kB] 497s Get:12 http://ftpmaster.internal/ubuntu resolute/main armhf libaudit1 armhf 1:4.0.5-1build2 [51.7 kB] 497s Get:13 http://ftpmaster.internal/ubuntu resolute/main armhf libselinux1 armhf 3.8.1-1build2 [81.3 kB] 497s Get:14 http://ftpmaster.internal/ubuntu resolute/main armhf libsemanage-common all 3.8.1-1build1 [7916 B] 497s Get:15 http://ftpmaster.internal/ubuntu resolute/main armhf libsemanage2 armhf 3.8.1-1build1 [89.2 kB] 497s Get:16 http://ftpmaster.internal/ubuntu resolute/main armhf distro-info-data all 0.68 [7378 B] 497s Get:17 http://ftpmaster.internal/ubuntu resolute/main armhf libgirepository-1.0-1 armhf 1.86.0-6 [111 kB] 497s Get:18 http://ftpmaster.internal/ubuntu resolute/main armhf gir1.2-girepository-2.0 armhf 1.86.0-6 [25.3 kB] 497s Get:19 http://ftpmaster.internal/ubuntu resolute/main armhf libapparmor1 armhf 5.0.0~alpha1-0ubuntu8.1 [52.9 kB] 497s Get:20 http://ftpmaster.internal/ubuntu resolute/main armhf libjson-c5 armhf 0.18+ds-1.1 [33.3 kB] 497s Get:21 http://ftpmaster.internal/ubuntu resolute/main armhf libnewt0.52 armhf 0.52.25-1ubuntu2 [39.9 kB] 497s Get:22 http://ftpmaster.internal/ubuntu resolute/main armhf libp11-kit0 armhf 0.25.9-2 [265 kB] 497s Get:23 http://ftpmaster.internal/ubuntu resolute/main armhf python-apt-common all 3.0.0ubuntu2 [21.7 kB] 497s Get:24 http://ftpmaster.internal/ubuntu resolute/main armhf python3-apt armhf 3.0.0ubuntu2 [189 kB] 497s Get:25 http://ftpmaster.internal/ubuntu resolute/main armhf python3-cffi-backend armhf 1.17.1-3build1 [98.4 kB] 497s Get:26 http://ftpmaster.internal/ubuntu resolute/main armhf sudo-rs armhf 0.2.8-1ubuntu5.1 [548 kB] 497s Get:27 http://ftpmaster.internal/ubuntu resolute/main armhf whiptail armhf 0.52.25-1ubuntu2 [17.1 kB] 497s Get:28 http://ftpmaster.internal/ubuntu resolute/main armhf apparmor armhf 5.0.0~alpha1-0ubuntu8.1 [631 kB] 497s Get:29 http://ftpmaster.internal/ubuntu resolute/main armhf nftables armhf 1.1.5-2 [73.2 kB] 497s Get:30 http://ftpmaster.internal/ubuntu resolute/main armhf libnftables1 armhf 1.1.5-2 [329 kB] 497s Get:31 http://ftpmaster.internal/ubuntu resolute/main armhf libctf0 armhf 2.45-7ubuntu2 [75.7 kB] 497s Get:32 http://ftpmaster.internal/ubuntu resolute/main armhf libctf-nobfd0 armhf 2.45-7ubuntu2 [79.1 kB] 497s Get:33 http://ftpmaster.internal/ubuntu resolute/main armhf binutils-arm-linux-gnueabihf armhf 2.45-7ubuntu2 [1022 kB] 498s Get:34 http://ftpmaster.internal/ubuntu resolute/main armhf libbinutils armhf 2.45-7ubuntu2 [411 kB] 498s Get:35 http://ftpmaster.internal/ubuntu resolute/main armhf binutils armhf 2.45-7ubuntu2 [3240 B] 498s Get:36 http://ftpmaster.internal/ubuntu resolute/main armhf binutils-common armhf 2.45-7ubuntu2 [220 kB] 498s Get:37 http://ftpmaster.internal/ubuntu resolute/main armhf libsframe2 armhf 2.45-7ubuntu2 [13.4 kB] 498s Get:38 http://ftpmaster.internal/ubuntu resolute/main armhf cloud-init-base all 25.3-0ubuntu1 [625 kB] 498s Get:39 http://ftpmaster.internal/ubuntu resolute/main armhf cloud-init all 25.3-0ubuntu1 [2106 B] 498s Get:40 http://ftpmaster.internal/ubuntu resolute/main armhf python3-oauthlib all 3.3.1-1 [93.5 kB] 498s Get:41 http://ftpmaster.internal/ubuntu resolute/main armhf dpkg-dev all 1.22.21ubuntu4 [1088 kB] 498s Get:42 http://ftpmaster.internal/ubuntu resolute/main armhf libdpkg-perl all 1.22.21ubuntu4 [280 kB] 498s Get:43 http://ftpmaster.internal/ubuntu resolute/main armhf lto-disabled-list all 71 [12.5 kB] 498s Get:44 http://ftpmaster.internal/ubuntu resolute/main armhf libbrotli1 armhf 1.1.0-2build6 [320 kB] 498s Get:45 http://ftpmaster.internal/ubuntu resolute/main armhf python3-inflect all 7.5.0-1 [33.9 kB] 498s Get:46 http://ftpmaster.internal/ubuntu resolute/main armhf python3-markupsafe armhf 2.1.5-1build5 [13.3 kB] 498s Get:47 http://ftpmaster.internal/ubuntu resolute/main armhf python3-zipp all 3.23.0-1 [10.4 kB] 498s Preconfiguring packages ... 499s Fetched 11.8 MB in 2s (5159 kB/s) 499s (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 ... 61081 files and directories currently installed.) 499s Preparing to unpack .../base-files_14ubuntu4_armhf.deb ... 499s Unpacking base-files (14ubuntu4) over (14ubuntu3) ... 499s Setting up base-files (14ubuntu4) ... 499s Installing new version of config file /etc/issue ... 499s Installing new version of config file /etc/issue.net ... 499s Installing new version of config file /etc/lsb-release ... 500s motd-news.service is a disabled or a static unit not running, not starting it. 500s (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 ... 61081 files and directories currently installed.) 500s Preparing to unpack .../libatomic1_15.2.0-5ubuntu1_armhf.deb ... 500s Unpacking libatomic1:armhf (15.2.0-5ubuntu1) over (15.2.0-4ubuntu4) ... 500s Preparing to unpack .../gcc-15-base_15.2.0-5ubuntu1_armhf.deb ... 500s Unpacking gcc-15-base:armhf (15.2.0-5ubuntu1) over (15.2.0-4ubuntu4) ... 500s Setting up gcc-15-base:armhf (15.2.0-5ubuntu1) ... 500s (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 ... 61081 files and directories currently installed.) 500s Preparing to unpack .../libgcc-s1_15.2.0-5ubuntu1_armhf.deb ... 500s Unpacking libgcc-s1:armhf (15.2.0-5ubuntu1) over (15.2.0-4ubuntu4) ... 500s Setting up libgcc-s1:armhf (15.2.0-5ubuntu1) ... 500s (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 ... 61081 files and directories currently installed.) 500s Preparing to unpack .../libstdc++6_15.2.0-5ubuntu1_armhf.deb ... 500s Unpacking libstdc++6:armhf (15.2.0-5ubuntu1) over (15.2.0-4ubuntu4) ... 500s Setting up libstdc++6:armhf (15.2.0-5ubuntu1) ... 500s (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 ... 61081 files and directories currently installed.) 500s Preparing to unpack .../libapt-pkg7.0_3.1.8ubuntu1_armhf.deb ... 500s Unpacking libapt-pkg7.0:armhf (3.1.8ubuntu1) over (3.1.6ubuntu2) ... 500s Setting up libapt-pkg7.0:armhf (3.1.8ubuntu1) ... 500s (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 ... 61081 files and directories currently installed.) 500s Preparing to unpack .../dpkg_1.22.21ubuntu4_armhf.deb ... 500s Unpacking dpkg (1.22.21ubuntu4) over (1.22.21ubuntu3) ... 500s Setting up dpkg (1.22.21ubuntu4) ... 501s (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 ... 61081 files and directories currently installed.) 501s Preparing to unpack .../libseccomp2_2.6.0-2ubuntu3_armhf.deb ... 501s Unpacking libseccomp2:armhf (2.6.0-2ubuntu3) over (2.6.0-2ubuntu2) ... 501s Setting up libseccomp2:armhf (2.6.0-2ubuntu3) ... 501s (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 ... 61081 files and directories currently installed.) 501s Preparing to unpack .../apt_3.1.8ubuntu1_armhf.deb ... 501s Unpacking apt (3.1.8ubuntu1) over (3.1.6ubuntu2) ... 501s Setting up apt (3.1.8ubuntu1) ... 502s (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 ... 61081 files and directories currently installed.) 502s Preparing to unpack .../libaudit-common_1%3a4.0.5-1build2_all.deb ... 502s Unpacking libaudit-common (1:4.0.5-1build2) over (1:4.0.5-1build1) ... 502s Setting up libaudit-common (1:4.0.5-1build2) ... 502s (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 ... 61081 files and directories currently installed.) 502s Preparing to unpack .../libcap-ng0_0.8.5-4build3_armhf.deb ... 502s Unpacking libcap-ng0:armhf (0.8.5-4build3) over (0.8.5-4build2) ... 502s Setting up libcap-ng0:armhf (0.8.5-4build3) ... 502s (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 ... 61081 files and directories currently installed.) 502s Preparing to unpack .../libaudit1_1%3a4.0.5-1build2_armhf.deb ... 502s Unpacking libaudit1:armhf (1:4.0.5-1build2) over (1:4.0.5-1build1) ... 502s Setting up libaudit1:armhf (1:4.0.5-1build2) ... 502s (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 ... 61081 files and directories currently installed.) 502s Preparing to unpack .../libselinux1_3.8.1-1build2_armhf.deb ... 502s Unpacking libselinux1:armhf (3.8.1-1build2) over (3.8.1-1build1) ... 502s Setting up libselinux1:armhf (3.8.1-1build2) ... 502s (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 ... 61081 files and directories currently installed.) 502s Preparing to unpack .../libsemanage-common_3.8.1-1build1_all.deb ... 502s Unpacking libsemanage-common (3.8.1-1build1) over (3.8.1-1) ... 502s Setting up libsemanage-common (3.8.1-1build1) ... 503s (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 ... 61081 files and directories currently installed.) 503s Preparing to unpack .../libsemanage2_3.8.1-1build1_armhf.deb ... 503s Unpacking libsemanage2:armhf (3.8.1-1build1) over (3.8.1-1) ... 503s Setting up libsemanage2:armhf (3.8.1-1build1) ... 503s (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 ... 61081 files and directories currently installed.) 503s Preparing to unpack .../00-distro-info-data_0.68_all.deb ... 503s Unpacking distro-info-data (0.68) over (0.66) ... 503s Preparing to unpack .../01-libgirepository-1.0-1_1.86.0-6_armhf.deb ... 503s Unpacking libgirepository-1.0-1:armhf (1.86.0-6) over (1.84.0-1) ... 503s Preparing to unpack .../02-gir1.2-girepository-2.0_1.86.0-6_armhf.deb ... 503s Unpacking gir1.2-girepository-2.0:armhf (1.86.0-6) over (1.84.0-1) ... 503s Preparing to unpack .../03-libapparmor1_5.0.0~alpha1-0ubuntu8.1_armhf.deb ... 503s Unpacking libapparmor1:armhf (5.0.0~alpha1-0ubuntu8.1) over (5.0.0~alpha1-0ubuntu8) ... 503s Preparing to unpack .../04-libjson-c5_0.18+ds-1.1_armhf.deb ... 503s Unpacking libjson-c5:armhf (0.18+ds-1.1) over (0.18+ds-1) ... 503s Preparing to unpack .../05-libnewt0.52_0.52.25-1ubuntu2_armhf.deb ... 503s Unpacking libnewt0.52:armhf (0.52.25-1ubuntu2) over (0.52.25-1ubuntu1) ... 503s Preparing to unpack .../06-libp11-kit0_0.25.9-2_armhf.deb ... 503s Unpacking libp11-kit0:armhf (0.25.9-2) over (0.25.5-3ubuntu1) ... 503s Preparing to unpack .../07-python-apt-common_3.0.0ubuntu2_all.deb ... 503s Unpacking python-apt-common (3.0.0ubuntu2) over (3.0.0ubuntu1) ... 503s Preparing to unpack .../08-python3-apt_3.0.0ubuntu2_armhf.deb ... 503s Unpacking python3-apt (3.0.0ubuntu2) over (3.0.0ubuntu1) ... 503s Preparing to unpack .../09-python3-cffi-backend_1.17.1-3build1_armhf.deb ... 503s Unpacking python3-cffi-backend:armhf (1.17.1-3build1) over (1.17.1-3) ... 503s Preparing to unpack .../10-sudo-rs_0.2.8-1ubuntu5.1_armhf.deb ... 503s Unpacking sudo-rs (0.2.8-1ubuntu5.1) over (0.2.8-1ubuntu5) ... 503s Preparing to unpack .../11-whiptail_0.52.25-1ubuntu2_armhf.deb ... 503s Unpacking whiptail (0.52.25-1ubuntu2) over (0.52.25-1ubuntu1) ... 503s Preparing to unpack .../12-apparmor_5.0.0~alpha1-0ubuntu8.1_armhf.deb ... 505s Unpacking apparmor (5.0.0~alpha1-0ubuntu8.1) over (5.0.0~alpha1-0ubuntu8) ... 505s Preparing to unpack .../13-nftables_1.1.5-2_armhf.deb ... 505s Unpacking nftables (1.1.5-2) over (1.1.5-1) ... 505s Preparing to unpack .../14-libnftables1_1.1.5-2_armhf.deb ... 505s Unpacking libnftables1:armhf (1.1.5-2) over (1.1.5-1) ... 505s Preparing to unpack .../15-libctf0_2.45-7ubuntu2_armhf.deb ... 505s Unpacking libctf0:armhf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 506s Preparing to unpack .../16-libctf-nobfd0_2.45-7ubuntu2_armhf.deb ... 506s Unpacking libctf-nobfd0:armhf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 506s Preparing to unpack .../17-binutils-arm-linux-gnueabihf_2.45-7ubuntu2_armhf.deb ... 506s Unpacking binutils-arm-linux-gnueabihf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 506s Preparing to unpack .../18-libbinutils_2.45-7ubuntu2_armhf.deb ... 506s Unpacking libbinutils:armhf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 506s Preparing to unpack .../19-binutils_2.45-7ubuntu2_armhf.deb ... 506s Unpacking binutils (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 506s Preparing to unpack .../20-binutils-common_2.45-7ubuntu2_armhf.deb ... 506s Unpacking binutils-common:armhf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 506s Preparing to unpack .../21-libsframe2_2.45-7ubuntu2_armhf.deb ... 506s Unpacking libsframe2:armhf (2.45-7ubuntu2) over (2.45-7ubuntu1) ... 506s Preparing to unpack .../22-cloud-init-base_25.3-0ubuntu1_all.deb ... 506s Unpacking cloud-init-base (25.3-0ubuntu1) over (25.3~2g890873f5-0ubuntu2) ... 506s Preparing to unpack .../23-cloud-init_25.3-0ubuntu1_all.deb ... 506s Unpacking cloud-init (25.3-0ubuntu1) over (25.3~2g890873f5-0ubuntu2) ... 506s Preparing to unpack .../24-python3-oauthlib_3.3.1-1_all.deb ... 507s Unpacking python3-oauthlib (3.3.1-1) over (3.2.2-3) ... 507s Preparing to unpack .../25-dpkg-dev_1.22.21ubuntu4_all.deb ... 507s Unpacking dpkg-dev (1.22.21ubuntu4) over (1.22.21ubuntu3) ... 507s Preparing to unpack .../26-libdpkg-perl_1.22.21ubuntu4_all.deb ... 507s Unpacking libdpkg-perl (1.22.21ubuntu4) over (1.22.21ubuntu3) ... 507s Preparing to unpack .../27-lto-disabled-list_71_all.deb ... 507s Unpacking lto-disabled-list (71) over (69) ... 507s Preparing to unpack .../28-libbrotli1_1.1.0-2build6_armhf.deb ... 507s Unpacking libbrotli1:armhf (1.1.0-2build6) over (1.1.0-2build5) ... 507s Preparing to unpack .../29-python3-inflect_7.5.0-1_all.deb ... 507s Unpacking python3-inflect (7.5.0-1) over (7.3.1-2) ... 507s Preparing to unpack .../30-python3-markupsafe_2.1.5-1build5_armhf.deb ... 507s Unpacking python3-markupsafe (2.1.5-1build5) over (2.1.5-1build4) ... 507s Preparing to unpack .../31-python3-zipp_3.23.0-1_all.deb ... 507s Unpacking python3-zipp (3.23.0-1) over (3.21.0-1) ... 507s Setting up lto-disabled-list (71) ... 507s Setting up libapparmor1:armhf (5.0.0~alpha1-0ubuntu8.1) ... 507s Setting up libnewt0.52:armhf (0.52.25-1ubuntu2) ... 507s Setting up libnftables1:armhf (1.1.5-2) ... 507s Setting up nftables (1.1.5-2) ... 508s Setting up distro-info-data (0.68) ... 508s Setting up libsframe2:armhf (2.45-7ubuntu2) ... 508s Setting up libbrotli1:armhf (1.1.0-2build6) ... 508s Setting up binutils-common:armhf (2.45-7ubuntu2) ... 508s Setting up libctf-nobfd0:armhf (2.45-7ubuntu2) ... 508s Setting up python3-zipp (3.23.0-1) ... 508s Setting up python3-markupsafe (2.1.5-1build5) ... 508s Setting up apparmor (5.0.0~alpha1-0ubuntu8.1) ... 508s Installing new version of config file /etc/apparmor.d/fusermount3 ... 509s apparmor_parser: Unable to replace "lsb_release". apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 509s 509s apparmor_parser: Unable to replace "kmod". apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 509s 509s apparmor_parser: Unable to replace "nvidia_modprobe". apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 509s 510s Reloading AppArmor profiles 510s /sbin/apparmor_parser: Unable to replace "1password". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "Discord". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "MongoDB Compass". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "QtWebEngineProcess". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "balena-etcher". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "brave". /sbin/apparmor_parser: Unable to replace "buildah". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "ch-checkns". /sbin/apparmor_parser: Unable to replace "cam". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "chrome". /sbin/apparmor_parser: Unable to replace "ch-run". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "bwrap". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "chromium". /sbin/apparmor_parser: Unable to replace "babeld". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "bfdd". /sbin/apparmor_parser: Unable to replace "bgpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "vscode". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "crun". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "devhelp". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "alsamixer". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "element-desktop". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "evolution". /sbin/apparmor_parser: Unable to replace "epiphany". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "firefox". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "flatpak". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "foliate". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "eigrpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "dnstracer". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "geary". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "github-desktop". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "goldendict". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "fabricd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "dig". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "hostname". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "iotop-c". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "kchmviewer". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "Xorg". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "fusermount3". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "keybase". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "lc-compliance". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "libcamerify". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "isisd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "linux-sandbox". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "gs". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "loupe". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "ldpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "john". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "lxc-attach". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "lxc-create". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "linux-boot-prober". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "lxc-destroy". /sbin/apparmor_parser: Unable to replace "compressor". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "locale". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "lxc-execute". /sbin/apparmor_parser: Unable to replace "lsusb". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "lxc-stop". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "lxc-unshare". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "ipa_verify". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "lxc-usernsexec". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "mmdebstrap". /sbin/apparmor_parser: Unable to replace "lsblk". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "msedge". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "notepadqq". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "lsb_release". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "irssi". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "obsidian". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "mbsync". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "opam". /sbin/apparmor_parser: Unable to replace "mosquitto". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "nhrpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "opera". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "notify-send". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "pageedit". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "nc.openbsd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "nslookup". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "kmod". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "nvidia_modprobe". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "pathd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "ospf6d". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "pbrd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "podman". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "polypane". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "privacybrowser". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "os-prober". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "qcam". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "ospfd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "pim6d". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "qmapshack". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "QtWebEngineProcess". /sbin/apparmor_parser: Unable to replace "qutebrowser". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "plasmashell". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "pimd". /sbin/apparmor_parser: Unable to replace "rootlesskit". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "rpm". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "rssguard". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "runc". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "sbuild". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "sbuild-abort". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "qpdf". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "sbuild-adduser". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "sbuild-apt". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "ripd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "sbuild-createchroot". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "ip". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "openvpn". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "ripngd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "sbuild-clean". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "sbuild-checkpackages". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "sbuild-destroychroot". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "sbuild-distupgrade". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "sbuild-hold". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "sbuild-unhold". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "sbuild-shell". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "sbuild-update". /sbin/apparmor_parser: Unable to replace "signal-desktop". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "sbuild-upgrade". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "scide". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "proftpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "slack". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "steam". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "slirp4netns". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "stress-ng". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "surfshark". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "systemd-coredump". /sbin/apparmor_parser: Unable to replace "thunderbird". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "ssh-keyscan". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "trinity". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "tup". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "staticd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "tuxedo-control-center". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "systemd-detect-virt". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "tinyproxy". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "unprivileged_userns". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "userbindmount". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "mx-extract". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "rygel". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "ubuntu_pro_apt_news". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 510s /sbin/apparmor_parser: Unable to replace "/usr/bin/man". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 510s 511s /sbin/apparmor_parser: Unable to replace "unix-chkpwd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "uwsgi-core". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "vdens". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "virtiofsd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "vivaldi-bin". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "vpnns". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "/usr/sbin/chronyd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "wg". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "vrrpd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "cmds". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "tnftp". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "who". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "wike". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "rsyslogd". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "wpcom". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "dumpcap". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "tshark". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "tcpdump". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "ip". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "wg-quick". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "znc". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "apt_methods". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "ubuntu_pro_esm_cache". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s /sbin/apparmor_parser: Unable to replace "transmission-cli". /sbin/apparmor_parser: Access denied. You need policy admin privileges to manage profiles. 511s 511s Error: At least one profile failed to load 511s Setting up python3-inflect (7.5.0-1) ... 511s Setting up python3-oauthlib (3.3.1-1) ... 511s Setting up libp11-kit0:armhf (0.25.9-2) ... 511s Setting up libatomic1:armhf (15.2.0-5ubuntu1) ... 511s Setting up libdpkg-perl (1.22.21ubuntu4) ... 511s Setting up whiptail (0.52.25-1ubuntu2) ... 511s Setting up python-apt-common (3.0.0ubuntu2) ... 511s Setting up libgirepository-1.0-1:armhf (1.86.0-6) ... 511s Setting up libbinutils:armhf (2.45-7ubuntu2) ... 511s Setting up libjson-c5:armhf (0.18+ds-1.1) ... 511s Setting up sudo-rs (0.2.8-1ubuntu5.1) ... 511s Setting up python3-cffi-backend:armhf (1.17.1-3build1) ... 511s Setting up libctf0:armhf (2.45-7ubuntu2) ... 511s Setting up python3-apt (3.0.0ubuntu2) ... 511s Setting up cloud-init-base (25.3-0ubuntu1) ... 513s Setting up gir1.2-girepository-2.0:armhf (1.86.0-6) ... 513s Setting up binutils-arm-linux-gnueabihf (2.45-7ubuntu2) ... 513s Setting up cloud-init (25.3-0ubuntu1) ... 513s Setting up binutils (2.45-7ubuntu2) ... 513s Setting up dpkg-dev (1.22.21ubuntu4) ... 513s Processing triggers for procps (2:4.0.4-8ubuntu3) ... 513s Processing triggers for install-info (7.1.1-1ubuntu1) ... 513s Processing triggers for libc-bin (2.42-0ubuntu3) ... 514s Processing triggers for rsyslog (8.2504.0-1ubuntu2) ... 514s Processing triggers for systemd (257.9-0ubuntu2) ... 514s Processing triggers for man-db (2.13.1-1) ... 516s Processing triggers for plymouth-theme-ubuntu-text (24.004.60+git20250831.4a3c171d-0ubuntu1) ... 519s Reading package lists... 519s Building dependency tree... 519s Reading state information... 519s Solving dependencies... 520s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 522s autopkgtest [00:50:26]: rebooting testbed after setup commands that affected boot 587s Reading package lists... 587s Building dependency tree... 587s Reading state information... 587s Solving dependencies... 588s The following NEW packages will be installed: 588s dictionaries-common emacsen-common gettext hunspell-en-us libapr1t64 588s libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data libgomp1 588s libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 libxslt1.1 588s python3-aeidon python3-all python3-bs4 python3-charset-normalizer 588s python3-cheroot python3-cwcwidth python3-dateutil python3-diff-match-patch 588s python3-enchant python3-iniconfig python3-iniparse python3-levenshtein 588s python3-lxml python3-mistletoe python3-packaging python3-phply 588s python3-pluggy python3-ply python3-pycountry python3-pytest python3-pytz 588s python3-rapidfuzz python3-ruamel.yaml python3-ruamel.yaml.clib 588s python3-soupsieve python3-syrupy python3-translate python3-tz 588s python3-vobject python3-wcwidth python3-xapian subversion translate-toolkit 588s 0 upgraded, 49 newly installed, 0 to remove and 0 not upgraded. 588s Need to get 11.7 MB of archives. 588s After this operation, 49.8 MB of additional disk space will be used. 588s Get:1 http://ftpmaster.internal/ubuntu resolute/main armhf emacsen-common all 3.0.8 [13.9 kB] 588s Get:2 http://ftpmaster.internal/ubuntu resolute/main armhf dictionaries-common all 1.30.10 [178 kB] 588s Get:3 http://ftpmaster.internal/ubuntu resolute/main armhf libgomp1 armhf 15.2.0-5ubuntu1 [129 kB] 588s Get:4 http://ftpmaster.internal/ubuntu resolute/main armhf gettext armhf 0.23.1-2build2 [1059 kB] 589s Get:5 http://ftpmaster.internal/ubuntu resolute/main armhf hunspell-en-us all 1:2020.12.07-4 [585 kB] 589s Get:6 http://ftpmaster.internal/ubuntu resolute/main armhf libapr1t64 armhf 1.7.5-1 [88.2 kB] 589s Get:7 http://ftpmaster.internal/ubuntu resolute/main armhf libaprutil1t64 armhf 1.6.3-3ubuntu2 [83.1 kB] 589s Get:8 http://ftpmaster.internal/ubuntu resolute/main armhf libaspell15 armhf 0.60.8.1-4 [306 kB] 589s Get:9 http://ftpmaster.internal/ubuntu resolute/main armhf libhunspell-1.7-0 armhf 1.7.2+really1.7.2-10build3 [307 kB] 589s Get:10 http://ftpmaster.internal/ubuntu resolute/main armhf libenchant-2-2 armhf 2.8.2+dfsg1-3 [51.3 kB] 589s Get:11 http://ftpmaster.internal/ubuntu resolute/main armhf libexttextcat-data all 3.4.7-1ubuntu1 [193 kB] 589s Get:12 http://ftpmaster.internal/ubuntu resolute/universe armhf libserf-1-1 armhf 1.3.10-3ubuntu1 [40.5 kB] 589s Get:13 http://ftpmaster.internal/ubuntu resolute/universe armhf libutf8proc3 armhf 2.10.0-2 [70.0 kB] 589s Get:14 http://ftpmaster.internal/ubuntu resolute/universe armhf libsvn1 armhf 1.14.5-3 [1202 kB] 589s Get:15 http://ftpmaster.internal/ubuntu resolute/universe armhf libxapian30 armhf 1.4.29-3 [690 kB] 589s Get:16 http://ftpmaster.internal/ubuntu resolute/main armhf libxslt1.1 armhf 1.1.43-0.1 [146 kB] 589s Get:17 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-aeidon all 1.15-2 [231 kB] 589s Get:18 http://ftpmaster.internal/ubuntu resolute/main armhf python3-all armhf 3.13.7-1 [884 B] 589s Get:19 http://ftpmaster.internal/ubuntu resolute/main armhf python3-soupsieve all 2.7-2 [33.6 kB] 589s Get:20 http://ftpmaster.internal/ubuntu resolute/main armhf python3-bs4 all 4.13.4-3 [137 kB] 589s Get:21 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-charset-normalizer armhf 3.4.2-1 [122 kB] 589s Get:22 http://ftpmaster.internal/ubuntu resolute/main armhf python3-cheroot all 10.0.1+ds1-4 [78.6 kB] 589s Get:23 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-cwcwidth armhf 0.1.10-1build1 [20.5 kB] 589s Get:24 http://ftpmaster.internal/ubuntu resolute/main armhf python3-dateutil all 2.9.0-4 [80.3 kB] 589s Get:25 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-diff-match-patch all 20241021-1 [33.6 kB] 589s Get:26 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-enchant all 3.3.0~rc1-1 [35.1 kB] 589s Get:27 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-iniconfig all 1.1.1-2 [6024 B] 589s Get:28 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-rapidfuzz armhf 3.12.2+ds-1 [1249 kB] 589s Get:29 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-levenshtein armhf 0.27.1-2 [139 kB] 589s Get:30 http://ftpmaster.internal/ubuntu resolute/main armhf python3-lxml armhf 6.0.1-1 [1430 kB] 589s Get:31 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-mistletoe all 1.4.0-1 [38.2 kB] 589s Get:32 http://ftpmaster.internal/ubuntu resolute/main armhf python3-packaging all 25.0-1 [52.8 kB] 589s Get:33 http://ftpmaster.internal/ubuntu resolute/main armhf python3-ply all 3.11-9 [45.8 kB] 589s Get:34 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-phply all 1.2.6-1 [50.5 kB] 589s Get:35 http://ftpmaster.internal/ubuntu resolute-proposed/universe armhf python3-pluggy all 1.6.0-1 [21.0 kB] 589s Get:36 http://ftpmaster.internal/ubuntu resolute-proposed/universe armhf python3-pytest all 8.4.2-1 [268 kB] 589s Get:37 http://ftpmaster.internal/ubuntu resolute/main armhf python3-pytz all 2025.2-3 [163 kB] 589s Get:38 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-ruamel.yaml.clib armhf 0.2.12+ds-1build1 [130 kB] 589s Get:39 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-ruamel.yaml all 0.18.10+ds-1 [127 kB] 589s Get:40 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-syrupy all 4.9.1-1 [47.3 kB] 589s Get:41 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-translate all 3.15.1-1 [319 kB] 589s Get:42 http://ftpmaster.internal/ubuntu resolute/main armhf python3-tz all 2025.2-3 [1866 B] 589s Get:43 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-vobject all 0.9.8+dfsg-2 [41.3 kB] 589s Get:44 http://ftpmaster.internal/ubuntu resolute/main armhf python3-wcwidth all 0.2.13+dfsg1-1 [26.3 kB] 589s Get:45 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-xapian armhf 1.4.29-1build1 [607 kB] 589s Get:46 http://ftpmaster.internal/ubuntu resolute/universe armhf subversion armhf 1.14.5-3 [893 kB] 589s Get:47 http://ftpmaster.internal/ubuntu resolute/universe armhf translate-toolkit all 3.15.1-1 [81.0 kB] 589s Get:48 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-iniparse all 0.5.1-1 [21.2 kB] 589s Get:49 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-pycountry all 24.6.1+ds1-1 [30.0 kB] 590s Preconfiguring packages ... 590s Fetched 11.7 MB in 1s (8887 kB/s) 590s Selecting previously unselected package emacsen-common. 590s (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 ... 61097 files and directories currently installed.) 590s Preparing to unpack .../00-emacsen-common_3.0.8_all.deb ... 590s Unpacking emacsen-common (3.0.8) ... 590s Selecting previously unselected package dictionaries-common. 590s Preparing to unpack .../01-dictionaries-common_1.30.10_all.deb ... 590s Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common' 590s Unpacking dictionaries-common (1.30.10) ... 590s Selecting previously unselected package libgomp1:armhf. 590s Preparing to unpack .../02-libgomp1_15.2.0-5ubuntu1_armhf.deb ... 590s Unpacking libgomp1:armhf (15.2.0-5ubuntu1) ... 590s Selecting previously unselected package gettext. 590s Preparing to unpack .../03-gettext_0.23.1-2build2_armhf.deb ... 590s Unpacking gettext (0.23.1-2build2) ... 590s Selecting previously unselected package hunspell-en-us. 590s Preparing to unpack .../04-hunspell-en-us_1%3a2020.12.07-4_all.deb ... 590s Unpacking hunspell-en-us (1:2020.12.07-4) ... 590s Selecting previously unselected package libapr1t64:armhf. 590s Preparing to unpack .../05-libapr1t64_1.7.5-1_armhf.deb ... 590s Unpacking libapr1t64:armhf (1.7.5-1) ... 590s Selecting previously unselected package libaprutil1t64:armhf. 590s Preparing to unpack .../06-libaprutil1t64_1.6.3-3ubuntu2_armhf.deb ... 590s Unpacking libaprutil1t64:armhf (1.6.3-3ubuntu2) ... 590s Selecting previously unselected package libaspell15:armhf. 590s Preparing to unpack .../07-libaspell15_0.60.8.1-4_armhf.deb ... 590s Unpacking libaspell15:armhf (0.60.8.1-4) ... 590s Selecting previously unselected package libhunspell-1.7-0:armhf. 590s Preparing to unpack .../08-libhunspell-1.7-0_1.7.2+really1.7.2-10build3_armhf.deb ... 590s Unpacking libhunspell-1.7-0:armhf (1.7.2+really1.7.2-10build3) ... 590s Selecting previously unselected package libenchant-2-2:armhf. 590s Preparing to unpack .../09-libenchant-2-2_2.8.2+dfsg1-3_armhf.deb ... 590s Unpacking libenchant-2-2:armhf (2.8.2+dfsg1-3) ... 590s Selecting previously unselected package libexttextcat-data. 590s Preparing to unpack .../10-libexttextcat-data_3.4.7-1ubuntu1_all.deb ... 590s Unpacking libexttextcat-data (3.4.7-1ubuntu1) ... 590s Selecting previously unselected package libserf-1-1:armhf. 590s Preparing to unpack .../11-libserf-1-1_1.3.10-3ubuntu1_armhf.deb ... 590s Unpacking libserf-1-1:armhf (1.3.10-3ubuntu1) ... 590s Selecting previously unselected package libutf8proc3:armhf. 590s Preparing to unpack .../12-libutf8proc3_2.10.0-2_armhf.deb ... 590s Unpacking libutf8proc3:armhf (2.10.0-2) ... 590s Selecting previously unselected package libsvn1:armhf. 590s Preparing to unpack .../13-libsvn1_1.14.5-3_armhf.deb ... 590s Unpacking libsvn1:armhf (1.14.5-3) ... 591s Selecting previously unselected package libxapian30:armhf. 591s Preparing to unpack .../14-libxapian30_1.4.29-3_armhf.deb ... 591s Unpacking libxapian30:armhf (1.4.29-3) ... 591s Selecting previously unselected package libxslt1.1:armhf. 591s Preparing to unpack .../15-libxslt1.1_1.1.43-0.1_armhf.deb ... 591s Unpacking libxslt1.1:armhf (1.1.43-0.1) ... 591s Selecting previously unselected package python3-aeidon. 591s Preparing to unpack .../16-python3-aeidon_1.15-2_all.deb ... 591s Unpacking python3-aeidon (1.15-2) ... 591s Selecting previously unselected package python3-all. 591s Preparing to unpack .../17-python3-all_3.13.7-1_armhf.deb ... 591s Unpacking python3-all (3.13.7-1) ... 591s Selecting previously unselected package python3-soupsieve. 591s Preparing to unpack .../18-python3-soupsieve_2.7-2_all.deb ... 591s Unpacking python3-soupsieve (2.7-2) ... 591s Selecting previously unselected package python3-bs4. 591s Preparing to unpack .../19-python3-bs4_4.13.4-3_all.deb ... 591s Unpacking python3-bs4 (4.13.4-3) ... 591s Selecting previously unselected package python3-charset-normalizer. 591s Preparing to unpack .../20-python3-charset-normalizer_3.4.2-1_armhf.deb ... 591s Unpacking python3-charset-normalizer (3.4.2-1) ... 591s Selecting previously unselected package python3-cheroot. 591s Preparing to unpack .../21-python3-cheroot_10.0.1+ds1-4_all.deb ... 591s Unpacking python3-cheroot (10.0.1+ds1-4) ... 591s Selecting previously unselected package python3-cwcwidth. 591s Preparing to unpack .../22-python3-cwcwidth_0.1.10-1build1_armhf.deb ... 591s Unpacking python3-cwcwidth (0.1.10-1build1) ... 591s Selecting previously unselected package python3-dateutil. 591s Preparing to unpack .../23-python3-dateutil_2.9.0-4_all.deb ... 591s Unpacking python3-dateutil (2.9.0-4) ... 591s Selecting previously unselected package python3-diff-match-patch. 591s Preparing to unpack .../24-python3-diff-match-patch_20241021-1_all.deb ... 591s Unpacking python3-diff-match-patch (20241021-1) ... 591s Selecting previously unselected package python3-enchant. 591s Preparing to unpack .../25-python3-enchant_3.3.0~rc1-1_all.deb ... 591s Unpacking python3-enchant (3.3.0~rc1-1) ... 591s Selecting previously unselected package python3-iniconfig. 591s Preparing to unpack .../26-python3-iniconfig_1.1.1-2_all.deb ... 591s Unpacking python3-iniconfig (1.1.1-2) ... 591s Selecting previously unselected package python3-rapidfuzz. 591s Preparing to unpack .../27-python3-rapidfuzz_3.12.2+ds-1_armhf.deb ... 591s Unpacking python3-rapidfuzz (3.12.2+ds-1) ... 591s Selecting previously unselected package python3-levenshtein. 591s Preparing to unpack .../28-python3-levenshtein_0.27.1-2_armhf.deb ... 591s Unpacking python3-levenshtein (0.27.1-2) ... 591s Selecting previously unselected package python3-lxml:armhf. 591s Preparing to unpack .../29-python3-lxml_6.0.1-1_armhf.deb ... 591s Unpacking python3-lxml:armhf (6.0.1-1) ... 591s Selecting previously unselected package python3-mistletoe. 591s Preparing to unpack .../30-python3-mistletoe_1.4.0-1_all.deb ... 591s Unpacking python3-mistletoe (1.4.0-1) ... 591s Selecting previously unselected package python3-packaging. 591s Preparing to unpack .../31-python3-packaging_25.0-1_all.deb ... 591s Unpacking python3-packaging (25.0-1) ... 591s Selecting previously unselected package python3-ply. 591s Preparing to unpack .../32-python3-ply_3.11-9_all.deb ... 591s Unpacking python3-ply (3.11-9) ... 592s Selecting previously unselected package python3-phply. 592s Preparing to unpack .../33-python3-phply_1.2.6-1_all.deb ... 592s Unpacking python3-phply (1.2.6-1) ... 592s Selecting previously unselected package python3-pluggy. 592s Preparing to unpack .../34-python3-pluggy_1.6.0-1_all.deb ... 592s Unpacking python3-pluggy (1.6.0-1) ... 592s Selecting previously unselected package python3-pytest. 592s Preparing to unpack .../35-python3-pytest_8.4.2-1_all.deb ... 592s Unpacking python3-pytest (8.4.2-1) ... 592s Selecting previously unselected package python3-pytz. 592s Preparing to unpack .../36-python3-pytz_2025.2-3_all.deb ... 592s Unpacking python3-pytz (2025.2-3) ... 592s Selecting previously unselected package python3-ruamel.yaml.clib. 592s Preparing to unpack .../37-python3-ruamel.yaml.clib_0.2.12+ds-1build1_armhf.deb ... 592s Unpacking python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 592s Selecting previously unselected package python3-ruamel.yaml. 592s Preparing to unpack .../38-python3-ruamel.yaml_0.18.10+ds-1_all.deb ... 592s Unpacking python3-ruamel.yaml (0.18.10+ds-1) ... 592s Selecting previously unselected package python3-syrupy. 592s Preparing to unpack .../39-python3-syrupy_4.9.1-1_all.deb ... 592s Unpacking python3-syrupy (4.9.1-1) ... 592s Selecting previously unselected package python3-translate. 592s Preparing to unpack .../40-python3-translate_3.15.1-1_all.deb ... 592s Unpacking python3-translate (3.15.1-1) ... 592s Selecting previously unselected package python3-tz. 592s Preparing to unpack .../41-python3-tz_2025.2-3_all.deb ... 592s Unpacking python3-tz (2025.2-3) ... 592s Selecting previously unselected package python3-vobject. 592s Preparing to unpack .../42-python3-vobject_0.9.8+dfsg-2_all.deb ... 592s Unpacking python3-vobject (0.9.8+dfsg-2) ... 592s Selecting previously unselected package python3-wcwidth. 592s Preparing to unpack .../43-python3-wcwidth_0.2.13+dfsg1-1_all.deb ... 592s Unpacking python3-wcwidth (0.2.13+dfsg1-1) ... 592s Selecting previously unselected package python3-xapian. 592s Preparing to unpack .../44-python3-xapian_1.4.29-1build1_armhf.deb ... 592s Unpacking python3-xapian (1.4.29-1build1) ... 592s Selecting previously unselected package subversion. 592s Preparing to unpack .../45-subversion_1.14.5-3_armhf.deb ... 592s Unpacking subversion (1.14.5-3) ... 592s Selecting previously unselected package translate-toolkit. 592s Preparing to unpack .../46-translate-toolkit_3.15.1-1_all.deb ... 592s Unpacking translate-toolkit (3.15.1-1) ... 592s Selecting previously unselected package python3-iniparse. 592s Preparing to unpack .../47-python3-iniparse_0.5.1-1_all.deb ... 592s Unpacking python3-iniparse (0.5.1-1) ... 592s Selecting previously unselected package python3-pycountry. 592s Preparing to unpack .../48-python3-pycountry_24.6.1+ds1-1_all.deb ... 592s Unpacking python3-pycountry (24.6.1+ds1-1) ... 593s Setting up python3-iniconfig (1.1.1-2) ... 593s Setting up libxapian30:armhf (1.4.29-3) ... 593s Setting up python3-rapidfuzz (3.12.2+ds-1) ... 593s Setting up python3-diff-match-patch (20241021-1) ... 593s Setting up python3-aeidon (1.15-2) ... 593s Setting up libutf8proc3:armhf (2.10.0-2) ... 593s Setting up libaspell15:armhf (0.60.8.1-4) ... 593s Setting up python3-charset-normalizer (3.4.2-1) ... 593s Setting up python3-ply (3.11-9) ... 594s Setting up python3-ruamel.yaml.clib (0.2.12+ds-1build1) ... 594s Setting up python3-all (3.13.7-1) ... 594s Setting up python3-pytz (2025.2-3) ... 594s Setting up libgomp1:armhf (15.2.0-5ubuntu1) ... 594s Setting up python3-tz (2025.2-3) ... 594s Setting up python3-packaging (25.0-1) ... 594s Setting up python3-wcwidth (0.2.13+dfsg1-1) ... 594s Setting up emacsen-common (3.0.8) ... 594s Setting up python3-cheroot (10.0.1+ds1-4) ... 594s Setting up python3-pycountry (24.6.1+ds1-1) ... 595s Setting up python3-xapian (1.4.29-1build1) ... 595s Setting up python3-cwcwidth (0.1.10-1build1) ... 595s Setting up python3-pluggy (1.6.0-1) ... 595s Setting up python3-ruamel.yaml (0.18.10+ds-1) ... 595s Setting up python3-mistletoe (1.4.0-1) ... 596s Setting up libexttextcat-data (3.4.7-1ubuntu1) ... 596s Setting up libapr1t64:armhf (1.7.5-1) ... 596s Setting up libxslt1.1:armhf (1.1.43-0.1) ... 596s Setting up python3-dateutil (2.9.0-4) ... 596s Setting up python3-levenshtein (0.27.1-2) ... 596s Setting up libhunspell-1.7-0:armhf (1.7.2+really1.7.2-10build3) ... 596s Setting up python3-soupsieve (2.7-2) ... 596s Setting up python3-iniparse (0.5.1-1) ... 596s Setting up libaprutil1t64:armhf (1.6.3-3ubuntu2) ... 596s Setting up python3-vobject (0.9.8+dfsg-2) ... 596s Setting up gettext (0.23.1-2build2) ... 596s Setting up python3-phply (1.2.6-1) ... 597s Setting up dictionaries-common (1.30.10) ... 597s Setting up python3-pytest (8.4.2-1) ... 598s Setting up python3-syrupy (4.9.1-1) ... 598s Setting up libserf-1-1:armhf (1.3.10-3ubuntu1) ... 598s Setting up python3-bs4 (4.13.4-3) ... 598s Setting up python3-lxml:armhf (6.0.1-1) ... 598s Setting up hunspell-en-us (1:2020.12.07-4) ... 598s Setting up libsvn1:armhf (1.14.5-3) ... 598s Setting up libenchant-2-2:armhf (2.8.2+dfsg1-3) ... 598s Setting up subversion (1.14.5-3) ... 598s Setting up python3-enchant (3.3.0~rc1-1) ... 599s Setting up python3-translate (3.15.1-1) ... 599s Setting up translate-toolkit (3.15.1-1) ... 599s Processing triggers for libc-bin (2.42-0ubuntu3) ... 599s Processing triggers for man-db (2.13.1-1) ... 600s Processing triggers for install-info (7.1.1-1ubuntu1) ... 600s Processing triggers for dictionaries-common (1.30.10) ... 619s autopkgtest [00:52:03]: test python3-translate-commands: [----------------------- 622s ============================= test session starts ============================== 622s platform linux -- Python 3.13.7, pytest-8.4.2, pluggy-1.6.0 -- /usr/bin/python3.13 622s cachedir: .pytest_cache 622s rootdir: /tmp/autopkgtest.SjMO23/autopkgtest_tmp 622s plugins: typeguard-4.4.2, syrupy-4.9.1 628s collecting ... collected 3383 items / 2 skipped 628s 628s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff PASSED [ 0%] 628s tests/odf_xliff/test_odf_xliff.py::test_roundtrip PASSED [ 0%] 628s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff2_inline PASSED [ 0%] 628s tests/translate/convert/test_accesskey.py::test_get_label_and_accesskey PASSED [ 0%] 628s tests/translate/convert/test_accesskey.py::test_extract_bad_accesskeys PASSED [ 0%] 628s tests/translate/convert/test_accesskey.py::test_ignore_entities PASSED [ 0%] 628s tests/translate/convert/test_accesskey.py::test_alternate_accesskey_marker PASSED [ 0%] 628s tests/translate/convert/test_accesskey.py::test_unicode PASSED [ 0%] 628s tests/translate/convert/test_accesskey.py::test_numeric PASSED [ 0%] 628s tests/translate/convert/test_accesskey.py::test_empty_string PASSED [ 0%] 628s tests/translate/convert/test_accesskey.py::test_end_of_string PASSED [ 0%] 628s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey PASSED [ 0%] 628s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey_different_capitals PASSED [ 0%] 628s tests/translate/convert/test_accesskey.py::test_uncombinable PASSED [ 0%] 628s tests/translate/convert/test_accesskey.py::test_accesskey_already_in_text PASSED [ 0%] 628s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_no_template_units PASSED [ 0%] 628s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_template_units PASSED [ 0%] 628s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_no_template_units PASSED [ 0%] 628s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_template_units PASSED [ 0%] 628s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_help PASSED [ 0%] 628s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid PASSED [ 0%] 628s tests/translate/convert/test_convert.py::TestConvertCommand::test_help PASSED [ 0%] 628s tests/translate/convert/test_csv2po.py::test_replacestrings PASSED [ 0%] 628s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity PASSED [ 0%] 628s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity_with_template PASSED [ 0%] 628s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_newlines PASSED [ 0%] 628s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_tabs PASSED [ 0%] 628s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_quotes PASSED [ 0%] 628s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_empties PASSED [ 0%] 628s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_kdecomment PASSED [ 0%] 628s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_escaped_newlines PASSED [ 0%] 628s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity PASSED [ 0%] 628s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity_with_template PASSED [ 0%] 628s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_newlines PASSED [ 1%] 628s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_tabs PASSED [ 1%] 628s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_quotes PASSED [ 1%] 628s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_empties PASSED [ 1%] 628s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_kdecomment PASSED [ 1%] 628s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_escaped_newlines PASSED [ 1%] 628s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_help PASSED [ 1%] 628s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_simpleentity PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_convertdtd PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_apos PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_quotes PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_two_empty_entities PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity_translated PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisaton_note_simple PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisation_note_merge PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_simple PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_label PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_onlyentity PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_commentedout PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_spaces_at_start_of_dtd_lines PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_folding PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_mismatch PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_carriage_return_in_multiline_dtd PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_with_blankline PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_closing_quotes PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_preserving_spaces PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_escaping_newline_tabs PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_abandoned_accelerator PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_unassociable_accelerator PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_changed_labels_and_accelerators PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence XFAIL [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_exclude_entity_includes PASSED [ 1%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_linewraps PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merging_with_new_untranslated PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merge_without_template PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_simpleentity PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_convertdtd PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_apos PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_quotes PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_two_empty_entities PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity_translated PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisaton_note_simple PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisation_note_merge PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_simple PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_label PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_onlyentity PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_commentedout PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_spaces_at_start_of_dtd_lines PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_folding PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_mismatch PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_carriage_return_in_multiline_dtd PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_with_blankline PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_closing_quotes PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_preserving_spaces PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_escaping_newline_tabs PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_abandoned_accelerator PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_unassociable_accelerator PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_changed_labels_and_accelerators PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence XFAIL [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_exclude_entity_includes PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_linewraps PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merging_with_new_untranslated PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merge_without_template PASSED [ 2%] 628s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_help PASSED [ 2%] 628s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_defaults PASSED [ 2%] 628s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_root_name PASSED [ 3%] 628s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_value_name PASSED [ 3%] 628s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_key PASSED [ 3%] 628s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_default_namespace PASSED [ 3%] 628s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_namespace_prefix PASSED [ 3%] 628s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_all_parameters PASSED [ 3%] 628s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_empty_file_is_empty_store PASSED [ 3%] 629s tests/translate/convert/test_flatxml2po.py::TestFlatXML2POCommand::test_help PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_extract_lang_attribute_from_html_tag PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title_with_linebreak PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_meta PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_br PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak_and_embedded_br PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_uppercase_html PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div_with_linebreaks PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a_with_linebreak PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_sequence_of_anchor_elements PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_img_empty PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img_inside_a PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_table_summary PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_simple PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_complex PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_empty PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_address PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings_with_linebreaks PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dt PASSED [ 3%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dd PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_span PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_ul PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_lists PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_duplicates PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiline_reflow PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_tags PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_carriage_return PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_encoding_latin1 PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_strip_html PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_text PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_attributes PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_charrefs PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiple_php PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_multiline PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_with_embedded_html PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_comments PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2PO::test_attribute_without_value PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_extract_lang_attribute_from_html_tag PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title_with_linebreak PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_meta PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_br PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak_and_embedded_br PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_uppercase_html PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div_with_linebreaks PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a_with_linebreak PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_sequence_of_anchor_elements PASSED [ 4%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_img_empty PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img_inside_a PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_table_summary PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_simple PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_complex PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_empty PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_address PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings_with_linebreaks PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dt PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dd PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_span PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_ul PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_lists PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_duplicates PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiline_reflow PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_tags PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_carriage_return PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_encoding_latin1 PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_strip_html PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_text PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_attributes PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_charrefs PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiple_php PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_multiline PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_with_embedded_html PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_comments PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_attribute_without_value PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_help PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_single PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile PASSED [ 5%] 629s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile_to_stdout PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_convert_empty_file PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_translations PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_summary PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_description PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_location PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_comment PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_template_duplicate_style PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_misaligned_files PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_blank_msgstr PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_duplicate_style PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_convert_empty_file PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_translations PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_summary PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_description PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_location PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_comment PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_template_duplicate_style PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_misaligned_files PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_blank_msgstr PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_duplicate_style PASSED [ 6%] 629s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_help PASSED [ 6%] 629s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_help PASSED [ 6%] 629s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_convert PASSED [ 6%] 629s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_empty_file PASSED [ 6%] 629s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_no_translation PASSED [ 6%] 629s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_simple PASSED [ 6%] 629s tests/translate/convert/test_ini2po.py::TestIni2PO::test_no_duplicates PASSED [ 6%] 629s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_simple PASSED [ 6%] 629s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_misaligned_files PASSED [ 6%] 629s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_blank_msgstr PASSED [ 6%] 629s tests/translate/convert/test_ini2po.py::TestIni2PO::test_dialects_inno PASSED [ 6%] 629s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_empty_file PASSED [ 7%] 629s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_no_translation PASSED [ 7%] 629s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_simple PASSED [ 7%] 629s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_no_duplicates PASSED [ 7%] 629s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_simple PASSED [ 7%] 629s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_misaligned_files PASSED [ 7%] 629s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_blank_msgstr PASSED [ 7%] 629s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_dialects_inno PASSED [ 7%] 629s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_help PASSED [ 7%] 629s tests/translate/convert/test_json2po.py::TestJson2PO::test_simple PASSED [ 7%] 629s tests/translate/convert/test_json2po.py::TestJson2PO::test_three_same_keys PASSED [ 7%] 629s tests/translate/convert/test_json2po.py::TestJson2PO::test_filter PASSED [ 7%] 629s tests/translate/convert/test_json2po.py::TestJson2PO::test_miltiple_units PASSED [ 7%] 629s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_simple PASSED [ 7%] 629s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_three_same_keys PASSED [ 7%] 629s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_filter PASSED [ 7%] 629s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_miltiple_units PASSED [ 7%] 629s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_help PASSED [ 7%] 629s tests/translate/convert/test_md2po.py::TestMD2PO::test_help PASSED [ 7%] 629s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_single PASSED [ 7%] 629s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_onefile PASSED [ 7%] 629s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_single PASSED [ 7%] 629s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_onefile PASSED [ 7%] 629s tests/translate/convert/test_moz2po.py::TestMoz2POCommand::test_help PASSED [ 7%] 629s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_simpleentry PASSED [ 7%] 629s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_uncomment_contributors PASSED [ 7%] 629s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_convert_empty PASSED [ 7%] 629s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_string PASSED [ 7%] 629s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_merge PASSED [ 7%] 629s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_entry PASSED [ 7%] 629s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_comment PASSED [ 7%] 629s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_meta_tags PASSED [ 7%] 629s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_keep_duplicates PASSED [ 7%] 629s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_drop_duplicates PASSED [ 7%] 629s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_convert_empty PASSED [ 8%] 629s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_string PASSED [ 8%] 629s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_merge PASSED [ 8%] 629s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_entry PASSED [ 8%] 629s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_comment PASSED [ 8%] 629s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_meta_tags PASSED [ 8%] 629s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_keep_duplicates PASSED [ 8%] 629s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_drop_duplicates PASSED [ 8%] 629s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_help PASSED [ 8%] 629s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_help PASSED [ 8%] 629s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_convert PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2PO::test_simpleentity PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_escape PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_whitespaceonly PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2PO::test_double_escapes PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes_helpcontent2 PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2PO::test_msgid_bug_error_address PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2PO::test_x_comment_inclusion PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simpleentity PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_double_escapes PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_help PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_preserve_filename PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 8%] 629s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates PASSED [ 8%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_simpleentity PASSED [ 8%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_escape PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_whitespaceonly PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_double_escapes PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes_helpcontent2 PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_x_comment_inclusion PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_msgid_bug_error_address PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simpleentity PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_double_escapes PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_help PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_preserve_filename PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 629s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 629s tests/translate/convert/test_php2po.py::TestPhp2PO::test_simpleentry PASSED [ 9%] 629s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphp PASSED [ 9%] 629s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphptemplate PASSED [ 9%] 629s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpmissing PASSED [ 9%] 629s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpempty PASSED [ 9%] 629s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unicode PASSED [ 9%] 629s tests/translate/convert/test_php2po.py::TestPhp2PO::test_multiline PASSED [ 9%] 629s tests/translate/convert/test_php2po.py::TestPhp2PO::test_comments_before PASSED [ 9%] 629s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry PASSED [ 9%] 629s tests/translate/convert/test_php2po.py::TestPhp2PO::test_hash_comment_with_equals PASSED [ 9%] 629s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry_translated PASSED [ 9%] 629s tests/translate/convert/test_php2po.py::TestPhp2PO::test_newlines_in_value PASSED [ 9%] 629s tests/translate/convert/test_php2po.py::TestPhp2PO::test_spaces_in_name PASSED [ 9%] 630s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_array PASSED [ 9%] 630s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_array PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_nested_arrays PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_nested_arrays PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_simpleentry PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphp PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphptemplate PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpmissing PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpempty PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unicode PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_multiline PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_comments_before PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_hash_comment_with_equals PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry_translated PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_newlines_in_value PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_spaces_in_name PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_array PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_array PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_nested_arrays PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_nested_arrays PASSED [ 10%] 630s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_help PASSED [ 10%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_simpleentity PASSED [ 10%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_multiline PASSED [ 10%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapednewlines PASSED [ 10%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedtabs PASSED [ 10%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedquotes PASSED [ 10%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedescape PASSED [ 10%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_singlequotes PASSED [ 10%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_empties PASSED [ 10%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_kdecomments PASSED [ 10%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_simpleentity PASSED [ 10%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_multiline PASSED [ 10%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapednewlines PASSED [ 10%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedtabs PASSED [ 10%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedquotes PASSED [ 11%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedescape PASSED [ 11%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_singlequotes PASSED [ 11%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_empties PASSED [ 11%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_kdecomments PASSED [ 11%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_help PASSED [ 11%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder PASSED [ 11%] 630s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_joinlines PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_escapedstr PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_missingaccesskey PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskeycase PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_types PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities_two PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments_translator PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_retains_hashprefix PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_convertdtd PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_with_template PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_without_template PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_blank_source PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_newlines_escapes PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_simple PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_escape PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_quotes PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_amp PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_merging_entries_with_spaces_removed PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces PASSED [ 11%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces_after_value PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_duplicates PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_joinlines PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_escapedstr PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_missingaccesskey PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskeycase PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_types PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities_two PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments_translator PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_retains_hashprefix PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_convertdtd PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_with_template PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_without_template PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_blank_source PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_newlines_escapes PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_simple PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_escape PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_quotes PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_amp PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_merging_entries_with_spaces_removed PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces_after_value PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_duplicates PASSED [ 12%] 630s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_help PASSED [ 12%] 630s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_defaults PASSED [ 12%] 630s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_root_name PASSED [ 12%] 630s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_value_name PASSED [ 13%] 630s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_key PASSED [ 13%] 630s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_default_namespace PASSED [ 13%] 630s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_namespace_prefix PASSED [ 13%] 630s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_indent_eight PASSED [ 13%] 630s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_noindent PASSED [ 13%] 630s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXMLCommand::test_help PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2Html::test_simple PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2Html::test_linebreaks PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2Html::test_replace_substrings PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_outside_translatable_content PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_embedded_within_translatable_content PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_without_value PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2Html::test_entities PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2Html::test_escapes PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_translated PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_untranslated PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_fuzzy PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2Html::test_untranslated_attributes PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_simple PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_linebreaks PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_replace_substrings PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_outside_translatable_content PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_embedded_within_translatable_content PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_without_value PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_entities PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_escapes PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_translated PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_untranslated PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_fuzzy PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_untranslated_attributes PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_help PASSED [ 13%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_individual_files PASSED [ 14%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_fully_recursive PASSED [ 14%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_input_specified PASSED [ 14%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified PASSED [ 14%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_output_specified PASSED [ 14%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file PASSED [ 14%] 630s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_empty_file PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_summary PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_description PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_location PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_comment PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_complex_icalendar PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_skip_fuzzy PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_include_fuzzy PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_no_template PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_template_location_not_in_source_file PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_below_threshold PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_above_threshold PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_empty_file PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_summary PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_description PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_location PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_comment PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_complex_icalendar PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_skip_fuzzy PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_include_fuzzy PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_no_template PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_template_location_not_in_source_file PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_below_threshold PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_above_threshold PASSED [ 14%] 630s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_help PASSED [ 14%] 630s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_help PASSED [ 14%] 630s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert PASSED [ 14%] 630s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_no_templates PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_simple PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_space_preservation PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_blank_entries PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_fuzzy PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_propertyless_template PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_empty_value PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_dialects_inno PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_misaligned_files PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_below_threshold PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_above_threshold PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_no_fuzzy PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_allow_fuzzy PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_missing_source PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_repeated_locations PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_no_templates PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_simple PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_space_preservation PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_blank_entries PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_fuzzy PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_propertyless_template PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_empty_value PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_dialects_inno PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_misaligned_files PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_below_threshold PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_above_threshold PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_no_fuzzy PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_allow_fuzzy PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_missing_source PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_repeated_locations PASSED [ 15%] 630s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_help PASSED [ 15%] 630s tests/translate/convert/test_po2json.py::TestPO2JSON::test_basic PASSED [ 15%] 630s tests/translate/convert/test_po2json.py::TestPO2JSON::test_ordering_serialize PASSED [ 15%] 630s tests/translate/convert/test_po2json.py::TestPO2JSON::test_dont_use_empty_translation PASSED [ 15%] 630s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_false PASSED [ 16%] 630s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_true PASSED [ 16%] 630s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_false PASSED [ 16%] 630s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_true PASSED [ 16%] 630s tests/translate/convert/test_po2md.py::TestPO2MD::test_help PASSED [ 16%] 630s tests/translate/convert/test_po2md.py::TestPO2MD::test_single_markdown_file_with_single_po PASSED [ 16%] 630s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po PASSED [ 16%] 630s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_and_directory_of_po_files PASSED [ 16%] 630s tests/translate/convert/test_po2moz.py::TestPO2MozCommand::test_help PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_empty PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_simple PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_comment PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_ok_marker PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_below_threshold PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_above_threshold PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_skip_non_translatable_input PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_no_fuzzy PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_allow_fuzzy PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_mark_active PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_empty PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_simple PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_comment PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_ok_marker PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_below_threshold PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_above_threshold PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_skip_non_translatable_input PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_no_fuzzy PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_allow_fuzzy PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_mark_active PASSED [ 16%] 630s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_help PASSED [ 16%] 630s tests/translate/convert/test_po2oo.py::TestPO2OO::test_convertoo PASSED [ 16%] 630s tests/translate/convert/test_po2oo.py::TestPO2OO::test_pofilter PASSED [ 16%] 630s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_simple PASSED [ 16%] 630s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_escape PASSED [ 16%] 630s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_quotes PASSED [ 17%] 630s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_spaces PASSED [ 17%] 630s tests/translate/convert/test_po2oo.py::TestPO2OO::test_default_timestamp PASSED [ 17%] 630s tests/translate/convert/test_po2oo.py::TestPO2OO::test_escape_conversion PASSED [ 17%] 630s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes PASSED [ 17%] 630s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes2 PASSED [ 17%] 630s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_convertoo PASSED [ 17%] 630s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_pofilter PASSED [ 17%] 630s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_simple PASSED [ 17%] 630s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape PASSED [ 17%] 630s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_quotes PASSED [ 17%] 630s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_spaces PASSED [ 17%] 630s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp PASSED [ 17%] 630s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_escape_conversion PASSED [ 17%] 630s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes PASSED [ 17%] 630s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes2 PASSED [ 17%] 630s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_help PASSED [ 17%] 630s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp PASSED [ 17%] 630s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_notemplate PASSED [ 17%] 630s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_empty_template PASSED [ 17%] 630s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_simple PASSED [ 17%] 631s tests/translate/convert/test_po2php.py::TestPO2Php::test_space_preservation PASSED [ 17%] 631s tests/translate/convert/test_po2php.py::TestPO2Php::test_preserve_unused_statement PASSED [ 17%] 631s tests/translate/convert/test_po2php.py::TestPO2Php::test_not_translated_multiline PASSED [ 17%] 631s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_blank_entries PASSED [ 17%] 631s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_fuzzy PASSED [ 17%] 631s tests/translate/convert/test_po2php.py::TestPO2Php::test_locations_with_spaces PASSED [ 17%] 631s tests/translate/convert/test_po2php.py::TestPO2Php::test_inline_comments PASSED [ 17%] 631s tests/translate/convert/test_po2php.py::TestPO2Php::test_block_comments PASSED [ 17%] 631s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_variables PASSED [ 17%] 631s tests/translate/convert/test_po2php.py::TestPO2Php::test_multiline PASSED [ 17%] 631s tests/translate/convert/test_po2php.py::TestPO2Php::test_hash_comment PASSED [ 17%] 631s tests/translate/convert/test_po2php.py::TestPO2Php::test_arrays PASSED [ 17%] 631s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_nested_array PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2Php::test_unnamed_nested_arrays PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template XFAIL [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_notemplate PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_empty_template PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_simple PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_space_preservation PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_preserve_unused_statement PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_not_translated_multiline PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_blank_entries PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_fuzzy PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_locations_with_spaces PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_inline_comments PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_block_comments PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_variables PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_multiline PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_hash_comment PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_arrays PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_nested_array PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_unnamed_nested_arrays PASSED [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template XFAIL [ 18%] 631s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_help PASSED [ 18%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_simple PASSED [ 18%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated PASSED [ 18%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_hard_newlines_preserved PASSED [ 18%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_space_preservation PASSED [ 18%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_value PASSED [ 18%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_separator PASSED [ 18%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank_entries PASSED [ 18%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_fuzzy PASSED [ 18%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys PASSED [ 18%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey PASSED [ 18%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_margin_whitespace PASSED [ 18%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_all_whitespace PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_propertyless_template PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_delimiters PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_empty_value PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_personalities PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_simple PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline2 PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_comments PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_unchanged PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gaia_plurals PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_duplicates PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gwt_plurals PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_simple PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_hard_newlines_preserved PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_space_preservation PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_value PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_separator PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank_entries PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_fuzzy PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_margin_whitespace PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_all_whitespace PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_propertyless_template PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_delimiters PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_empty_value PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_personalities PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_simple PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline2 PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_comments PASSED [ 19%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_unchanged PASSED [ 20%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank PASSED [ 20%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gaia_plurals PASSED [ 20%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_duplicates PASSED [ 20%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gwt_plurals PASSED [ 20%] 631s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_help PASSED [ 20%] 631s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_help PASSED [ 20%] 631s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert PASSED [ 20%] 631s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_quotes PASSED [ 20%] 631s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment PASSED [ 20%] 631s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_dos_eol PASSED [ 20%] 631s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_double_string PASSED [ 20%] 631s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_popup PASSED [ 20%] 631s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_discardable PASSED [ 20%] 631s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_menuex PASSED [ 20%] 631s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_newlines PASSED [ 20%] 631s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_after PASSED [ 20%] 631s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_block_language PASSED [ 20%] 631s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_output_encoding PASSED [ 20%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_simpleunit PASSED [ 20%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_basic PASSED [ 20%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_multiline PASSED [ 20%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapednewlines PASSED [ 20%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedtabs PASSED [ 20%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedquotes PASSED [ 20%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_exclusions PASSED [ 20%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments PASSED [ 20%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingcomment PASSED [ 20%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecomment PASSED [ 20%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 20%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments PASSED [ 20%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingcomment PASSED [ 20%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingduplicatecomment PASSED [ 20%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments PASSED [ 20%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingduplicatecomment PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingcomment PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_existingcomments PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_simpleunit PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_basic PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_multiline PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapednewlines PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedtabs PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedquotes PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_exclusions PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingcomment PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingcomment PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingduplicatecomment PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingcomment PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_existingcomments PASSED [ 21%] 631s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_help PASSED [ 21%] 631s tests/translate/convert/test_po2sub.py::TestPO2Sub::test_subrip PASSED [ 21%] 631s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_subrip PASSED [ 21%] 631s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_help PASSED [ 21%] 631s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_empty PASSED [ 21%] 631s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert PASSED [ 21%] 631s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_marked_untranslated PASSED [ 21%] 631s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_empty PASSED [ 21%] 631s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert PASSED [ 21%] 631s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_marked_untranslated PASSED [ 21%] 631s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_help PASSED [ 21%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_basic PASSED [ 21%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcelanguage PASSED [ 21%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_targetlanguage PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_multiline PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapednewlines PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedtabs PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedquotes PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_exclusions PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonascii PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonecomments PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_otherscomments PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcecomments PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_typecomments PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_basic PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcelanguage PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_targetlanguage PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_multiline PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapednewlines PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedtabs PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedquotes PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_exclusions PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonascii PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonecomments PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_otherscomments PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcecomments PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_typecomments PASSED [ 22%] 631s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_help PASSED [ 22%] 631s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simpleunit PASSED [ 22%] 631s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simple_unicode_unit PASSED [ 22%] 631s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fullunit PASSED [ 22%] 631s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fuzzyunit PASSED [ 22%] 631s tests/translate/convert/test_po2ts.py::TestPO2TS::test_obsolete PASSED [ 22%] 631s tests/translate/convert/test_po2ts.py::TestPO2TS::test_duplicates PASSED [ 22%] 631s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak PASSED [ 22%] 632s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak_consecutive PASSED [ 22%] 632s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simpleunit PASSED [ 22%] 632s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simple_unicode_unit PASSED [ 23%] 632s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fullunit PASSED [ 23%] 632s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fuzzyunit PASSED [ 23%] 632s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_obsolete PASSED [ 23%] 632s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_duplicates PASSED [ 23%] 632s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak PASSED [ 23%] 632s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak_consecutive PASSED [ 23%] 632s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_help PASSED [ 23%] 632s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_basic PASSED [ 23%] 632s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_nonascii PASSED [ 23%] 632s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_blank_handling PASSED [ 23%] 632s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_fuzzy_handling PASSED [ 23%] 632s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_obsolete_ignore PASSED [ 23%] 632s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_header_ignore PASSED [ 23%] 632s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_below_threshold PASSED [ 23%] 632s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_above_threshold PASSED [ 23%] 632s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_basic PASSED [ 23%] 632s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_nonascii PASSED [ 23%] 632s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_blank_handling PASSED [ 23%] 632s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_fuzzy_handling PASSED [ 23%] 632s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_obsolete_ignore PASSED [ 23%] 632s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_header_ignore PASSED [ 23%] 632s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_below_threshold PASSED [ 23%] 632s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_above_threshold PASSED [ 23%] 632s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_help PASSED [ 23%] 632s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_basic PASSED [ 23%] 632s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_unicode PASSED [ 23%] 632s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_ordering_serialize PASSED [ 23%] 632s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_markmin PASSED [ 23%] 632s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_minimal PASSED [ 23%] 632s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_basic PASSED [ 23%] 632s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_multiline PASSED [ 23%] 632s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapednewlines PASSED [ 23%] 632s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedtabs PASSED [ 24%] 632s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedquotes PASSED [ 24%] 632s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_locationcomments PASSED [ 24%] 632s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_othercomments PASSED [ 24%] 632s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_automaticcomments PASSED [ 24%] 632s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_header PASSED [ 24%] 632s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_fuzzy PASSED [ 24%] 632s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_germanic_plurals PASSED [ 24%] 632s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_funny_plurals PASSED [ 24%] 632s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_language_tags PASSED [ 24%] 632s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_variables PASSED [ 24%] 632s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_approved PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_empty_PO PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_no_templates PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple_output PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_translated PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_no_fuzzy PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_allow_fuzzy PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_nested PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_below_threshold PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_above_threshold PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_empty_PO PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_no_templates PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple_output PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_translated PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_no_fuzzy PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_allow_fuzzy PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_nested PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_below_threshold PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_above_threshold PASSED [ 24%] 632s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_help PASSED [ 24%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank PASSED [ 24%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank_plurals PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_simple PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_messages_marked_fuzzy PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals_with_fuzzy_matching PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change XFAIL [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_change PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_and_whitespace_change PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_ambiguous_with_disambiguous PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes XFAIL [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently XFAIL [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_dont_duplicate PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_new_overides_old PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments_with_blank_comment_lines PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_commentlines PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgidcomments PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_with_msgidcomment PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_obsoleting_messages PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_not_obsoleting_empty_messages PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_new_before_obsolete PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_header_initialisation PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_typecomments PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt_multiline PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_location PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_id PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_msgid PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_migrate_msgidcomment_to_msgctxt PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_obsolete_msgctxt PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_small_strings PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank PASSED [ 25%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank_plurals PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_simple PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_messages_marked_fuzzy PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change XFAIL [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_change PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_and_whitespace_change PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_ambiguous_with_disambiguous PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes XFAIL [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently XFAIL [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_new_overides_old PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments_with_blank_comment_lines PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_commentlines PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgidcomments PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_with_msgidcomment PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_obsoleting_messages PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_not_obsoleting_empty_messages PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_new_before_obsolete PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_header_initialisation PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_typecomments PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt_multiline PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_location PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_id PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_msgid PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_migrate_msgidcomment_to_msgctxt PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_obsolete_msgctxt PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_small_strings PASSED [ 26%] 632s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_help PASSED [ 26%] 632s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_no_endlines_added PASSED [ 27%] 632s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_uncomment_contributors PASSED [ 27%] 632s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_multiline_comment_newlines PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_simpleentry PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_convertprop PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_value_entry PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_separator_entry PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_end_of_string PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_start_of_value PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unicode PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_escaping PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_comments PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_comments PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_folding_accesskeys PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_dont_translate PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty_translated PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_newlines_in_value PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_header_comments PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unassociated_comment_order PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_x_header PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gaia_plurals PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_successive_gaia_plurals PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_duplicate_keys PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gwt_plurals PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_simpleentry PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_convertprop PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_value_entry PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_separator_entry PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_end_of_string PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_start_of_value PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unicode PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_escaping PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_comments PASSED [ 27%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_comments PASSED [ 28%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_folding_accesskeys PASSED [ 28%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_dont_translate PASSED [ 28%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty PASSED [ 28%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty_translated PASSED [ 28%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_newlines_in_value PASSED [ 28%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_header_comments PASSED [ 28%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unassociated_comment_order PASSED [ 28%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_x_header PASSED [ 28%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gaia_plurals PASSED [ 28%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_successive_gaia_plurals PASSED [ 28%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_duplicate_keys PASSED [ 28%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gwt_plurals PASSED [ 28%] 632s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_help PASSED [ 28%] 632s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_help PASSED [ 28%] 632s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert PASSED [ 28%] 632s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 PASSED [ 28%] 632s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong PASSED [ 28%] 632s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 PASSED [ 28%] 632s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex PASSED [ 28%] 632s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_simple PASSED [ 28%] 632s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_multiple_units PASSED [ 28%] 632s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_automaticcomments PASSED [ 28%] 632s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_translatorcomments PASSED [ 28%] 632s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_locations PASSED [ 28%] 632s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple PASSED [ 28%] 632s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_multiple_units PASSED [ 28%] 632s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_automaticcomments PASSED [ 28%] 632s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_translatorcomments PASSED [ 28%] 632s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_locations PASSED [ 28%] 632s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_help PASSED [ 28%] 632s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot PASSED [ 28%] 632s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po PASSED [ 28%] 632s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates PASSED [ 28%] 632s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_convert_empty PASSED [ 29%] 632s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_defaults PASSED [ 29%] 632s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_includeunused PASSED [ 29%] 632s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_convert_empty PASSED [ 29%] 632s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_defaults PASSED [ 29%] 632s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_includeunused PASSED [ 29%] 632s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_help PASSED [ 29%] 632s tests/translate/convert/test_ts2po.py::TestTS2PO::test_blank PASSED [ 29%] 632s tests/translate/convert/test_ts2po.py::TestTS2PO::test_basic PASSED [ 29%] 632s tests/translate/convert/test_ts2po.py::TestTS2PO::test_unfinished PASSED [ 29%] 632s tests/translate/convert/test_ts2po.py::TestTS2PO::test_multiline PASSED [ 29%] 632s tests/translate/convert/test_ts2po.py::TestTS2PO::test_obsolete PASSED [ 29%] 632s tests/translate/convert/test_ts2po.py::TestTS2PO::test_comment PASSED [ 29%] 632s tests/translate/convert/test_ts2po.py::TestTS2PO::test_extracomment PASSED [ 29%] 632s tests/translate/convert/test_ts2po.py::TestTS2PO::test_emptycontext PASSED [ 29%] 632s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_blank PASSED [ 29%] 632s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_basic PASSED [ 29%] 632s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_unfinished PASSED [ 29%] 632s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_multiline PASSED [ 29%] 632s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_obsolete PASSED [ 29%] 632s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_comment PASSED [ 29%] 632s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_extracomment PASSED [ 29%] 632s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_emptycontext PASSED [ 29%] 632s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_help PASSED [ 29%] 632s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_convert_empty PASSED [ 29%] 632s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_keep_duplicates PASSED [ 29%] 632s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_drop_duplicates PASSED [ 29%] 632s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_simple PASSED [ 29%] 632s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_multiple_units PASSED [ 29%] 632s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_carriage_return PASSED [ 29%] 632s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_merge PASSED [ 29%] 632s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_no_segmentation PASSED [ 29%] 632s tests/translate/convert/test_txt2po.py::TestDoku2po::test_convert_empty PASSED [ 29%] 632s tests/translate/convert/test_txt2po.py::TestDoku2po::test_keep_duplicates PASSED [ 30%] 632s tests/translate/convert/test_txt2po.py::TestDoku2po::test_drop_duplicates PASSED [ 30%] 632s tests/translate/convert/test_txt2po.py::TestDoku2po::test_basic PASSED [ 30%] 632s tests/translate/convert/test_txt2po.py::TestDoku2po::test_bullet_list PASSED [ 30%] 632s tests/translate/convert/test_txt2po.py::TestDoku2po::test_numbered_list PASSED [ 30%] 633s tests/translate/convert/test_txt2po.py::TestDoku2po::test_spacing PASSED [ 30%] 633s tests/translate/convert/test_txt2po.py::TestDoku2po::test_merge PASSED [ 30%] 633s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_convert_empty PASSED [ 30%] 633s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_keep_duplicates PASSED [ 30%] 633s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_drop_duplicates PASSED [ 30%] 633s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_simple PASSED [ 30%] 633s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_multiple_units PASSED [ 30%] 633s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_carriage_return PASSED [ 30%] 633s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_merge PASSED [ 30%] 633s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_no_segmentation PASSED [ 30%] 633s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_help PASSED [ 30%] 633s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_basic PASSED [ 30%] 633s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_unicode PASSED [ 30%] 633s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_markmin PASSED [ 30%] 633s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_help PASSED [ 30%] 633s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert PASSED [ 30%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_minimal PASSED [ 30%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_basic PASSED [ 30%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_translatorcomments PASSED [ 30%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_autocomment PASSED [ 30%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_locations PASSED [ 30%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_fuzzy PASSED [ 30%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_plurals PASSED [ 30%] 633s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_minimal PASSED [ 30%] 633s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_basic PASSED [ 30%] 633s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_translatorcomments PASSED [ 30%] 633s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_autocomment PASSED [ 30%] 633s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_locations PASSED [ 30%] 633s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_fuzzy PASSED [ 30%] 633s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_plurals PASSED [ 31%] 633s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_help PASSED [ 31%] 633s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_simple_convert PASSED [ 31%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_minimal PASSED [ 31%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_basic PASSED [ 31%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_translatorcomments PASSED [ 31%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_autocomment PASSED [ 31%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_locations PASSED [ 31%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_fuzzy PASSED [ 31%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_plurals PASSED [ 31%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_help PASSED [ 31%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename PASSED [ 31%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot PASSED [ 31%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po PASSED [ 31%] 633s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates PASSED [ 31%] 633s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_empty_YAML PASSED [ 31%] 633s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple_output PASSED [ 31%] 633s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple PASSED [ 31%] 633s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_nested PASSED [ 31%] 633s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates XFAIL [ 31%] 633s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_with_template PASSED [ 31%] 633s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_empty_YAML PASSED [ 31%] 633s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple_output PASSED [ 31%] 633s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple PASSED [ 31%] 633s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_nested PASSED [ 31%] 633s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates XFAIL [ 31%] 633s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_with_template PASSED [ 31%] 633s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_help PASSED [ 31%] 633s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_empty_target PASSED [ 31%] 633s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_ellipsis PASSED [ 31%] 633s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_spacestart_spaceend PASSED [ 31%] 633s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_start_capitals PASSED [ 31%] 633s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_end_punc PASSED [ 31%] 633s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_combinations PASSED [ 31%] 633s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_nothing_to_do PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_defaults PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_construct PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_accelerator_markers PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_messages PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_accelerators PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_acceleratedvariables XFAIL [ 32%] 633s tests/translate/filters/test_checks.py::test_acronyms PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_blank PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_brackets PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_compendiumconflicts PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_doublequoting PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_doublespacing PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_doublewords PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_endpunc PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_endwhitespace PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_escapes PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_newlines PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_tabs PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_filepaths PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_kdecomments PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_long PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_musttranslatewords XFAIL [ 32%] 633s tests/translate/filters/test_checks.py::test_notranslatewords PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_numbers PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_persian_numbers PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_bengali_numbers PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_arabic_numbers PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_assamese_numbers PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_options PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_printf PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_pythonbraceformat PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_puncspacing PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_purepunc PASSED [ 32%] 633s tests/translate/filters/test_checks.py::test_sentencecount PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_short PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_singlequoting PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_vietnamese_singlequoting PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time XFAIL [ 33%] 633s tests/translate/filters/test_checks.py::test_persian_quoting PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_simplecaps PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_spellcheck SKIPPED (Spe...) [ 33%] 633s tests/translate/filters/test_checks.py::test_startcaps PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_startpunc PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_startwhitespace PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_unchanged PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_untranslated PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_validchars PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_minimalchecker PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_reducedchecker PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_variables_kde PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_variables_gnome PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_variables_mozilla PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_variables_openoffice PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_variables_cclicense PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_variables_ios PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_xmltags PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags XFAIL [ 33%] 633s tests/translate/filters/test_checks.py::test_ooxmltags PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_functions PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_emails PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_urls PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_simpleplurals PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_nplurals PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_credits PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_gconf PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_validxml PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_hassuggestion PASSED [ 33%] 633s tests/translate/filters/test_checks.py::test_dialogsizes PASSED [ 34%] 633s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers PASSED [ 34%] 633s tests/translate/filters/test_checks.py::test_mozilla_no_accelerators_for_indic PASSED [ 34%] 633s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker PASSED [ 34%] 633s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source PASSED [ 34%] 633s tests/translate/filters/test_checks.py::test_ensure_bengali_languages_script_is_correct PASSED [ 34%] 633s tests/translate/filters/test_checks.py::test_category PASSED [ 34%] 633s tests/translate/filters/test_decoration.py::test_spacestart PASSED [ 34%] 633s tests/translate/filters/test_decoration.py::test_isvalidaccelerator PASSED [ 34%] 633s tests/translate/filters/test_decoration.py::test_find_marked_variables PASSED [ 34%] 633s tests/translate/filters/test_decoration.py::test_getnumbers PASSED [ 34%] 633s tests/translate/filters/test_decoration.py::test_getfunctions PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplepass PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplefail PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestPOFilter::test_variables_across_lines PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestPOFilter::test_ignore_if_already_marked PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestPOFilter::test_non_existant_check PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestPOFilter::test_list_all_tests PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_fuzzy PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_review PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isfuzzy PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isreview PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestPOFilter::test_notes PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestPOFilter::test_unicode PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestPOFilter::test_preconditions PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestPOFilter::test_msgid_comments PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplepass PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplefail PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_variables_across_lines PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_ignore_if_already_marked PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_non_existant_check PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_list_all_tests PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_fuzzy PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_review PASSED [ 34%] 633s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isfuzzy PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isreview PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_notes PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_unicode PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_preconditions PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplepass PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplefail PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_variables_across_lines PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_ignore_if_already_marked PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_non_existant_check PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_list_all_tests PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_notes PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_unicode PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_preconditions PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_fuzzy PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_review PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isfuzzy PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isreview PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplepass PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplefail PASSED [ 35%] 633s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_variables_across_lines PASSED [ 35%] 634s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_ignore_if_already_marked PASSED [ 35%] 634s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_non_existant_check PASSED [ 35%] 634s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_list_all_tests PASSED [ 35%] 634s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_fuzzy PASSED [ 35%] 634s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_review PASSED [ 35%] 634s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isfuzzy PASSED [ 35%] 634s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isreview PASSED [ 35%] 634s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_notes PASSED [ 35%] 634s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_unicode PASSED [ 35%] 634s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_preconditions PASSED [ 35%] 634s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_msgid_comments PASSED [ 35%] 634s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_cedillas PASSED [ 35%] 634s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_niciun PASSED [ 36%] 634s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_nicio PASSED [ 36%] 634s tests/translate/filters/test_prefilters.py::test_removekdecomments PASSED [ 36%] 634s tests/translate/filters/test_prefilters.py::test_filterwordswithpunctuation PASSED [ 36%] 634s tests/translate/lang/test_af.py::test_sentences PASSED [ 36%] 634s tests/translate/lang/test_af.py::test_capsstart PASSED [ 36%] 634s tests/translate/lang/test_af.py::test_transliterate_cyrillic PASSED [ 36%] 634s tests/translate/lang/test_am.py::test_punctranslate PASSED [ 36%] 634s tests/translate/lang/test_am.py::test_sentences PASSED [ 36%] 634s tests/translate/lang/test_ar.py::test_punctranslate PASSED [ 36%] 634s tests/translate/lang/test_ar.py::test_sentences PASSED [ 36%] 634s tests/translate/lang/test_common.py::test_characters PASSED [ 36%] 634s tests/translate/lang/test_common.py::test_words PASSED [ 36%] 634s tests/translate/lang/test_common.py::test_word_khmer XFAIL (ZWS is n...) [ 36%] 634s tests/translate/lang/test_common.py::test_sentences PASSED [ 36%] 634s tests/translate/lang/test_common.py::test_capsstart PASSED [ 36%] 634s tests/translate/lang/test_common.py::test_numstart PASSED [ 36%] 634s tests/translate/lang/test_common.py::test_punctranslate PASSED [ 36%] 634s tests/translate/lang/test_common.py::test_length_difference PASSED [ 36%] 634s tests/translate/lang/test_common.py::test_alter_length PASSED [ 36%] 634s tests/translate/lang/test_data.py::test_normalise_code PASSED [ 36%] 634s tests/translate/lang/test_data.py::test_simplify_to_common PASSED [ 36%] 634s tests/translate/lang/test_el.py::test_punctranslate PASSED [ 36%] 634s tests/translate/lang/test_el.py::test_sentences PASSED [ 36%] 634s tests/translate/lang/test_es.py::test_punctranslate PASSED [ 36%] 634s tests/translate/lang/test_es.py::test_sentences PASSED [ 36%] 634s tests/translate/lang/test_fa.py::test_punctranslate PASSED [ 36%] 634s tests/translate/lang/test_fa.py::test_sentences PASSED [ 36%] 634s tests/translate/lang/test_factory.py::test_getlanguage PASSED [ 36%] 634s tests/translate/lang/test_factory.py::test_get_all_languages PASSED [ 36%] 634s tests/translate/lang/test_fr.py::test_punctranslate PASSED [ 36%] 634s tests/translate/lang/test_fr.py::test_sentences PASSED [ 36%] 634s tests/translate/lang/test_hy.py::test_punctranslate PASSED [ 36%] 634s tests/translate/lang/test_hy.py::test_sentences PASSED [ 36%] 634s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_lang PASSED [ 37%] 634s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_store PASSED [ 37%] 634s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_bad_init_data PASSED [ 37%] 634s tests/translate/lang/test_ja.py::test_punctranslate PASSED [ 37%] 634s tests/translate/lang/test_ja.py::test_sentences PASSED [ 37%] 634s tests/translate/lang/test_km.py::test_punctranslate PASSED [ 37%] 634s tests/translate/lang/test_km.py::test_sentences PASSED [ 37%] 634s tests/translate/lang/test_ko.py::test_punctranslate PASSED [ 37%] 634s tests/translate/lang/test_ko.py::test_sentences PASSED [ 37%] 634s tests/translate/lang/test_ne.py::test_punctranslate PASSED [ 37%] 634s tests/translate/lang/test_ne.py::test_sentences PASSED [ 37%] 634s tests/translate/lang/test_nqo.py::test_punctranslate PASSED [ 37%] 634s tests/translate/lang/test_nqo.py::test_sentences PASSED [ 37%] 634s tests/translate/lang/test_or.py::test_punctranslate PASSED [ 37%] 634s tests/translate/lang/test_or.py::test_country_code PASSED [ 37%] 634s tests/translate/lang/test_or.py::test_sentences PASSED [ 37%] 634s tests/translate/lang/test_poedit.py::test_isocode PASSED [ 37%] 634s tests/translate/lang/test_ro.py::test_cedillas PASSED [ 37%] 634s tests/translate/lang/test_ro.py::test_niciun PASSED [ 37%] 634s tests/translate/lang/test_scn.py::test_italianisms PASSED [ 37%] 634s tests/translate/lang/test_scn.py::test_vocalism PASSED [ 37%] 634s tests/translate/lang/test_scn.py::test_suffixes PASSED [ 37%] 634s tests/translate/lang/test_team.py::test_simple PASSED [ 37%] 634s tests/translate/lang/test_th.py::test_punctranslate PASSED [ 37%] 634s tests/translate/lang/test_th.py::test_sentences PASSED [ 37%] 634s tests/translate/lang/test_tr.py::test_sentences PASSED [ 37%] 634s tests/translate/lang/test_uk.py::test_sentences PASSED [ 37%] 634s tests/translate/lang/test_vi.py::test_punctranslate PASSED [ 37%] 634s tests/translate/lang/test_vi.py::test_sentences PASSED [ 37%] 634s tests/translate/lang/test_zh.py::test_punctranslate PASSED [ 37%] 634s tests/translate/lang/test_zh.py::test_sentences PASSED [ 37%] 634s tests/translate/misc/test_deprecation.py::TestDeprecation::test_deprecated_decorator PASSED [ 37%] 634s tests/translate/misc/test_deprecation.py::TestDeprecation::test_no_deprecated_decorator PASSED [ 37%] 634s tests/translate/misc/test_dictutils.py::test_cidict_has_key PASSED [ 37%] 634s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor PASSED [ 38%] 634s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor_validation PASSED [ 38%] 634s tests/translate/misc/test_multistring.py::TestMultistring::test_repr PASSED [ 38%] 634s tests/translate/misc/test_multistring.py::TestMultistring::test_replace PASSED [ 38%] 634s tests/translate/misc/test_multistring.py::TestMultistring::test_comparison PASSED [ 38%] 634s tests/translate/misc/test_multistring.py::TestMultistring::test_coercion PASSED [ 38%] 634s tests/translate/misc/test_multistring.py::TestMultistring::test_unicode_coercion PASSED [ 38%] 634s tests/translate/misc/test_multistring.py::TestMultistring::test_list_coercion PASSED [ 38%] 634s tests/translate/misc/test_multistring.py::TestMultistring::test_multistring_hash PASSED [ 38%] 634s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_splitext PASSED [ 38%] 634s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_outputfile_receives_bytes PASSED [ 38%] 634s tests/translate/misc/test_progressbar.py::test_hashprogressbar PASSED [ 38%] 634s tests/translate/misc/test_quote.py::test_find_all PASSED [ 38%] 634s tests/translate/misc/test_quote.py::test_extract PASSED [ 38%] 634s tests/translate/misc/test_quote.py::test_extractwithoutquotes PASSED [ 38%] 634s tests/translate/misc/test_quote.py::test_extractwithoutquotes_passfunc PASSED [ 38%] 634s tests/translate/misc/test_quote.py::test_stripcomment PASSED [ 38%] 634s tests/translate/misc/test_quote.py::TestEncoding::test_javapropertiesencode PASSED [ 38%] 634s tests/translate/misc/test_quote.py::TestEncoding::test_java_utf8_properties_encode PASSED [ 38%] 634s tests/translate/misc/test_quote.py::TestEncoding::test_escapespace PASSED [ 38%] 634s tests/translate/misc/test_quote.py::TestEncoding::test_mozillaescapemarginspaces PASSED [ 38%] 634s tests/translate/misc/test_quote.py::TestEncoding::test_mozilla_control_escapes PASSED [ 38%] 634s tests/translate/misc/test_quote.py::TestEncoding::test_propertiesdecode PASSED [ 38%] 634s tests/translate/misc/test_quote.py::TestEncoding::test_controlchars PASSED [ 38%] 634s tests/translate/misc/test_quote.py::TestEncoding::test_properties_decode_slashu PASSED [ 38%] 634s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding PASSED [ 38%] 634s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_existing_entities PASSED [ 38%] 634s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_passthrough PASSED [ 38%] 634s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_nonentities PASSED [ 38%] 634s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_four_spaces PASSED [ 38%] 634s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_tab PASSED [ 38%] 634s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_distance PASSED [ 38%] 634s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_similarity PASSED [ 38%] 634s tests/translate/search/test_lshtein.py::TestLevenshtein::test_long_similarity PASSED [ 38%] 634s tests/translate/search/test_match.py::TestMatch::test_matching PASSED [ 39%] 634s tests/translate/search/test_match.py::TestMatch::test_multiple_store PASSED [ 39%] 634s tests/translate/search/test_match.py::TestMatch::test_extendtm PASSED [ 39%] 634s tests/translate/search/test_match.py::TestMatch::test_terminology PASSED [ 39%] 634s tests/translate/search/test_match.py::TestMatch::test_brackets PASSED [ 39%] 634s tests/translate/search/test_match.py::TestMatch::test_past_tences PASSED [ 39%] 634s tests/translate/search/test_match.py::TestMatch::test_space_mismatch PASSED [ 39%] 634s tests/translate/search/test_match.py::TestMatch::test_hyphen_mismatch PASSED [ 39%] 634s tests/translate/search/test_terminology.py::TestTerminology::test_basic PASSED [ 39%] 634s tests/translate/services/test_tmserver.py::TestTMServer::test_import PASSED [ 39%] 635s tests/translate/services/test_tmserver.py::TestTMServer::test_server PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_parse PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_tree PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_add PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_contains PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getitem PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getslice PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_iter PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_len PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_mul PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_offset PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_at_offset PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find_elems_with PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_flatten PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case1 PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case2 PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case3 PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case4 PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_insert PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_isleaf PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestStringElem::test_prune PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_base_placeables PASSED [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables XFAIL [ 39%] 635s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables XFAIL [ 40%] 635s tests/translate/storage/placeables/test_general.py::test_placeable_numbers PASSED [ 40%] 635s tests/translate/storage/placeables/test_general.py::test_placeable_newline PASSED [ 40%] 635s tests/translate/storage/placeables/test_general.py::test_placeable_alt_attr PASSED [ 40%] 635s tests/translate/storage/placeables/test_general.py::test_placeable_qt_formatting PASSED [ 40%] 635s tests/translate/storage/placeables/test_general.py::test_placeable_camelcase PASSED [ 40%] 635s tests/translate/storage/placeables/test_general.py::test_placeable_space PASSED [ 40%] 635s tests/translate/storage/placeables/test_general.py::test_placeable_punctuation PASSED [ 40%] 635s tests/translate/storage/placeables/test_general.py::test_placeable_xml_entity PASSED [ 40%] 635s tests/translate/storage/placeables/test_general.py::test_placeable_xml_tag PASSED [ 40%] 635s tests/translate/storage/placeables/test_general.py::test_placeable_option PASSED [ 40%] 635s tests/translate/storage/placeables/test_general.py::test_placeable_file PASSED [ 40%] 635s tests/translate/storage/placeables/test_general.py::test_placeable_email PASSED [ 40%] 635s tests/translate/storage/placeables/test_general.py::test_placeable_caps PASSED [ 40%] 635s tests/translate/storage/placeables/test_general.py::test_placeable_formatting PASSED [ 40%] 635s tests/translate/storage/placeables/test_general.py::test_placeable_doubleat PASSED [ 40%] 635s tests/translate/storage/placeables/test_general.py::test_placeable_brace PASSED [ 40%] 635s tests/translate/storage/placeables/test_general.py::test_python_placeable PASSED [ 40%] 635s tests/translate/storage/placeables/test_lisa.py::test_xml_to_strelem PASSED [ 40%] 635s tests/translate/storage/placeables/test_lisa.py::test_xml_space PASSED [ 40%] 635s tests/translate/storage/placeables/test_lisa.py::test_chunk_list PASSED [ 40%] 635s tests/translate/storage/placeables/test_lisa.py::test_set_strelem_to_xml PASSED [ 40%] 635s tests/translate/storage/placeables/test_lisa.py::test_unknown_xml_placeable PASSED [ 40%] 635s tests/translate/storage/placeables/test_terminology.py::TestTerminologyPlaceable::test_simple_terminology PASSED [ 40%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_isfuzzy PASSED [ 40%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_create PASSED [ 40%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_eq PASSED [ 40%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escapes PASSED [ 40%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_difficult_escapes PASSED [ 40%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_note_sanity PASSED [ 40%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_target PASSED [ 40%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_get PASSED [ 40%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_set PASSED [ 40%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline PASSED [ 40%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quotes_with_newline PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline_in_xml PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_twitter PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quote PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_question PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_double_space PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_leading_space PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_tailing_space PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_xml_entities PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote_newline PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_arrows PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link_and_text PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_blank_string PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_escape_message_with_newline PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_invalid_lang PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_quote PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_leading_space PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_trailing_space PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_with_ampersand PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_double_space PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_deep_double_space PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_complex_xml PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quoted_newlines PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline_in_xml PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_twitter PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_question PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quote PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_space PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_space PASSED [ 41%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_newlines PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_xml_entities PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_code PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_arrows PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link_and_text PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_space PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_spaces PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_escaped_newline PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_escaped_newline PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_spaces PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_newline PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_many_quotes PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string_again PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_quotes_string PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_newline_in_string PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_not_translatable_string PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_newline PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_comments PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_quote PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space_quoted PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space_quoted PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_with_ampersand PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_double_space_quoted PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_deep_double_space_quoted PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_complex_xml PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unicode PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_unescaped PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_alone PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_full PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_escaped_percent PASSED [ 42%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_percent PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_quote PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unparied_quote PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_slash PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escape_ignored PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_escaped_quote_end PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_create_blank PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_remove PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_find PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_parse PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_files PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_save PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_extensions PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_mimetypes PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translate PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_nonascii PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_default_handlings PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_invalid_filename PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_namespaces PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_serialize PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add_formatting PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_invalid_entity PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_indent PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_markup PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_edit PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_noedit PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_remove PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_set PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_others PASSED [ 43%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_quotes_set PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_g PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_namespace PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_zh_hk PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_b_zh_hk PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_missing_plural PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_removeunit PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata_text PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_prefix PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_rtl PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_tail PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translatable_marking PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_escaping PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_isfuzzy PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_create PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_eq PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_escapes PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_difficult_escapes PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_note_sanity PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_target PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_get PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_set PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_create_blank PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_add PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_remove PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_find PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_parse PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_files PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_save PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_extensions PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_mimetypes PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_translate PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_markup PASSED [ 44%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_nonascii PASSED [ 45%] 635s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_plural PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationUnit::test_isfuzzy PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationUnit::test_create PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationUnit::test_eq PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationUnit::test_target PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationUnit::test_escapes PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationUnit::test_difficult_escapes PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationUnit::test_note_sanity PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_get PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_set PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationStore::test_create_blank PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationStore::test_add PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationStore::test_remove PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationStore::test_find PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationStore::test_translate PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationStore::test_parse PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationStore::test_files PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationStore::test_save PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationStore::test_markup PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationStore::test_nonascii PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationStore::test_extensions PASSED [ 45%] 635s tests/translate/storage/test_base.py::TestTranslationStore::test_mimetypes PASSED [ 45%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_isfuzzy PASSED [ 45%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_create PASSED [ 45%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_eq PASSED [ 45%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_target PASSED [ 45%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_escapes PASSED [ 45%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_get PASSED [ 45%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_set PASSED [ 45%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_difficult_escapes PASSED [ 45%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_newlines PASSED [ 45%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_istranslated PASSED [ 45%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_note_sanity PASSED [ 45%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_create_blank PASSED [ 46%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_add PASSED [ 46%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_remove PASSED [ 46%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_find PASSED [ 46%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_translate PASSED [ 46%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_parse PASSED [ 46%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_files PASSED [ 46%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_save PASSED [ 46%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_markup PASSED [ 46%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_nonascii PASSED [ 46%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_extensions PASSED [ 46%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_mimetypes PASSED [ 46%] 635s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_checksum PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_isfuzzy PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_create PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_eq PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_target PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_escapes PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_difficult_escapes PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_note_sanity PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_get PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_set PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_create_blank PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_add PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_remove PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_find PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_translate PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_files PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_save PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_markup PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_nonascii PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_extensions PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_mimetypes PASSED [ 46%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_singlequoting PASSED [ 47%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8 PASSED [ 47%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_dialect PASSED [ 47%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_sig PASSED [ 47%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_default PASSED [ 47%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_location_is_parsed PASSED [ 47%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_context_is_parsed PASSED [ 47%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_newline PASSED [ 47%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse_sample PASSED [ 47%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_detection PASSED [ 47%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding PASSED [ 47%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_corrupt PASSED [ 47%] 635s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding_save PASSED [ 47%] 635s tests/translate/storage/test_directory.py::TestDirectory::test_created PASSED [ 47%] 635s tests/translate/storage/test_directory.py::TestDirectory::test_basic PASSED [ 47%] 635s tests/translate/storage/test_directory.py::TestDirectory::test_structure PASSED [ 47%] 635s tests/translate/storage/test_directory.py::TestDirectory::test_getunits PASSED [ 47%] 635s tests/translate/storage/test_dtd.py::test_roundtrip_quoting PASSED [ 47%] 635s tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases XFAIL [ 47%] 635s tests/translate/storage/test_dtd.py::test_quotefordtd PASSED [ 47%] 635s tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases XFAIL [ 47%] 635s tests/translate/storage/test_dtd.py::test_unquotefromdtd PASSED [ 47%] 635s tests/translate/storage/test_dtd.py::test_android_roundtrip_quoting PASSED [ 47%] 635s tests/translate/storage/test_dtd.py::test_quoteforandroid PASSED [ 47%] 635s tests/translate/storage/test_dtd.py::test_unquotefromandroid PASSED [ 47%] 635s tests/translate/storage/test_dtd.py::test_removeinvalidamp PASSED [ 47%] 635s tests/translate/storage/test_dtd.py::TestDTDUnit::test_isfuzzy PASSED [ 47%] 635s tests/translate/storage/test_dtd.py::TestDTDUnit::test_create PASSED [ 47%] 635s tests/translate/storage/test_dtd.py::TestDTDUnit::test_eq PASSED [ 47%] 635s tests/translate/storage/test_dtd.py::TestDTDUnit::test_escapes PASSED [ 47%] 635s tests/translate/storage/test_dtd.py::TestDTDUnit::test_difficult_escapes PASSED [ 47%] 635s tests/translate/storage/test_dtd.py::TestDTDUnit::test_note_sanity PASSED [ 47%] 635s tests/translate/storage/test_dtd.py::TestDTDUnit::test_target PASSED [ 47%] 635s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_get PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_set PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_create_blank PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_add PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_remove PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_find PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_parse PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_files PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_save PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_extensions PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_mimetypes PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_translate PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_markup PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_nonascii PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_blanklines PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity_source PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_hashcomment_source PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_commentclosing PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_commententity PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_newlines_in_entity PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_conflate_comments PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_localisation_notes PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_in_source PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_order_in_source PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_comment_following XFAIL [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_comment_newline_space_closing PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting XFAIL [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_missing_quotes PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping_roundtrip PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_create_blank PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_add PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_remove PASSED [ 48%] 635s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_find PASSED [ 49%] 635s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_parse PASSED [ 49%] 635s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_files PASSED [ 49%] 635s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_save PASSED [ 49%] 635s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_extensions PASSED [ 49%] 635s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_mimetypes PASSED [ 49%] 635s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_translate PASSED [ 49%] 635s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_markup PASSED [ 49%] 635s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_nonascii PASSED [ 49%] 635s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape PASSED [ 49%] 635s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape_parse_and_convert_back PASSED [ 49%] 635s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape PASSED [ 49%] 635s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape_parse_and_convert_back PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestPOFactory::test_getclass PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject_store PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestPOFactory::test_get_noname_object PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestPOFactory::test_gzfile PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestPOFactory::test_bz2file PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestPOFactory::test_directory PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestXliffFactory::test_getclass PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject_store PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestXliffFactory::test_get_noname_object PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestXliffFactory::test_gzfile PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestXliffFactory::test_bz2file PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestXliffFactory::test_directory PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getclass PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject_store PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_get_noname_object PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_gzfile PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_bz2file PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_directory PASSED [ 49%] 635s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getclass PASSED [ 50%] 635s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject_store PASSED [ 50%] 635s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject PASSED [ 50%] 635s tests/translate/storage/test_factory.py::TestWordfastFactory::test_get_noname_object PASSED [ 50%] 635s tests/translate/storage/test_factory.py::TestWordfastFactory::test_gzfile PASSED [ 50%] 635s tests/translate/storage/test_factory.py::TestWordfastFactory::test_bz2file PASSED [ 50%] 635s tests/translate/storage/test_factory.py::TestWordfastFactory::test_directory PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_isfuzzy PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_create PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_eq PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_escapes PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_difficult_escapes PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_note_sanity PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_target PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_get PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_set PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_create_blank PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_add PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_remove PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_find PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_parse PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_files PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_save PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_extensions PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_mimetypes PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_translate PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_markup PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_nonascii PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_root_config_detect PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_detect PASSED [ 50%] 635s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_key_config_detect PASSED [ 50%] 636s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_mixed_ok PASSED [ 50%] 636s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_namespace_config_detect PASSED [ 50%] 636s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_four_spaces PASSED [ 50%] 636s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_tab PASSED [ 51%] 636s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_none_linearizes PASSED [ 51%] 636s tests/translate/storage/test_html.py::test_guess_encoding PASSED [ 51%] 636s tests/translate/storage/test_html.py::TestHTMLParsing::test_mismatched_tags PASSED [ 51%] 636s tests/translate/storage/test_html.py::TestHTMLParsing::test_self_closing_tags PASSED [ 51%] 636s tests/translate/storage/test_html.py::TestHTMLParsing::test_escaping_script_and_pre PASSED [ 51%] 636s tests/translate/storage/test_html.py::TestHTMLExtraction::test_strip_html PASSED [ 51%] 636s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_figcaption PASSED [ 51%] 636s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_caption_td_th PASSED [ 51%] 636s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_alt PASSED [ 51%] 636s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_title PASSED [ 51%] 636s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre PASSED [ 51%] 636s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre_code PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIUnit::test_isfuzzy PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIUnit::test_create PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIUnit::test_eq PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIUnit::test_escapes PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIUnit::test_difficult_escapes PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIUnit::test_note_sanity PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIUnit::test_target PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_get PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_set PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIStore::test_create_blank PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIStore::test_add PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIStore::test_remove PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIStore::test_find PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIStore::test_parse PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIStore::test_files PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIStore::test_save PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIStore::test_extensions PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIStore::test_mimetypes PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIStore::test_translate PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIStore::test_markup PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIStore::test_nonascii PASSED [ 51%] 636s tests/translate/storage/test_ini.py::TestINIStore::test_serialize PASSED [ 52%] 636s tests/translate/storage/test_ini.py::TestINIStore::test_rem PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_isfuzzy PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_create PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_eq PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_escapes PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_difficult_escapes PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_note_sanity PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_target PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_get PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_set PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_create_blank PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_remove PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_find PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_parse PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_files PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_save PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_extensions PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_mimetypes PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_translate PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_markup PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_nonascii PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_serialize PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_can_not_detect PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_error PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_filter PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_ordering PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_args PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_bom PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex_array PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_list_like PASSED [ 52%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_blank PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_types PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_null PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_isfuzzy PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_create PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_eq PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_escapes PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_difficult_escapes PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_note_sanity PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_target PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_get PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_set PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_serialize PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_ordering PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_array PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index_nested PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_nested_list_mixed PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_list_to_dict PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_complex_keys PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_other PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0]-expected0] PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0]-expected1] PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0][1][2][3]-expected2] PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test]selection-expected3] PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test][0]selection-expected4] PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0][test]selection-expected5] PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[-expected6] PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_dot_keys PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_isfuzzy PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_create PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_eq PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_escapes PASSED [ 53%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_difficult_escapes PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_note_sanity PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_target PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_get PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_set PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_create_blank PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_add PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_remove PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_find PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_parse PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_files PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_save PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_extensions PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_mimetypes PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_translate PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_markup PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_nonascii PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_dot_keys PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_leading_dot_keys PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize_no_description PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_set_target PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_placeholders PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_comments PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_create_blank PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_add PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_remove PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_find PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_parse PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_files PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_save PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_extensions PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_mimetypes PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_translate PASSED [ 54%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_markup PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nonascii PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_serialize PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_units PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_plurals PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nested_array PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural_id PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_create_blank PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_add PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_remove PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_find PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_parse PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_files PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_save PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_extensions PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_mimetypes PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_translate PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_markup PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_nonascii PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals_missing PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_case_no_msg PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_complex_id PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_create_blank PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_add PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_remove PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_find PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_parse PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_files PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_save PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_extensions PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_mimetypes PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_translate PASSED [ 55%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_markup PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nonascii PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_serialize PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_units PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_plurals PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nested_array PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_new_plural PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_ru PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_create_blank PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_add PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_remove PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_find PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_parse PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_files PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_save PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_extensions PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_mimetypes PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_translate PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_markup PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nonascii PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_serialize PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_units PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_plurals PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nested_array PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_new_plural PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_ru PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_create_blank PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_add PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_remove PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_find PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_parse PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_files PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_save PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_extensions PASSED [ 56%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_mimetypes PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_translate PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_markup PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_nonascii PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals_missing PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_invalid PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_dot_keys PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_create_blank PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_add PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_remove PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_find PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_parse PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_files PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_save PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_extensions PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_mimetypes PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_translate PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_markup PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_nonascii PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_1 PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_2 PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_blank PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_missing PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_simplification PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_invalid PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_dot_keys PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_create_blank PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_add PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_remove PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_find PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_parse PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_files PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_save PASSED [ 57%] 636s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_extensions PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_mimetypes PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_translate PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_markup PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_nonascii PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_roundtrip PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_leading_dot_keys PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_invalid_nesting PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_create_blank PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_add PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_remove PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_find PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_parse PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_files PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_save PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_extensions PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_mimetypes PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_translate PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_markup PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_nonascii PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_roundtrip PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_leading_dot_keys PASSED [ 58%] 636s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_invalid PASSED [ 58%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_atx_heading PASSED [ 58%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_autolink PASSED [ 58%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_block_quote PASSED [ 58%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_block PASSED [ 58%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_span PASSED [ 58%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_atx_heading PASSED [ 58%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_document PASSED [ 58%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_list_item PASSED [ 58%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_escaped_character PASSED [ 58%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_hard_line_break PASSED [ 58%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_block PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_character_entities PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_span PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_image_embedded_in_link PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_collapsed_reference_link PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_full_reference_link PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_shortcut_reference_link PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_merging_of_adjacent_placeholders PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_block_tokens PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_list PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_basic_markup PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_only_whitespace_and_placeholders PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_placeholder_trimming PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image_no_title PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_link PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_text_paragraph PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_remove_placeholders_from_both_ends_of_translation_units PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_setext_heading PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_table_with_header PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_thematic_break PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_hard_line_break_in_translation_unit PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_missing_placeholder PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_duplicate_placeholder PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_extraneous_placeholder PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_reordered_placeholders PASSED [ 59%] 636s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_invalid_markdown_in_translation PASSED [ 59%] 636s tests/translate/storage/test_mo.py::TestMOUnit::test_isfuzzy PASSED [ 59%] 636s tests/translate/storage/test_mo.py::TestMOUnit::test_create PASSED [ 59%] 636s tests/translate/storage/test_mo.py::TestMOUnit::test_eq PASSED [ 59%] 636s tests/translate/storage/test_mo.py::TestMOUnit::test_target PASSED [ 59%] 636s tests/translate/storage/test_mo.py::TestMOUnit::test_escapes PASSED [ 59%] 636s tests/translate/storage/test_mo.py::TestMOUnit::test_difficult_escapes PASSED [ 59%] 636s tests/translate/storage/test_mo.py::TestMOUnit::test_note_sanity PASSED [ 59%] 636s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_get PASSED [ 60%] 636s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_set PASSED [ 60%] 636s tests/translate/storage/test_mo.py::TestMOUnit::test_context PASSED [ 60%] 636s tests/translate/storage/test_mo.py::TestMOFile::test_create_blank PASSED [ 60%] 636s tests/translate/storage/test_mo.py::TestMOFile::test_add PASSED [ 60%] 636s tests/translate/storage/test_mo.py::TestMOFile::test_remove PASSED [ 60%] 636s tests/translate/storage/test_mo.py::TestMOFile::test_find PASSED [ 60%] 636s tests/translate/storage/test_mo.py::TestMOFile::test_translate PASSED [ 60%] 636s tests/translate/storage/test_mo.py::TestMOFile::test_parse PASSED [ 60%] 636s tests/translate/storage/test_mo.py::TestMOFile::test_files PASSED [ 60%] 636s tests/translate/storage/test_mo.py::TestMOFile::test_save PASSED [ 60%] 636s tests/translate/storage/test_mo.py::TestMOFile::test_markup PASSED [ 60%] 636s tests/translate/storage/test_mo.py::TestMOFile::test_nonascii PASSED [ 60%] 636s tests/translate/storage/test_mo.py::TestMOFile::test_extensions PASSED [ 60%] 636s tests/translate/storage/test_mo.py::TestMOFile::test_mimetypes PASSED [ 60%] 636s tests/translate/storage/test_mo.py::TestMOFile::test_language PASSED [ 60%] 636s tests/translate/storage/test_mo.py::TestMOFile::test_context PASSED [ 60%] 636s tests/translate/storage/test_mo.py::TestMOFile::test_output PASSED [ 60%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_isfuzzy PASSED [ 60%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_create PASSED [ 60%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_eq PASSED [ 60%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_escapes PASSED [ 60%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_difficult_escapes PASSED [ 60%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_note_sanity PASSED [ 60%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_target PASSED [ 60%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_get PASSED [ 60%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_set PASSED [ 60%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_create_blank PASSED [ 60%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_add PASSED [ 60%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_remove PASSED [ 60%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_find PASSED [ 60%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_parse PASSED [ 60%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_files PASSED [ 60%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_save PASSED [ 60%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_extensions PASSED [ 61%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_mimetypes PASSED [ 61%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_translate PASSED [ 61%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_markup PASSED [ 61%] 636s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_nonascii PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[-] PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String-String] PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {OK}-String] PASSED [ 61%] 636s 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%] 636s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{ok}-String] PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{OK}-String] PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok} -String] PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_isfuzzy PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_create PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_eq PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_target PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_escapes PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_difficult_escapes PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_note_sanity PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_get PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_set PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_translate_but_same PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_untranslated PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_comments PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_copy_target PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_create_blank PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_add PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_remove PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_find PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_translate PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_parse PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_files PASSED [ 61%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_save PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_markup PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_extensions PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_mimetypes PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_nonascii PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_format_layout PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_crlf PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_active_flag PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_multiline_comments PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_template PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[--False] PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ -Source -True] PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok}-Source-True] PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok} -Source-True] PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[{ok}-Source-True] PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_headers PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_not_headers PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[0] PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[1] PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[2] PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[3] PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_tag_comments PASSED [ 62%] 636s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_maxlength PASSED [ 62%] 636s tests/translate/storage/test_omegat.py::TestOtUnit::test_isfuzzy PASSED [ 62%] 636s tests/translate/storage/test_omegat.py::TestOtUnit::test_create PASSED [ 62%] 636s tests/translate/storage/test_omegat.py::TestOtUnit::test_eq PASSED [ 62%] 636s tests/translate/storage/test_omegat.py::TestOtUnit::test_target PASSED [ 62%] 636s tests/translate/storage/test_omegat.py::TestOtUnit::test_escapes PASSED [ 62%] 636s tests/translate/storage/test_omegat.py::TestOtUnit::test_difficult_escapes PASSED [ 62%] 636s tests/translate/storage/test_omegat.py::TestOtUnit::test_note_sanity PASSED [ 62%] 636s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_get PASSED [ 62%] 636s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_set PASSED [ 62%] 636s tests/translate/storage/test_omegat.py::TestOtFile::test_create_blank PASSED [ 62%] 636s tests/translate/storage/test_omegat.py::TestOtFile::test_add PASSED [ 62%] 636s tests/translate/storage/test_omegat.py::TestOtFile::test_remove PASSED [ 63%] 636s tests/translate/storage/test_omegat.py::TestOtFile::test_find PASSED [ 63%] 636s tests/translate/storage/test_omegat.py::TestOtFile::test_translate PASSED [ 63%] 636s tests/translate/storage/test_omegat.py::TestOtFile::test_parse PASSED [ 63%] 636s tests/translate/storage/test_omegat.py::TestOtFile::test_files PASSED [ 63%] 636s tests/translate/storage/test_omegat.py::TestOtFile::test_save PASSED [ 63%] 636s tests/translate/storage/test_omegat.py::TestOtFile::test_markup PASSED [ 63%] 636s tests/translate/storage/test_omegat.py::TestOtFile::test_nonascii PASSED [ 63%] 636s tests/translate/storage/test_omegat.py::TestOtFile::test_mimetypes PASSED [ 63%] 636s tests/translate/storage/test_omegat.py::TestOtFile::test_extensions XFAIL [ 63%] 636s tests/translate/storage/test_oo.py::test_makekey PASSED [ 63%] 636s tests/translate/storage/test_oo.py::test_escape_help_text PASSED [ 63%] 636s tests/translate/storage/test_oo.py::TestOO::test_simpleentry PASSED [ 63%] 636s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_quickhelptest PASSED [ 63%] 636s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_title PASSED [ 63%] 636s tests/translate/storage/test_oo.py::TestOO::test_blankline PASSED [ 63%] 636s tests/translate/storage/test_oo.py::TestOO::test_fieldlength PASSED [ 63%] 636s tests/translate/storage/test_oo.py::TestOO::test_escapes PASSED [ 63%] 636s tests/translate/storage/test_php.py::test_php_escaping_single_quote PASSED [ 63%] 636s tests/translate/storage/test_php.py::test_php_escaping_double_quote PASSED [ 63%] 636s tests/translate/storage/test_php.py::TestPhpUnit::test_isfuzzy PASSED [ 63%] 636s tests/translate/storage/test_php.py::TestPhpUnit::test_create PASSED [ 63%] 636s tests/translate/storage/test_php.py::TestPhpUnit::test_eq PASSED [ 63%] 636s tests/translate/storage/test_php.py::TestPhpUnit::test_escapes PASSED [ 63%] 636s tests/translate/storage/test_php.py::TestPhpUnit::test_note_sanity PASSED [ 63%] 636s tests/translate/storage/test_php.py::TestPhpUnit::test_target PASSED [ 63%] 636s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_get PASSED [ 63%] 636s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_set PASSED [ 63%] 636s tests/translate/storage/test_php.py::TestPhpUnit::test_difficult_escapes PASSED [ 63%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_create_blank PASSED [ 63%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_add PASSED [ 63%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_remove PASSED [ 63%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_find PASSED [ 63%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_parse PASSED [ 63%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_files PASSED [ 64%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_save PASSED [ 64%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_extensions PASSED [ 64%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_mimetypes PASSED [ 64%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_translate PASSED [ 64%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_markup PASSED [ 64%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_nonascii PASSED [ 64%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition PASSED [ 64%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_source PASSED [ 64%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_spaces_in_name PASSED [ 64%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_comment_definition PASSED [ 64%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_comment_blocks PASSED [ 64%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_comment_output PASSED [ 64%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_comment_add PASSED [ 64%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_multiline PASSED [ 64%] 636s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_no_array_syntax PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_spaces PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_quotes PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_number_as_value PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_non_textual PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define_with_spaces_before_key PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter_and_before_key PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equal_delimiter PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equaldel_but_before_key PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_entries_with_quotes PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_comments_at_entry_line_end PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_double_slash_comments_before_entries PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_before_end_delimiter PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simpledefinition_spaces_before_end_delimiter PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_no_trailing_comma PASSED [ 64%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_space_before_comma PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_space_before_array_declaration PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_declared_in_a_single_line PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys_assigned_to_array PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_no_keys PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_assignment_in_line_where_multiline_comment_ends PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_using_short_array_syntax PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_space_before_array_declaration PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_unnamed_nested_arrays PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_array_declaration_in_next_line PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_with_newline_after_delimiter PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_blank_entries PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_slashstar_in_string PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_heredoc_syntax PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_after_define PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_quotes PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_concatenation PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_serialize PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_space_before_comma PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_equals_in_id PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_comma_in_string PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_nowdoc PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_plain_concatenation PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_array_keys PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_double_var PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_return_array PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short_quotes PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestPhpFile::test_addunit PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_isfuzzy PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_create PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_eq PASSED [ 65%] 637s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_escapes PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_difficult_escapes PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_note_sanity PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_target PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_get PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_set PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_create_blank PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_add PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_remove PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_find PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_parse PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_files PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_save PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_extensions PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_mimetypes PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_translate PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_markup PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_nonascii PASSED [ 66%] 637s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_plurals PASSED [ 66%] 637s tests/translate/storage/test_po.py::test_roundtrip_quoting PASSED [ 66%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_isfuzzy PASSED [ 66%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_create PASSED [ 66%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_eq PASSED [ 66%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_target PASSED [ 66%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_escapes PASSED [ 66%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_difficult_escapes PASSED [ 66%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_note_sanity PASSED [ 66%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_rich_get PASSED [ 66%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_rich_set PASSED [ 66%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_istranslatable PASSED [ 66%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_locations PASSED [ 66%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_nongettext_location PASSED [ 66%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_adding_empty_note PASSED [ 66%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_markreview PASSED [ 66%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_errors PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_no_plural_settarget PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_wrapping_bug PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_extract_msgidcomments_from_text PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_isheader PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOUnit::test_buildfromunit PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_create_blank PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_add PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_remove PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_find PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_translate PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_parse PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_files PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_save PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_markup PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_nonascii PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_extensions PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_mimetypes PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_context_only PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_simpleentry PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_copy PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_parse_source_string PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_parse_file PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_unicode PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_plurals PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_plural_unicode PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_nongettext_location PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_percent_location PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals XFAIL [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_empty_lines_notes PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_fuzzy PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated XFAIL [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_merging_automaticcomments PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_malformed_units PASSED [ 67%] 637s tests/translate/storage/test_po.py::TestPOFile::test_malformed_obsolete_units PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_uniforum_po PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_obsolete PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_obsolete_with_prev_msgid PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_header_escapes PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_plural PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgctxt PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgidcomments PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_multiline_obsolete PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_merge_duplicates PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_merge_mixed_sources PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_parse_context PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_parse_advanced_context PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_kde_context PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_broken_kde_context PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_id PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments_2 PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_final_slash PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_unfinished_lines PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_encoding_change PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_istranslated PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_wrapping PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_wrapping_cjk PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_wrap_emoji PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis_long PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_wrap_gettext PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_msgidcomments PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_unicode_ids PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_syntax_error PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_invalid PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_wrapped_msgid PASSED [ 68%] 637s tests/translate/storage/test_po.py::TestPOFile::test_missing_plural PASSED [ 69%] 637s tests/translate/storage/test_pocommon.py::test_roundtrip_quote_plus PASSED [ 69%] 637s tests/translate/storage/test_poheader.py::test_parseheaderstring PASSED [ 69%] 637s tests/translate/storage/test_poheader.py::test_update PASSED [ 69%] 637s tests/translate/storage/test_poheader.py::test_po_dates PASSED [ 69%] 637s tests/translate/storage/test_poheader.py::test_timezones PASSED [ 69%] 637s tests/translate/storage/test_poheader.py::test_header_blank PASSED [ 69%] 637s tests/translate/storage/test_poheader.py::test_plural_equation PASSED [ 69%] 637s tests/translate/storage/test_poheader.py::test_plural_equation_across_lines PASSED [ 69%] 637s tests/translate/storage/test_poheader.py::test_updatecontributor PASSED [ 69%] 637s tests/translate/storage/test_poheader.py::test_updatecontributor_header PASSED [ 69%] 637s tests/translate/storage/test_poheader.py::test_language PASSED [ 69%] 637s tests/translate/storage/test_poheader.py::test_project PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_isfuzzy PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_create PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_eq PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_target PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_escapes PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_difficult_escapes PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_note_sanity PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_get PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_set PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_markreview PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_errors PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_accepted_control_chars PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_unaccepted_control_chars PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_plurals PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_ids PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_create_blank PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_remove PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_find PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_translate PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_files PASSED [ 69%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_save PASSED [ 70%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_markup PASSED [ 70%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_nonascii PASSED [ 70%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_extensions PASSED [ 70%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_mimetypes PASSED [ 70%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_basic PASSED [ 70%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_namespace PASSED [ 70%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_source PASSED [ 70%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_target PASSED [ 70%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_source PASSED [ 70%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_target PASSED [ 70%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_sourcelanguage PASSED [ 70%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage PASSED [ 70%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage_multi PASSED [ 70%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_alttrans PASSED [ 70%] 637s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_fuzzy PASSED [ 70%] 638s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_xml_space PASSED [ 70%] 638s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parsing PASSED [ 70%] 638s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_entities PASSED [ 70%] 638s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_multiple_filenodes PASSED [ 70%] 638s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_indent PASSED [ 70%] 638s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add_target PASSED [ 70%] 638s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve PASSED [ 70%] 638s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_closing_tags PASSED [ 70%] 638s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_context_groups PASSED [ 70%] 638s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_getlocations PASSED [ 70%] 638s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_addlocation PASSED [ 70%] 638s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_huge PASSED [ 70%] 638s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve_add PASSED [ 70%] 638s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse PASSED [ 70%] 638s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse_plural_alpha_id PASSED [ 70%] 638s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_notes PASSED [ 70%] 638s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_plural PASSED [ 70%] 638s tests/translate/storage/test_properties.py::test_find_delimiter_pos_simple PASSED [ 71%] 638s tests/translate/storage/test_properties.py::test_find_delimiter_pos_multiple PASSED [ 71%] 638s tests/translate/storage/test_properties.py::test_find_delimiter_pos_none PASSED [ 71%] 638s tests/translate/storage/test_properties.py::test_find_delimiter_pos_whitespace PASSED [ 71%] 638s tests/translate/storage/test_properties.py::test_find_delimiter_pos_escapes PASSED [ 71%] 638s tests/translate/storage/test_properties.py::test_is_line_continuation PASSED [ 71%] 638s tests/translate/storage/test_properties.py::test_key_strip PASSED [ 71%] 638s tests/translate/storage/test_properties.py::test_get_comment_one_line PASSED [ 71%] 638s tests/translate/storage/test_properties.py::test_get_comment_start PASSED [ 71%] 638s tests/translate/storage/test_properties.py::test_get_comment_end PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestPropUnit::test_isfuzzy PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestPropUnit::test_create PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestPropUnit::test_eq PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestPropUnit::test_escapes PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestPropUnit::test_difficult_escapes PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestPropUnit::test_note_sanity PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestPropUnit::test_target PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_get PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_set PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_create_blank PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_add PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_remove PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_find PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_parse PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_files PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_save PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_extensions PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_mimetypes PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_translate PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_markup PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_nonascii PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_quotes PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_simpledefinition PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition PASSED [ 71%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition_source PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_reduce PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_increase PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_extra_plurals PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_non_plurals PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_encoding PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestGwtProp::test_other_plurals PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestProp::test_create_blank PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestProp::test_add PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestProp::test_remove PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestProp::test_find PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestProp::test_parse PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestProp::test_files PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestProp::test_save PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestProp::test_extensions PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestProp::test_mimetypes PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestProp::test_translate PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestProp::test_markup PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestProp::test_nonascii PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition PASSED [ 72%] 638s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition_source PASSED [ 72%] 639s tests/translate/storage/test_properties.py::TestProp::test_controlutf8_source PASSED [ 72%] 639s tests/translate/storage/test_properties.py::TestProp::test_control_source PASSED [ 72%] 639s tests/translate/storage/test_properties.py::TestProp::test_unicode_escaping PASSED [ 72%] 639s tests/translate/storage/test_properties.py::TestProp::test_newlines_startend PASSED [ 72%] 639s tests/translate/storage/test_properties.py::TestProp::test_space PASSED [ 72%] 639s tests/translate/storage/test_properties.py::TestProp::test_whitespace_handling PASSED [ 72%] 639s tests/translate/storage/test_properties.py::TestProp::test_key_value_delimiters_simple PASSED [ 72%] 639s tests/translate/storage/test_properties.py::TestProp::test_comments PASSED [ 72%] 639s tests/translate/storage/test_properties.py::TestProp::test_latin1 PASSED [ 72%] 639s tests/translate/storage/test_properties.py::TestProp::test_fullspec_delimiters PASSED [ 72%] 639s tests/translate/storage/test_properties.py::TestProp::test_fullspec_escaped_key PASSED [ 72%] 639s tests/translate/storage/test_properties.py::TestProp::test_fullspec_line_continuation PASSED [ 72%] 639s tests/translate/storage/test_properties.py::TestProp::test_fullspec_key_without_value PASSED [ 72%] 639s tests/translate/storage/test_properties.py::TestProp::test_mac_strings PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_utf_16_save PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_mac_multiline_strings PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_unicode PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_utf8 PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_newlines PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_multilines_comments PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments_dropping PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_quotes PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_equals PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_serialization PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_double_backslashes PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_override_encoding PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_trailing_comments PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_utf16_byte_order_mark PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_raise_ioerror_if_cannot_detect_encoding PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_utf8_byte_order_mark PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_joomla_set_target PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_joomla PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_joomla_escape PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_delimiter PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_value PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_multi_comments PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_serialize_note PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_serialize_long_note PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestProp::test_trailing_newlines PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_create_blank PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_add PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_remove PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_find PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_parse PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_files PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_save PASSED [ 73%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_extensions PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_mimetypes PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_translate PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_markup PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_nonascii PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_simpledefinition PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition_source PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote_and_argument PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_header_preserved PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_blank_line_before_comment_preserved PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWiki::test_deprecated_comments_preserved PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_create_blank PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_add PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_remove PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_find PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_parse PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_files PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_save PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_extensions PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_mimetypes PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_markup PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_nonascii PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_simpledefinition PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition_source PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote_and_argument PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_encoded_html PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_cleaning_attributes PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate_source PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_create_blank PASSED [ 74%] 639s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_add PASSED [ 75%] 639s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_find PASSED [ 75%] 639s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_extensions PASSED [ 75%] 639s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_mimetypes PASSED [ 75%] 639s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_translate PASSED [ 75%] 639s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_markup PASSED [ 75%] 639s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_nonascii PASSED [ 75%] 639s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_simpledefinition PASSED [ 75%] 639s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_parse PASSED [ 75%] 639s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_files PASSED [ 75%] 639s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_save PASSED [ 75%] 639s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_cleaning_attributes PASSED [ 75%] 639s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove XFAIL [ 75%] 639s tests/translate/storage/test_pypo.py::TestHelpers::test_unescape PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo_escaped_quotes PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isfuzzy PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_create PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_eq PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_target PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_escapes PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_difficult_escapes PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_note_sanity PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_get PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_set PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_istranslatable PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_locations PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_nongettext_location PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_adding_empty_note PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_markreview PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_errors PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_no_plural_settarget PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrapping_bug PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_extract_msgidcomments_from_text PASSED [ 75%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isheader PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_buildfromunit PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plurals PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plural_reduction PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes_withcomments PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_firstlines PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_newlines PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_max_line_length PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_slash PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_spacing_max_line PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_create_blank PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_add PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_remove PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_find PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_translate PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_files PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_save PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_markup PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nonascii PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_extensions PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mimetypes PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_context_only PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_simpleentry PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_copy PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_source_string PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_file PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plurals PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plural_unicode PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nongettext_location PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_percent_location PASSED [ 76%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals XFAIL [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_empty_lines_notes PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_fuzzy PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated XFAIL [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merging_automaticcomments PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_units PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_obsolete_units PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_uniforum_po PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete_with_prev_msgid PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_header_escapes PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_plural PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgctxt PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgidcomments PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_multiline_obsolete PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_mixed_sources PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_context PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_advanced_context PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_context PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_broken_kde_context PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_id PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments_2 PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_final_slash PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unfinished_lines PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_encoding_change PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_istranslated PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping_cjk PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_emoji PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis_long PASSED [ 77%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_gettext PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_msgidcomments PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_ids PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_syntax_error PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapped_msgid PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_missing_plural PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_combine_msgidcomments PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates_msgctxt PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_blanks PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_output_str_unicode PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_posections PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_typecomments PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unassociated_comments PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_header PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_prevmsgid_parse PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_newlines PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unix_newlines PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mac_newlines PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_header PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_comment PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_bom PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_long_msgidcomments PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_incomplete PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_invalid PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_write PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment XFAIL [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_typecomment PASSED [ 78%] 639s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_custom PASSED [ 78%] 639s tests/translate/storage/test_qm.py::TestQtUnit::test_isfuzzy PASSED [ 78%] 639s tests/translate/storage/test_qm.py::TestQtUnit::test_create PASSED [ 78%] 639s tests/translate/storage/test_qm.py::TestQtUnit::test_eq PASSED [ 78%] 639s tests/translate/storage/test_qm.py::TestQtUnit::test_target PASSED [ 79%] 639s tests/translate/storage/test_qm.py::TestQtUnit::test_escapes PASSED [ 79%] 639s tests/translate/storage/test_qm.py::TestQtUnit::test_difficult_escapes PASSED [ 79%] 639s tests/translate/storage/test_qm.py::TestQtUnit::test_note_sanity PASSED [ 79%] 639s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_get PASSED [ 79%] 639s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_set PASSED [ 79%] 639s tests/translate/storage/test_qm.py::TestQtFile::test_create_blank PASSED [ 79%] 639s tests/translate/storage/test_qm.py::TestQtFile::test_find PASSED [ 79%] 639s tests/translate/storage/test_qm.py::TestQtFile::test_translate PASSED [ 79%] 639s tests/translate/storage/test_qm.py::TestQtFile::test_markup PASSED [ 79%] 639s tests/translate/storage/test_qm.py::TestQtFile::test_extensions PASSED [ 79%] 639s tests/translate/storage/test_qm.py::TestQtFile::test_mimetypes PASSED [ 79%] 639s tests/translate/storage/test_qm.py::TestQtFile::test_parse PASSED [ 79%] 639s tests/translate/storage/test_qm.py::TestQtFile::test_save PASSED [ 79%] 639s tests/translate/storage/test_qm.py::TestQtFile::test_files PASSED [ 79%] 639s tests/translate/storage/test_qm.py::TestQtFile::test_nonascii PASSED [ 79%] 639s tests/translate/storage/test_qm.py::TestQtFile::test_add PASSED [ 79%] 639s tests/translate/storage/test_qm.py::TestQtFile::test_remove PASSED [ 79%] 639s tests/translate/storage/test_qph.py::TestQphUnit::test_isfuzzy PASSED [ 79%] 639s tests/translate/storage/test_qph.py::TestQphUnit::test_create PASSED [ 79%] 639s tests/translate/storage/test_qph.py::TestQphUnit::test_eq PASSED [ 79%] 639s tests/translate/storage/test_qph.py::TestQphUnit::test_target PASSED [ 79%] 639s tests/translate/storage/test_qph.py::TestQphUnit::test_escapes PASSED [ 79%] 639s tests/translate/storage/test_qph.py::TestQphUnit::test_difficult_escapes PASSED [ 79%] 639s tests/translate/storage/test_qph.py::TestQphUnit::test_note_sanity PASSED [ 79%] 639s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_get PASSED [ 79%] 639s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_set PASSED [ 79%] 639s tests/translate/storage/test_qph.py::TestQphFile::test_create_blank PASSED [ 79%] 639s tests/translate/storage/test_qph.py::TestQphFile::test_add PASSED [ 79%] 639s tests/translate/storage/test_qph.py::TestQphFile::test_remove PASSED [ 79%] 639s tests/translate/storage/test_qph.py::TestQphFile::test_find PASSED [ 79%] 639s tests/translate/storage/test_qph.py::TestQphFile::test_translate PASSED [ 79%] 639s tests/translate/storage/test_qph.py::TestQphFile::test_parse PASSED [ 79%] 639s tests/translate/storage/test_qph.py::TestQphFile::test_files PASSED [ 79%] 639s tests/translate/storage/test_qph.py::TestQphFile::test_save PASSED [ 80%] 639s tests/translate/storage/test_qph.py::TestQphFile::test_markup PASSED [ 80%] 639s tests/translate/storage/test_qph.py::TestQphFile::test_nonascii PASSED [ 80%] 639s tests/translate/storage/test_qph.py::TestQphFile::test_extensions PASSED [ 80%] 639s tests/translate/storage/test_qph.py::TestQphFile::test_mimetypes PASSED [ 80%] 639s tests/translate/storage/test_qph.py::TestQphFile::test_basic PASSED [ 80%] 639s tests/translate/storage/test_qph.py::TestQphFile::test_source PASSED [ 80%] 639s tests/translate/storage/test_qph.py::TestQphFile::test_target PASSED [ 80%] 639s tests/translate/storage/test_qph.py::TestQphFile::test_language PASSED [ 80%] 639s tests/translate/storage/test_rc.py::test_escaping PASSED [ 80%] 639s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_comments PASSED [ 80%] 639s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_textinclude PASSED [ 80%] 639s tests/translate/storage/test_rc.py::TestRcFile::test_parse_dialog PASSED [ 80%] 639s tests/translate/storage/test_rc.py::TestRcFile::test_parse_stringtable PASSED [ 80%] 639s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_lf PASSED [ 80%] 639s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_crlf PASSED [ 80%] 639s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_cr PASSED [ 80%] 639s tests/translate/storage/test_rc.py::TestRcFile::test_parse_no_language PASSED [ 80%] 639s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude PASSED [ 80%] 640s tests/translate/storage/test_rc.py::TestRcFile::test_multiline PASSED [ 80%] 640s tests/translate/storage/test_rc.py::TestRcFile::test_str PASSED [ 80%] 640s tests/translate/storage/test_rc.py::TestRcFile::test_empty PASSED [ 80%] 640s tests/translate/storage/test_rc.py::TestRcFile::test_utf_8 PASSED [ 80%] 640s tests/translate/storage/test_rc.py::TestRcFile::test_utf_16 PASSED [ 80%] 640s tests/translate/storage/test_rc.py::TestRcFile::test_comment PASSED [ 80%] 640s tests/translate/storage/test_rc.py::TestRcFile::test_stringtables PASSED [ 80%] 640s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude_appstudio PASSED [ 80%] 640s tests/translate/storage/test_rc.py::TestRcFile::test_id_whitespace PASSED [ 80%] 640s tests/translate/storage/test_rc.py::TestRcFile::test_menu_comment PASSED [ 80%] 640s tests/translate/storage/test_rc.py::TestRcFile::test_decompiled PASSED [ 80%] 640s tests/translate/storage/test_rc.py::TestRcFile::test_quotes PASSED [ 80%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_isfuzzy PASSED [ 80%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_create PASSED [ 80%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_eq PASSED [ 80%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_escapes PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_difficult_escapes PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_note_sanity PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_target PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_get PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_set PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_create_blank PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_add PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_remove PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_find PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_parse PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_files PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_save PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_extensions PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_mimetypes PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_translate PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_markup PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_nonascii PASSED [ 81%] 640s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_roundtrip PASSED [ 81%] 640s tests/translate/storage/test_resx.py::TestRESXUnit::test_isfuzzy PASSED [ 81%] 640s tests/translate/storage/test_resx.py::TestRESXUnit::test_create PASSED [ 81%] 640s tests/translate/storage/test_resx.py::TestRESXUnit::test_eq PASSED [ 81%] 640s tests/translate/storage/test_resx.py::TestRESXUnit::test_escapes PASSED [ 81%] 640s tests/translate/storage/test_resx.py::TestRESXUnit::test_difficult_escapes PASSED [ 81%] 640s tests/translate/storage/test_resx.py::TestRESXUnit::test_note_sanity PASSED [ 81%] 640s tests/translate/storage/test_resx.py::TestRESXUnit::test_target PASSED [ 81%] 640s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_get PASSED [ 81%] 640s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_set PASSED [ 81%] 640s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_isfuzzy PASSED [ 81%] 640s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_create PASSED [ 81%] 640s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_eq PASSED [ 81%] 640s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_escapes PASSED [ 81%] 640s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_difficult_escapes PASSED [ 81%] 640s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_note_sanity PASSED [ 81%] 640s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_target PASSED [ 82%] 640s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_get PASSED [ 82%] 640s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_set PASSED [ 82%] 640s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit PASSED [ 82%] 640s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit_comment PASSED [ 82%] 640s tests/translate/storage/test_resx.py::TestRESXfile::test_create_blank PASSED [ 82%] 640s tests/translate/storage/test_resx.py::TestRESXfile::test_add PASSED [ 82%] 640s tests/translate/storage/test_resx.py::TestRESXfile::test_remove PASSED [ 82%] 640s tests/translate/storage/test_resx.py::TestRESXfile::test_find PASSED [ 82%] 640s tests/translate/storage/test_resx.py::TestRESXfile::test_parse PASSED [ 82%] 640s tests/translate/storage/test_resx.py::TestRESXfile::test_files PASSED [ 82%] 640s tests/translate/storage/test_resx.py::TestRESXfile::test_save PASSED [ 82%] 640s tests/translate/storage/test_resx.py::TestRESXfile::test_extensions PASSED [ 82%] 640s tests/translate/storage/test_resx.py::TestRESXfile::test_mimetypes PASSED [ 82%] 640s tests/translate/storage/test_resx.py::TestRESXfile::test_translate PASSED [ 82%] 640s tests/translate/storage/test_resx.py::TestRESXfile::test_markup PASSED [ 82%] 640s tests/translate/storage/test_resx.py::TestRESXfile::test_nonascii PASSED [ 82%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_isfuzzy PASSED [ 82%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_create PASSED [ 82%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq PASSED [ 82%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_escapes PASSED [ 82%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_difficult_escapes PASSED [ 82%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_note_sanity PASSED [ 82%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_target PASSED [ 82%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_get PASSED [ 82%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_set PASSED [ 82%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_source PASSED [ 82%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq_formatvaluetype PASSED [ 82%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_innerkey PASSED [ 82%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_create_blank PASSED [ 82%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add PASSED [ 82%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_remove PASSED [ 82%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_find PASSED [ 82%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_parse PASSED [ 83%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_files PASSED [ 83%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_save PASSED [ 83%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_extensions PASSED [ 83%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_mimetypes PASSED [ 83%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_translate PASSED [ 83%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_markup PASSED [ 83%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_nonascii PASSED [ 83%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_serialize PASSED [ 83%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_default_handlings PASSED [ 83%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename PASSED [ 83%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_base_filename PASSED [ 83%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 83%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_plural_zero_always_set PASSED [ 83%] 640s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add_unit PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_create_blank PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_add PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_remove PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_find PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_parse PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_files PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_save PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_extensions PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_mimetypes PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_translate PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_markup PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_nonascii PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_ordering PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_create_blank PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_add PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_remove PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_find PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_parse PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_files PASSED [ 83%] 640s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_save PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_extensions PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_mimetypes PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_translate PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_markup PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_nonascii PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_ordering PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity XFAIL [ 84%] 640s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_create_blank PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_add PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_remove PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_find PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_parse PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_files PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_save PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_extensions PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_mimetypes PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_translate PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_markup PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_nonascii PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_ordering PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_create_blank PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_add PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_remove PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_find PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_parse PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_files PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_save PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_extensions PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_mimetypes PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_translate PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_markup PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_nonascii PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_ordering PASSED [ 84%] 640s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_create_blank PASSED [ 85%] 640s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_add PASSED [ 85%] 640s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_remove PASSED [ 85%] 640s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_find PASSED [ 85%] 640s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_parse PASSED [ 85%] 640s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_files PASSED [ 85%] 640s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_save PASSED [ 85%] 640s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_extensions PASSED [ 85%] 640s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_mimetypes PASSED [ 85%] 640s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_translate PASSED [ 85%] 640s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_markup PASSED [ 85%] 640s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_nonascii PASSED [ 85%] 640s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_ordering PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXUnit::test_isfuzzy PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXUnit::test_create PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXUnit::test_eq PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXUnit::test_target PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXUnit::test_escapes PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXUnit::test_difficult_escapes PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXUnit::test_note_sanity PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_get PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_set PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_create_blank PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_add PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_remove PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_find PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_translate PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_parse PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_files PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_save PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_markup PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_nonascii PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_extensions PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_mimetypes PASSED [ 85%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_basic PASSED [ 86%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_source PASSED [ 86%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_target PASSED [ 86%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_setid PASSED [ 86%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_indent PASSED [ 86%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_descrip PASSED [ 86%] 640s tests/translate/storage/test_tbx.py::TestTBXfile::test_note_from PASSED [ 86%] 640s tests/translate/storage/test_tiki.py::TestTikiUnit::test_locations PASSED [ 86%] 640s tests/translate/storage/test_tiki.py::TestTikiUnit::test_to_unicode PASSED [ 86%] 640s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_simple PASSED [ 86%] 640s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_encode PASSED [ 86%] 640s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_locations PASSED [ 86%] 640s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_ignore_extras PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnit::test_isfuzzy PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnit::test_create PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnit::test_eq PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnit::test_target PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnit::test_escapes PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnit::test_difficult_escapes PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnit::test_note_sanity PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_get PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_set PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_isfuzzy PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_create PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_eq PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_target PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_escapes PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_difficult_escapes PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_note_sanity PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_get PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_set PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXfile::test_create_blank PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXfile::test_add PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXfile::test_remove PASSED [ 86%] 640s tests/translate/storage/test_tmx.py::TestTMXfile::test_find PASSED [ 87%] 640s tests/translate/storage/test_tmx.py::TestTMXfile::test_parse PASSED [ 87%] 640s tests/translate/storage/test_tmx.py::TestTMXfile::test_files PASSED [ 87%] 640s tests/translate/storage/test_tmx.py::TestTMXfile::test_save PASSED [ 87%] 640s tests/translate/storage/test_tmx.py::TestTMXfile::test_markup PASSED [ 87%] 640s tests/translate/storage/test_tmx.py::TestTMXfile::test_nonascii PASSED [ 87%] 640s tests/translate/storage/test_tmx.py::TestTMXfile::test_extensions PASSED [ 87%] 640s tests/translate/storage/test_tmx.py::TestTMXfile::test_mimetypes PASSED [ 87%] 640s tests/translate/storage/test_tmx.py::TestTMXfile::test_translate PASSED [ 87%] 640s tests/translate/storage/test_tmx.py::TestTMXfile::test_addtranslation PASSED [ 87%] 640s tests/translate/storage/test_tmx.py::TestTMXfile::test_withcomment PASSED [ 87%] 640s tests/translate/storage/test_tmx.py::TestTMXfile::test_withnewlines PASSED [ 87%] 640s tests/translate/storage/test_tmx.py::TestTMXfile::test_xmlentities PASSED [ 87%] 640s tests/translate/storage/test_tmx.py::TestTMXfile::test_controls_cleaning PASSED [ 87%] 640s tests/translate/storage/test_trados.py::test_unescape PASSED [ 87%] 640s tests/translate/storage/test_trados.py::test_escape PASSED [ 87%] 640s tests/translate/storage/test_ts.py::TestTS::test_construct PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSUnit::test_isfuzzy PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSUnit::test_create PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSUnit::test_eq PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSUnit::test_target PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSUnit::test_escapes PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSUnit::test_difficult_escapes PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSUnit::test_note_sanity PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_get PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_set PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_create_blank PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_add PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_remove PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_find PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_translate PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_parse PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_files PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_save PASSED [ 87%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_markup PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_nonascii PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_extensions PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_mimetypes PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_basic PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_source PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_target PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_plurals PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_nplural PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_language PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_edit PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_obsolete PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_locations PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_merge_with_fuzzies PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_getid PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_backnforth PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_context PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_roundtrip_context PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_edit_missing_translation PASSED [ 88%] 640s tests/translate/storage/test_ts2.py::TestTSfile::test_missing_source PASSED [ 88%] 640s tests/translate/storage/test_txt.py::TestTxtUnit::test_isfuzzy PASSED [ 88%] 640s tests/translate/storage/test_txt.py::TestTxtUnit::test_create PASSED [ 88%] 640s tests/translate/storage/test_txt.py::TestTxtUnit::test_eq PASSED [ 88%] 640s tests/translate/storage/test_txt.py::TestTxtUnit::test_escapes PASSED [ 88%] 640s tests/translate/storage/test_txt.py::TestTxtUnit::test_difficult_escapes PASSED [ 88%] 640s tests/translate/storage/test_txt.py::TestTxtUnit::test_note_sanity PASSED [ 88%] 640s tests/translate/storage/test_txt.py::TestTxtUnit::test_target PASSED [ 88%] 640s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_get PASSED [ 88%] 640s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_set PASSED [ 88%] 640s tests/translate/storage/test_txt.py::TestTxtFile::test_create_blank PASSED [ 88%] 640s tests/translate/storage/test_txt.py::TestTxtFile::test_add PASSED [ 88%] 640s tests/translate/storage/test_txt.py::TestTxtFile::test_remove PASSED [ 88%] 640s tests/translate/storage/test_txt.py::TestTxtFile::test_find PASSED [ 88%] 640s tests/translate/storage/test_txt.py::TestTxtFile::test_parse PASSED [ 89%] 640s tests/translate/storage/test_txt.py::TestTxtFile::test_files PASSED [ 89%] 640s tests/translate/storage/test_txt.py::TestTxtFile::test_save PASSED [ 89%] 640s tests/translate/storage/test_txt.py::TestTxtFile::test_extensions PASSED [ 89%] 640s tests/translate/storage/test_txt.py::TestTxtFile::test_mimetypes PASSED [ 89%] 640s tests/translate/storage/test_txt.py::TestTxtFile::test_translate PASSED [ 89%] 640s tests/translate/storage/test_txt.py::TestTxtFile::test_markup PASSED [ 89%] 640s tests/translate/storage/test_txt.py::TestTxtFile::test_nonascii PASSED [ 89%] 640s tests/translate/storage/test_txt.py::TestTxtFile::test_simpleblock PASSED [ 89%] 640s tests/translate/storage/test_txt.py::TestTxtFile::test_multipleblocks PASSED [ 89%] 640s tests/translate/storage/test_txt.py::TestTxtFile::test_no_segmentation PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxUnit::test_isfuzzy PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxUnit::test_create PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxUnit::test_eq PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxUnit::test_target PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxUnit::test_escapes PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxUnit::test_difficult_escapes PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxUnit::test_note_sanity PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_get PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_set PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxFile::test_create_blank PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxFile::test_add PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxFile::test_remove PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxFile::test_find PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxFile::test_translate PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxFile::test_parse PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxFile::test_files PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxFile::test_save PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxFile::test_markup PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxFile::test_nonascii PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxFile::test_extensions PASSED [ 89%] 640s tests/translate/storage/test_utx.py::TestUtxFile::test_mimetypes PASSED [ 89%] 640s tests/translate/storage/test_wordfast.py::TestWFTime::test_timestring PASSED [ 89%] 640s tests/translate/storage/test_wordfast.py::TestWFTime::test_time PASSED [ 89%] 640s tests/translate/storage/test_wordfast.py::TestWFUnit::test_isfuzzy PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFUnit::test_create PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFUnit::test_eq PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFUnit::test_target PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFUnit::test_escapes PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFUnit::test_note_sanity PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_get PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_set PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFUnit::test_difficult_escapes PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFUnit::test_wordfast_escaping PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFUnit::test_newlines PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFUnit::test_language_setting PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFUnit::test_istranslated PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFFile::test_create_blank PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFFile::test_add PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFFile::test_remove PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFFile::test_find PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFFile::test_translate PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFFile::test_parse PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFFile::test_files PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFFile::test_save PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFFile::test_markup PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFFile::test_nonascii PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFFile::test_extensions PASSED [ 90%] 640s tests/translate/storage/test_wordfast.py::TestWFFile::test_mimetypes PASSED [ 90%] 640s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_isfuzzy PASSED [ 90%] 640s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_create PASSED [ 90%] 640s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_eq PASSED [ 90%] 640s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_target PASSED [ 90%] 640s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_escapes PASSED [ 90%] 640s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_difficult_escapes PASSED [ 90%] 640s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_note_sanity PASSED [ 90%] 640s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_get PASSED [ 90%] 640s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_set PASSED [ 90%] 640s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_markreview PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_errors PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_accepted_control_chars PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_unaccepted_control_chars PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_create_blank PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_remove PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_find PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_translate PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parse PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_files PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_save PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_markup PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_nonascii PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_extensions PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_mimetypes PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_basic PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_namespace PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_source PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_target PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_source PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_target PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_sourcelanguage PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage_multi PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_notes PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_alttrans PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_fuzzy PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_xml_space PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parsing PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_entities PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_multiple_filenodes PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_indent PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add_target PASSED [ 91%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve PASSED [ 92%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_closing_tags PASSED [ 92%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_context_groups PASSED [ 92%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_getlocations PASSED [ 92%] 640s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_addlocation PASSED [ 92%] 641s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_huge PASSED [ 92%] 641s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve_add PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_isfuzzy PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_create PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_eq PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_escapes PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_difficult_escapes PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_note_sanity PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_target PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_get PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_set PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_getlocations PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_create_blank PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_find PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_files PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_save PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_extensions PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_mimetypes PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_translate PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_markup PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nonascii PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_serialize PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit_unicode PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse_unicode_list PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_ordering PASSED [ 92%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_initial_comments PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_string_key PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nested PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_multiline PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_boolean PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_integer PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_no_quote_strings PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_double_quote_strings PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_single_quote_strings PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_double_quote_strings PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_single_quote_strings PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_escaped_double_quotes PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_newlines PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_list PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_dictionary PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_key_nesting PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add_to_mepty PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty_key PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dict_in_list PASSED [ 93%] 641s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dump_args PASSED [ 93%] 642s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_anchors PASSED [ 93%] 642s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_tagged_scalar PASSED [ 93%] 642s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_numeric PASSED [ 93%] 642s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_remove PASSED [ 93%] 642s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_special PASSED [ 93%] 642s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_quotes_roundtrip PASSED [ 93%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_create_blank PASSED [ 93%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_remove PASSED [ 93%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_find PASSED [ 93%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_parse PASSED [ 93%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_files PASSED [ 93%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_save PASSED [ 93%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_extensions PASSED [ 93%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_mimetypes PASSED [ 93%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_translate PASSED [ 94%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_markup PASSED [ 94%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_nonascii PASSED [ 94%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_list PASSED [ 94%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby PASSED [ 94%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_wrong PASSED [ 94%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_invalid_value PASSED [ 94%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural PASSED [ 94%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_empty PASSED [ 94%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_anchors PASSED [ 94%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_type_change PASSED [ 94%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_add PASSED [ 94%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural_blank PASSED [ 94%] 642s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural_partial PASSED [ 94%] 642s tests/translate/storage/test_zip.py::TestZIPFile::test_created PASSED [ 94%] 642s tests/translate/storage/test_zip.py::TestZIPFile::test_basic PASSED [ 94%] 642s tests/translate/storage/test_zip.py::TestZIPFile::test_structure PASSED [ 94%] 642s tests/translate/storage/test_zip.py::TestZIPFile::test_getunits PASSED [ 94%] 642s tests/translate/storage/xml_extract/test_misc.py::test_reduce_tree PASSED [ 94%] 642s tests/translate/storage/xml_extract/test_misc.py::test_compose_mappings PASSED [ 94%] 642s tests/translate/storage/xml_extract/test_misc.py::test_parse_tag PASSED [ 94%] 642s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath_component PASSED [ 94%] 642s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath PASSED [ 94%] 642s tests/translate/storage/xml_extract/test_unit_tree.py::test__add_unit_to_tree PASSED [ 94%] 642s tests/translate/storage/xml_extract/test_xpath_breadcrumb.py::test_breadcrumb PASSED [ 94%] 642s tests/translate/tools/test_help.py::test_help[build_tmdb] PASSED [ 94%] 642s tests/translate/tools/test_help.py::test_help[phppo2pypo] PASSED [ 94%] 642s tests/translate/tools/test_help.py::test_help[poclean] PASSED [ 94%] 642s tests/translate/tools/test_help.py::test_help[pocompile] PASSED [ 94%] 642s tests/translate/tools/test_help.py::test_help[poconflicts] PASSED [ 94%] 642s tests/translate/tools/test_help.py::test_help[pocount] PASSED [ 94%] 642s tests/translate/tools/test_help.py::test_help[podebug] PASSED [ 94%] 642s tests/translate/tools/test_help.py::test_help[pogrep] PASSED [ 94%] 642s tests/translate/tools/test_help.py::test_help[pomerge] PASSED [ 95%] 643s tests/translate/tools/test_help.py::test_help[porestructure] PASSED [ 95%] 643s tests/translate/tools/test_help.py::test_help[posegment] PASSED [ 95%] 643s tests/translate/tools/test_help.py::test_help[poswap] PASSED [ 95%] 643s tests/translate/tools/test_help.py::test_help[poterminology] PASSED [ 95%] 643s tests/translate/tools/test_help.py::test_help[pretranslate] PASSED [ 95%] 643s tests/translate/tools/test_help.py::test_help[pydiff] PASSED [ 95%] 643s tests/translate/tools/test_help.py::test_help[pypo2phppo] PASSED [ 95%] 643s tests/translate/tools/test_junitmsgfmt.py::test_output[failure] PASSED [ 95%] 643s tests/translate/tools/test_junitmsgfmt.py::test_output[untranslated] PASSED [ 95%] 643s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_single_po PASSED [ 95%] 643s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_plural_po PASSED [ 95%] 643s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_single_po PASSED [ 95%] 643s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_plural_po PASSED [ 95%] 643s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_help PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_zero PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_one PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_two PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::TestCount::test_punctuation_divides_words PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::TestCount::test_xml_tags PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::TestCount::test_newlines PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::TestCount::test_variables_are_words PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::TestCount::test_plurals PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde XFAIL [ 95%] 643s tests/translate/tools/test_pocount.py::TestCount::test_msgid_blank PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::TestPOCount::test_translated PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzy PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslated PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::TestPOCount::test_total PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::TestPOCount::test_translatedsourcewords PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzysourcewords PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslatedsourcewords PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::TestPOCount::test_totalsourcewords PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-csv] PASSED [ 95%] 643s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-full] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-strings] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-words] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-csv] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-full] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-strings] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-words] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-csv] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-full] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-strings] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-words] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-csv] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-full] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-strings] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-words] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_cases[po-file] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_cases[po-file-fuzzy] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_cases[po-file-csv] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_cases[xliff-states-yes] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_cases[xliff-states-no] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_error_cases[mutually-exclusive] PASSED [ 96%] 643s tests/translate/tools/test_pocount.py::test_error_cases[missing-file] PASSED [ 96%] 644s tests/translate/tools/test_pocount.py::test_error_cases[no-args] PASSED [ 96%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_ignore_gtk PASSED [ 96%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_keep_target PASSED [ 96%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_blank PASSED [ 96%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_en PASSED [ 96%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_xxx PASSED [ 96%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_bracket PASSED [ 96%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode PASSED [ 96%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_at_placeholders PASSED [ 96%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_single_brace_placeholders PASSED [ 96%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_double_brace_placeholders PASSED [ 96%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_html PASSED [ 96%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_multiple_styles_of_placeholder PASSED [ 97%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped PASSED [ 97%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_at_placeholders PASSED [ 97%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_single_brace_placeholders PASSED [ 97%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_double_brace_placeholders PASSED [ 97%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_html PASSED [ 97%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_multiple_styles_of_placeholder PASSED [ 97%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified PASSED [ 97%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_at_placeholders PASSED [ 97%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_single_brace_placeholders PASSED [ 97%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_double_brace_placeholders PASSED [ 97%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_html PASSED [ 97%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_multiple_styles_of_placeholder PASSED [ 97%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_chef PASSED [ 97%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_po_variables PASSED [ 97%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_xliff_rewrite PASSED [ 97%] 644s tests/translate/tools/test_podebug.py::TestPODebug::test_hash PASSED [ 97%] 644s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgid PASSED [ 97%] 644s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgstr PASSED [ 97%] 644s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations PASSED [ 97%] 644s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_comments PASSED [ 97%] 644s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations_with_comment_enabled PASSED [ 97%] 644s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_searchstring PASSED [ 97%] 644s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_regex_searchstring PASSED [ 97%] 644s tests/translate/tools/test_pogrep.py::TestPOGrep::test_keep_translations PASSED [ 97%] 644s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_normalise PASSED [ 97%] 644s tests/translate/tools/test_pogrep.py::TestXLiffGrep::test_simplegrep PASSED [ 97%] 644s tests/translate/tools/test_pomerge.py::test_str2bool PASSED [ 97%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_mergesore_bad_data PASSED [ 97%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge PASSED [ 97%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge_no_locations PASSED [ 97%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_replacemerge PASSED [ 97%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_blanks PASSED [ 97%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_fuzzies PASSED [ 97%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_locations PASSED [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_with_locations PASSED [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_no_locations PASSED [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_reflowed_source_comments PASSED [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_comments_with_blank_lines PASSED [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dont_delete_unassociated_comments PASSED [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_trailing_newlines PASSED [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_minor_start_and_end_of_sentence_changes PASSED [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_last_entry_in_a_file PASSED [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs XFAIL [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_comments_layout PASSED [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dos2unix PASSED [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_xliff PASSED [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_po_into_xliff PASSED [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_po PASSED [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_dont_merge_kde_comments_found_in_translation PASSED [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_untranslated_with_kde_disambiguation PASSED [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_header_entries PASSED [ 98%] 644s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_different_locations PASSED [ 98%] 644s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_simple PASSED [ 98%] 644s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_punctuation PASSED [ 98%] 644s tests/translate/tools/test_poterminology.py::TestPOTerminology::test_term_extraction PASSED [ 98%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_pretranslatepo_blank PASSED [ 98%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_simple PASSED [ 98%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_messages_marked_fuzzy PASSED [ 98%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals_with_fuzzy_matching PASSED [ 98%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change XFAIL [ 98%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_change PASSED [ 98%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_and_whitespace_change PASSED [ 98%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes XFAIL [ 98%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently XFAIL [ 98%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_dont_duplicate PASSED [ 98%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_new_overides_old PASSED [ 98%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments_with_blank_comment_lines PASSED [ 98%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_empty_commentlines PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgidcomments PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_resurect_obsolete_messages PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_typecomments PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_xliff_states PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_pretranslatepo_blank PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_simple PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_messages_marked_fuzzy PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change XFAIL [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_change PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_and_whitespace_change PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes XFAIL [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently XFAIL [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_new_overides_old PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments_with_blank_comment_lines PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_empty_commentlines PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgidcomments PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_resurect_obsolete_messages PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_typecomments PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_xliff_states PASSED [ 99%] 644s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_help PASSED [ 99%] 644s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_single_po PASSED [ 99%] 644s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_plural_po PASSED [ 99%] 644s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_single_po PASSED [ 99%] 644s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_plural_po PASSED [ 99%] 644s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_help PASSED [ 99%] 644s tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff PASSED [ 99%] 644s tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff PASSED [100%] 644s 644s =============================== warnings summary =============================== 644s tests/translate/storage/test_cpo.py:15 644s Warning: 644s Module 'translate.storage.cpo' was found, but when imported by pytest it raised: 644s ImportError('gettext PO library not found') 644s In pytest 9.1 this warning will become an error by default. 644s You can fix the underlying problem, or alternatively overwrite this behavior and silence this warning by passing exc_type=ImportError explicitly. 644s See https://docs.pytest.org/en/stable/deprecations.html#pytest-importorskip-default-behavior-regarding-importerror 644s 644s tests/odf_xliff/test_odf_xliff.py::test_roundtrip 644s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.SjMO23/autopkgtest_tmp/tests/odf_xliff/test_2.odt'> 644s Enable tracemalloc to get traceback where the object was allocated. 644s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 644s 644s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid 644s Warning: unclosed file <_io.TextIOWrapper name='TestAndroid2POCommand_test_convertandroid/en.po' mode='r' encoding='UTF-8'> 644s Enable tracemalloc to get traceback where the object was allocated. 644s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 644s 644s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 644s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 644s Warning: unclosed file <_io.TextIOWrapper name='TestCSV2POCommand_test_columnorder/test.po' mode='r' encoding='UTF-8'> 644s Enable tracemalloc to get traceback where the object was allocated. 644s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 644s 644s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot 644s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_pot/simple.pot'> 644s Enable tracemalloc to get traceback where the object was allocated. 644s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 644s 644s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po 644s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po 644s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_po/simple.po'> 644s Enable tracemalloc to get traceback where the object was allocated. 644s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 644s 644s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates 644s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_remove_duplicates/simple.po'> 644s Enable tracemalloc to get traceback where the object was allocated. 644s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 644s 644s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf 644s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_xlf/simple.xlf'> 644s Enable tracemalloc to get traceback where the object was allocated. 644s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 644s 644s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 644s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 644s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_columnorder/test.csv' mode='r' encoding='UTF-8'> 644s Enable tracemalloc to get traceback where the object was allocated. 644s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 644s 644s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context 644s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_context/test.csv' mode='r' encoding='UTF-8'> 644s Enable tracemalloc to get traceback where the object was allocated. 644s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 644s 644s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing 644s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey 644s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey 644s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing 644s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey 644s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey 644s Warning: Could not find accesskey for key.accesskey 644s 644s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 644s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file 644s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten 644s Warning: unclosed file <_io.BufferedReader name='translation/file1.po'> 644s Enable tracemalloc to get traceback where the object was allocated. 644s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 644s 644s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 644s Warning: unclosed file <_io.BufferedWriter name='translated/file1.html'> 644s Enable tracemalloc to get traceback where the object was allocated. 644s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 644s 644s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert 644s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.SjMO23/autopkgtest_tmp/tests/translate/convert/test.idml'> 644s Enable tracemalloc to get traceback where the object was allocated. 644s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 644s 644s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po 644s Warning: unclosed file <_io.BufferedReader name='translation.po'> 644s Enable tracemalloc to get traceback where the object was allocated. 644s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 644s 644s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp 644s Warning: unclosed file <_io.FileIO name='input.oo' mode='rb' closefd=True> 644s Enable tracemalloc to get traceback where the object was allocated. 644s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 644s 644s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp 644s Warning: unclosed file <_io.FileIO name='output.oo' mode='wb' closefd=True> 644s Enable tracemalloc to get traceback where the object was allocated. 644s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 644s 644s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey 644s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey 644s Warning: Could not find accesskey for prop.accesskey 644s 644s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert 644s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert/simple.po'> 644s Enable tracemalloc to get traceback where the object was allocated. 644s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 644s 644s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 644s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf16/simple.po'> 644s Enable tracemalloc to get traceback where the object was allocated. 644s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 644s 644s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 644s Warning: unclosed file <_io.BufferedWriter name='simple.po'> 644s Enable tracemalloc to get traceback where the object was allocated. 645s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 645s 645s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 645s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 645s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_wrong/simple.po'> 645s Enable tracemalloc to get traceback where the object was allocated. 645s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 645s 645s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 645s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf8/simple.po'> 645s Enable tracemalloc to get traceback where the object was allocated. 645s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 645s 645s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex 645s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_menuex/simple.po'> 645s Enable tracemalloc to get traceback where the object was allocated. 645s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 645s 645s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot 645s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_pot/simple.pot'> 645s Enable tracemalloc to get traceback where the object was allocated. 645s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 645s 645s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po 645s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_po/simple.po'> 645s Enable tracemalloc to get traceback where the object was allocated. 645s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 645s 645s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates 645s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_remove_duplicates/simple.po'> 645s Enable tracemalloc to get traceback where the object was allocated. 645s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 645s 645s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 645s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.SjMO23/autopkgtest_tmp/tests/translate/convert/test.odt'> 645s Enable tracemalloc to get traceback where the object was allocated. 645s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 645s 645s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename 645s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_preserve_filename/snippet.xlf'> 645s Enable tracemalloc to get traceback where the object was allocated. 645s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 645s 645s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot 645s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_pot/simple.pot'> 645s Enable tracemalloc to get traceback where the object was allocated. 645s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 645s 645s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po 645s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_po/simple.po'> 645s Enable tracemalloc to get traceback where the object was allocated. 645s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 645s 645s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates 645s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_remove_duplicates/simple.po'> 645s Enable tracemalloc to get traceback where the object was allocated. 645s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 645s 645s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers 645s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers 645s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker 645s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source 645s Warning: The 'u' type code is deprecated and will be removed in Python 3.16 645s 645s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 645s Warning: DTD parse error: :1:35:FATAL:PARSER:ERR_ENTITY_NOT_FINISHED: xmlParseEntityDecl: entity test.me not terminated 645s 645s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 645s Warning: DTD file '' does not validate 645s 645s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 645s --------------------------- snapshot report summary ---------------------------- 645s 23 snapshots passed. 645s =========================== short test summary info ============================ 645s SKIPPED [1] tests/translate/storage/test_cpo.py:15: could not import 'translate.storage.cpo': gettext PO library not found 645s SKIPPED [1] tests/translate/storage/test_fluent.py:29: could not import 'translate.storage.fluent': No module named 'fluent' 645s SKIPPED [1] tests/translate/filters/test_checks.py:1429: Spell checking for af is not available 645s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence - Not Implemented 645s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence - Not Implemented 645s XFAIL tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template - Need to review if we want this behaviour 645s XFAIL tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template - Need to review if we want this behaviour 645s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change - Not implemented - review if this is even correct 645s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes - Not Implemented - needs review 645s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently - Not Implemented - review if this is even correct 645s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change - Not implemented - review if this is even correct 645s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes - Not Implemented - needs review 645s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently - Not Implemented - review if this is even correct 645s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates - This is invalid YAML document 645s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates - This is invalid YAML document 645s XFAIL tests/translate/filters/test_checks.py::test_acceleratedvariables - Accelerated variables needs a better implementation 645s XFAIL tests/translate/filters/test_checks.py::test_musttranslatewords - FIXME: All fails() tests are not working 645s XFAIL tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time - Bug #3408 645s XFAIL tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags - Bug #3506 645s 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. 645s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables - Test needs fixing, disabled for now 645s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables - Test needs fixing, disabled for now 645s XFAIL tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases - Not Implemented 645s XFAIL tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases - Not Implemented 645s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_comment_following - Not Implemented 646s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting - Not Implemented 646s 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 646s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals - Not Implemented 646s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 646s XFAIL tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove - removal not working in full page 646s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals - Not Implemented 646s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 646s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment - Not sure if this can not be parsed gracefully 646s XFAIL tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity - Not Implemented 646s XFAIL tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde - Support commented out pending removal 646s XFAIL tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs - Not Implemented 646s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change - Not Implemented 646s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes - Not Implemented 646s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently - Not Implemented 646s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change - Not Implemented 646s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes - Not Implemented 646s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently - Not Implemented 646s ========== 3343 passed, 3 skipped, 39 xfailed, 50 warnings in 23.05s =========== 647s autopkgtest [00:52:31]: test python3-translate-commands: -----------------------] 651s python3-translate-commands PASS 651s autopkgtest [00:52:35]: test python3-translate-commands: - - - - - - - - - - results - - - - - - - - - - 655s autopkgtest [00:52:39]: @@@@@@@@@@@@@@@@@@@@ summary 655s translate-toolkit PASS 655s python3-translate PASS 655s python3-translate-commands PASS