0s autopkgtest [21:30:14]: starting date and time: 2024-07-20 21:30:14+0000 0s autopkgtest [21:30:14]: git checkout: fd3bed09 nova: allow more retries for quota issues 0s autopkgtest [21:30:14]: host juju-7f2275-prod-proposed-migration-environment-3; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.fssyjfvs/out --timeout-copy=6000 -a i386 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:python3-defaults,src:python3-stdlib-extensions --apt-upgrade translate-toolkit --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 '--env=ADT_TEST_TRIGGERS=python3-defaults/3.12.4-1 python3-stdlib-extensions/3.12.4-2' -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-3@lcy02-92.secgroup --name adt-oracular-i386-translate-toolkit-20240720-213014-juju-7f2275-prod-proposed-migration-environment-3-8f689595-be47-4b8d-bb6c-40808b11aa11 --image adt/ubuntu-oracular-amd64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-3 --net-id=net_prod-proposed-migration -e TERM=linux -e ''"'"'http_proxy=http://squid.internal:3128'"'"'' -e ''"'"'https_proxy=http://squid.internal:3128'"'"'' -e ''"'"'no_proxy=127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,ports.ubuntu.com,security.ubuntu.com,ddebs.ubuntu.com,changelogs.ubuntu.com,keyserver.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,10.24.0.0/24,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 336s autopkgtest-virt-ssh: WARNING: ssh connection failed. Retrying in 3 seconds... 346s autopkgtest [21:36:00]: testbed dpkg architecture: amd64 346s Get:1 http://ftpmaster.internal/ubuntu oracular-proposed InRelease [126 kB] 346s Get:2 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse Sources [4092 B] 346s Get:3 http://ftpmaster.internal/ubuntu oracular-proposed/restricted Sources [8548 B] 346s Get:4 http://ftpmaster.internal/ubuntu oracular-proposed/main Sources [63.1 kB] 346s Get:5 http://ftpmaster.internal/ubuntu oracular-proposed/universe Sources [401 kB] 346s Get:6 http://ftpmaster.internal/ubuntu oracular-proposed/main i386 Packages [89.0 kB] 346s Get:7 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 Packages [121 kB] 346s Get:8 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 c-n-f Metadata [2116 B] 346s Get:9 http://ftpmaster.internal/ubuntu oracular-proposed/restricted amd64 Packages [34.9 kB] 346s Get:10 http://ftpmaster.internal/ubuntu oracular-proposed/restricted i386 Packages [6244 B] 346s Get:11 http://ftpmaster.internal/ubuntu oracular-proposed/restricted amd64 c-n-f Metadata [368 B] 346s Get:12 http://ftpmaster.internal/ubuntu oracular-proposed/universe amd64 Packages [574 kB] 346s Get:13 http://ftpmaster.internal/ubuntu oracular-proposed/universe i386 Packages [401 kB] 346s Get:14 http://ftpmaster.internal/ubuntu oracular-proposed/universe amd64 c-n-f Metadata [9900 B] 346s Get:15 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse amd64 Packages [8604 B] 346s Get:16 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse i386 Packages [3052 B] 346s Get:17 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse amd64 c-n-f Metadata [276 B] 346s autopkgtest [21:36:00]: testbed apt version: 2.9.6 346s autopkgtest [21:36:00]: test architecture: i386 346s autopkgtest [21:36:00]: @@@@@@@@@@@@@@@@@@@@ test bed setup 348s Fetched 1854 kB in 0s (6414 kB/s) 348s Reading package lists... 351s Reading package lists... 351s Building dependency tree... 351s Reading state information... 351s Calculating upgrade... 352s The following packages will be upgraded: 352s libbpf1 libheif-plugin-aomdec libheif-plugin-aomenc libheif-plugin-libde265 352s libheif1 libpython3-stdlib python3 python3-gdbm python3-minimal 352s 9 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 352s Need to get 560 kB of archives. 352s After this operation, 30.7 kB of additional disk space will be used. 352s Get:1 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 python3-minimal amd64 3.12.4-1 [27.1 kB] 352s Get:2 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 python3 amd64 3.12.4-1 [24.0 kB] 352s Get:3 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 libpython3-stdlib amd64 3.12.4-1 [9818 B] 352s Get:4 http://ftpmaster.internal/ubuntu oracular/main amd64 libbpf1 amd64 1:1.4.5-1 [172 kB] 352s Get:5 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 python3-gdbm amd64 3.12.4-2 [18.2 kB] 352s Get:6 http://ftpmaster.internal/ubuntu oracular/main amd64 libheif-plugin-aomdec amd64 1.17.6-4build1 [10.3 kB] 352s Get:7 http://ftpmaster.internal/ubuntu oracular/main amd64 libheif-plugin-aomenc amd64 1.17.6-4build1 [14.8 kB] 352s Get:8 http://ftpmaster.internal/ubuntu oracular/main amd64 libheif1 amd64 1.17.6-4build1 [276 kB] 352s Get:9 http://ftpmaster.internal/ubuntu oracular/main amd64 libheif-plugin-libde265 amd64 1.17.6-4build1 [8328 B] 352s Fetched 560 kB in 0s (20.4 MB/s) 352s (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 ... 74487 files and directories currently installed.) 352s Preparing to unpack .../python3-minimal_3.12.4-1_amd64.deb ... 352s Unpacking python3-minimal (3.12.4-1) over (3.12.3-0ubuntu1) ... 352s Setting up python3-minimal (3.12.4-1) ... 353s (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 ... 74487 files and directories currently installed.) 353s Preparing to unpack .../0-python3_3.12.4-1_amd64.deb ... 353s Unpacking python3 (3.12.4-1) over (3.12.3-0ubuntu1) ... 353s Preparing to unpack .../1-libpython3-stdlib_3.12.4-1_amd64.deb ... 353s Unpacking libpython3-stdlib:amd64 (3.12.4-1) over (3.12.3-0ubuntu1) ... 353s Preparing to unpack .../2-libbpf1_1%3a1.4.5-1_amd64.deb ... 353s Unpacking libbpf1:amd64 (1:1.4.5-1) over (1:1.4.3-1) ... 353s Preparing to unpack .../3-python3-gdbm_3.12.4-2_amd64.deb ... 353s Unpacking python3-gdbm:amd64 (3.12.4-2) over (3.12.3-0ubuntu1) ... 353s Preparing to unpack .../4-libheif-plugin-aomdec_1.17.6-4build1_amd64.deb ... 353s Unpacking libheif-plugin-aomdec:amd64 (1.17.6-4build1) over (1.17.6-3build2) ... 353s Preparing to unpack .../5-libheif-plugin-aomenc_1.17.6-4build1_amd64.deb ... 353s Unpacking libheif-plugin-aomenc:amd64 (1.17.6-4build1) over (1.17.6-3build2) ... 353s Preparing to unpack .../6-libheif1_1.17.6-4build1_amd64.deb ... 353s Unpacking libheif1:amd64 (1.17.6-4build1) over (1.17.6-3build2) ... 353s Preparing to unpack .../7-libheif-plugin-libde265_1.17.6-4build1_amd64.deb ... 353s Unpacking libheif-plugin-libde265:amd64 (1.17.6-4build1) over (1.17.6-3build2) ... 353s Setting up libbpf1:amd64 (1:1.4.5-1) ... 353s Setting up libpython3-stdlib:amd64 (3.12.4-1) ... 353s Setting up python3 (3.12.4-1) ... 353s Setting up python3-gdbm:amd64 (3.12.4-2) ... 353s Setting up libheif-plugin-aomdec:amd64 (1.17.6-4build1) ... 353s Setting up libheif1:amd64 (1.17.6-4build1) ... 353s Setting up libheif-plugin-libde265:amd64 (1.17.6-4build1) ... 353s Setting up libheif-plugin-aomenc:amd64 (1.17.6-4build1) ... 353s Processing triggers for libc-bin (2.39-0ubuntu9) ... 353s Processing triggers for man-db (2.12.1-2) ... 354s Reading package lists... 354s Building dependency tree... 354s Reading state information... 355s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 355s Hit:1 http://ftpmaster.internal/ubuntu oracular-proposed InRelease 355s Hit:2 http://ftpmaster.internal/ubuntu oracular InRelease 355s Hit:3 http://ftpmaster.internal/ubuntu oracular-updates InRelease 355s Hit:4 http://ftpmaster.internal/ubuntu oracular-security InRelease 356s Reading package lists... 356s Reading package lists... 356s Building dependency tree... 356s Reading state information... 356s Calculating upgrade... 357s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 357s Reading package lists... 357s Building dependency tree... 357s Reading state information... 357s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 369s autopkgtest [21:36:23]: testbed running kernel: Linux 6.8.0-31-generic #31-Ubuntu SMP PREEMPT_DYNAMIC Sat Apr 20 00:40:06 UTC 2024 369s autopkgtest [21:36:23]: @@@@@@@@@@@@@@@@@@@@ apt-source translate-toolkit 410s Get:1 http://ftpmaster.internal/ubuntu oracular/universe translate-toolkit 3.13.2-1 (dsc) [3132 B] 410s Get:2 http://ftpmaster.internal/ubuntu oracular/universe translate-toolkit 3.13.2-1 (tar) [1173 kB] 410s Get:3 http://ftpmaster.internal/ubuntu oracular/universe translate-toolkit 3.13.2-1 (diff) [24.5 kB] 410s gpgv: Signature made Mon Jul 15 08:19:40 2024 UTC 410s gpgv: using RSA key 90E2D2C1AD146A1B7EBB891DBBC17EBB1396F2F7 410s gpgv: Can't check signature: No public key 410s dpkg-source: warning: cannot verify inline signature for ./translate-toolkit_3.13.2-1.dsc: no acceptable signature found 411s autopkgtest [21:37:05]: testing package translate-toolkit version 3.13.2-1 411s autopkgtest [21:37:05]: build not needed 411s autopkgtest [21:37:05]: test translate-toolkit: preparing testbed 414s Note, using file '/tmp/autopkgtest.yhF5Vh/1-autopkgtest-satdep.dsc' to get the build dependencies 414s Reading package lists... 414s Building dependency tree... 414s Reading state information... 414s Starting pkgProblemResolver with broken count: 0 414s Starting 2 pkgProblemResolver with broken count: 0 414s Done 415s The following NEW packages will be installed: 415s build-essential cpp cpp-13 cpp-13-x86-64-linux-gnu cpp-x86-64-linux-gnu 415s dictionaries-common emacsen-common g++ g++-13 g++-13-x86-64-linux-gnu 415s g++-x86-64-linux-gnu gcc gcc-13 gcc-13-base gcc-13-x86-64-linux-gnu 415s gcc-x86-64-linux-gnu gettext hunspell-en-us libapr1t64 libaprutil1t64 415s libasan8 libaspell15 libatomic1 libcc1-0 libenchant-2-2 libexttextcat-data 415s libgcc-13-dev libgomp1 libhunspell-1.7-0 libhwasan0 libisl23 libitm1 415s liblsan0 libmpc3 libquadmath0 libserf-1-1 libstdc++-13-dev libsvn1 libtsan2 415s libubsan1 libutf8proc3 libxapian30 libxslt1.1 python3-aeidon python3-bs4 415s python3-charset-normalizer python3-cheroot python3-dateutil 415s python3-diff-match-patch python3-enchant python3-iniparse 415s python3-jaraco.functools python3-levenshtein python3-lxml python3-mistletoe 415s python3-more-itertools python3-phply python3-ply python3-pycountry 415s python3-rapidfuzz python3-ruamel.yaml python3-ruamel.yaml.clib 415s python3-simplejson python3-soupsieve python3-translate python3-vobject 415s python3-wcwidth python3-xapian subversion translate-toolkit 415s 0 upgraded, 70 newly installed, 0 to remove and 0 not upgraded. 415s Need to get 71.6 MB of archives. 415s After this operation, 255 MB of additional disk space will be used. 415s Get:1 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-13-base amd64 13.3.0-3ubuntu1 [50.9 kB] 415s Get:2 http://ftpmaster.internal/ubuntu oracular/main amd64 libisl23 amd64 0.26-3build1 [680 kB] 415s Get:3 http://ftpmaster.internal/ubuntu oracular/main amd64 libmpc3 amd64 1.3.1-1build1 [54.5 kB] 415s Get:4 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp-13-x86-64-linux-gnu amd64 13.3.0-3ubuntu1 [10.7 MB] 415s Get:5 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp-13 amd64 13.3.0-3ubuntu1 [1028 B] 415s Get:6 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp-x86-64-linux-gnu amd64 4:13.3.0-2ubuntu2 [5398 B] 415s Get:7 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp amd64 4:13.3.0-2ubuntu2 [22.4 kB] 415s Get:8 http://ftpmaster.internal/ubuntu oracular/main amd64 libcc1-0 amd64 14.1.0-4ubuntu2 [47.6 kB] 415s Get:9 http://ftpmaster.internal/ubuntu oracular/main amd64 libgomp1 amd64 14.1.0-4ubuntu2 [148 kB] 415s Get:10 http://ftpmaster.internal/ubuntu oracular/main amd64 libitm1 amd64 14.1.0-4ubuntu2 [29.1 kB] 415s Get:11 http://ftpmaster.internal/ubuntu oracular/main amd64 libatomic1 amd64 14.1.0-4ubuntu2 [10.3 kB] 415s Get:12 http://ftpmaster.internal/ubuntu oracular/main amd64 libasan8 amd64 14.1.0-4ubuntu2 [2996 kB] 415s Get:13 http://ftpmaster.internal/ubuntu oracular/main amd64 liblsan0 amd64 14.1.0-4ubuntu2 [1316 kB] 415s Get:14 http://ftpmaster.internal/ubuntu oracular/main amd64 libtsan2 amd64 14.1.0-4ubuntu2 [2733 kB] 415s Get:15 http://ftpmaster.internal/ubuntu oracular/main amd64 libubsan1 amd64 14.1.0-4ubuntu2 [1178 kB] 415s Get:16 http://ftpmaster.internal/ubuntu oracular/main amd64 libhwasan0 amd64 14.1.0-4ubuntu2 [1634 kB] 415s Get:17 http://ftpmaster.internal/ubuntu oracular/main amd64 libquadmath0 amd64 14.1.0-4ubuntu2 [153 kB] 415s Get:18 http://ftpmaster.internal/ubuntu oracular/main amd64 libgcc-13-dev amd64 13.3.0-3ubuntu1 [2673 kB] 415s Get:19 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-13-x86-64-linux-gnu amd64 13.3.0-3ubuntu1 [21.0 MB] 415s Get:20 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-13 amd64 13.3.0-3ubuntu1 [492 kB] 415s Get:21 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-x86-64-linux-gnu amd64 4:13.3.0-2ubuntu2 [1212 B] 415s Get:22 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc amd64 4:13.3.0-2ubuntu2 [5020 B] 415s Get:23 http://ftpmaster.internal/ubuntu oracular/main amd64 libstdc++-13-dev amd64 13.3.0-3ubuntu1 [2413 kB] 415s Get:24 http://ftpmaster.internal/ubuntu oracular/main amd64 g++-13-x86-64-linux-gnu amd64 13.3.0-3ubuntu1 [12.1 MB] 415s Get:25 http://ftpmaster.internal/ubuntu oracular/main amd64 g++-13 amd64 13.3.0-3ubuntu1 [16.0 kB] 415s Get:26 http://ftpmaster.internal/ubuntu oracular/main amd64 g++-x86-64-linux-gnu amd64 4:13.3.0-2ubuntu2 [968 B] 415s Get:27 http://ftpmaster.internal/ubuntu oracular/main amd64 g++ amd64 4:13.3.0-2ubuntu2 [1102 B] 415s Get:28 http://ftpmaster.internal/ubuntu oracular/main amd64 build-essential amd64 12.10ubuntu1 [4928 B] 415s Get:29 http://ftpmaster.internal/ubuntu oracular/main amd64 emacsen-common all 3.0.5 [12.1 kB] 415s Get:30 http://ftpmaster.internal/ubuntu oracular/main amd64 dictionaries-common all 1.29.7 [188 kB] 415s Get:31 http://ftpmaster.internal/ubuntu oracular/main amd64 gettext amd64 0.22.5-1 [944 kB] 415s Get:32 http://ftpmaster.internal/ubuntu oracular/main amd64 hunspell-en-us all 1:2020.12.07-2 [280 kB] 415s Get:33 http://ftpmaster.internal/ubuntu oracular/main amd64 libapr1t64 amd64 1.7.2-3.2 [106 kB] 415s Get:34 http://ftpmaster.internal/ubuntu oracular/main amd64 libaprutil1t64 amd64 1.6.3-2ubuntu1 [92.1 kB] 415s Get:35 http://ftpmaster.internal/ubuntu oracular/main amd64 libaspell15 amd64 0.60.8.1-1build1 [323 kB] 415s Get:36 http://ftpmaster.internal/ubuntu oracular/main amd64 libhunspell-1.7-0 amd64 1.7.2+really1.7.2-10build3 [294 kB] 415s Get:37 http://ftpmaster.internal/ubuntu oracular/main amd64 libenchant-2-2 amd64 2.3.3-2build2 [51.4 kB] 415s Get:38 http://ftpmaster.internal/ubuntu oracular/main amd64 libexttextcat-data all 3.4.7-1build1 [193 kB] 415s Get:39 http://ftpmaster.internal/ubuntu oracular/universe amd64 libserf-1-1 amd64 1.3.10-3ubuntu1 [48.2 kB] 415s Get:40 http://ftpmaster.internal/ubuntu oracular/universe amd64 libutf8proc3 amd64 2.9.0-1build1 [70.6 kB] 415s Get:41 http://ftpmaster.internal/ubuntu oracular/universe amd64 libsvn1 amd64 1.14.3-2 [1344 kB] 415s Get:42 http://ftpmaster.internal/ubuntu oracular/universe amd64 libxapian30 amd64 1.4.22-1build1 [716 kB] 415s Get:43 http://ftpmaster.internal/ubuntu oracular/main amd64 libxslt1.1 amd64 1.1.39-0exp1build1 [167 kB] 415s Get:44 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-aeidon all 1.15-1 [231 kB] 416s Get:45 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-soupsieve all 2.5-1 [33.0 kB] 416s Get:46 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-bs4 all 4.12.3-1 [109 kB] 416s Get:47 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-charset-normalizer all 3.3.2-1 [47.9 kB] 416s Get:48 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-more-itertools all 10.3.0-1 [54.9 kB] 416s Get:49 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-jaraco.functools all 4.0.0-1 [10.7 kB] 416s Get:50 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-cheroot all 10.0.0+ds1-2 [73.0 kB] 416s Get:51 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-dateutil all 2.9.0-2 [80.3 kB] 416s Get:52 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-diff-match-patch all 20230430-1 [33.1 kB] 416s Get:53 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-enchant all 3.2.2-1 [34.0 kB] 416s Get:54 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-rapidfuzz amd64 3.9.4+ds-1 [2028 kB] 416s Get:55 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-levenshtein amd64 0.25.1-3 [120 kB] 416s Get:56 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-lxml amd64 5.2.2-1 [1243 kB] 416s Get:57 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-mistletoe all 1.3.0-1 [38.0 kB] 416s Get:58 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-ply all 3.11-6 [46.5 kB] 416s Get:59 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-phply all 1.2.6-1 [50.5 kB] 416s Get:60 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-ruamel.yaml.clib amd64 0.2.8-1build1 [132 kB] 416s Get:61 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-ruamel.yaml all 0.17.21-1 [86.6 kB] 416s Get:62 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-simplejson amd64 3.19.2-1build2 [54.5 kB] 416s Get:63 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-wcwidth all 0.2.5+dfsg1-1.1ubuntu1 [22.5 kB] 416s Get:64 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-translate all 3.13.2-1 [319 kB] 416s Get:65 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-vobject all 0.9.6.1-2 [40.6 kB] 416s Get:66 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-xapian amd64 1.4.22-1build5 [373 kB] 416s Get:67 http://ftpmaster.internal/ubuntu oracular/universe amd64 subversion amd64 1.14.3-2 [908 kB] 416s Get:68 http://ftpmaster.internal/ubuntu oracular/universe amd64 translate-toolkit all 3.13.2-1 [81.0 kB] 416s Get:69 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-iniparse all 0.5-2 [20.0 kB] 416s Get:70 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-pycountry all 24.6.1+ds1-1 [30.0 kB] 416s Preconfiguring packages ... 416s Fetched 71.6 MB in 1s (122 MB/s) 416s Selecting previously unselected package gcc-13-base:amd64. 416s (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 ... 74490 files and directories currently installed.) 416s Preparing to unpack .../00-gcc-13-base_13.3.0-3ubuntu1_amd64.deb ... 416s Unpacking gcc-13-base:amd64 (13.3.0-3ubuntu1) ... 416s Selecting previously unselected package libisl23:amd64. 416s Preparing to unpack .../01-libisl23_0.26-3build1_amd64.deb ... 416s Unpacking libisl23:amd64 (0.26-3build1) ... 416s Selecting previously unselected package libmpc3:amd64. 416s Preparing to unpack .../02-libmpc3_1.3.1-1build1_amd64.deb ... 416s Unpacking libmpc3:amd64 (1.3.1-1build1) ... 416s Selecting previously unselected package cpp-13-x86-64-linux-gnu. 416s Preparing to unpack .../03-cpp-13-x86-64-linux-gnu_13.3.0-3ubuntu1_amd64.deb ... 416s Unpacking cpp-13-x86-64-linux-gnu (13.3.0-3ubuntu1) ... 416s Selecting previously unselected package cpp-13. 416s Preparing to unpack .../04-cpp-13_13.3.0-3ubuntu1_amd64.deb ... 416s Unpacking cpp-13 (13.3.0-3ubuntu1) ... 416s Selecting previously unselected package cpp-x86-64-linux-gnu. 416s Preparing to unpack .../05-cpp-x86-64-linux-gnu_4%3a13.3.0-2ubuntu2_amd64.deb ... 416s Unpacking cpp-x86-64-linux-gnu (4:13.3.0-2ubuntu2) ... 416s Selecting previously unselected package cpp. 416s Preparing to unpack .../06-cpp_4%3a13.3.0-2ubuntu2_amd64.deb ... 416s Unpacking cpp (4:13.3.0-2ubuntu2) ... 416s Selecting previously unselected package libcc1-0:amd64. 416s Preparing to unpack .../07-libcc1-0_14.1.0-4ubuntu2_amd64.deb ... 416s Unpacking libcc1-0:amd64 (14.1.0-4ubuntu2) ... 416s Selecting previously unselected package libgomp1:amd64. 416s Preparing to unpack .../08-libgomp1_14.1.0-4ubuntu2_amd64.deb ... 416s Unpacking libgomp1:amd64 (14.1.0-4ubuntu2) ... 416s Selecting previously unselected package libitm1:amd64. 417s Preparing to unpack .../09-libitm1_14.1.0-4ubuntu2_amd64.deb ... 417s Unpacking libitm1:amd64 (14.1.0-4ubuntu2) ... 417s Selecting previously unselected package libatomic1:amd64. 417s Preparing to unpack .../10-libatomic1_14.1.0-4ubuntu2_amd64.deb ... 417s Unpacking libatomic1:amd64 (14.1.0-4ubuntu2) ... 417s Selecting previously unselected package libasan8:amd64. 417s Preparing to unpack .../11-libasan8_14.1.0-4ubuntu2_amd64.deb ... 417s Unpacking libasan8:amd64 (14.1.0-4ubuntu2) ... 417s Selecting previously unselected package liblsan0:amd64. 417s Preparing to unpack .../12-liblsan0_14.1.0-4ubuntu2_amd64.deb ... 417s Unpacking liblsan0:amd64 (14.1.0-4ubuntu2) ... 417s Selecting previously unselected package libtsan2:amd64. 417s Preparing to unpack .../13-libtsan2_14.1.0-4ubuntu2_amd64.deb ... 417s Unpacking libtsan2:amd64 (14.1.0-4ubuntu2) ... 417s Selecting previously unselected package libubsan1:amd64. 417s Preparing to unpack .../14-libubsan1_14.1.0-4ubuntu2_amd64.deb ... 417s Unpacking libubsan1:amd64 (14.1.0-4ubuntu2) ... 417s Selecting previously unselected package libhwasan0:amd64. 417s Preparing to unpack .../15-libhwasan0_14.1.0-4ubuntu2_amd64.deb ... 417s Unpacking libhwasan0:amd64 (14.1.0-4ubuntu2) ... 417s Selecting previously unselected package libquadmath0:amd64. 417s Preparing to unpack .../16-libquadmath0_14.1.0-4ubuntu2_amd64.deb ... 417s Unpacking libquadmath0:amd64 (14.1.0-4ubuntu2) ... 417s Selecting previously unselected package libgcc-13-dev:amd64. 417s Preparing to unpack .../17-libgcc-13-dev_13.3.0-3ubuntu1_amd64.deb ... 417s Unpacking libgcc-13-dev:amd64 (13.3.0-3ubuntu1) ... 417s Selecting previously unselected package gcc-13-x86-64-linux-gnu. 417s Preparing to unpack .../18-gcc-13-x86-64-linux-gnu_13.3.0-3ubuntu1_amd64.deb ... 417s Unpacking gcc-13-x86-64-linux-gnu (13.3.0-3ubuntu1) ... 417s Selecting previously unselected package gcc-13. 417s Preparing to unpack .../19-gcc-13_13.3.0-3ubuntu1_amd64.deb ... 417s Unpacking gcc-13 (13.3.0-3ubuntu1) ... 417s Selecting previously unselected package gcc-x86-64-linux-gnu. 417s Preparing to unpack .../20-gcc-x86-64-linux-gnu_4%3a13.3.0-2ubuntu2_amd64.deb ... 417s Unpacking gcc-x86-64-linux-gnu (4:13.3.0-2ubuntu2) ... 417s Selecting previously unselected package gcc. 417s Preparing to unpack .../21-gcc_4%3a13.3.0-2ubuntu2_amd64.deb ... 417s Unpacking gcc (4:13.3.0-2ubuntu2) ... 417s Selecting previously unselected package libstdc++-13-dev:amd64. 417s Preparing to unpack .../22-libstdc++-13-dev_13.3.0-3ubuntu1_amd64.deb ... 417s Unpacking libstdc++-13-dev:amd64 (13.3.0-3ubuntu1) ... 418s Selecting previously unselected package g++-13-x86-64-linux-gnu. 418s Preparing to unpack .../23-g++-13-x86-64-linux-gnu_13.3.0-3ubuntu1_amd64.deb ... 418s Unpacking g++-13-x86-64-linux-gnu (13.3.0-3ubuntu1) ... 418s Selecting previously unselected package g++-13. 418s Preparing to unpack .../24-g++-13_13.3.0-3ubuntu1_amd64.deb ... 418s Unpacking g++-13 (13.3.0-3ubuntu1) ... 418s Selecting previously unselected package g++-x86-64-linux-gnu. 418s Preparing to unpack .../25-g++-x86-64-linux-gnu_4%3a13.3.0-2ubuntu2_amd64.deb ... 418s Unpacking g++-x86-64-linux-gnu (4:13.3.0-2ubuntu2) ... 418s Selecting previously unselected package g++. 418s Preparing to unpack .../26-g++_4%3a13.3.0-2ubuntu2_amd64.deb ... 418s Unpacking g++ (4:13.3.0-2ubuntu2) ... 418s Selecting previously unselected package build-essential. 418s Preparing to unpack .../27-build-essential_12.10ubuntu1_amd64.deb ... 418s Unpacking build-essential (12.10ubuntu1) ... 418s Selecting previously unselected package emacsen-common. 418s Preparing to unpack .../28-emacsen-common_3.0.5_all.deb ... 418s Unpacking emacsen-common (3.0.5) ... 418s Selecting previously unselected package dictionaries-common. 418s Preparing to unpack .../29-dictionaries-common_1.29.7_all.deb ... 418s Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common' 418s Unpacking dictionaries-common (1.29.7) ... 418s Selecting previously unselected package gettext. 418s Preparing to unpack .../30-gettext_0.22.5-1_amd64.deb ... 418s Unpacking gettext (0.22.5-1) ... 418s Selecting previously unselected package hunspell-en-us. 418s Preparing to unpack .../31-hunspell-en-us_1%3a2020.12.07-2_all.deb ... 418s Unpacking hunspell-en-us (1:2020.12.07-2) ... 418s Selecting previously unselected package libapr1t64:amd64. 418s Preparing to unpack .../32-libapr1t64_1.7.2-3.2_amd64.deb ... 418s Unpacking libapr1t64:amd64 (1.7.2-3.2) ... 418s Selecting previously unselected package libaprutil1t64:amd64. 418s Preparing to unpack .../33-libaprutil1t64_1.6.3-2ubuntu1_amd64.deb ... 418s Unpacking libaprutil1t64:amd64 (1.6.3-2ubuntu1) ... 418s Selecting previously unselected package libaspell15:amd64. 418s Preparing to unpack .../34-libaspell15_0.60.8.1-1build1_amd64.deb ... 418s Unpacking libaspell15:amd64 (0.60.8.1-1build1) ... 418s Selecting previously unselected package libhunspell-1.7-0:amd64. 418s Preparing to unpack .../35-libhunspell-1.7-0_1.7.2+really1.7.2-10build3_amd64.deb ... 418s Unpacking libhunspell-1.7-0:amd64 (1.7.2+really1.7.2-10build3) ... 418s Selecting previously unselected package libenchant-2-2:amd64. 418s Preparing to unpack .../36-libenchant-2-2_2.3.3-2build2_amd64.deb ... 418s Unpacking libenchant-2-2:amd64 (2.3.3-2build2) ... 418s Selecting previously unselected package libexttextcat-data. 418s Preparing to unpack .../37-libexttextcat-data_3.4.7-1build1_all.deb ... 418s Unpacking libexttextcat-data (3.4.7-1build1) ... 418s Selecting previously unselected package libserf-1-1:amd64. 418s Preparing to unpack .../38-libserf-1-1_1.3.10-3ubuntu1_amd64.deb ... 418s Unpacking libserf-1-1:amd64 (1.3.10-3ubuntu1) ... 418s Selecting previously unselected package libutf8proc3:amd64. 418s Preparing to unpack .../39-libutf8proc3_2.9.0-1build1_amd64.deb ... 418s Unpacking libutf8proc3:amd64 (2.9.0-1build1) ... 418s Selecting previously unselected package libsvn1:amd64. 418s Preparing to unpack .../40-libsvn1_1.14.3-2_amd64.deb ... 418s Unpacking libsvn1:amd64 (1.14.3-2) ... 418s Selecting previously unselected package libxapian30:amd64. 418s Preparing to unpack .../41-libxapian30_1.4.22-1build1_amd64.deb ... 418s Unpacking libxapian30:amd64 (1.4.22-1build1) ... 418s Selecting previously unselected package libxslt1.1:amd64. 418s Preparing to unpack .../42-libxslt1.1_1.1.39-0exp1build1_amd64.deb ... 418s Unpacking libxslt1.1:amd64 (1.1.39-0exp1build1) ... 418s Selecting previously unselected package python3-aeidon. 418s Preparing to unpack .../43-python3-aeidon_1.15-1_all.deb ... 418s Unpacking python3-aeidon (1.15-1) ... 418s Selecting previously unselected package python3-soupsieve. 418s Preparing to unpack .../44-python3-soupsieve_2.5-1_all.deb ... 418s Unpacking python3-soupsieve (2.5-1) ... 418s Selecting previously unselected package python3-bs4. 418s Preparing to unpack .../45-python3-bs4_4.12.3-1_all.deb ... 418s Unpacking python3-bs4 (4.12.3-1) ... 419s Selecting previously unselected package python3-charset-normalizer. 419s Preparing to unpack .../46-python3-charset-normalizer_3.3.2-1_all.deb ... 419s Unpacking python3-charset-normalizer (3.3.2-1) ... 419s Selecting previously unselected package python3-more-itertools. 419s Preparing to unpack .../47-python3-more-itertools_10.3.0-1_all.deb ... 419s Unpacking python3-more-itertools (10.3.0-1) ... 419s Selecting previously unselected package python3-jaraco.functools. 419s Preparing to unpack .../48-python3-jaraco.functools_4.0.0-1_all.deb ... 419s Unpacking python3-jaraco.functools (4.0.0-1) ... 419s Selecting previously unselected package python3-cheroot. 419s Preparing to unpack .../49-python3-cheroot_10.0.0+ds1-2_all.deb ... 419s Unpacking python3-cheroot (10.0.0+ds1-2) ... 419s Selecting previously unselected package python3-dateutil. 419s Preparing to unpack .../50-python3-dateutil_2.9.0-2_all.deb ... 419s Unpacking python3-dateutil (2.9.0-2) ... 419s Selecting previously unselected package python3-diff-match-patch. 419s Preparing to unpack .../51-python3-diff-match-patch_20230430-1_all.deb ... 419s Unpacking python3-diff-match-patch (20230430-1) ... 419s Selecting previously unselected package python3-enchant. 419s Preparing to unpack .../52-python3-enchant_3.2.2-1_all.deb ... 419s Unpacking python3-enchant (3.2.2-1) ... 419s Selecting previously unselected package python3-rapidfuzz. 419s Preparing to unpack .../53-python3-rapidfuzz_3.9.4+ds-1_amd64.deb ... 419s Unpacking python3-rapidfuzz (3.9.4+ds-1) ... 419s Selecting previously unselected package python3-levenshtein. 419s Preparing to unpack .../54-python3-levenshtein_0.25.1-3_amd64.deb ... 419s Unpacking python3-levenshtein (0.25.1-3) ... 419s Selecting previously unselected package python3-lxml:amd64. 419s Preparing to unpack .../55-python3-lxml_5.2.2-1_amd64.deb ... 419s Unpacking python3-lxml:amd64 (5.2.2-1) ... 419s Selecting previously unselected package python3-mistletoe. 419s Preparing to unpack .../56-python3-mistletoe_1.3.0-1_all.deb ... 419s Unpacking python3-mistletoe (1.3.0-1) ... 419s Selecting previously unselected package python3-ply. 419s Preparing to unpack .../57-python3-ply_3.11-6_all.deb ... 419s Unpacking python3-ply (3.11-6) ... 419s Selecting previously unselected package python3-phply. 419s Preparing to unpack .../58-python3-phply_1.2.6-1_all.deb ... 419s Unpacking python3-phply (1.2.6-1) ... 419s Selecting previously unselected package python3-ruamel.yaml.clib:amd64. 419s Preparing to unpack .../59-python3-ruamel.yaml.clib_0.2.8-1build1_amd64.deb ... 419s Unpacking python3-ruamel.yaml.clib:amd64 (0.2.8-1build1) ... 419s Selecting previously unselected package python3-ruamel.yaml. 419s Preparing to unpack .../60-python3-ruamel.yaml_0.17.21-1_all.deb ... 419s Unpacking python3-ruamel.yaml (0.17.21-1) ... 419s Selecting previously unselected package python3-simplejson. 419s Preparing to unpack .../61-python3-simplejson_3.19.2-1build2_amd64.deb ... 419s Unpacking python3-simplejson (3.19.2-1build2) ... 419s Selecting previously unselected package python3-wcwidth. 419s Preparing to unpack .../62-python3-wcwidth_0.2.5+dfsg1-1.1ubuntu1_all.deb ... 419s Unpacking python3-wcwidth (0.2.5+dfsg1-1.1ubuntu1) ... 419s Selecting previously unselected package python3-translate. 419s Preparing to unpack .../63-python3-translate_3.13.2-1_all.deb ... 419s Unpacking python3-translate (3.13.2-1) ... 419s Selecting previously unselected package python3-vobject. 419s Preparing to unpack .../64-python3-vobject_0.9.6.1-2_all.deb ... 419s Unpacking python3-vobject (0.9.6.1-2) ... 419s Selecting previously unselected package python3-xapian. 419s Preparing to unpack .../65-python3-xapian_1.4.22-1build5_amd64.deb ... 419s Unpacking python3-xapian (1.4.22-1build5) ... 419s Selecting previously unselected package subversion. 419s Preparing to unpack .../66-subversion_1.14.3-2_amd64.deb ... 419s Unpacking subversion (1.14.3-2) ... 419s Selecting previously unselected package translate-toolkit. 419s Preparing to unpack .../67-translate-toolkit_3.13.2-1_all.deb ... 419s Unpacking translate-toolkit (3.13.2-1) ... 419s Selecting previously unselected package python3-iniparse. 419s Preparing to unpack .../68-python3-iniparse_0.5-2_all.deb ... 419s Unpacking python3-iniparse (0.5-2) ... 419s Selecting previously unselected package python3-pycountry. 419s Preparing to unpack .../69-python3-pycountry_24.6.1+ds1-1_all.deb ... 419s Unpacking python3-pycountry (24.6.1+ds1-1) ... 420s Setting up python3-more-itertools (10.3.0-1) ... 420s Setting up libxapian30:amd64 (1.4.22-1build1) ... 420s Setting up python3-rapidfuzz (3.9.4+ds-1) ... 420s Setting up python3-diff-match-patch (20230430-1) ... 420s Setting up python3-jaraco.functools (4.0.0-1) ... 420s Setting up python3-aeidon (1.15-1) ... 420s Setting up libutf8proc3:amd64 (2.9.0-1build1) ... 420s Setting up libaspell15:amd64 (0.60.8.1-1build1) ... 420s Setting up python3-charset-normalizer (3.3.2-1) ... 420s Setting up python3-ply (3.11-6) ... 421s Setting up python3-ruamel.yaml.clib:amd64 (0.2.8-1build1) ... 421s Setting up libgomp1:amd64 (14.1.0-4ubuntu2) ... 421s Setting up python3-simplejson (3.19.2-1build2) ... 421s Setting up gcc-13-base:amd64 (13.3.0-3ubuntu1) ... 421s Setting up python3-wcwidth (0.2.5+dfsg1-1.1ubuntu1) ... 421s Setting up emacsen-common (3.0.5) ... 421s Setting up python3-cheroot (10.0.0+ds1-2) ... 421s Setting up libquadmath0:amd64 (14.1.0-4ubuntu2) ... 421s Setting up python3-pycountry (24.6.1+ds1-1) ... 421s Setting up python3-xapian (1.4.22-1build5) ... 421s Setting up libmpc3:amd64 (1.3.1-1build1) ... 421s Setting up libatomic1:amd64 (14.1.0-4ubuntu2) ... 421s Setting up libubsan1:amd64 (14.1.0-4ubuntu2) ... 421s Setting up python3-ruamel.yaml (0.17.21-1) ... 422s Setting up python3-mistletoe (1.3.0-1) ... 422s Setting up libhwasan0:amd64 (14.1.0-4ubuntu2) ... 422s Setting up libasan8:amd64 (14.1.0-4ubuntu2) ... 422s Setting up libexttextcat-data (3.4.7-1build1) ... 422s Setting up libapr1t64:amd64 (1.7.2-3.2) ... 422s Setting up libxslt1.1:amd64 (1.1.39-0exp1build1) ... 422s Setting up python3-dateutil (2.9.0-2) ... 422s Setting up python3-levenshtein (0.25.1-3) ... 422s Setting up libtsan2:amd64 (14.1.0-4ubuntu2) ... 422s Setting up libhunspell-1.7-0:amd64 (1.7.2+really1.7.2-10build3) ... 422s Setting up libisl23:amd64 (0.26-3build1) ... 422s Setting up python3-soupsieve (2.5-1) ... 422s Setting up python3-iniparse (0.5-2) ... 422s Setting up libcc1-0:amd64 (14.1.0-4ubuntu2) ... 422s Setting up liblsan0:amd64 (14.1.0-4ubuntu2) ... 422s Setting up libitm1:amd64 (14.1.0-4ubuntu2) ... 422s Setting up libaprutil1t64:amd64 (1.6.3-2ubuntu1) ... 422s Setting up python3-vobject (0.9.6.1-2) ... 422s /usr/lib/python3/dist-packages/vobject/base.py:736: SyntaxWarning: invalid escape sequence '\-' 422s patterns['name'] = '[a-zA-Z0-9\-_]+' 422s /usr/lib/python3/dist-packages/vobject/base.py:1219: SyntaxWarning: invalid escape sequence '\;' 422s s = s.replace("\\", "\\\\").replace(";", "\;").replace(",", "\,") 422s /usr/lib/python3/dist-packages/vobject/base.py:1219: SyntaxWarning: invalid escape sequence '\,' 422s s = s.replace("\\", "\\\\").replace(";", "\;").replace(",", "\,") 422s /usr/lib/python3/dist-packages/vobject/hcalendar.py:1: SyntaxWarning: invalid escape sequence '\,' 422s """ 422s Setting up gettext (0.22.5-1) ... 422s Setting up python3-phply (1.2.6-1) ... 423s Setting up dictionaries-common (1.29.7) ... 423s Setting up cpp-13-x86-64-linux-gnu (13.3.0-3ubuntu1) ... 423s Setting up libserf-1-1:amd64 (1.3.10-3ubuntu1) ... 423s Setting up python3-bs4 (4.12.3-1) ... 423s Setting up libgcc-13-dev:amd64 (13.3.0-3ubuntu1) ... 423s Setting up python3-lxml:amd64 (5.2.2-1) ... 423s Setting up hunspell-en-us (1:2020.12.07-2) ... 423s Setting up libsvn1:amd64 (1.14.3-2) ... 423s Setting up libstdc++-13-dev:amd64 (13.3.0-3ubuntu1) ... 423s Setting up cpp-x86-64-linux-gnu (4:13.3.0-2ubuntu2) ... 423s Setting up cpp-13 (13.3.0-3ubuntu1) ... 423s Setting up libenchant-2-2:amd64 (2.3.3-2build2) ... 423s Setting up gcc-13-x86-64-linux-gnu (13.3.0-3ubuntu1) ... 423s Setting up subversion (1.14.3-2) ... 423s Setting up python3-enchant (3.2.2-1) ... 424s Setting up gcc-13 (13.3.0-3ubuntu1) ... 424s Setting up python3-translate (3.13.2-1) ... 424s Setting up translate-toolkit (3.13.2-1) ... 424s Setting up cpp (4:13.3.0-2ubuntu2) ... 424s Setting up g++-13-x86-64-linux-gnu (13.3.0-3ubuntu1) ... 424s Setting up gcc-x86-64-linux-gnu (4:13.3.0-2ubuntu2) ... 424s Setting up gcc (4:13.3.0-2ubuntu2) ... 424s Setting up g++-x86-64-linux-gnu (4:13.3.0-2ubuntu2) ... 424s Setting up g++-13 (13.3.0-3ubuntu1) ... 424s Setting up g++ (4:13.3.0-2ubuntu2) ... 424s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 424s Setting up build-essential (12.10ubuntu1) ... 424s Processing triggers for libc-bin (2.39-0ubuntu9) ... 424s Processing triggers for man-db (2.12.1-2) ... 425s Processing triggers for install-info (7.1-3build2) ... 425s Processing triggers for dictionaries-common (1.29.7) ... 426s Reading package lists... 426s Building dependency tree... 426s Reading state information... 427s Starting pkgProblemResolver with broken count: 0 427s Starting 2 pkgProblemResolver with broken count: 0 427s Done 427s The following NEW packages will be installed: 427s autopkgtest-satdep 427s 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 427s Need to get 0 B/696 B of archives. 427s After this operation, 0 B of additional disk space will be used. 427s Get:1 /tmp/autopkgtest.yhF5Vh/2-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [696 B] 427s Selecting previously unselected package autopkgtest-satdep. 427s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 79213 files and directories currently installed.) 427s Preparing to unpack .../2-autopkgtest-satdep.deb ... 427s Unpacking autopkgtest-satdep (0) ... 427s Setting up autopkgtest-satdep (0) ... 428s autopkgtest: WARNING: package translate-toolkit:i386 is not installed though it should be 439s (Reading database ... 79213 files and directories currently installed.) 439s Removing autopkgtest-satdep (0) ... 465s autopkgtest [21:37:59]: test translate-toolkit: [----------------------- 465s ========= SMOKE TEST: /usr/bin/android2po =========== 465s Usage: android2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 465s 465s Convert Android string files to Gettext PO localization files. See: 465s http://docs.translatehouse.org/projects/translate- 465s toolkit/en/latest/commands/android2po.html for examples and usage 465s instructions. 465s 465s Options: 465s --version show program's version number and exit 465s -h, --help show this help message and exit 465s --manpage output a manpage based on the help 465s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 465s --errorlevel=ERRORLEVEL 465s show errorlevel as: none, message, exception, 465s traceback 465s -i INPUT, --input=INPUT 465s read from INPUT in xml format 465s -x EXCLUDE, --exclude=EXCLUDE 465s exclude names matching EXCLUDE from input paths 465s -o OUTPUT, --output=OUTPUT 465s write to OUTPUT in po, pot formats 465s -t TEMPLATE, --template=TEMPLATE 465s read from TEMPLATE in xml format 465s -S, --timestamp skip conversion if the output file has newer timestamp 465s --duplicates=DUPLICATESTYLE 465s what to do with duplicate strings (identical source 465s text): merge, msgctxt (default: 'msgctxt') 465s ========= SMOKE TEST: /usr/bin/build_tmdb =========== 465s usage: build_tmdb [-h] [-d TMDB_FILE] [-s SOURCE_LANG] -t TARGET_LANG 465s input files [input files ...] 465s 465s positional arguments: 465s input files 465s 465s options: 465s -h, --help show this help message and exit 465s -d TMDB_FILE, --tmdb TMDB_FILE 465s translation memory database file (default: tm.db) 465s -s SOURCE_LANG, --import-source-lang SOURCE_LANG 465s source language of translation files (default: en) 465s -t TARGET_LANG, --import-target-lang TARGET_LANG 465s target language of translation files 465s ========= SMOKE TEST: /usr/bin/csv2po =========== 465s 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] 465s 465s Convert Comma-Separated Value (.csv) files to Gettext PO localization files. 465s See: http://docs.translatehouse.org/projects/translate- 465s toolkit/en/latest/commands/csv2po.html for examples and usage instructions. 465s 465s Options: 465s --version show program's version number and exit 465s -h, --help show this help message and exit 465s --manpage output a manpage based on the help 465s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 465s --errorlevel=ERRORLEVEL 465s show errorlevel as: none, message, exception, 465s traceback 465s -i INPUT, --input=INPUT 465s read from INPUT in csv format 465s -x EXCLUDE, --exclude=EXCLUDE 465s exclude names matching EXCLUDE from input paths 465s -o OUTPUT, --output=OUTPUT 465s write to OUTPUT in po, pot formats 465s -t TEMPLATE, --template=TEMPLATE 465s read from TEMPLATE in po, pot, pot formats 465s -S, --timestamp skip conversion if the output file has newer timestamp 465s -P, --pot output PO Templates (.pot) rather than PO files (.po) 465s --charset=CHARSET set charset to decode from csv files 465s --columnorder=COLUMNORDER 465s specify the order and position of columns 465s (location,source,target,context) 465s --duplicates=DUPLICATESTYLE 465s what to do with duplicate strings (identical source 465s text): merge, msgctxt (default: 'msgctxt') 465s ========= SMOKE TEST: /usr/bin/csv2tbx =========== 465s Usage: csv2tbx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 465s 465s Convert Comma-Separated Value (.csv) files to a TermBase eXchange (.tbx) 465s glossary file. See: http://docs.translatehouse.org/projects/translate- 465s toolkit/en/latest/commands/csv2tbx.html for examples and usage instructions 465s 465s Options: 465s --version show program's version number and exit 465s -h, --help show this help message and exit 465s --manpage output a manpage based on the help 465s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 465s --errorlevel=ERRORLEVEL 465s show errorlevel as: none, message, exception, 465s traceback 465s -i INPUT, --input=INPUT 465s read from INPUT in csv format 465s -x EXCLUDE, --exclude=EXCLUDE 465s exclude names matching EXCLUDE from input paths 465s -o OUTPUT, --output=OUTPUT 465s write to OUTPUT in tbx format 465s -S, --timestamp skip conversion if the output file has newer timestamp 465s --charset=CHARSET set charset to decode from csv files 465s --columnorder=COLUMNORDER 465s specify the order and position of columns 465s (comment,source,target) 465s ========= SMOKE TEST: /usr/bin/dtd2po =========== 465s 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] 465s 465s Convert a Mozilla .dtd UTF-8 localization format to a Gettext PO localization 465s file. Uses the po and dtd modules, and the dtd2po convertor class which is in 465s this module You can convert back to .dtd using po2dtd.py. 465s 465s Options: 465s --version show program's version number and exit 465s -h, --help show this help message and exit 465s --manpage output a manpage based on the help 465s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 465s --errorlevel=ERRORLEVEL 465s show errorlevel as: none, message, exception, 465s traceback 465s -i INPUT, --input=INPUT 465s read from INPUT in dtd format 465s -x EXCLUDE, --exclude=EXCLUDE 465s exclude names matching EXCLUDE from input paths 465s -o OUTPUT, --output=OUTPUT 465s write to OUTPUT in po, pot formats 465s -t TEMPLATE, --template=TEMPLATE 465s read from TEMPLATE in dtd format 465s -S, --timestamp skip conversion if the output file has newer timestamp 465s -P, --pot output PO Templates (.pot) rather than PO files (.po) 465s --duplicates=DUPLICATESTYLE 465s what to do with duplicate strings (identical source 465s text): merge, msgctxt (default: 'msgctxt') 466s ========= SMOKE TEST: /usr/bin/flatxml2po =========== 466s Usage: flatxml2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 466s 466s Convert flat XML files to Gettext PO localization files. See: 466s http://docs.translatehouse.org/projects/translate- 466s toolkit/en/latest/commands/flatxml2po.html for examples and usage 466s instructions. 466s 466s Options: 466s --version show program's version number and exit 466s -h, --help show this help message and exit 466s --manpage output a manpage based on the help 466s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 466s --errorlevel=ERRORLEVEL 466s show errorlevel as: none, message, exception, 466s traceback 466s -i INPUT, --input=INPUT 466s read from INPUT in xml format 466s -x EXCLUDE, --exclude=EXCLUDE 466s exclude names matching EXCLUDE from input paths 466s -o OUTPUT, --output=OUTPUT 466s write to OUTPUT in po, pot formats 466s -S, --timestamp skip conversion if the output file has newer timestamp 466s -r ROOT, --root=ROOT name of the XML root element (default: "root") 466s -v VALUE, --value=VALUE 466s name of the XML value element (default: "str") 466s -k KEY, --key=KEY name of the XML key attribute (default: "key") 466s -n NS, --namespace=NS 466s XML namespace uri (default: None) 466s ========= SMOKE TEST: /usr/bin/html2po =========== 466s Usage: html2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 466s 466s Convert HTML files to Gettext PO localization files. See: 466s http://docs.translatehouse.org/projects/translate- 466s toolkit/en/latest/commands/html2po.html for examples and usage instructions. 466s 466s Options: 466s --version show program's version number and exit 466s -h, --help show this help message and exit 466s --manpage output a manpage based on the help 466s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 466s --errorlevel=ERRORLEVEL 466s show errorlevel as: none, message, exception, 466s traceback 466s -i INPUT, --input=INPUT 466s read from INPUT in htm, html, xhtml formats 466s -x EXCLUDE, --exclude=EXCLUDE 466s exclude names matching EXCLUDE from input paths 466s -o OUTPUT, --output=OUTPUT 466s write to OUTPUT in po, pot formats 466s -S, --timestamp skip conversion if the output file has newer timestamp 466s -P, --pot output PO Templates (.pot) rather than PO files (.po) 466s --keepcomments preserve html comments as translation notes in the 466s output 466s --duplicates=DUPLICATESTYLE 466s what to do with duplicate strings (identical source 466s text): merge, msgctxt (default: 'msgctxt') 466s --multifile=MULTIFILESTYLE 466s how to split po/pot files (single, toplevel or 466s onefile) 466s ========= SMOKE TEST: /usr/bin/ical2po =========== 466s 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] 466s 466s Convert iCalendar files to Gettext PO localization files. See: 466s http://docs.translatehouse.org/projects/translate- 466s toolkit/en/latest/commands/ical2po.html for examples and usage instructions. 466s 466s Options: 466s --version show program's version number and exit 466s -h, --help show this help message and exit 466s --manpage output a manpage based on the help 466s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 466s --errorlevel=ERRORLEVEL 466s show errorlevel as: none, message, exception, 466s traceback 466s -i INPUT, --input=INPUT 466s read from INPUT in ics format 466s -x EXCLUDE, --exclude=EXCLUDE 466s exclude names matching EXCLUDE from input paths 466s -o OUTPUT, --output=OUTPUT 466s write to OUTPUT in po, pot formats 466s -t TEMPLATE, --template=TEMPLATE 466s read from TEMPLATE in ics format 466s -S, --timestamp skip conversion if the output file has newer timestamp 466s -P, --pot output PO Templates (.pot) rather than PO files (.po) 466s --duplicates=DUPLICATESTYLE 466s what to do with duplicate strings (identical source 466s text): merge, msgctxt (default: 'msgctxt') 466s ========= SMOKE TEST: /usr/bin/idml2po =========== 466s Usage: idml2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 466s 466s Convert IDML files to PO localization files. 466s 466s Options: 466s --version show program's version number and exit 466s -h, --help show this help message and exit 466s --manpage output a manpage based on the help 466s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 466s --errorlevel=ERRORLEVEL 466s show errorlevel as: none, message, exception, 466s traceback 466s -i INPUT, --input=INPUT 466s read from INPUT in idml format 466s -x EXCLUDE, --exclude=EXCLUDE 466s exclude names matching EXCLUDE from input paths 466s -o OUTPUT, --output=OUTPUT 466s write to OUTPUT in po, pot formats 466s -S, --timestamp skip conversion if the output file has newer timestamp 466s ========= SMOKE TEST: /usr/bin/ini2po =========== 466s 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] 466s 466s Convert .ini files to Gettext PO localization files. See: 466s http://docs.translatehouse.org/projects/translate- 466s toolkit/en/latest/commands/ini2po.html for examples and usage instructions. 466s 466s Options: 466s --version show program's version number and exit 466s -h, --help show this help message and exit 466s --manpage output a manpage based on the help 466s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 466s --errorlevel=ERRORLEVEL 466s show errorlevel as: none, message, exception, 466s traceback 466s -i INPUT, --input=INPUT 466s read from INPUT in ini, isl, iss formats 466s -x EXCLUDE, --exclude=EXCLUDE 466s exclude names matching EXCLUDE from input paths 466s -o OUTPUT, --output=OUTPUT 466s write to OUTPUT in po, pot formats 466s -t TEMPLATE, --template=TEMPLATE 466s read from TEMPLATE in ini, isl, iss formats 466s -S, --timestamp skip conversion if the output file has newer timestamp 466s -P, --pot output PO Templates (.pot) rather than PO files (.po) 466s --duplicates=DUPLICATESTYLE 466s what to do with duplicate strings (identical source 466s text): merge, msgctxt (default: 'msgctxt') 466s ========= SMOKE TEST: /usr/bin/json2po =========== 467s 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] 467s 467s Convert JSON files to Gettext PO localization files. See: 467s http://docs.translatehouse.org/projects/translate- 467s toolkit/en/latest/commands/json2po.html for examples and usage instructions. 467s 467s Options: 467s --version show program's version number and exit 467s -h, --help show this help message and exit 467s --manpage output a manpage based on the help 467s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 467s --errorlevel=ERRORLEVEL 467s show errorlevel as: none, message, exception, 467s traceback 467s -i INPUT, --input=INPUT 467s read from INPUT in json format 467s -x EXCLUDE, --exclude=EXCLUDE 467s exclude names matching EXCLUDE from input paths 467s -o OUTPUT, --output=OUTPUT 467s write to OUTPUT in po, pot formats 467s -t TEMPLATE, --template=TEMPLATE 467s read from TEMPLATE in json format 467s -S, --timestamp skip conversion if the output file has newer timestamp 467s -P, --pot output PO Templates (.pot) rather than PO files (.po) 467s --filter=FILTER leaves to extract e.g. 'name,desc': (default: extract 467s everything) 467s --duplicates=DUPLICATESTYLE 467s what to do with duplicate strings (identical source 467s text): merge, msgctxt (default: 'msgctxt') 467s ========= SMOKE TEST: /usr/bin/md2po =========== 467s Usage: md2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 467s 467s Convert Markdown files to Gettext PO localization files. See: 467s http://docs.translatehouse.org/projects/translate- 467s toolkit/en/latest/commands/md2po.html for examples and usage instructions. 467s 467s Options: 467s --version show program's version number and exit 467s -h, --help show this help message and exit 467s --manpage output a manpage based on the help 467s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 467s --errorlevel=ERRORLEVEL 467s show errorlevel as: none, message, exception, 467s traceback 467s -i INPUT, --input=INPUT 467s read from INPUT in markdown, md, text, txt formats 467s -x EXCLUDE, --exclude=EXCLUDE 467s exclude names matching EXCLUDE from input paths 467s -o OUTPUT, --output=OUTPUT 467s write to OUTPUT in po, pot formats 467s -S, --timestamp skip conversion if the output file has newer timestamp 467s -P, --pot output PO Templates (.pot) rather than PO files (.po) 467s --duplicates=DUPLICATESTYLE 467s what to do with duplicate strings (identical source 467s text): merge, msgctxt (default: 'msgctxt') 467s --multifile=MULTIFILESTYLE 467s how to split po/pot files (single, toplevel or 467s onefile) 467s ========= SMOKE TEST: /usr/bin/moz2po =========== 467s 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] 467s 467s Convert Mozilla .dtd and .properties files to Gettext PO localization files. 467s See: http://docs.translatehouse.org/projects/translate- 467s toolkit/en/latest/commands/moz2po.html for examples and usage instructions. 467s 467s Options: 467s --version show program's version number and exit 467s -h, --help show this help message and exit 467s --manpage output a manpage based on the help 467s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 467s --errorlevel=ERRORLEVEL 467s show errorlevel as: none, message, exception, 467s traceback 467s -i INPUT, --input=INPUT 467s read from INPUT in *, dtd, inc, ini, it, js, lang, 467s manifest, properties, rdf formats 467s -x EXCLUDE, --exclude=EXCLUDE 467s exclude names matching EXCLUDE from input paths 467s -o OUTPUT, --output=OUTPUT 467s write to OUTPUT in *, dtd.po, dtd.pot, inc.po, 467s inc.pot, ini.po, ini.pot, it.po, it.pot, js, lang.po, 467s lang.pot, manifest, properties.po, properties.pot, rdf 467s formats 467s -t TEMPLATE, --template=TEMPLATE 467s read from TEMPLATE in *, dtd, inc, ini, it, js, lang, 467s manifest, properties, rdf formats 467s -S, --timestamp skip conversion if the output file has newer timestamp 467s -P, --pot output PO Templates (.pot) rather than PO files (.po) 467s --duplicates=DUPLICATESTYLE 467s what to do with duplicate strings (identical source 467s text): merge, msgctxt (default: 'msgctxt') 467s ========= SMOKE TEST: /usr/bin/mozlang2po =========== 467s Usage: mozlang2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 480s 480s Convert Mozilla .lang files to Gettext PO localization files. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in lang format 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -P, --pot output PO Templates (.pot) rather than PO files (.po) 480s --encoding=ENCODING The encoding of the input file (default: UTF-8) 480s --duplicates=DUPLICATESTYLE 480s what to do with duplicate strings (identical source 480s text): merge, msgctxt (default: 'msgctxt') 480s ========= SMOKE TEST: /usr/bin/msghack =========== 480s Usage: /usr/bin/msghack [OPTION] file.po [ref.po] 480s This program can be used to alter .po files in ways no sane mind would think about. 480s -o result will be written to FILE 480s --invert invert a po file by switching msgid and msgstr 480s --master join any number of files in a master-formatted catalog 480s --empty empty the contents of the .po file, creating a .pot 480s --append append entries from ref.po that don't exist in file.po 480s 480s Note: It is just a replacement of msghack for backward support. 480s 480s ========= SMOKE TEST: /usr/bin/odf2xliff =========== 480s Usage: odf2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 480s 480s Convert OpenDocument (ODF) files to XLIFF localization files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/odf2xliff.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in odc, odf, odg, odi, odm, odp, ods, 480s odt, otc, otf, otg, oth, oti, otp, ots, ott, sxw 480s formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in xlf, xliff formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s ========= SMOKE TEST: /usr/bin/oo2po =========== 480s Usage: oo2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 480s 480s Convert an OpenOffice.org (SDF) localization file to Gettext PO localization 480s files. See: http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in oo, sdf formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -P, --pot output PO Templates (.pot) rather than PO files (.po) 480s -l LANG, --language=LANG 480s set target language to extract from oo file (e.g. af- 480s ZA) 480s --source-language=LANG 480s set source language code (default en-US) 480s --nonrecursiveinput don't treat the input oo as a recursive store 480s --duplicates=DUPLICATESTYLE 480s what to do with duplicate strings (identical source 480s text): merge, msgctxt (default: 'msgctxt') 480s --multifile=MULTIFILESTYLE 480s how to split po/pot files (single, toplevel or 480s onefile) 480s ========= SMOKE TEST: /usr/bin/oo2xliff =========== 480s Usage: oo2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 480s 480s Convert an OpenOffice.org (SDF) localization file to XLIFF localization 480s files. See: http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in oo, sdf formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in xlf, xliff formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -l LANG, --language=LANG 480s set target language to extract from oo file (e.g. af- 480s ZA) 480s --source-language=LANG 480s set source language code (default en-US) 480s --nonrecursiveinput don't treat the input oo as a recursive store 480s --duplicates=DUPLICATESTYLE 480s what to do with duplicate strings (identical source 480s text): merge, msgctxt (default: 'msgctxt') 480s --multifile=MULTIFILESTYLE 480s how to split po/pot files (single, toplevel or 480s onefile) 480s ========= SMOKE TEST: /usr/bin/php2po =========== 480s 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] 480s 480s Convert PHP localization files to Gettext PO localization files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/php2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in html, php formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in html, php formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -P, --pot output PO Templates (.pot) rather than PO files (.po) 480s --duplicates=DUPLICATESTYLE 480s what to do with duplicate strings (identical source 480s text): merge, msgctxt (default: 'msgctxt') 480s ========= SMOKE TEST: /usr/bin/phppo2pypo =========== 480s Usage: phppo2pypo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 480s 480s Convert PHP format .po files to Python format .po files. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s ========= SMOKE TEST: /usr/bin/po2csv =========== 480s Usage: po2csv [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 480s 480s Convert Gettext PO localization files to Comma-Separated Value (.csv) files. 480s See: http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/csv2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in csv format 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --columnorder=COLUMNORDER 480s specify the order and position of columns 480s (location,source,target,context) 480s ========= SMOKE TEST: /usr/bin/po2dtd =========== 480s Usage: po2dtd [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Converts a Gettext PO file to a UTF-8 encoded Mozilla .dtd file. .. note: 480s Conversion is either done using a template plus PO file or just using the 480s .po file. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in dtd format 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in dtd format 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --threshold=PERCENT only convert files where the translation completion is 480s above PERCENT 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s --removeuntranslated remove untranslated strings from output 480s ========= SMOKE TEST: /usr/bin/po2flatxml =========== 480s Usage: po2flatxml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert Gettext PO localization files to flat XML files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/flatxml2po.html for examples and usage 480s instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in xml format 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in xml format 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -r ROOT, --root=ROOT name of the XML root element (default: "root") 480s -v VALUE, --value=VALUE 480s name of the XML value element (default: "str") 480s -k KEY, --key=KEY name of the XML key attribute (default: "key") 480s -n NS, --namespace=NS 480s XML namespace uri (default: None) 480s -w INDENT, --indent=INDENT 480s indent width in spaces, 0 for no indent (default: 2) 480s ========= SMOKE TEST: /usr/bin/po2html =========== 480s Usage: po2html [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Translate HTML files using Gettext PO localization files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/html2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in htm, html, xhtml formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in htm, html, xhtml formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --threshold=PERCENT only convert files where the translation completion is 480s above PERCENT 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s ========= SMOKE TEST: /usr/bin/po2ical =========== 480s Usage: po2ical [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert Gettext PO localization files to iCalendar files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/ical2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in ics format 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in ics format 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --threshold=PERCENT only convert files where the translation completion is 480s above PERCENT 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s ========= SMOKE TEST: /usr/bin/po2idml =========== 480s Usage: po2idml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Takes an IDML template file and a PO file containing translations of strings 480s in the IDML template. It creates a new IDML file using the translations of the 480s PO file. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in idml format 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in idml format 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s ========= SMOKE TEST: /usr/bin/po2ini =========== 480s Usage: po2ini [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert Gettext PO localization files to .ini files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/ini2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in ini, isl formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in ini, isl formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --threshold=PERCENT only convert files where the translation completion is 480s above PERCENT 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s ========= SMOKE TEST: /usr/bin/po2json =========== 480s Usage: po2json [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert Gettext PO localization files to JSON files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/json2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in json format 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in json format 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --threshold=PERCENT only convert files where the translation completion is 480s above PERCENT 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s --removeuntranslated remove untranslated strings from output 480s ========= SMOKE TEST: /usr/bin/po2md =========== 480s Usage: po2md [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Translate Markdown files using Gettext PO localization files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/md2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in markdown, md, text, txt formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in markdown, md, text, txt formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -m MAXLENGTH, --maxlinelength=MAXLENGTH 480s reflow (word wrap) the output to the given maximum 480s line length. set to 0 to disable 480s --threshold=PERCENT only convert files where the translation completion is 480s above PERCENT 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s ========= SMOKE TEST: /usr/bin/po2moz =========== 480s Usage: po2moz [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert Gettext PO localization files to Mozilla .dtd and .properties files. 480s See: http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/moz2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in *, dtd.po, dtd.pot, inc.po, 480s inc.pot, ini.po, ini.pot, it.po, it.pot, js, lang.po, 480s lang.pot, manifest, properties.po, properties.pot, rdf 480s formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in *, dtd, inc, ini, it, js, lang, 480s manifest, properties, rdf formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in *, dtd, inc, ini, it, js, lang, 480s manifest, properties, rdf formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -l LOCALE, --locale=LOCALE 480s set output locale (required as this sets the directory 480s names) 480s --threshold=PERCENT only convert files where the translation completion is 480s above PERCENT 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s --removeuntranslated remove untranslated strings from output 480s ========= SMOKE TEST: /usr/bin/po2mozlang =========== 480s Usage: po2mozlang [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert Gettext PO localization files to Mozilla .lang files. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in lang format 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in lang format 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --mark-active mark the file as active 480s --threshold=PERCENT only convert files where the translation completion is 480s above PERCENT 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s ========= SMOKE TEST: /usr/bin/po2oo =========== 480s Usage: po2oo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert Gettext PO localization files to an OpenOffice.org (SDF) localization 480s file. See: http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot, xlf, xliff formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in oo, sdf formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in oo, sdf formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -l LANG, --language=LANG 480s set target language code (e.g. af-ZA) [required] 480s --source-language=LANG 480s set source language code (default en-US) 480s -T, --keeptimestamp don't change the timestamps of the strings 480s --nonrecursiveoutput don't treat the output oo as a recursive store 480s --nonrecursivetemplate 480s don't treat the template oo as a recursive store 480s --skipsource don't output the source language, but fallback to it 480s where needed 480s --filteraction=ACTION 480s action on pofilter failure: none (default), warn, 480s exclude-serious, exclude-all 480s --threshold=PERCENT only convert files where the translation completion is 480s above PERCENT 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s --multifile=MULTIFILESTYLE 480s how to split po/pot files (single, toplevel or 480s onefile) 480s ========= SMOKE TEST: /usr/bin/po2php =========== 480s Usage: po2php [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert Gettext PO localization files to PHP localization files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/php2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in html, php formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in html, php formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --threshold=PERCENT only convert files where the translation completion is 480s above PERCENT 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s ========= SMOKE TEST: /usr/bin/po2prop =========== 480s Usage: po2prop [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert Gettext PO localization files to Java/Mozilla .properties files. 480s See: http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/prop2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in lang, properties, strings formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in lang, properties, strings 480s formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --personality=TYPE override the input file format: java, java-utf8, java- 480s utf16, xwiki, flex, mozilla, gaia, gwt, skype, 480s strings, strings-utf8, joomla (for .properties files, 480s default: java) 480s --encoding=ENCODING override the encoding set by the personality 480s --threshold=PERCENT only convert files where the translation completion is 480s above PERCENT 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s --removeuntranslated remove untranslated strings from output 480s ========= SMOKE TEST: /usr/bin/po2rc =========== 480s Usage: po2rc [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert Gettext PO localization files back to Windows Resource (.rc) files. 480s See: http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/rc2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in rc format 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in rc format 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --charset=CHARSET charset to use to decode the RC files (default: utf-8) 480s -l LANG, --lang=LANG LANG entry 480s --sublang=SUBLANG SUBLANG entry (default: SUBLANG_DEFAULT) 480s --threshold=PERCENT only convert files where the translation completion is 480s above PERCENT 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s ========= SMOKE TEST: /usr/bin/po2resx =========== 480s Usage: po2resx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert Gettext PO localisation files to .Net Resource (.resx) files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/resx2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in resx format 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in resx format 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s ========= SMOKE TEST: /usr/bin/po2sub =========== 480s Usage: po2sub [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert Gettext PO localization files to subtitle files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/sub2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in ass, srt, ssa, sub formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in ass, srt, ssa, sub formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --threshold=PERCENT only convert files where the translation completion is 480s above PERCENT 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s ========= SMOKE TEST: /usr/bin/po2symb =========== 480s Usage: po2symb [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert Gettext PO localization files to Symbian translation files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/symb2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in r0 format 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --duplicates=DUPLICATESTYLE 480s what to do with duplicate strings (identical source 480s text): merge, msgctxt (default: 'msgctxt') 480s ========= SMOKE TEST: /usr/bin/po2tiki =========== 480s Usage: po2tiki [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 480s 480s Convert Gettext PO files to TikiWiki's language.php files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/tiki2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in tiki format 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s ========= SMOKE TEST: /usr/bin/po2tmx =========== 480s Usage: po2tmx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 480s 480s Convert Gettext PO localization files to a TMX (Translation Memory eXchange) 480s file. See: http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/po2tmx.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in tmx format 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -l LANG, --language=LANG 480s set target language code (e.g. af-ZA) [required] 480s --source-language=LANG 480s set source language code (default: en) 480s --comments=COMMENT set default comment import: none, source, type or 480s others (default: none) 480s ========= SMOKE TEST: /usr/bin/po2ts =========== 480s Usage: po2ts [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert Gettext PO localization files to Qt Linguist (.ts) files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/ts2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in ts format 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in ts format 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -c CONTEXT, --context=CONTEXT 480s use supplied context instead of the one in the .po 480s file comment 480s ========= SMOKE TEST: /usr/bin/po2txt =========== 480s Usage: po2txt [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert Gettext PO localization files to plain text (.txt) files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/txt2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot, xlf, xliff formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in txt format 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in txt format 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --encoding=ENCODING The encoding of the template file (default: UTF-8) 480s -w WRAP, --wrap=WRAP set number of columns to wrap text at 480s --threshold=PERCENT only convert files where the translation completion is 480s above PERCENT 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s ========= SMOKE TEST: /usr/bin/po2web2py =========== 480s Usage: po2web2py [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 480s 480s Convert GNU/gettext PO files to web2py translation dictionaries (.py). See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/web2py2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in py format 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --threshold=PERCENT only convert files where the translation completion is 480s above PERCENT 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s ========= SMOKE TEST: /usr/bin/po2wordfast =========== 480s Usage: po2wordfast [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 480s 480s Convert Gettext PO localization files to a Wordfast translation memory file. 480s See: http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/po2wordfast.html for examples and usage 480s instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in txt format 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -l LANG, --language=LANG 480s set target language code (e.g. af-ZA) [required] 480s --source-language=LANG 480s set source language code (default: en) 480s ========= SMOKE TEST: /usr/bin/po2xliff =========== 480s Usage: po2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert Gettext PO localization files to XLIFF localization files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/xliff2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in xlf, xliff formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in xlf, xliff formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s ========= SMOKE TEST: /usr/bin/po2yaml =========== 480s Usage: po2yaml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert Gettext PO localization files to YAML files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/yaml2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in yaml, yml formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in yaml, yml formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --threshold=PERCENT only convert files where the translation completion is 480s above PERCENT 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s ========= SMOKE TEST: /usr/bin/poclean =========== 480s Usage: poclean [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 480s 480s Produces a clean file from an unclean file (Trados/Wordfast) by stripping out 480s the tw4win indicators. This does not convert an RTF file to PO/XLIFF, but 480s produces the target file with only the target text in from a text version of 480s the RTF. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot, xlf, xliff formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot, xlf, xliff formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s ========= SMOKE TEST: /usr/bin/pocompendium =========== 480s Usage: pocompendium [options] output.po <-d directory(s)|file(s)> 480s The first parameter is the output file, standard output if the output file is '-'. 480s Any number of directories may be specified for input files. 480s Options: 480s --invert|v Creates an inverse compendium with msgid and msgstr swapped 480s --errors|e Only ouput msg bundles that have errors 480s --correct|c Only ouput msg bundles that are correctly translated 480s --ignore-case|i Drops all strings to lowercase 480s --strip-accel-tilde|-st Strip all tilde (~) accelerator characters 480s --strip-accel-amp|-sa Strip all ampersand (&) accelerator characters 480s --strip-accel-under|-su Strip all underscore (_) accelerator characters 480s ========= SMOKE TEST: /usr/bin/pocompile =========== 480s Usage: pocompile [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 480s 480s Compile XLIFF and Gettext PO localization files into Gettext MO (Machine 480s Object) files. See: http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/pocompile.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot, xlf, xliff formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in mo format 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s ========= SMOKE TEST: /usr/bin/poconflicts =========== 480s 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] 480s input directory is searched for PO files, PO files with name of conflicting string are output in output directory 480s 480s Conflict finder for Gettext PO localization files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/poconflicts.html for examples and usage 480s instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po format 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po format 480s -I, --ignore-case ignore case distinctions 480s -v, --invert invert the conflicts thus extracting conflicting 480s destination words 480s --accelerator=ACCELERATORS 480s ignores the given accelerator characters when matching 480s ========= SMOKE TEST: /usr/bin/pocount =========== 480s usage: pocount [-h] [--incomplete] 480s [--full | --csv | --short | --short-strings | --short-words] 480s [--no-color] 480s files [files ...] 480s 480s positional arguments: 480s files 480s 480s options: 480s -h, --help show this help message and exit 480s --incomplete skip 100% translated files. 480s 480s Output format: 480s --full (default) statistics in full, verbose format 480s --csv statistics in CSV format 480s --short same as --short-strings 480s --short-strings statistics of strings in short format - one line per file 480s --short-words statistics of words in short format - one line per file 480s --no-color show output without color 480s ========= SMOKE TEST: /usr/bin/podebug =========== 480s Usage: podebug [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 480s 480s Insert debug messages into XLIFF and Gettext PO localization files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/podebug.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot, pot, tmx, xlf, xliff 480s formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot, tmx, xlf, xliff formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -f FORMAT, --format=FORMAT 480s specify format string 480s --rewrite=STYLE the translation rewrite style: blank, bracket, chef, 480s classified, en, flipped, unicode, xxx 480s --ignore=APPLICATION apply tagging ignore rules for the given application: 480s gtk, kde, libreoffice, mozilla, openoffice 480s --preserveplaceholders 480s attempt to exclude characters that are part of 480s placeholders when performing character-level rewrites 480s so that consuming applications can still use the 480s placeholders to generate final output 480s ========= SMOKE TEST: /usr/bin/pofilter =========== 480s Usage: pofilter [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT 480s 480s Perform quality checks on Gettext PO, XLIFF and TMX localization files. 480s Snippet files are created whenever a test fails. These can be examined, 480s corrected and merged back into the originals using pomerge. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/pofilter.html for examples and usage instructions 480s and http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/pofilter_tests.html for full descriptions of all 480s tests. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot, tmx, xlf, xliff formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot, tmx, xlf, xliff formats 480s -l, --listfilters list filters available 480s --review include units marked for review (default) 480s --noreview exclude units marked for review 480s --fuzzy include units marked fuzzy (default) 480s --nofuzzy exclude units marked fuzzy 480s --nonotes don't add notes about the errors 480s --autocorrect output automatic corrections where possible rather 480s than describing issues 480s --language=LANG set target language code (e.g. af-ZA) [required for 480s spell check and recommended in general] 480s --openoffice use the standard checks for OpenOffice translations 480s --libreoffice use the standard checks for LibreOffice translations 480s --mozilla use the standard checks for Mozilla translations 480s --drupal use the standard checks for Drupal translations 480s --gnome use the standard checks for Gnome translations 480s --kde use the standard checks for KDE translations 480s --wx use the standard checks for wxWidgets translations 480s --excludefilter=FILTER 480s don't use FILTER when filtering 480s -t FILTER, --test=FILTER 480s only use test FILTERs specified with this option when 480s filtering 480s --notranslatefile=FILE 480s read list of untranslatable words from FILE (must not 480s be translated) 480s --musttranslatefile=FILE 480s read list of translatable words from FILE (must be 480s translated) 480s --validcharsfile=FILE 480s read list of all valid characters from FILE (must be 480s in UTF-8) 480s ========= SMOKE TEST: /usr/bin/pogrep =========== 480s 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] 480s 480s Grep XLIFF, Gettext PO and TMX localization files. Matches are output to 480s snippet files of the same type which can then be reviewed and later merged 480s using :doc:`pomerge `. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/pogrep.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in gmo, mo, po, pot, tmx, xlf, xlff, 480s xliff formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in gmo, mo, po, pot, tmx, xlf, xlff, 480s xliff formats 480s --search=SEARCHPARTS searches the given parts (source, target, notes and 480s locations) 480s -I, --ignore-case ignore case distinctions 480s -e, --regexp use regular expression matching 480s -v, --invert-match select non-matching lines 480s --accelerator=ACCELERATOR 480s ignores the given accelerator when matching 480s -k, --keep-translations 480s always extract units with translations 480s ========= SMOKE TEST: /usr/bin/pomerge =========== 480s Usage: pomerge [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Merges XLIFF and Gettext PO localization files. Snippet file produced by 480s e.g. :doc:`pogrep ` and updated by a translator can be 480s merged back into the original files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/pomerge.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot, pot, xlf, xliff formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot, pot, xlf, xliff formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in po, pot, pot, xlf, xliff formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --mergeblanks=MERGEBLANKS 480s whether to overwrite existing translations with blank 480s translations (yes/no). Default is yes. 480s --mergefuzzy=MERGEFUZZY 480s whether to consider fuzzy translations from input 480s (yes/no). Default is yes. 480s --mergecomments=MERGECOMMENTS 480s whether to merge comments as well as translations 480s (yes/no). Default is yes. 480s ========= SMOKE TEST: /usr/bin/pomigrate2 =========== 480s Usage pomigrate2 [options] 480s 480s Options: 480s -F|--use-fuzzy-matching - use fuzzy algorithms when merging to attempt to match strings 480s -C|--use-compendium - create and use a compendium built from the migrating files 480s -C|--use-compendium=some-compendium.po 480s - use an external compendium during the migration 480s --no-wrap - do not wrap long lines 480s --locale=lang - set locale for newly born files 480s -q|--quiet - suppress most output 480s -p|--pot2po - use pot2po instead of msgmerge to migrate 480s ========= SMOKE TEST: /usr/bin/popuretext =========== 480s Usage: popuretext ( -P pot-dir | po-dir ) file.txt [accelerator] 480s ========= SMOKE TEST: /usr/bin/poreencode =========== 480s Usage: poreencode 480s eg: poreencode UTF-8 af/ 480s ========= SMOKE TEST: /usr/bin/porestructure =========== 480s Usage: porestructure [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT 480s input directory is searched for PO files with (poconflicts) comments, all entries are written to files in a directory structure for pomerge 480s 480s Restructure Gettxt PO files produced by :doc:`poconflicts 480s ` into the original directory tree for merging using 480s :doc:`pomerge `. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/pomerge.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po format 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po format 480s ========= SMOKE TEST: /usr/bin/posegment =========== 480s Usage: posegment [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 480s 480s Segment Gettext PO, XLIFF and TMX localization files at the sentence level. 480s See: http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/posegment.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot, tmx, xlf, xliff formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot, tmx, xlf, xliff formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -P, --pot output PO Templates (.pot) rather than PO files (.po) 480s -l LANG, --language=LANG 480s the target language code 480s --source-language=LANG 480s the source language code (default 'en') 480s --keepspaces Disable automatic stripping of whitespace 480s --only-aligned Removes units where sentence number does not 480s correspond 480s ========= SMOKE TEST: /usr/bin/poswap =========== 480s Usage: poswap [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Builds a new translation file with the target of the input language as source 480s language. .. note:: Ensure that the two po files correspond 100% to the same 480s pot file before using this. To translate Kurdish (ku) through French:: 480s poswap -i fr/ -t ku -o fr-ku To convert the fr-ku files back to en-ku:: 480s poswap --reverse -i fr/ -t fr-ku -o en-ku See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/poswap.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in po, pot, pot formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --reverse reverse the process of intermediate language 480s conversion 480s ========= SMOKE TEST: /usr/bin/pot2po =========== 480s 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] 480s 480s Convert template files (like .pot or template .xlf files) to translation 480s files, preserving existing translations. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/pot2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in catkeys, lang, pot, ts, xlf, xliff 480s formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in catkeys, lang, po, pot, ts, xlf, 480s xliff formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in catkeys, lang, po, pot, ts, xlf, 480s xliff formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -P, --pot output PO Templates (.pot) rather than PO files (.po) 480s --tm=TM The file to use as translation memory when fuzzy 480s matching 480s -s MIN_SIMILARITY, --similarity=MIN_SIMILARITY 480s The minimum similarity for inclusion (default: 75%) 480s --nofuzzymatching Disable fuzzy matching 480s ========= SMOKE TEST: /usr/bin/poterminology =========== 480s 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] 480s input directory is searched for PO files, terminology PO file is output file 480s 480s Create a terminology file by reading a set of .po or .pot files to produce a 480s pootle-terminology.pot. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/poterminology.html for examples and usage 480s instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -u UPDATEFILE, --update=UPDATEFILE 480s update terminology in UPDATEFILE 480s -S STOPFILE, --stopword-list=STOPFILE 480s read stopword (term exclusion) list from STOPFILE 480s (default /usr/share/pyshared/translate/share/stoplist- 480s en) 480s -F, --fold-titlecase fold "Title Case" to lowercase (default) 480s -C, --preserve-case preserve all uppercase/lowercase 480s -I, --ignore-case make all terms lowercase 480s --accelerator=ACCELERATORS 480s ignore the given accelerator characters when matching 480s -t LENGTH, --term-words=LENGTH 480s generate terms of up to LENGTH words (default 3) 480s --nonstop-needed=MIN omit terms with less than MIN nonstop words (default 480s 1) 480s --inputs-needed=MIN omit terms appearing in less than MIN input files 480s (default 2, or 1 if only one input file) 480s --fullmsg-needed=MIN omit full message terms appearing in less than MIN 480s different messages (default 1) 480s --substr-needed=MIN omit substring-only terms appearing in less than MIN 480s different messages (default 2) 480s --locs-needed=MIN omit terms appearing in less than MIN different 480s original source files (default 2) 480s --sort=ORDER output sort order(s): frequency, dictionary, length 480s (may repeat option, default is all in above order) 480s --source-language=LANG 480s the source language code (default 'en') 480s -v, --invert invert the source and target languages for terminology 480s ========= SMOKE TEST: /usr/bin/pretranslate =========== 480s Usage: pretranslate [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Fill localization files with suggested translations based on translation 480s memory and existing translations. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/pretranslate.html for examples and usage 480s instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot, pot, xlf, xliff formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot, xlf, xliff formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in po, pot, xlf, xliff formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --tm=TM The file to use as translation memory when fuzzy 480s matching 480s -s MIN_SIMILARITY, --similarity=MIN_SIMILARITY 480s The minimum similarity for inclusion (default: 75%) 480s --nofuzzymatching Disable fuzzy matching 480s ========= SMOKE TEST: /usr/bin/prop2po =========== 480s 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] 480s 480s Convert Java/Mozilla .properties files to Gettext PO localization files. 480s See: http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/prop2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in lang, properties, strings formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in lang, properties, strings 480s formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -P, --pot output PO Templates (.pot) rather than PO files (.po) 480s --personality=TYPE override the input file format: java, java-utf8, java- 480s utf16, xwiki, flex, mozilla, gaia, gwt, skype, 480s strings, strings-utf8, joomla (for .properties files, 480s default: java) 480s --encoding=ENCODING override the encoding set by the personality 480s --duplicates=DUPLICATESTYLE 480s what to do with duplicate strings (identical source 480s text): merge, msgctxt (default: 'msgctxt') 480s ========= SMOKE TEST: /usr/bin/pydiff =========== 480s usage: pydiff [-h] [-i] [-U NUM] [-r] [-N] [--unidirectional-new-file] [-s] 480s [-x PAT] [--fromcontains TEXT] [--tocontains TEXT] 480s [--contains TEXT] [-I] [--accelerator ACCELERATORS] 480s fromfile tofile 480s 480s positional arguments: 480s fromfile 480s tofile 480s 480s options: 480s -h, --help show this help message and exit 480s -i, --ignore-case Ignore case differences in file contents. 480s -U NUM, --unified NUM 480s Output NUM (default 3) lines of unified context 480s -r, --recursive Recursively compare any subdirectories found. 480s -N, --new-file Treat absent files as empty. 480s --unidirectional-new-file 480s Treat absent first files as empty. 480s -s, --report-identical-files 480s Report when two files are the same. 480s -x PAT, --exclude PAT 480s Exclude files that match PAT. 480s --fromcontains TEXT Only show changes where fromfile contains TEXT 480s --tocontains TEXT Only show changes where tofile contains TEXT 480s --contains TEXT Only show changes where fromfile or tofile contains 480s TEXT 480s -I, --ignore-case-contains 480s Ignore case differences when matching any of the 480s changes 480s --accelerator ACCELERATORS 480s ignores the given accelerator characters when matching 480s ========= SMOKE TEST: /usr/bin/pypo2phppo =========== 480s Usage: pypo2phppo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 480s 480s Convert Python format .po files to PHP format .po files. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s ========= SMOKE TEST: /usr/bin/rc2po =========== 480s 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] 480s 480s Convert Windows RC files to Gettext PO localization files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/rc2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in nls, rc formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in nls, rc formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -P, --pot output PO Templates (.pot) rather than PO files (.po) 480s --charset=CHARSET charset to use to decode the RC files (autodetection 480s is used by default) 480s -l LANG, --lang=LANG LANG entry (default: None) 480s --sublang=SUBLANG SUBLANG entry (default: None) 480s --duplicates=DUPLICATESTYLE 480s what to do with duplicate strings (identical source 480s text): merge, msgctxt (default: 'msgctxt') 480s ========= SMOKE TEST: /usr/bin/resx2po =========== 480s 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] 480s 480s Convert .Net Resource (.resx) to Gettext PO localisation files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/resx2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in resx format 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in resx format 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -P, --pot output PO Templates (.pot) rather than PO files (.po) 480s --filter=FILTER leaves to extract e.g. 'name,desc': (default: extract 480s everything) 480s --duplicates=DUPLICATESTYLE 480s what to do with duplicate strings (identical source 480s text): merge, msgctxt (default: 'msgctxt') 480s ========= SMOKE TEST: /usr/bin/sub2po =========== 480s 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] 480s 480s Convert subtitle files to Gettext PO localization files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/sub2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in ass, srt, ssa, sub formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in ass, srt, ssa, sub formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -P, --pot output PO Templates (.pot) rather than PO files (.po) 480s --duplicates=DUPLICATESTYLE 480s what to do with duplicate strings (identical source 480s text): merge, msgctxt (default: 'msgctxt') 480s ========= SMOKE TEST: /usr/bin/symb2po =========== 480s 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] 480s 480s Convert Symbian localisation files to Gettext PO localization files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/symb2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in r01 format 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -P, --pot output PO Templates (.pot) rather than PO files (.po) 480s --duplicates=DUPLICATESTYLE 480s what to do with duplicate strings (identical source 480s text): merge, msgctxt (default: 'msgctxt') 480s ========= SMOKE TEST: /usr/bin/tbx2po =========== 480s Usage: tbx2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 480s 480s Convert TermBase eXchange (.tbx) glossary file into a Gettext PO file. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/tbx2po.html for examples and usage instructions 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in tbx format 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s ========= SMOKE TEST: /usr/bin/tiki2po =========== 480s Usage: tiki2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 480s 480s Convert TikiWiki's language.php files to Gettext PO localization files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/tiki2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in php format 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s --include-unused Include strings in the unused section 480s ========= SMOKE TEST: /usr/bin/tmserver =========== 480s usage: tmserver [-h] [-d TMDBFILE] [-f TMFILES] [-t TARGET_LANG] 480s [-s SOURCE_LANG] [-b BIND] [-p PORT] 480s [--max-candidates MAX_CANDIDATES] 480s [--min-similarity MIN_SIMILARITY] [--max-length MAX_LENGTH] 480s [--debug] 480s 480s options: 480s -h, --help show this help message and exit 480s -d TMDBFILE, --tmdb TMDBFILE 480s translation memory database file 480s -f TMFILES, --import-translation-file TMFILES 480s translation file to import into the database 480s -t TARGET_LANG, --import-target-lang TARGET_LANG 480s target language of translation files 480s -s SOURCE_LANG, --import-source-lang SOURCE_LANG 480s source language of translation files 480s -b BIND, --bind BIND address to bind server to (default: localhost) 480s -p PORT, --port PORT port to listen on (default: 8888) 480s --max-candidates MAX_CANDIDATES 480s Maximum number of candidates 480s --min-similarity MIN_SIMILARITY 480s minimum similarity 480s --max-length MAX_LENGTH 480s Maxmimum string length 480s --debug enable debugging features 480s ========= SMOKE TEST: /usr/bin/ts2po =========== 480s Usage: ts2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 480s 480s Convert Qt Linguist (.ts) files to Gettext PO localization files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/ts2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in ts format 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -P, --pot output PO Templates (.pot) rather than PO files (.po) 480s --duplicates=DUPLICATESTYLE 480s what to do with duplicate strings (identical source 480s text): merge, msgctxt (default: 'msgctxt') 480s ========= SMOKE TEST: /usr/bin/txt2po =========== 480s Usage: txt2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 480s 480s Convert plain text (.txt) files to Gettext PO localization files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/txt2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in *, txt formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -P, --pot output PO Templates (.pot) rather than PO files (.po) 480s --encoding=ENCODING The encoding of the input file (default: UTF-8) 480s --flavour=FLAVOUR The flavour of text file: plain (default), dokuwiki, 480s mediawiki 480s --no-segmentation Don't segment the file, treat it like a single message 480s --duplicates=DUPLICATESTYLE 480s what to do with duplicate strings (identical source 480s text): merge, msgctxt (default: 'msgctxt') 480s ========= SMOKE TEST: /usr/bin/web2py2po =========== 480s Usage: web2py2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 480s 480s Convert web2py translation dictionaries (.py) to GNU/gettext PO files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/web2py2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in py format 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -P, --pot output PO Templates (.pot) rather than PO files (.po) 480s --duplicates=DUPLICATESTYLE 480s what to do with duplicate strings (identical source 480s text): merge, msgctxt (default: 'msgctxt') 480s ========= SMOKE TEST: /usr/bin/xliff2odf =========== 480s Usage: xliff2odf [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert XLIFF translation files to OpenDocument (ODF) files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/odf2xliff.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in xlf format 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in odc, odf, odg, odi, odm, odp, ods, 480s odt, otc, otf, otg, oth, oti, otp, ots, ott formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in odc, odf, odg, odi, odm, odp, 480s ods, odt, otc, otf, otg, oth, oti, otp, ots, ott 480s formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s ========= SMOKE TEST: /usr/bin/xliff2oo =========== 480s Usage: xliff2oo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 480s 480s Convert XLIFF localization files to an OpenOffice.org (SDF) localization 480s file. See: http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in po, pot, xlf, xliff formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in oo, sdf formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in oo, sdf formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -l LANG, --language=LANG 480s set target language code (e.g. af-ZA) [required] 480s --source-language=LANG 480s set source language code (default en-US) 480s -T, --keeptimestamp don't change the timestamps of the strings 480s --nonrecursiveoutput don't treat the output oo as a recursive store 480s --nonrecursivetemplate 480s don't treat the template oo as a recursive store 480s --skipsource don't output the source language, but fallback to it 480s where needed 480s --filteraction=ACTION 480s action on pofilter failure: none (default), warn, 480s exclude-serious, exclude-all 480s --fuzzy use translations marked fuzzy 480s --nofuzzy don't use translations marked fuzzy (default) 480s --multifile=MULTIFILESTYLE 480s how to split po/pot files (single, toplevel or 480s onefile) 480s ========= SMOKE TEST: /usr/bin/xliff2po =========== 480s Usage: xliff2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 480s 480s Convert XLIFF localization files to Gettext PO localization files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/xliff2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in xlf, xliff formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -P, --pot output PO Templates (.pot) rather than PO files (.po) 480s --duplicates=DUPLICATESTYLE 480s what to do with duplicate strings (identical source 480s text): merge, msgctxt (default: 'msgctxt') 480s ========= SMOKE TEST: /usr/bin/yaml2po =========== 480s 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] 480s 480s Convert YAML files to Gettext PO localization files. See: 480s http://docs.translatehouse.org/projects/translate- 480s toolkit/en/latest/commands/yaml2po.html for examples and usage instructions. 480s 480s Options: 480s --version show program's version number and exit 480s -h, --help show this help message and exit 480s --manpage output a manpage based on the help 480s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 480s --errorlevel=ERRORLEVEL 480s show errorlevel as: none, message, exception, 480s traceback 480s -i INPUT, --input=INPUT 480s read from INPUT in yaml, yml formats 480s -x EXCLUDE, --exclude=EXCLUDE 480s exclude names matching EXCLUDE from input paths 480s -o OUTPUT, --output=OUTPUT 480s write to OUTPUT in po, pot formats 480s -t TEMPLATE, --template=TEMPLATE 480s read from TEMPLATE in yaml, yml formats 480s -S, --timestamp skip conversion if the output file has newer timestamp 480s -P, --pot output PO Templates (.pot) rather than PO files (.po) 480s --duplicates=DUPLICATESTYLE 480s what to do with duplicate strings (identical source 480s text): merge, msgctxt (default: 'msgctxt') 480s autopkgtest [21:38:14]: test translate-toolkit: -----------------------] 543s translate-toolkit PASS 543s autopkgtest [21:39:17]: test translate-toolkit: - - - - - - - - - - results - - - - - - - - - - 590s autopkgtest [21:40:04]: test python3-translate: preparing testbed 711s autopkgtest [21:42:05]: testbed dpkg architecture: amd64 711s autopkgtest [21:42:05]: testbed apt version: 2.9.6 711s autopkgtest [21:42:05]: test architecture: i386 711s autopkgtest [21:42:05]: @@@@@@@@@@@@@@@@@@@@ test bed setup 712s Get:1 http://ftpmaster.internal/ubuntu oracular-proposed InRelease [126 kB] 712s Get:2 http://ftpmaster.internal/ubuntu oracular-proposed/restricted Sources [8548 B] 712s Get:3 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse Sources [4092 B] 712s Get:4 http://ftpmaster.internal/ubuntu oracular-proposed/main Sources [63.1 kB] 712s Get:5 http://ftpmaster.internal/ubuntu oracular-proposed/universe Sources [401 kB] 712s Get:6 http://ftpmaster.internal/ubuntu oracular-proposed/main i386 Packages [89.0 kB] 712s Get:7 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 Packages [121 kB] 712s Get:8 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 c-n-f Metadata [2116 B] 712s Get:9 http://ftpmaster.internal/ubuntu oracular-proposed/restricted i386 Packages [6244 B] 712s Get:10 http://ftpmaster.internal/ubuntu oracular-proposed/restricted amd64 Packages [34.9 kB] 712s Get:11 http://ftpmaster.internal/ubuntu oracular-proposed/restricted amd64 c-n-f Metadata [368 B] 712s Get:12 http://ftpmaster.internal/ubuntu oracular-proposed/universe amd64 Packages [574 kB] 712s Get:13 http://ftpmaster.internal/ubuntu oracular-proposed/universe i386 Packages [401 kB] 712s Get:14 http://ftpmaster.internal/ubuntu oracular-proposed/universe amd64 c-n-f Metadata [9900 B] 712s Get:15 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse i386 Packages [3052 B] 712s Get:16 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse amd64 Packages [8604 B] 712s Get:17 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse amd64 c-n-f Metadata [276 B] 714s Fetched 1854 kB in 0s (5966 kB/s) 714s Reading package lists... 740s Reading package lists... 741s Building dependency tree... 741s Reading state information... 741s Calculating upgrade... 741s The following packages will be upgraded: 741s libbpf1 libheif-plugin-aomdec libheif-plugin-aomenc libheif-plugin-libde265 741s libheif1 libpython3-stdlib python3 python3-gdbm python3-minimal 741s 9 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 741s Need to get 560 kB of archives. 741s After this operation, 30.7 kB of additional disk space will be used. 741s Get:1 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 python3-minimal amd64 3.12.4-1 [27.1 kB] 741s Get:2 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 python3 amd64 3.12.4-1 [24.0 kB] 741s Get:3 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 libpython3-stdlib amd64 3.12.4-1 [9818 B] 741s Get:4 http://ftpmaster.internal/ubuntu oracular/main amd64 libbpf1 amd64 1:1.4.5-1 [172 kB] 741s Get:5 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 python3-gdbm amd64 3.12.4-2 [18.2 kB] 741s Get:6 http://ftpmaster.internal/ubuntu oracular/main amd64 libheif-plugin-aomdec amd64 1.17.6-4build1 [10.3 kB] 741s Get:7 http://ftpmaster.internal/ubuntu oracular/main amd64 libheif-plugin-aomenc amd64 1.17.6-4build1 [14.8 kB] 741s Get:8 http://ftpmaster.internal/ubuntu oracular/main amd64 libheif1 amd64 1.17.6-4build1 [276 kB] 741s Get:9 http://ftpmaster.internal/ubuntu oracular/main amd64 libheif-plugin-libde265 amd64 1.17.6-4build1 [8328 B] 742s Fetched 560 kB in 0s (16.2 MB/s) 742s (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 ... 74487 files and directories currently installed.) 742s Preparing to unpack .../python3-minimal_3.12.4-1_amd64.deb ... 742s Unpacking python3-minimal (3.12.4-1) over (3.12.3-0ubuntu1) ... 742s Setting up python3-minimal (3.12.4-1) ... 742s (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 ... 74487 files and directories currently installed.) 742s Preparing to unpack .../0-python3_3.12.4-1_amd64.deb ... 742s Unpacking python3 (3.12.4-1) over (3.12.3-0ubuntu1) ... 743s Preparing to unpack .../1-libpython3-stdlib_3.12.4-1_amd64.deb ... 743s Unpacking libpython3-stdlib:amd64 (3.12.4-1) over (3.12.3-0ubuntu1) ... 743s Preparing to unpack .../2-libbpf1_1%3a1.4.5-1_amd64.deb ... 743s Unpacking libbpf1:amd64 (1:1.4.5-1) over (1:1.4.3-1) ... 743s Preparing to unpack .../3-python3-gdbm_3.12.4-2_amd64.deb ... 743s Unpacking python3-gdbm:amd64 (3.12.4-2) over (3.12.3-0ubuntu1) ... 743s Preparing to unpack .../4-libheif-plugin-aomdec_1.17.6-4build1_amd64.deb ... 743s Unpacking libheif-plugin-aomdec:amd64 (1.17.6-4build1) over (1.17.6-3build2) ... 743s Preparing to unpack .../5-libheif-plugin-aomenc_1.17.6-4build1_amd64.deb ... 743s Unpacking libheif-plugin-aomenc:amd64 (1.17.6-4build1) over (1.17.6-3build2) ... 743s Preparing to unpack .../6-libheif1_1.17.6-4build1_amd64.deb ... 743s Unpacking libheif1:amd64 (1.17.6-4build1) over (1.17.6-3build2) ... 743s Preparing to unpack .../7-libheif-plugin-libde265_1.17.6-4build1_amd64.deb ... 743s Unpacking libheif-plugin-libde265:amd64 (1.17.6-4build1) over (1.17.6-3build2) ... 743s Setting up libbpf1:amd64 (1:1.4.5-1) ... 743s Setting up libpython3-stdlib:amd64 (3.12.4-1) ... 743s Setting up python3 (3.12.4-1) ... 743s Setting up python3-gdbm:amd64 (3.12.4-2) ... 743s Setting up libheif-plugin-aomdec:amd64 (1.17.6-4build1) ... 743s Setting up libheif1:amd64 (1.17.6-4build1) ... 743s Setting up libheif-plugin-libde265:amd64 (1.17.6-4build1) ... 743s Setting up libheif-plugin-aomenc:amd64 (1.17.6-4build1) ... 743s Processing triggers for libc-bin (2.39-0ubuntu9) ... 743s Processing triggers for man-db (2.12.1-2) ... 744s Reading package lists... 744s Building dependency tree... 744s Reading state information... 745s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 745s Hit:1 http://ftpmaster.internal/ubuntu oracular-proposed InRelease 745s Hit:2 http://ftpmaster.internal/ubuntu oracular InRelease 745s Hit:3 http://ftpmaster.internal/ubuntu oracular-updates InRelease 745s Hit:4 http://ftpmaster.internal/ubuntu oracular-security InRelease 746s Reading package lists... 746s Reading package lists... 746s Building dependency tree... 746s Reading state information... 747s Calculating upgrade... 747s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 747s Reading package lists... 747s Building dependency tree... 747s Reading state information... 748s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 765s Note, using file '/tmp/autopkgtest.yhF5Vh/3-autopkgtest-satdep.dsc' to get the build dependencies 765s Reading package lists... 765s Building dependency tree... 765s Reading state information... 765s Starting pkgProblemResolver with broken count: 0 765s Starting 2 pkgProblemResolver with broken count: 0 765s Done 766s The following NEW packages will be installed: 766s build-essential cpp cpp-13 cpp-13-x86-64-linux-gnu cpp-x86-64-linux-gnu 766s dictionaries-common emacsen-common g++ g++-13 g++-13-x86-64-linux-gnu 766s g++-x86-64-linux-gnu gcc gcc-13 gcc-13-base gcc-13-x86-64-linux-gnu 766s gcc-x86-64-linux-gnu gettext hunspell-en-us libapr1t64 libaprutil1t64 766s libasan8 libaspell15 libatomic1 libcc1-0 libenchant-2-2 libexttextcat-data 766s libgcc-13-dev libgomp1 libhunspell-1.7-0 libhwasan0 libisl23 libitm1 766s liblsan0 libmpc3 libquadmath0 libserf-1-1 libstdc++-13-dev libsvn1 libtsan2 766s libubsan1 libutf8proc3 libxapian30 libxslt1.1 python3-aeidon python3-all 766s python3-bs4 python3-charset-normalizer python3-cheroot python3-dateutil 766s python3-diff-match-patch python3-enchant python3-iniconfig python3-iniparse 766s python3-jaraco.functools python3-levenshtein python3-lxml python3-mistletoe 766s python3-more-itertools python3-packaging python3-phply python3-pluggy 766s python3-ply python3-pycountry python3-pytest python3-rapidfuzz 766s python3-ruamel.yaml python3-ruamel.yaml.clib python3-simplejson 766s python3-soupsieve python3-syrupy python3-translate python3-vobject 766s python3-wcwidth python3-xapian subversion 766s 0 upgraded, 75 newly installed, 0 to remove and 0 not upgraded. 766s Need to get 72.0 MB of archives. 766s After this operation, 257 MB of additional disk space will be used. 766s Get:1 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-13-base amd64 13.3.0-3ubuntu1 [50.9 kB] 766s Get:2 http://ftpmaster.internal/ubuntu oracular/main amd64 libisl23 amd64 0.26-3build1 [680 kB] 766s Get:3 http://ftpmaster.internal/ubuntu oracular/main amd64 libmpc3 amd64 1.3.1-1build1 [54.5 kB] 766s Get:4 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp-13-x86-64-linux-gnu amd64 13.3.0-3ubuntu1 [10.7 MB] 766s Get:5 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp-13 amd64 13.3.0-3ubuntu1 [1028 B] 766s Get:6 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp-x86-64-linux-gnu amd64 4:13.3.0-2ubuntu2 [5398 B] 766s Get:7 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp amd64 4:13.3.0-2ubuntu2 [22.4 kB] 766s Get:8 http://ftpmaster.internal/ubuntu oracular/main amd64 libcc1-0 amd64 14.1.0-4ubuntu2 [47.6 kB] 766s Get:9 http://ftpmaster.internal/ubuntu oracular/main amd64 libgomp1 amd64 14.1.0-4ubuntu2 [148 kB] 766s Get:10 http://ftpmaster.internal/ubuntu oracular/main amd64 libitm1 amd64 14.1.0-4ubuntu2 [29.1 kB] 766s Get:11 http://ftpmaster.internal/ubuntu oracular/main amd64 libatomic1 amd64 14.1.0-4ubuntu2 [10.3 kB] 766s Get:12 http://ftpmaster.internal/ubuntu oracular/main amd64 libasan8 amd64 14.1.0-4ubuntu2 [2996 kB] 766s Get:13 http://ftpmaster.internal/ubuntu oracular/main amd64 liblsan0 amd64 14.1.0-4ubuntu2 [1316 kB] 766s Get:14 http://ftpmaster.internal/ubuntu oracular/main amd64 libtsan2 amd64 14.1.0-4ubuntu2 [2733 kB] 766s Get:15 http://ftpmaster.internal/ubuntu oracular/main amd64 libubsan1 amd64 14.1.0-4ubuntu2 [1178 kB] 766s Get:16 http://ftpmaster.internal/ubuntu oracular/main amd64 libhwasan0 amd64 14.1.0-4ubuntu2 [1634 kB] 766s Get:17 http://ftpmaster.internal/ubuntu oracular/main amd64 libquadmath0 amd64 14.1.0-4ubuntu2 [153 kB] 766s Get:18 http://ftpmaster.internal/ubuntu oracular/main amd64 libgcc-13-dev amd64 13.3.0-3ubuntu1 [2673 kB] 766s Get:19 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-13-x86-64-linux-gnu amd64 13.3.0-3ubuntu1 [21.0 MB] 766s Get:20 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-13 amd64 13.3.0-3ubuntu1 [492 kB] 766s Get:21 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-x86-64-linux-gnu amd64 4:13.3.0-2ubuntu2 [1212 B] 766s Get:22 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc amd64 4:13.3.0-2ubuntu2 [5020 B] 766s Get:23 http://ftpmaster.internal/ubuntu oracular/main amd64 libstdc++-13-dev amd64 13.3.0-3ubuntu1 [2413 kB] 766s Get:24 http://ftpmaster.internal/ubuntu oracular/main amd64 g++-13-x86-64-linux-gnu amd64 13.3.0-3ubuntu1 [12.1 MB] 766s Get:25 http://ftpmaster.internal/ubuntu oracular/main amd64 g++-13 amd64 13.3.0-3ubuntu1 [16.0 kB] 766s Get:26 http://ftpmaster.internal/ubuntu oracular/main amd64 g++-x86-64-linux-gnu amd64 4:13.3.0-2ubuntu2 [968 B] 766s Get:27 http://ftpmaster.internal/ubuntu oracular/main amd64 g++ amd64 4:13.3.0-2ubuntu2 [1102 B] 766s Get:28 http://ftpmaster.internal/ubuntu oracular/main amd64 build-essential amd64 12.10ubuntu1 [4928 B] 766s Get:29 http://ftpmaster.internal/ubuntu oracular/main amd64 emacsen-common all 3.0.5 [12.1 kB] 766s Get:30 http://ftpmaster.internal/ubuntu oracular/main amd64 dictionaries-common all 1.29.7 [188 kB] 766s Get:31 http://ftpmaster.internal/ubuntu oracular/main amd64 gettext amd64 0.22.5-1 [944 kB] 766s Get:32 http://ftpmaster.internal/ubuntu oracular/main amd64 hunspell-en-us all 1:2020.12.07-2 [280 kB] 766s Get:33 http://ftpmaster.internal/ubuntu oracular/main amd64 libapr1t64 amd64 1.7.2-3.2 [106 kB] 766s Get:34 http://ftpmaster.internal/ubuntu oracular/main amd64 libaprutil1t64 amd64 1.6.3-2ubuntu1 [92.1 kB] 766s Get:35 http://ftpmaster.internal/ubuntu oracular/main amd64 libaspell15 amd64 0.60.8.1-1build1 [323 kB] 766s Get:36 http://ftpmaster.internal/ubuntu oracular/main amd64 libhunspell-1.7-0 amd64 1.7.2+really1.7.2-10build3 [294 kB] 766s Get:37 http://ftpmaster.internal/ubuntu oracular/main amd64 libenchant-2-2 amd64 2.3.3-2build2 [51.4 kB] 766s Get:38 http://ftpmaster.internal/ubuntu oracular/main amd64 libexttextcat-data all 3.4.7-1build1 [193 kB] 766s Get:39 http://ftpmaster.internal/ubuntu oracular/universe amd64 libserf-1-1 amd64 1.3.10-3ubuntu1 [48.2 kB] 766s Get:40 http://ftpmaster.internal/ubuntu oracular/universe amd64 libutf8proc3 amd64 2.9.0-1build1 [70.6 kB] 766s Get:41 http://ftpmaster.internal/ubuntu oracular/universe amd64 libsvn1 amd64 1.14.3-2 [1344 kB] 766s Get:42 http://ftpmaster.internal/ubuntu oracular/universe amd64 libxapian30 amd64 1.4.22-1build1 [716 kB] 766s Get:43 http://ftpmaster.internal/ubuntu oracular/main amd64 libxslt1.1 amd64 1.1.39-0exp1build1 [167 kB] 766s Get:44 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-aeidon all 1.15-1 [231 kB] 766s Get:45 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 python3-all amd64 3.12.4-1 [882 B] 766s Get:46 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-soupsieve all 2.5-1 [33.0 kB] 766s Get:47 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-bs4 all 4.12.3-1 [109 kB] 766s Get:48 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-charset-normalizer all 3.3.2-1 [47.9 kB] 766s Get:49 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-more-itertools all 10.3.0-1 [54.9 kB] 766s Get:50 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-jaraco.functools all 4.0.0-1 [10.7 kB] 766s Get:51 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-cheroot all 10.0.0+ds1-2 [73.0 kB] 766s Get:52 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-dateutil all 2.9.0-2 [80.3 kB] 766s Get:53 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-diff-match-patch all 20230430-1 [33.1 kB] 766s Get:54 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-enchant all 3.2.2-1 [34.0 kB] 766s Get:55 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-iniconfig all 1.1.1-2 [6024 B] 767s Get:56 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-rapidfuzz amd64 3.9.4+ds-1 [2028 kB] 767s Get:57 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-levenshtein amd64 0.25.1-3 [120 kB] 767s Get:58 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-lxml amd64 5.2.2-1 [1243 kB] 767s Get:59 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-mistletoe all 1.3.0-1 [38.0 kB] 767s Get:60 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-packaging all 24.1-1 [41.4 kB] 767s Get:61 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-ply all 3.11-6 [46.5 kB] 767s Get:62 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-phply all 1.2.6-1 [50.5 kB] 767s Get:63 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-pluggy all 1.5.0-1 [21.0 kB] 767s Get:64 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-pytest all 7.4.4-1 [305 kB] 767s Get:65 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-ruamel.yaml.clib amd64 0.2.8-1build1 [132 kB] 767s Get:66 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-ruamel.yaml all 0.17.21-1 [86.6 kB] 767s Get:67 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-simplejson amd64 3.19.2-1build2 [54.5 kB] 767s Get:68 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-syrupy all 4.6.1-1 [42.8 kB] 767s Get:69 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-wcwidth all 0.2.5+dfsg1-1.1ubuntu1 [22.5 kB] 767s Get:70 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-translate all 3.13.2-1 [319 kB] 767s Get:71 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-vobject all 0.9.6.1-2 [40.6 kB] 767s Get:72 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-xapian amd64 1.4.22-1build5 [373 kB] 767s Get:73 http://ftpmaster.internal/ubuntu oracular/universe amd64 subversion amd64 1.14.3-2 [908 kB] 767s Get:74 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-iniparse all 0.5-2 [20.0 kB] 767s Get:75 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-pycountry all 24.6.1+ds1-1 [30.0 kB] 767s Preconfiguring packages ... 767s Fetched 72.0 MB in 1s (116 MB/s) 767s Selecting previously unselected package gcc-13-base:amd64. 767s (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 ... 74490 files and directories currently installed.) 767s Preparing to unpack .../00-gcc-13-base_13.3.0-3ubuntu1_amd64.deb ... 767s Unpacking gcc-13-base:amd64 (13.3.0-3ubuntu1) ... 767s Selecting previously unselected package libisl23:amd64. 767s Preparing to unpack .../01-libisl23_0.26-3build1_amd64.deb ... 767s Unpacking libisl23:amd64 (0.26-3build1) ... 767s Selecting previously unselected package libmpc3:amd64. 767s Preparing to unpack .../02-libmpc3_1.3.1-1build1_amd64.deb ... 767s Unpacking libmpc3:amd64 (1.3.1-1build1) ... 767s Selecting previously unselected package cpp-13-x86-64-linux-gnu. 767s Preparing to unpack .../03-cpp-13-x86-64-linux-gnu_13.3.0-3ubuntu1_amd64.deb ... 767s Unpacking cpp-13-x86-64-linux-gnu (13.3.0-3ubuntu1) ... 767s Selecting previously unselected package cpp-13. 767s Preparing to unpack .../04-cpp-13_13.3.0-3ubuntu1_amd64.deb ... 767s Unpacking cpp-13 (13.3.0-3ubuntu1) ... 767s Selecting previously unselected package cpp-x86-64-linux-gnu. 767s Preparing to unpack .../05-cpp-x86-64-linux-gnu_4%3a13.3.0-2ubuntu2_amd64.deb ... 767s Unpacking cpp-x86-64-linux-gnu (4:13.3.0-2ubuntu2) ... 768s Selecting previously unselected package cpp. 768s Preparing to unpack .../06-cpp_4%3a13.3.0-2ubuntu2_amd64.deb ... 768s Unpacking cpp (4:13.3.0-2ubuntu2) ... 768s Selecting previously unselected package libcc1-0:amd64. 768s Preparing to unpack .../07-libcc1-0_14.1.0-4ubuntu2_amd64.deb ... 768s Unpacking libcc1-0:amd64 (14.1.0-4ubuntu2) ... 768s Selecting previously unselected package libgomp1:amd64. 768s Preparing to unpack .../08-libgomp1_14.1.0-4ubuntu2_amd64.deb ... 768s Unpacking libgomp1:amd64 (14.1.0-4ubuntu2) ... 768s Selecting previously unselected package libitm1:amd64. 768s Preparing to unpack .../09-libitm1_14.1.0-4ubuntu2_amd64.deb ... 768s Unpacking libitm1:amd64 (14.1.0-4ubuntu2) ... 768s Selecting previously unselected package libatomic1:amd64. 768s Preparing to unpack .../10-libatomic1_14.1.0-4ubuntu2_amd64.deb ... 768s Unpacking libatomic1:amd64 (14.1.0-4ubuntu2) ... 768s Selecting previously unselected package libasan8:amd64. 768s Preparing to unpack .../11-libasan8_14.1.0-4ubuntu2_amd64.deb ... 768s Unpacking libasan8:amd64 (14.1.0-4ubuntu2) ... 768s Selecting previously unselected package liblsan0:amd64. 768s Preparing to unpack .../12-liblsan0_14.1.0-4ubuntu2_amd64.deb ... 768s Unpacking liblsan0:amd64 (14.1.0-4ubuntu2) ... 768s Selecting previously unselected package libtsan2:amd64. 768s Preparing to unpack .../13-libtsan2_14.1.0-4ubuntu2_amd64.deb ... 768s Unpacking libtsan2:amd64 (14.1.0-4ubuntu2) ... 768s Selecting previously unselected package libubsan1:amd64. 768s Preparing to unpack .../14-libubsan1_14.1.0-4ubuntu2_amd64.deb ... 768s Unpacking libubsan1:amd64 (14.1.0-4ubuntu2) ... 768s Selecting previously unselected package libhwasan0:amd64. 768s Preparing to unpack .../15-libhwasan0_14.1.0-4ubuntu2_amd64.deb ... 768s Unpacking libhwasan0:amd64 (14.1.0-4ubuntu2) ... 768s Selecting previously unselected package libquadmath0:amd64. 768s Preparing to unpack .../16-libquadmath0_14.1.0-4ubuntu2_amd64.deb ... 768s Unpacking libquadmath0:amd64 (14.1.0-4ubuntu2) ... 768s Selecting previously unselected package libgcc-13-dev:amd64. 768s Preparing to unpack .../17-libgcc-13-dev_13.3.0-3ubuntu1_amd64.deb ... 768s Unpacking libgcc-13-dev:amd64 (13.3.0-3ubuntu1) ... 768s Selecting previously unselected package gcc-13-x86-64-linux-gnu. 768s Preparing to unpack .../18-gcc-13-x86-64-linux-gnu_13.3.0-3ubuntu1_amd64.deb ... 768s Unpacking gcc-13-x86-64-linux-gnu (13.3.0-3ubuntu1) ... 768s Selecting previously unselected package gcc-13. 768s Preparing to unpack .../19-gcc-13_13.3.0-3ubuntu1_amd64.deb ... 768s Unpacking gcc-13 (13.3.0-3ubuntu1) ... 769s Selecting previously unselected package gcc-x86-64-linux-gnu. 769s Preparing to unpack .../20-gcc-x86-64-linux-gnu_4%3a13.3.0-2ubuntu2_amd64.deb ... 769s Unpacking gcc-x86-64-linux-gnu (4:13.3.0-2ubuntu2) ... 769s Selecting previously unselected package gcc. 769s Preparing to unpack .../21-gcc_4%3a13.3.0-2ubuntu2_amd64.deb ... 769s Unpacking gcc (4:13.3.0-2ubuntu2) ... 769s Selecting previously unselected package libstdc++-13-dev:amd64. 769s Preparing to unpack .../22-libstdc++-13-dev_13.3.0-3ubuntu1_amd64.deb ... 769s Unpacking libstdc++-13-dev:amd64 (13.3.0-3ubuntu1) ... 769s Selecting previously unselected package g++-13-x86-64-linux-gnu. 769s Preparing to unpack .../23-g++-13-x86-64-linux-gnu_13.3.0-3ubuntu1_amd64.deb ... 769s Unpacking g++-13-x86-64-linux-gnu (13.3.0-3ubuntu1) ... 769s Selecting previously unselected package g++-13. 769s Preparing to unpack .../24-g++-13_13.3.0-3ubuntu1_amd64.deb ... 769s Unpacking g++-13 (13.3.0-3ubuntu1) ... 769s Selecting previously unselected package g++-x86-64-linux-gnu. 769s Preparing to unpack .../25-g++-x86-64-linux-gnu_4%3a13.3.0-2ubuntu2_amd64.deb ... 769s Unpacking g++-x86-64-linux-gnu (4:13.3.0-2ubuntu2) ... 769s Selecting previously unselected package g++. 769s Preparing to unpack .../26-g++_4%3a13.3.0-2ubuntu2_amd64.deb ... 769s Unpacking g++ (4:13.3.0-2ubuntu2) ... 769s Selecting previously unselected package build-essential. 769s Preparing to unpack .../27-build-essential_12.10ubuntu1_amd64.deb ... 769s Unpacking build-essential (12.10ubuntu1) ... 769s Selecting previously unselected package emacsen-common. 769s Preparing to unpack .../28-emacsen-common_3.0.5_all.deb ... 769s Unpacking emacsen-common (3.0.5) ... 769s Selecting previously unselected package dictionaries-common. 769s Preparing to unpack .../29-dictionaries-common_1.29.7_all.deb ... 769s Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common' 769s Unpacking dictionaries-common (1.29.7) ... 769s Selecting previously unselected package gettext. 769s Preparing to unpack .../30-gettext_0.22.5-1_amd64.deb ... 769s Unpacking gettext (0.22.5-1) ... 769s Selecting previously unselected package hunspell-en-us. 769s Preparing to unpack .../31-hunspell-en-us_1%3a2020.12.07-2_all.deb ... 769s Unpacking hunspell-en-us (1:2020.12.07-2) ... 769s Selecting previously unselected package libapr1t64:amd64. 769s Preparing to unpack .../32-libapr1t64_1.7.2-3.2_amd64.deb ... 769s Unpacking libapr1t64:amd64 (1.7.2-3.2) ... 769s Selecting previously unselected package libaprutil1t64:amd64. 769s Preparing to unpack .../33-libaprutil1t64_1.6.3-2ubuntu1_amd64.deb ... 769s Unpacking libaprutil1t64:amd64 (1.6.3-2ubuntu1) ... 769s Selecting previously unselected package libaspell15:amd64. 769s Preparing to unpack .../34-libaspell15_0.60.8.1-1build1_amd64.deb ... 769s Unpacking libaspell15:amd64 (0.60.8.1-1build1) ... 769s Selecting previously unselected package libhunspell-1.7-0:amd64. 769s Preparing to unpack .../35-libhunspell-1.7-0_1.7.2+really1.7.2-10build3_amd64.deb ... 769s Unpacking libhunspell-1.7-0:amd64 (1.7.2+really1.7.2-10build3) ... 769s Selecting previously unselected package libenchant-2-2:amd64. 769s Preparing to unpack .../36-libenchant-2-2_2.3.3-2build2_amd64.deb ... 769s Unpacking libenchant-2-2:amd64 (2.3.3-2build2) ... 769s Selecting previously unselected package libexttextcat-data. 769s Preparing to unpack .../37-libexttextcat-data_3.4.7-1build1_all.deb ... 769s Unpacking libexttextcat-data (3.4.7-1build1) ... 769s Selecting previously unselected package libserf-1-1:amd64. 769s Preparing to unpack .../38-libserf-1-1_1.3.10-3ubuntu1_amd64.deb ... 769s Unpacking libserf-1-1:amd64 (1.3.10-3ubuntu1) ... 769s Selecting previously unselected package libutf8proc3:amd64. 769s Preparing to unpack .../39-libutf8proc3_2.9.0-1build1_amd64.deb ... 769s Unpacking libutf8proc3:amd64 (2.9.0-1build1) ... 769s Selecting previously unselected package libsvn1:amd64. 769s Preparing to unpack .../40-libsvn1_1.14.3-2_amd64.deb ... 769s Unpacking libsvn1:amd64 (1.14.3-2) ... 770s Selecting previously unselected package libxapian30:amd64. 770s Preparing to unpack .../41-libxapian30_1.4.22-1build1_amd64.deb ... 770s Unpacking libxapian30:amd64 (1.4.22-1build1) ... 770s Selecting previously unselected package libxslt1.1:amd64. 770s Preparing to unpack .../42-libxslt1.1_1.1.39-0exp1build1_amd64.deb ... 770s Unpacking libxslt1.1:amd64 (1.1.39-0exp1build1) ... 770s Selecting previously unselected package python3-aeidon. 770s Preparing to unpack .../43-python3-aeidon_1.15-1_all.deb ... 770s Unpacking python3-aeidon (1.15-1) ... 770s Selecting previously unselected package python3-all. 770s Preparing to unpack .../44-python3-all_3.12.4-1_amd64.deb ... 770s Unpacking python3-all (3.12.4-1) ... 770s Selecting previously unselected package python3-soupsieve. 770s Preparing to unpack .../45-python3-soupsieve_2.5-1_all.deb ... 770s Unpacking python3-soupsieve (2.5-1) ... 770s Selecting previously unselected package python3-bs4. 770s Preparing to unpack .../46-python3-bs4_4.12.3-1_all.deb ... 770s Unpacking python3-bs4 (4.12.3-1) ... 770s Selecting previously unselected package python3-charset-normalizer. 770s Preparing to unpack .../47-python3-charset-normalizer_3.3.2-1_all.deb ... 770s Unpacking python3-charset-normalizer (3.3.2-1) ... 770s Selecting previously unselected package python3-more-itertools. 770s Preparing to unpack .../48-python3-more-itertools_10.3.0-1_all.deb ... 770s Unpacking python3-more-itertools (10.3.0-1) ... 770s Selecting previously unselected package python3-jaraco.functools. 770s Preparing to unpack .../49-python3-jaraco.functools_4.0.0-1_all.deb ... 770s Unpacking python3-jaraco.functools (4.0.0-1) ... 770s Selecting previously unselected package python3-cheroot. 770s Preparing to unpack .../50-python3-cheroot_10.0.0+ds1-2_all.deb ... 770s Unpacking python3-cheroot (10.0.0+ds1-2) ... 770s Selecting previously unselected package python3-dateutil. 770s Preparing to unpack .../51-python3-dateutil_2.9.0-2_all.deb ... 770s Unpacking python3-dateutil (2.9.0-2) ... 770s Selecting previously unselected package python3-diff-match-patch. 770s Preparing to unpack .../52-python3-diff-match-patch_20230430-1_all.deb ... 770s Unpacking python3-diff-match-patch (20230430-1) ... 770s Selecting previously unselected package python3-enchant. 770s Preparing to unpack .../53-python3-enchant_3.2.2-1_all.deb ... 770s Unpacking python3-enchant (3.2.2-1) ... 770s Selecting previously unselected package python3-iniconfig. 770s Preparing to unpack .../54-python3-iniconfig_1.1.1-2_all.deb ... 770s Unpacking python3-iniconfig (1.1.1-2) ... 770s Selecting previously unselected package python3-rapidfuzz. 770s Preparing to unpack .../55-python3-rapidfuzz_3.9.4+ds-1_amd64.deb ... 770s Unpacking python3-rapidfuzz (3.9.4+ds-1) ... 770s Selecting previously unselected package python3-levenshtein. 770s Preparing to unpack .../56-python3-levenshtein_0.25.1-3_amd64.deb ... 770s Unpacking python3-levenshtein (0.25.1-3) ... 770s Selecting previously unselected package python3-lxml:amd64. 770s Preparing to unpack .../57-python3-lxml_5.2.2-1_amd64.deb ... 770s Unpacking python3-lxml:amd64 (5.2.2-1) ... 770s Selecting previously unselected package python3-mistletoe. 770s Preparing to unpack .../58-python3-mistletoe_1.3.0-1_all.deb ... 770s Unpacking python3-mistletoe (1.3.0-1) ... 770s Selecting previously unselected package python3-packaging. 770s Preparing to unpack .../59-python3-packaging_24.1-1_all.deb ... 770s Unpacking python3-packaging (24.1-1) ... 770s Selecting previously unselected package python3-ply. 770s Preparing to unpack .../60-python3-ply_3.11-6_all.deb ... 770s Unpacking python3-ply (3.11-6) ... 770s Selecting previously unselected package python3-phply. 770s Preparing to unpack .../61-python3-phply_1.2.6-1_all.deb ... 770s Unpacking python3-phply (1.2.6-1) ... 770s Selecting previously unselected package python3-pluggy. 770s Preparing to unpack .../62-python3-pluggy_1.5.0-1_all.deb ... 770s Unpacking python3-pluggy (1.5.0-1) ... 770s Selecting previously unselected package python3-pytest. 770s Preparing to unpack .../63-python3-pytest_7.4.4-1_all.deb ... 770s Unpacking python3-pytest (7.4.4-1) ... 770s Selecting previously unselected package python3-ruamel.yaml.clib:amd64. 770s Preparing to unpack .../64-python3-ruamel.yaml.clib_0.2.8-1build1_amd64.deb ... 770s Unpacking python3-ruamel.yaml.clib:amd64 (0.2.8-1build1) ... 770s Selecting previously unselected package python3-ruamel.yaml. 770s Preparing to unpack .../65-python3-ruamel.yaml_0.17.21-1_all.deb ... 770s Unpacking python3-ruamel.yaml (0.17.21-1) ... 770s Selecting previously unselected package python3-simplejson. 770s Preparing to unpack .../66-python3-simplejson_3.19.2-1build2_amd64.deb ... 770s Unpacking python3-simplejson (3.19.2-1build2) ... 770s Selecting previously unselected package python3-syrupy. 770s Preparing to unpack .../67-python3-syrupy_4.6.1-1_all.deb ... 770s Unpacking python3-syrupy (4.6.1-1) ... 770s Selecting previously unselected package python3-wcwidth. 770s Preparing to unpack .../68-python3-wcwidth_0.2.5+dfsg1-1.1ubuntu1_all.deb ... 770s Unpacking python3-wcwidth (0.2.5+dfsg1-1.1ubuntu1) ... 771s Selecting previously unselected package python3-translate. 771s Preparing to unpack .../69-python3-translate_3.13.2-1_all.deb ... 771s Unpacking python3-translate (3.13.2-1) ... 771s Selecting previously unselected package python3-vobject. 771s Preparing to unpack .../70-python3-vobject_0.9.6.1-2_all.deb ... 771s Unpacking python3-vobject (0.9.6.1-2) ... 771s Selecting previously unselected package python3-xapian. 771s Preparing to unpack .../71-python3-xapian_1.4.22-1build5_amd64.deb ... 771s Unpacking python3-xapian (1.4.22-1build5) ... 771s Selecting previously unselected package subversion. 771s Preparing to unpack .../72-subversion_1.14.3-2_amd64.deb ... 771s Unpacking subversion (1.14.3-2) ... 771s Selecting previously unselected package python3-iniparse. 771s Preparing to unpack .../73-python3-iniparse_0.5-2_all.deb ... 771s Unpacking python3-iniparse (0.5-2) ... 771s Selecting previously unselected package python3-pycountry. 771s Preparing to unpack .../74-python3-pycountry_24.6.1+ds1-1_all.deb ... 771s Unpacking python3-pycountry (24.6.1+ds1-1) ... 771s Setting up python3-more-itertools (10.3.0-1) ... 771s Setting up python3-iniconfig (1.1.1-2) ... 771s Setting up libxapian30:amd64 (1.4.22-1build1) ... 771s Setting up python3-rapidfuzz (3.9.4+ds-1) ... 771s Setting up python3-diff-match-patch (20230430-1) ... 772s Setting up python3-jaraco.functools (4.0.0-1) ... 772s Setting up python3-aeidon (1.15-1) ... 772s Setting up libutf8proc3:amd64 (2.9.0-1build1) ... 772s Setting up libaspell15:amd64 (0.60.8.1-1build1) ... 772s Setting up python3-charset-normalizer (3.3.2-1) ... 772s Setting up python3-ply (3.11-6) ... 772s Setting up python3-ruamel.yaml.clib:amd64 (0.2.8-1build1) ... 772s Setting up python3-all (3.12.4-1) ... 772s Setting up libgomp1:amd64 (14.1.0-4ubuntu2) ... 772s Setting up python3-simplejson (3.19.2-1build2) ... 772s Setting up python3-packaging (24.1-1) ... 773s Setting up gcc-13-base:amd64 (13.3.0-3ubuntu1) ... 773s Setting up python3-wcwidth (0.2.5+dfsg1-1.1ubuntu1) ... 773s Setting up emacsen-common (3.0.5) ... 773s Setting up python3-cheroot (10.0.0+ds1-2) ... 773s Setting up libquadmath0:amd64 (14.1.0-4ubuntu2) ... 773s Setting up python3-pycountry (24.6.1+ds1-1) ... 773s Setting up python3-xapian (1.4.22-1build5) ... 773s Setting up libmpc3:amd64 (1.3.1-1build1) ... 773s Setting up libatomic1:amd64 (14.1.0-4ubuntu2) ... 773s Setting up python3-pluggy (1.5.0-1) ... 773s Setting up libubsan1:amd64 (14.1.0-4ubuntu2) ... 773s Setting up python3-ruamel.yaml (0.17.21-1) ... 774s Setting up python3-mistletoe (1.3.0-1) ... 774s Setting up libhwasan0:amd64 (14.1.0-4ubuntu2) ... 774s Setting up libasan8:amd64 (14.1.0-4ubuntu2) ... 774s Setting up libexttextcat-data (3.4.7-1build1) ... 774s Setting up libapr1t64:amd64 (1.7.2-3.2) ... 774s Setting up libxslt1.1:amd64 (1.1.39-0exp1build1) ... 774s Setting up python3-dateutil (2.9.0-2) ... 774s Setting up python3-levenshtein (0.25.1-3) ... 774s Setting up libtsan2:amd64 (14.1.0-4ubuntu2) ... 774s Setting up libhunspell-1.7-0:amd64 (1.7.2+really1.7.2-10build3) ... 774s Setting up libisl23:amd64 (0.26-3build1) ... 774s Setting up python3-soupsieve (2.5-1) ... 774s Setting up python3-iniparse (0.5-2) ... 774s Setting up libcc1-0:amd64 (14.1.0-4ubuntu2) ... 774s Setting up liblsan0:amd64 (14.1.0-4ubuntu2) ... 774s Setting up libitm1:amd64 (14.1.0-4ubuntu2) ... 774s Setting up libaprutil1t64:amd64 (1.6.3-2ubuntu1) ... 774s Setting up python3-vobject (0.9.6.1-2) ... 775s /usr/lib/python3/dist-packages/vobject/base.py:736: SyntaxWarning: invalid escape sequence '\-' 775s patterns['name'] = '[a-zA-Z0-9\-_]+' 775s /usr/lib/python3/dist-packages/vobject/base.py:1219: SyntaxWarning: invalid escape sequence '\;' 775s s = s.replace("\\", "\\\\").replace(";", "\;").replace(",", "\,") 775s /usr/lib/python3/dist-packages/vobject/base.py:1219: SyntaxWarning: invalid escape sequence '\,' 775s s = s.replace("\\", "\\\\").replace(";", "\;").replace(",", "\,") 775s /usr/lib/python3/dist-packages/vobject/hcalendar.py:1: SyntaxWarning: invalid escape sequence '\,' 775s """ 775s Setting up gettext (0.22.5-1) ... 775s Setting up python3-phply (1.2.6-1) ... 775s Setting up dictionaries-common (1.29.7) ... 775s Setting up cpp-13-x86-64-linux-gnu (13.3.0-3ubuntu1) ... 775s Setting up python3-pytest (7.4.4-1) ... 775s Setting up python3-syrupy (4.6.1-1) ... 776s Setting up libserf-1-1:amd64 (1.3.10-3ubuntu1) ... 776s Setting up python3-bs4 (4.12.3-1) ... 776s Setting up libgcc-13-dev:amd64 (13.3.0-3ubuntu1) ... 776s Setting up python3-lxml:amd64 (5.2.2-1) ... 776s Setting up hunspell-en-us (1:2020.12.07-2) ... 776s Setting up libsvn1:amd64 (1.14.3-2) ... 776s Setting up libstdc++-13-dev:amd64 (13.3.0-3ubuntu1) ... 776s Setting up cpp-x86-64-linux-gnu (4:13.3.0-2ubuntu2) ... 776s Setting up cpp-13 (13.3.0-3ubuntu1) ... 776s Setting up libenchant-2-2:amd64 (2.3.3-2build2) ... 776s Setting up gcc-13-x86-64-linux-gnu (13.3.0-3ubuntu1) ... 776s Setting up subversion (1.14.3-2) ... 776s Setting up python3-enchant (3.2.2-1) ... 776s Setting up gcc-13 (13.3.0-3ubuntu1) ... 776s Setting up python3-translate (3.13.2-1) ... 777s Setting up cpp (4:13.3.0-2ubuntu2) ... 777s Setting up g++-13-x86-64-linux-gnu (13.3.0-3ubuntu1) ... 777s Setting up gcc-x86-64-linux-gnu (4:13.3.0-2ubuntu2) ... 777s Setting up gcc (4:13.3.0-2ubuntu2) ... 777s Setting up g++-x86-64-linux-gnu (4:13.3.0-2ubuntu2) ... 777s Setting up g++-13 (13.3.0-3ubuntu1) ... 777s Setting up g++ (4:13.3.0-2ubuntu2) ... 777s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 777s Setting up build-essential (12.10ubuntu1) ... 777s Processing triggers for libc-bin (2.39-0ubuntu9) ... 777s Processing triggers for man-db (2.12.1-2) ... 778s Processing triggers for install-info (7.1-3build2) ... 778s Processing triggers for dictionaries-common (1.29.7) ... 804s Reading package lists... 804s Building dependency tree... 804s Reading state information... 804s Starting pkgProblemResolver with broken count: 0 804s Starting 2 pkgProblemResolver with broken count: 0 804s Done 805s The following NEW packages will be installed: 805s autopkgtest-satdep 805s 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 805s Need to get 0 B/696 B of archives. 805s After this operation, 0 B of additional disk space will be used. 805s Get:1 /tmp/autopkgtest.yhF5Vh/4-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [696 B] 805s Selecting previously unselected package autopkgtest-satdep. 805s (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 ... 79242 files and directories currently installed.) 805s Preparing to unpack .../4-autopkgtest-satdep.deb ... 805s Unpacking autopkgtest-satdep (0) ... 805s Setting up autopkgtest-satdep (0) ... 806s autopkgtest: WARNING: package python3-translate:i386 is not installed though it should be 814s (Reading database ... 79242 files and directories currently installed.) 814s Removing autopkgtest-satdep (0) ... 819s autopkgtest [21:43:53]: test python3-translate: [----------------------- 819s ============================= test session starts ============================== 819s platform linux -- Python 3.12.4, pytest-7.4.4, pluggy-1.5.0 -- /usr/bin/python3.12 819s cachedir: .pytest_cache 819s rootdir: /tmp/autopkgtest.yhF5Vh/autopkgtest_tmp 819s plugins: syrupy-4.6.1 825s collecting ... collected 3340 items / 2 skipped 825s 825s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff PASSED [ 0%] 825s tests/odf_xliff/test_odf_xliff.py::test_roundtrip PASSED [ 0%] 825s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff2_inline PASSED [ 0%] 825s tests/translate/convert/test_accesskey.py::test_get_label_and_accesskey PASSED [ 0%] 825s tests/translate/convert/test_accesskey.py::test_extract_bad_accesskeys PASSED [ 0%] 825s tests/translate/convert/test_accesskey.py::test_ignore_entities PASSED [ 0%] 825s tests/translate/convert/test_accesskey.py::test_alternate_accesskey_marker PASSED [ 0%] 825s tests/translate/convert/test_accesskey.py::test_unicode PASSED [ 0%] 825s tests/translate/convert/test_accesskey.py::test_numeric PASSED [ 0%] 825s tests/translate/convert/test_accesskey.py::test_empty_string PASSED [ 0%] 825s tests/translate/convert/test_accesskey.py::test_end_of_string PASSED [ 0%] 825s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey PASSED [ 0%] 825s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey_different_capitals PASSED [ 0%] 825s tests/translate/convert/test_accesskey.py::test_uncombinable PASSED [ 0%] 825s tests/translate/convert/test_accesskey.py::test_accesskey_already_in_text PASSED [ 0%] 825s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_no_template_units PASSED [ 0%] 825s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_template_units PASSED [ 0%] 825s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_no_template_units PASSED [ 0%] 825s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_template_units PASSED [ 0%] 825s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_help PASSED [ 0%] 825s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid PASSED [ 0%] 825s tests/translate/convert/test_convert.py::TestConvertCommand::test_help PASSED [ 0%] 825s tests/translate/convert/test_csv2po.py::test_replacestrings PASSED [ 0%] 825s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity PASSED [ 0%] 825s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity_with_template PASSED [ 0%] 825s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_newlines PASSED [ 0%] 825s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_tabs PASSED [ 0%] 825s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_quotes PASSED [ 0%] 825s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_empties PASSED [ 0%] 825s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_kdecomment PASSED [ 0%] 825s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_escaped_newlines PASSED [ 0%] 825s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity PASSED [ 0%] 825s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity_with_template PASSED [ 0%] 825s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_newlines PASSED [ 1%] 825s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_tabs PASSED [ 1%] 825s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_quotes PASSED [ 1%] 825s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_empties PASSED [ 1%] 825s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_kdecomment PASSED [ 1%] 825s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_escaped_newlines PASSED [ 1%] 825s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_help PASSED [ 1%] 825s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_simpleentity PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_convertdtd PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_apos PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_quotes PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_two_empty_entities PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity_translated PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisaton_note_simple PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisation_note_merge PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_simple PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_label PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_onlyentity PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_commentedout PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_spaces_at_start_of_dtd_lines PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_folding PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_mismatch PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_carriage_return_in_multiline_dtd PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_with_blankline PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_closing_quotes PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_preserving_spaces PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_escaping_newline_tabs PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_abandoned_accelerator PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_unassociable_accelerator PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_changed_labels_and_accelerators PASSED [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence XFAIL [ 1%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_exclude_entity_includes PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_linewraps PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merging_with_new_untranslated PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merge_without_template PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_simpleentity PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_convertdtd PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_apos PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_quotes PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_two_empty_entities PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity_translated PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisaton_note_simple PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisation_note_merge PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_simple PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_label PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_onlyentity PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_commentedout PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_spaces_at_start_of_dtd_lines PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_folding PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_mismatch PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_carriage_return_in_multiline_dtd PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_with_blankline PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_closing_quotes PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_preserving_spaces PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_escaping_newline_tabs PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_abandoned_accelerator PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_unassociable_accelerator PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_changed_labels_and_accelerators PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence XFAIL [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_exclude_entity_includes PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_linewraps PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merging_with_new_untranslated PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merge_without_template PASSED [ 2%] 825s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_help PASSED [ 2%] 825s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_defaults PASSED [ 3%] 825s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_root_name PASSED [ 3%] 825s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_value_name PASSED [ 3%] 825s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_key PASSED [ 3%] 825s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_default_namespace PASSED [ 3%] 825s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_namespace_prefix PASSED [ 3%] 825s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_all_parameters PASSED [ 3%] 825s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_empty_file_is_empty_store PASSED [ 3%] 825s tests/translate/convert/test_flatxml2po.py::TestFlatXML2POCommand::test_help PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_extract_lang_attribute_from_html_tag PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title_with_linebreak PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_meta PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_br PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak_and_embedded_br PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_uppercase_html PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div_with_linebreaks PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a_with_linebreak PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_sequence_of_anchor_elements PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_img_empty PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img_inside_a PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_table_summary PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_simple PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_complex PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_empty PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_address PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings PASSED [ 3%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings_with_linebreaks PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dt PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dd PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_span PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_ul PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_lists PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_duplicates PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiline_reflow PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_tags PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_carriage_return PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_encoding_latin1 PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_strip_html PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_text PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_attributes PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_charrefs PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiple_php PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_multiline PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_with_embedded_html PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_comments PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2PO::test_attribute_without_value PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_extract_lang_attribute_from_html_tag PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title_with_linebreak PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_meta PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_br PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak_and_embedded_br PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_uppercase_html PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div_with_linebreaks PASSED [ 4%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a_with_linebreak PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_sequence_of_anchor_elements PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_img_empty PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img_inside_a PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_table_summary PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_simple PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_complex PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_empty PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_address PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings_with_linebreaks PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dt PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dd PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_span PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_ul PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_lists PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_duplicates PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiline_reflow PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_tags PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_carriage_return PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_encoding_latin1 PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_strip_html PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_text PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_attributes PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_charrefs PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiple_php PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_multiline PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_with_embedded_html PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_comments PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_attribute_without_value PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_help PASSED [ 5%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_single PASSED [ 6%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile PASSED [ 6%] 825s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile_to_stdout PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_convert_empty_file PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_translations PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_summary PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_description PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_location PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_comment PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_template_duplicate_style PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_misaligned_files PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_blank_msgstr PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_duplicate_style PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_convert_empty_file PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_translations PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_summary PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_description PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_location PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_comment PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_template_duplicate_style PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_misaligned_files PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_blank_msgstr PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_duplicate_style PASSED [ 6%] 825s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_help PASSED [ 6%] 825s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_help PASSED [ 6%] 825s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_convert PASSED [ 6%] 825s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_empty_file PASSED [ 6%] 825s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_no_translation PASSED [ 6%] 825s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_simple PASSED [ 6%] 825s tests/translate/convert/test_ini2po.py::TestIni2PO::test_no_duplicates PASSED [ 6%] 825s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_simple PASSED [ 6%] 825s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_misaligned_files PASSED [ 7%] 825s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_blank_msgstr PASSED [ 7%] 825s tests/translate/convert/test_ini2po.py::TestIni2PO::test_dialects_inno PASSED [ 7%] 825s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_empty_file PASSED [ 7%] 825s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_no_translation PASSED [ 7%] 825s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_simple PASSED [ 7%] 825s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_no_duplicates PASSED [ 7%] 825s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_simple PASSED [ 7%] 825s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_misaligned_files PASSED [ 7%] 825s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_blank_msgstr PASSED [ 7%] 825s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_dialects_inno PASSED [ 7%] 825s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_help PASSED [ 7%] 825s tests/translate/convert/test_json2po.py::TestJson2PO::test_simple PASSED [ 7%] 825s tests/translate/convert/test_json2po.py::TestJson2PO::test_three_same_keys PASSED [ 7%] 825s tests/translate/convert/test_json2po.py::TestJson2PO::test_filter PASSED [ 7%] 825s tests/translate/convert/test_json2po.py::TestJson2PO::test_miltiple_units PASSED [ 7%] 825s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_simple PASSED [ 7%] 825s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_three_same_keys PASSED [ 7%] 825s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_filter PASSED [ 7%] 825s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_miltiple_units PASSED [ 7%] 825s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_help PASSED [ 7%] 825s tests/translate/convert/test_md2po.py::TestMD2PO::test_help PASSED [ 7%] 825s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_single PASSED [ 7%] 825s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_onefile PASSED [ 7%] 825s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_single PASSED [ 7%] 825s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_onefile PASSED [ 7%] 825s tests/translate/convert/test_moz2po.py::TestMoz2POCommand::test_help PASSED [ 7%] 825s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_simpleentry PASSED [ 7%] 825s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_uncomment_contributors PASSED [ 7%] 825s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_convert_empty PASSED [ 7%] 825s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_string PASSED [ 7%] 825s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_merge PASSED [ 7%] 825s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_entry PASSED [ 7%] 825s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_comment PASSED [ 7%] 825s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_meta_tags PASSED [ 8%] 825s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_keep_duplicates PASSED [ 8%] 825s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_drop_duplicates PASSED [ 8%] 825s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_convert_empty PASSED [ 8%] 825s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_string PASSED [ 8%] 825s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_merge PASSED [ 8%] 825s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_entry PASSED [ 8%] 825s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_comment PASSED [ 8%] 825s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_meta_tags PASSED [ 8%] 825s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_keep_duplicates PASSED [ 8%] 825s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_drop_duplicates PASSED [ 8%] 825s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_help PASSED [ 8%] 825s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_help PASSED [ 8%] 825s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_convert PASSED [ 8%] 825s tests/translate/convert/test_oo2po.py::TestOO2PO::test_simpleentity PASSED [ 8%] 825s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes PASSED [ 8%] 825s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_escape PASSED [ 8%] 825s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_whitespaceonly PASSED [ 8%] 825s tests/translate/convert/test_oo2po.py::TestOO2PO::test_double_escapes PASSED [ 8%] 825s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes_helpcontent2 PASSED [ 8%] 825s tests/translate/convert/test_oo2po.py::TestOO2PO::test_msgid_bug_error_address PASSED [ 8%] 825s tests/translate/convert/test_oo2po.py::TestOO2PO::test_x_comment_inclusion PASSED [ 8%] 825s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simpleentity PASSED [ 8%] 825s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes PASSED [ 8%] 826s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 8%] 826s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 8%] 826s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_double_escapes PASSED [ 8%] 826s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 8%] 826s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 8%] 826s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 8%] 826s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_help PASSED [ 8%] 826s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_preserve_filename PASSED [ 8%] 826s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot PASSED [ 8%] 826s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 826s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 826s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_simpleentity PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_escape PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_whitespaceonly PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_double_escapes PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes_helpcontent2 PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_x_comment_inclusion PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_msgid_bug_error_address PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simpleentity PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_double_escapes PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_help PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_preserve_filename PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 826s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 826s tests/translate/convert/test_php2po.py::TestPhp2PO::test_simpleentry PASSED [ 9%] 826s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphp PASSED [ 9%] 826s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphptemplate PASSED [ 9%] 826s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpmissing PASSED [ 9%] 826s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpempty PASSED [ 9%] 826s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unicode PASSED [ 9%] 826s tests/translate/convert/test_php2po.py::TestPhp2PO::test_multiline PASSED [ 9%] 826s tests/translate/convert/test_php2po.py::TestPhp2PO::test_comments_before PASSED [ 9%] 826s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry PASSED [ 9%] 826s tests/translate/convert/test_php2po.py::TestPhp2PO::test_hash_comment_with_equals PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry_translated PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2PO::test_newlines_in_value PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2PO::test_spaces_in_name PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_array PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_array PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_nested_arrays PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_nested_arrays PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_simpleentry PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphp PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphptemplate PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpmissing PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpempty PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unicode PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_multiline PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_comments_before PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_hash_comment_with_equals PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry_translated PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_newlines_in_value PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_spaces_in_name PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_array PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_array PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_nested_arrays PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_nested_arrays PASSED [ 10%] 826s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_help PASSED [ 10%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_simpleentity PASSED [ 10%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_multiline PASSED [ 10%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapednewlines PASSED [ 10%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedtabs PASSED [ 10%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedquotes PASSED [ 10%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedescape PASSED [ 10%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_singlequotes PASSED [ 10%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_empties PASSED [ 10%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_kdecomments PASSED [ 11%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_simpleentity PASSED [ 11%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_multiline PASSED [ 11%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapednewlines PASSED [ 11%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedtabs PASSED [ 11%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedquotes PASSED [ 11%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedescape PASSED [ 11%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_singlequotes PASSED [ 11%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_empties PASSED [ 11%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_kdecomments PASSED [ 11%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_help PASSED [ 11%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder PASSED [ 11%] 826s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_joinlines PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_escapedstr PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_missingaccesskey PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskeycase PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_types PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities_two PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments_translator PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_retains_hashprefix PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_convertdtd PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_with_template PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_without_template PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_blank_source PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_newlines_escapes PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_simple PASSED [ 11%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_escape PASSED [ 12%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_quotes PASSED [ 12%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_amp PASSED [ 12%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_merging_entries_with_spaces_removed PASSED [ 12%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces PASSED [ 12%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces_after_value PASSED [ 12%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments PASSED [ 12%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_duplicates PASSED [ 12%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_joinlines PASSED [ 12%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_escapedstr PASSED [ 12%] 826s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_missingaccesskey PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskeycase PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_types PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities_two PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments_translator PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_retains_hashprefix PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_convertdtd PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_with_template PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_without_template PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_blank_source PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_newlines_escapes PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_simple PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_escape PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_quotes PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_amp PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_merging_entries_with_spaces_removed PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces_after_value PASSED [ 12%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments PASSED [ 13%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_duplicates PASSED [ 13%] 829s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_help PASSED [ 13%] 829s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_defaults PASSED [ 13%] 829s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_root_name PASSED [ 13%] 829s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_value_name PASSED [ 13%] 829s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_key PASSED [ 13%] 829s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_default_namespace PASSED [ 13%] 829s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_namespace_prefix PASSED [ 13%] 829s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_indent_eight PASSED [ 13%] 829s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_noindent PASSED [ 13%] 829s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXMLCommand::test_help PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2Html::test_simple PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2Html::test_linebreaks PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2Html::test_replace_substrings PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_outside_translatable_content PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_embedded_within_translatable_content PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_without_value PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2Html::test_entities PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2Html::test_escapes PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_translated PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_untranslated PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_fuzzy PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2Html::test_untranslated_attributes PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_simple PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_linebreaks PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_replace_substrings PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_outside_translatable_content PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_embedded_within_translatable_content PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_without_value PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_entities PASSED [ 13%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_escapes PASSED [ 14%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_translated PASSED [ 14%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_untranslated PASSED [ 14%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_fuzzy PASSED [ 14%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_untranslated_attributes PASSED [ 14%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_help PASSED [ 14%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_individual_files PASSED [ 14%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_fully_recursive PASSED [ 14%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_input_specified PASSED [ 14%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified PASSED [ 14%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_output_specified PASSED [ 14%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file PASSED [ 14%] 829s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_empty_file PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_summary PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_description PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_location PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_comment PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_complex_icalendar PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_skip_fuzzy PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_include_fuzzy PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_no_template PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_template_location_not_in_source_file PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_below_threshold PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_above_threshold PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_empty_file PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_summary PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_description PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_location PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_comment PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_complex_icalendar PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_skip_fuzzy PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_include_fuzzy PASSED [ 14%] 829s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_no_template PASSED [ 15%] 829s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_template_location_not_in_source_file PASSED [ 15%] 829s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_below_threshold PASSED [ 15%] 829s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_above_threshold PASSED [ 15%] 829s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_help PASSED [ 15%] 829s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_help PASSED [ 15%] 829s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_no_templates PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_simple PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_space_preservation PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_blank_entries PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_fuzzy PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_propertyless_template PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_empty_value PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_dialects_inno PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_misaligned_files PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_below_threshold PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_above_threshold PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_no_fuzzy PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_allow_fuzzy PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_missing_source PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_repeated_locations PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_no_templates PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_simple PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_space_preservation PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_blank_entries PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_fuzzy PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_propertyless_template PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_empty_value PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_dialects_inno PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_misaligned_files PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_below_threshold PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_above_threshold PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_no_fuzzy PASSED [ 15%] 829s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_allow_fuzzy PASSED [ 16%] 829s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_missing_source PASSED [ 16%] 829s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_repeated_locations PASSED [ 16%] 829s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_help PASSED [ 16%] 829s tests/translate/convert/test_po2json.py::TestPO2JSON::test_basic PASSED [ 16%] 829s tests/translate/convert/test_po2json.py::TestPO2JSON::test_ordering_serialize PASSED [ 16%] 829s tests/translate/convert/test_po2json.py::TestPO2JSON::test_dont_use_empty_translation PASSED [ 16%] 829s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_false PASSED [ 16%] 829s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_true PASSED [ 16%] 829s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_false PASSED [ 16%] 829s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_true PASSED [ 16%] 829s tests/translate/convert/test_po2md.py::TestPO2MD::test_help PASSED [ 16%] 829s tests/translate/convert/test_po2md.py::TestPO2MD::test_single_markdown_file_with_single_po PASSED [ 16%] 829s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po PASSED [ 16%] 829s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_and_directory_of_po_files PASSED [ 16%] 829s tests/translate/convert/test_po2moz.py::TestPO2MozCommand::test_help PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_empty PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_simple PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_comment PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_ok_marker PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_below_threshold PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_above_threshold PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_skip_non_translatable_input PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_no_fuzzy PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_allow_fuzzy PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_mark_active PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_empty PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_simple PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_comment PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_ok_marker PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_below_threshold PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_above_threshold PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_skip_non_translatable_input PASSED [ 16%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_no_fuzzy PASSED [ 17%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_allow_fuzzy PASSED [ 17%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_mark_active PASSED [ 17%] 829s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_help PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OO::test_convertoo PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OO::test_pofilter PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_simple PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_escape PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_quotes PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_spaces PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OO::test_default_timestamp PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OO::test_escape_conversion PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes2 PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_convertoo PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_pofilter PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_simple PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_quotes PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_spaces PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_escape_conversion PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes2 PASSED [ 17%] 829s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_help PASSED [ 17%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp PASSED [ 17%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_notemplate PASSED [ 17%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_empty_template PASSED [ 17%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_simple PASSED [ 17%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_space_preservation PASSED [ 17%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_preserve_unused_statement PASSED [ 17%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_not_translated_multiline PASSED [ 17%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_blank_entries PASSED [ 17%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_fuzzy PASSED [ 17%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_locations_with_spaces PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_inline_comments PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_block_comments PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_variables PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_multiline PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_hash_comment PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_arrays PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_nested_array PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_unnamed_nested_arrays PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template XFAIL [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_notemplate PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_empty_template PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_simple PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_space_preservation PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_preserve_unused_statement PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_not_translated_multiline PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_blank_entries PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_fuzzy PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_locations_with_spaces PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_inline_comments PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_block_comments PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_variables PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_multiline PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_hash_comment PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_arrays PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_nested_array PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_unnamed_nested_arrays PASSED [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template XFAIL [ 18%] 829s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_help PASSED [ 18%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_simple PASSED [ 18%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated PASSED [ 18%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_hard_newlines_preserved PASSED [ 18%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_space_preservation PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_value PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_separator PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank_entries PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_fuzzy PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_margin_whitespace PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_all_whitespace PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_propertyless_template PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_delimiters PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_empty_value PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_personalities PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_simple PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline2 PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_comments PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_unchanged PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gaia_plurals PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_duplicates PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gwt_plurals PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_simple PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_hard_newlines_preserved PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_space_preservation PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_value PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_separator PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank_entries PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_fuzzy PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_margin_whitespace PASSED [ 19%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_all_whitespace PASSED [ 20%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_propertyless_template PASSED [ 20%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_delimiters PASSED [ 20%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_empty_value PASSED [ 20%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_personalities PASSED [ 20%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_simple PASSED [ 20%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline PASSED [ 20%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline2 PASSED [ 20%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_comments PASSED [ 20%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_unchanged PASSED [ 20%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank PASSED [ 20%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gaia_plurals PASSED [ 20%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_duplicates PASSED [ 20%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gwt_plurals PASSED [ 20%] 829s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_help PASSED [ 20%] 829s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_help PASSED [ 20%] 829s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert PASSED [ 20%] 829s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_quotes PASSED [ 20%] 829s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment PASSED [ 20%] 829s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_dos_eol PASSED [ 20%] 829s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_double_string PASSED [ 20%] 829s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_popup PASSED [ 20%] 829s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_discardable PASSED [ 20%] 829s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_menuex PASSED [ 20%] 829s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_newlines PASSED [ 20%] 829s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_after PASSED [ 20%] 829s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_block_language PASSED [ 20%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_simpleunit PASSED [ 20%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_basic PASSED [ 20%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_multiline PASSED [ 20%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapednewlines PASSED [ 20%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedtabs PASSED [ 20%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedquotes PASSED [ 20%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_exclusions PASSED [ 20%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingcomment PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingcomment PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingduplicatecomment PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingcomment PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_existingcomments PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_simpleunit PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_basic PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_multiline PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapednewlines PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedtabs PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedquotes PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_exclusions PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingcomment PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingcomment PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingduplicatecomment PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingcomment PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_existingcomments PASSED [ 21%] 829s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_help PASSED [ 21%] 829s tests/translate/convert/test_po2sub.py::TestPO2Sub::test_subrip PASSED [ 21%] 829s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_subrip PASSED [ 21%] 829s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_help PASSED [ 21%] 829s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_empty PASSED [ 22%] 829s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert PASSED [ 22%] 829s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_marked_untranslated PASSED [ 22%] 829s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_empty PASSED [ 22%] 829s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert PASSED [ 22%] 829s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_marked_untranslated PASSED [ 22%] 829s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_help PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_basic PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcelanguage PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_targetlanguage PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_multiline PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapednewlines PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedtabs PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedquotes PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_exclusions PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonascii PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonecomments PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_otherscomments PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcecomments PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_typecomments PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_basic PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcelanguage PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_targetlanguage PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_multiline PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapednewlines PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedtabs PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedquotes PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_exclusions PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonascii PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonecomments PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_otherscomments PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcecomments PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_typecomments PASSED [ 22%] 829s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_help PASSED [ 22%] 829s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simpleunit PASSED [ 23%] 829s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simple_unicode_unit PASSED [ 23%] 829s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fullunit PASSED [ 23%] 829s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fuzzyunit PASSED [ 23%] 829s tests/translate/convert/test_po2ts.py::TestPO2TS::test_obsolete PASSED [ 23%] 829s tests/translate/convert/test_po2ts.py::TestPO2TS::test_duplicates PASSED [ 23%] 829s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak PASSED [ 23%] 829s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak_consecutive PASSED [ 23%] 829s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simpleunit PASSED [ 23%] 829s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simple_unicode_unit PASSED [ 23%] 829s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fullunit PASSED [ 23%] 829s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fuzzyunit PASSED [ 23%] 829s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_obsolete PASSED [ 23%] 829s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_duplicates PASSED [ 23%] 829s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak PASSED [ 23%] 829s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak_consecutive PASSED [ 23%] 829s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_help PASSED [ 23%] 829s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_basic PASSED [ 23%] 829s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_nonascii PASSED [ 23%] 829s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_blank_handling PASSED [ 23%] 829s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_fuzzy_handling PASSED [ 23%] 829s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_obsolete_ignore PASSED [ 23%] 829s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_header_ignore PASSED [ 23%] 829s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_below_threshold PASSED [ 23%] 829s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_above_threshold PASSED [ 23%] 829s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_basic PASSED [ 23%] 829s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_nonascii PASSED [ 23%] 829s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_blank_handling PASSED [ 23%] 829s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_fuzzy_handling PASSED [ 23%] 829s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_obsolete_ignore PASSED [ 23%] 829s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_header_ignore PASSED [ 23%] 829s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_below_threshold PASSED [ 23%] 829s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_above_threshold PASSED [ 23%] 829s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_help PASSED [ 24%] 829s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_basic PASSED [ 24%] 829s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_unicode PASSED [ 24%] 829s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_ordering_serialize PASSED [ 24%] 829s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_markmin PASSED [ 24%] 829s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_minimal PASSED [ 24%] 829s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_basic PASSED [ 24%] 829s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_multiline PASSED [ 24%] 829s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapednewlines PASSED [ 24%] 829s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedtabs PASSED [ 24%] 829s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedquotes PASSED [ 24%] 829s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_locationcomments PASSED [ 24%] 829s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_othercomments PASSED [ 24%] 829s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_automaticcomments PASSED [ 24%] 829s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_header PASSED [ 24%] 829s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_fuzzy PASSED [ 24%] 829s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_germanic_plurals PASSED [ 24%] 829s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_funny_plurals PASSED [ 24%] 829s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_language_tags PASSED [ 24%] 829s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_variables PASSED [ 24%] 829s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_approved PASSED [ 24%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_empty_PO PASSED [ 24%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_no_templates PASSED [ 24%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple_output PASSED [ 24%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple PASSED [ 24%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_translated PASSED [ 24%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_no_fuzzy PASSED [ 24%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_allow_fuzzy PASSED [ 24%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_nested PASSED [ 24%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_below_threshold PASSED [ 24%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_above_threshold PASSED [ 24%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_empty_PO PASSED [ 24%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_no_templates PASSED [ 24%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple_output PASSED [ 25%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple PASSED [ 25%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_translated PASSED [ 25%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_no_fuzzy PASSED [ 25%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_allow_fuzzy PASSED [ 25%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_nested PASSED [ 25%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_below_threshold PASSED [ 25%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_above_threshold PASSED [ 25%] 829s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_help PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank_plurals PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_simple PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_messages_marked_fuzzy PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals_with_fuzzy_matching PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change XFAIL [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_change PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_and_whitespace_change PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_ambiguous_with_disambiguous PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes XFAIL [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently XFAIL [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_dont_duplicate PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_new_overides_old PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments_with_blank_comment_lines PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_commentlines PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgidcomments PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_with_msgidcomment PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_obsoleting_messages PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_not_obsoleting_empty_messages PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_new_before_obsolete PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_header_initialisation PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments PASSED [ 25%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_typecomments PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt_multiline PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_location PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_id PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_msgid PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_migrate_msgidcomment_to_msgctxt PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_obsolete_msgctxt PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_small_strings PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank_plurals PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_simple PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_messages_marked_fuzzy PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change XFAIL [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_change PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_and_whitespace_change PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_ambiguous_with_disambiguous PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes XFAIL [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently XFAIL [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_new_overides_old PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments_with_blank_comment_lines PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_commentlines PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgidcomments PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_with_msgidcomment PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_obsoleting_messages PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_not_obsoleting_empty_messages PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_new_before_obsolete PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_header_initialisation PASSED [ 26%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments PASSED [ 27%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_typecomments PASSED [ 27%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt PASSED [ 27%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt_multiline PASSED [ 27%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_location PASSED [ 27%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_id PASSED [ 27%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_msgid PASSED [ 27%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_migrate_msgidcomment_to_msgctxt PASSED [ 27%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_obsolete_msgctxt PASSED [ 27%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_small_strings PASSED [ 27%] 829s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_help PASSED [ 27%] 829s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_no_endlines_added PASSED [ 27%] 829s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_uncomment_contributors PASSED [ 27%] 829s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_multiline_comment_newlines PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_simpleentry PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_convertprop PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_value_entry PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_separator_entry PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_end_of_string PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_start_of_value PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unicode PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_escaping PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_comments PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_comments PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_folding_accesskeys PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_dont_translate PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty_translated PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_newlines_in_value PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_header_comments PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unassociated_comment_order PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_x_header PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gaia_plurals PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_successive_gaia_plurals PASSED [ 27%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_duplicate_keys PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gwt_plurals PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_simpleentry PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_convertprop PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_value_entry PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_separator_entry PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_end_of_string PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_start_of_value PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unicode PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_escaping PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_comments PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_comments PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_folding_accesskeys PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_dont_translate PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty_translated PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_newlines_in_value PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_header_comments PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unassociated_comment_order PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_x_header PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gaia_plurals PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_successive_gaia_plurals PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_duplicate_keys PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gwt_plurals PASSED [ 28%] 829s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_help PASSED [ 28%] 829s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_help PASSED [ 28%] 829s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert PASSED [ 28%] 829s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 PASSED [ 28%] 829s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong PASSED [ 28%] 829s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 PASSED [ 28%] 829s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex PASSED [ 28%] 829s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_simple PASSED [ 28%] 829s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_multiple_units PASSED [ 28%] 829s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_automaticcomments PASSED [ 29%] 829s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_translatorcomments PASSED [ 29%] 829s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_locations PASSED [ 29%] 829s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple PASSED [ 29%] 829s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_multiple_units PASSED [ 29%] 829s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_automaticcomments PASSED [ 29%] 829s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_translatorcomments PASSED [ 29%] 829s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_locations PASSED [ 29%] 829s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_help PASSED [ 29%] 829s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot PASSED [ 29%] 829s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po PASSED [ 29%] 829s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates PASSED [ 29%] 829s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_convert_empty PASSED [ 29%] 829s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_defaults PASSED [ 29%] 829s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_includeunused PASSED [ 29%] 829s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_convert_empty PASSED [ 29%] 829s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_defaults PASSED [ 29%] 829s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_includeunused PASSED [ 29%] 829s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_help PASSED [ 29%] 829s tests/translate/convert/test_ts2po.py::TestTS2PO::test_blank PASSED [ 29%] 829s tests/translate/convert/test_ts2po.py::TestTS2PO::test_basic PASSED [ 29%] 829s tests/translate/convert/test_ts2po.py::TestTS2PO::test_unfinished PASSED [ 29%] 829s tests/translate/convert/test_ts2po.py::TestTS2PO::test_multiline PASSED [ 29%] 829s tests/translate/convert/test_ts2po.py::TestTS2PO::test_obsolete PASSED [ 29%] 829s tests/translate/convert/test_ts2po.py::TestTS2PO::test_comment PASSED [ 29%] 829s tests/translate/convert/test_ts2po.py::TestTS2PO::test_extracomment PASSED [ 29%] 829s tests/translate/convert/test_ts2po.py::TestTS2PO::test_emptycontext PASSED [ 29%] 829s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_blank PASSED [ 29%] 829s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_basic PASSED [ 29%] 829s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_unfinished PASSED [ 29%] 829s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_multiline PASSED [ 29%] 829s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_obsolete PASSED [ 29%] 829s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_comment PASSED [ 29%] 829s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_extracomment PASSED [ 30%] 829s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_emptycontext PASSED [ 30%] 829s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_help PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_convert_empty PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_keep_duplicates PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_drop_duplicates PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_simple PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_multiple_units PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_carriage_return PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_merge PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_no_segmentation PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestDoku2po::test_convert_empty PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestDoku2po::test_keep_duplicates PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestDoku2po::test_drop_duplicates PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestDoku2po::test_basic PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestDoku2po::test_bullet_list PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestDoku2po::test_numbered_list PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestDoku2po::test_spacing PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestDoku2po::test_merge PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_convert_empty PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_keep_duplicates PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_drop_duplicates PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_simple PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_multiple_units PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_carriage_return PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_merge PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_no_segmentation PASSED [ 30%] 829s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_help PASSED [ 30%] 829s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_basic PASSED [ 30%] 829s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_unicode PASSED [ 30%] 829s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_markmin PASSED [ 30%] 829s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_help PASSED [ 30%] 829s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert PASSED [ 30%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_minimal PASSED [ 30%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_basic PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_translatorcomments PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_autocomment PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_locations PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_fuzzy PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_plurals PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_minimal PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_basic PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_translatorcomments PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_autocomment PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_locations PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_fuzzy PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_plurals PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_help PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_simple_convert PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_minimal PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_basic PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_translatorcomments PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_autocomment PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_locations PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_fuzzy PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_plurals PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_help PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po PASSED [ 31%] 829s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates PASSED [ 31%] 829s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_empty_YAML PASSED [ 31%] 829s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple_output PASSED [ 31%] 829s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple PASSED [ 31%] 829s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_nested PASSED [ 31%] 829s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates XFAIL [ 31%] 829s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_with_template PASSED [ 31%] 829s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_empty_YAML PASSED [ 32%] 829s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple_output PASSED [ 32%] 829s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple PASSED [ 32%] 829s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_nested PASSED [ 32%] 829s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates XFAIL [ 32%] 829s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_with_template PASSED [ 32%] 829s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_help PASSED [ 32%] 829s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_empty_target PASSED [ 32%] 829s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_ellipsis PASSED [ 32%] 829s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_spacestart_spaceend PASSED [ 32%] 829s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_start_capitals PASSED [ 32%] 829s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_end_punc PASSED [ 32%] 829s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_combinations PASSED [ 32%] 829s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_nothing_to_do PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_defaults PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_construct PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_accelerator_markers PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_messages PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_accelerators PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_acceleratedvariables XFAIL [ 32%] 829s tests/translate/filters/test_checks.py::test_acronyms PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_blank PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_brackets PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_compendiumconflicts PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_doublequoting PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_doublespacing PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_doublewords PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_endpunc PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_endwhitespace PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_escapes PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_newlines PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_tabs PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_filepaths PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_kdecomments PASSED [ 32%] 829s tests/translate/filters/test_checks.py::test_long PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_musttranslatewords XFAIL [ 33%] 829s tests/translate/filters/test_checks.py::test_notranslatewords PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_numbers PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_persian_numbers PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_bengali_numbers PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_arabic_numbers PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_assamese_numbers PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_options PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_printf PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_pythonbraceformat PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_puncspacing PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_purepunc PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_sentencecount PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_short PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_singlequoting PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_vietnamese_singlequoting PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time XFAIL [ 33%] 829s tests/translate/filters/test_checks.py::test_persian_quoting PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_simplecaps PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_spellcheck SKIPPED (Spe...) [ 33%] 829s tests/translate/filters/test_checks.py::test_startcaps PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_startpunc PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_startwhitespace PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_unchanged PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_untranslated PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_validchars PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_minimalchecker PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_reducedchecker PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_variables_kde PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_variables_gnome PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_variables_mozilla PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_variables_openoffice PASSED [ 33%] 829s tests/translate/filters/test_checks.py::test_variables_cclicense PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_variables_ios PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_xmltags PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags XFAIL [ 34%] 829s tests/translate/filters/test_checks.py::test_ooxmltags PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_functions PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_emails PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_urls PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_simpleplurals PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_nplurals PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_credits PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_gconf PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_validxml PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_hassuggestion PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_dialogsizes PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_mozilla_no_accelerators_for_indic PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_ensure_bengali_languages_script_is_correct PASSED [ 34%] 829s tests/translate/filters/test_checks.py::test_category PASSED [ 34%] 829s tests/translate/filters/test_decoration.py::test_spacestart PASSED [ 34%] 829s tests/translate/filters/test_decoration.py::test_isvalidaccelerator PASSED [ 34%] 829s tests/translate/filters/test_decoration.py::test_find_marked_variables PASSED [ 34%] 829s tests/translate/filters/test_decoration.py::test_getnumbers PASSED [ 34%] 829s tests/translate/filters/test_decoration.py::test_getfunctions PASSED [ 34%] 829s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplepass PASSED [ 34%] 829s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplefail PASSED [ 34%] 829s tests/translate/filters/test_pofilter.py::TestPOFilter::test_variables_across_lines PASSED [ 34%] 829s tests/translate/filters/test_pofilter.py::TestPOFilter::test_ignore_if_already_marked PASSED [ 34%] 829s tests/translate/filters/test_pofilter.py::TestPOFilter::test_non_existant_check PASSED [ 34%] 829s tests/translate/filters/test_pofilter.py::TestPOFilter::test_list_all_tests PASSED [ 34%] 829s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_fuzzy PASSED [ 34%] 829s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_review PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isfuzzy PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isreview PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestPOFilter::test_notes PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestPOFilter::test_unicode PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestPOFilter::test_preconditions PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestPOFilter::test_msgid_comments PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplepass PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplefail PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_variables_across_lines PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_ignore_if_already_marked PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_non_existant_check PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_list_all_tests PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_fuzzy PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_review PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isfuzzy PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isreview PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_notes PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_unicode PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_preconditions PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplepass PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplefail PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_variables_across_lines PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_ignore_if_already_marked PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_non_existant_check PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_list_all_tests PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_notes PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_unicode PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_preconditions PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_fuzzy PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_review PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isfuzzy PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isreview PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplepass PASSED [ 35%] 829s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplefail PASSED [ 36%] 829s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_variables_across_lines PASSED [ 36%] 829s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_ignore_if_already_marked PASSED [ 36%] 829s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_non_existant_check PASSED [ 36%] 829s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_list_all_tests PASSED [ 36%] 829s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_fuzzy PASSED [ 36%] 829s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_review PASSED [ 36%] 829s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isfuzzy PASSED [ 36%] 829s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isreview PASSED [ 36%] 829s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_notes PASSED [ 36%] 829s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_unicode PASSED [ 36%] 829s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_preconditions PASSED [ 36%] 829s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_msgid_comments PASSED [ 36%] 829s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_cedillas PASSED [ 36%] 829s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_niciun PASSED [ 36%] 829s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_nicio PASSED [ 36%] 829s tests/translate/filters/test_prefilters.py::test_removekdecomments PASSED [ 36%] 829s tests/translate/filters/test_prefilters.py::test_filterwordswithpunctuation PASSED [ 36%] 829s tests/translate/lang/test_af.py::test_sentences PASSED [ 36%] 829s tests/translate/lang/test_af.py::test_capsstart PASSED [ 36%] 829s tests/translate/lang/test_af.py::test_transliterate_cyrillic PASSED [ 36%] 829s tests/translate/lang/test_am.py::test_punctranslate PASSED [ 36%] 829s tests/translate/lang/test_am.py::test_sentences PASSED [ 36%] 829s tests/translate/lang/test_ar.py::test_punctranslate PASSED [ 36%] 829s tests/translate/lang/test_ar.py::test_sentences PASSED [ 36%] 829s tests/translate/lang/test_common.py::test_characters PASSED [ 36%] 829s tests/translate/lang/test_common.py::test_words PASSED [ 36%] 829s tests/translate/lang/test_common.py::test_word_khmer XFAIL (ZWS is n...) [ 36%] 829s tests/translate/lang/test_common.py::test_sentences PASSED [ 36%] 829s tests/translate/lang/test_common.py::test_capsstart PASSED [ 36%] 829s tests/translate/lang/test_common.py::test_numstart PASSED [ 36%] 829s tests/translate/lang/test_common.py::test_punctranslate PASSED [ 36%] 829s tests/translate/lang/test_common.py::test_length_difference PASSED [ 36%] 829s tests/translate/lang/test_common.py::test_alter_length PASSED [ 37%] 829s tests/translate/lang/test_data.py::test_normalise_code PASSED [ 37%] 829s tests/translate/lang/test_data.py::test_simplify_to_common PASSED [ 37%] 829s tests/translate/lang/test_el.py::test_punctranslate PASSED [ 37%] 829s tests/translate/lang/test_el.py::test_sentences PASSED [ 37%] 829s tests/translate/lang/test_es.py::test_punctranslate PASSED [ 37%] 829s tests/translate/lang/test_es.py::test_sentences PASSED [ 37%] 829s tests/translate/lang/test_fa.py::test_punctranslate PASSED [ 37%] 829s tests/translate/lang/test_fa.py::test_sentences PASSED [ 37%] 829s tests/translate/lang/test_factory.py::test_getlanguage PASSED [ 37%] 829s tests/translate/lang/test_factory.py::test_get_all_languages PASSED [ 37%] 829s tests/translate/lang/test_fr.py::test_punctranslate PASSED [ 37%] 829s tests/translate/lang/test_fr.py::test_sentences PASSED [ 37%] 829s tests/translate/lang/test_hy.py::test_punctranslate PASSED [ 37%] 829s tests/translate/lang/test_hy.py::test_sentences PASSED [ 37%] 829s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_lang PASSED [ 37%] 829s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_store PASSED [ 37%] 829s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_bad_init_data PASSED [ 37%] 829s tests/translate/lang/test_ja.py::test_punctranslate PASSED [ 37%] 829s tests/translate/lang/test_ja.py::test_sentences PASSED [ 37%] 829s tests/translate/lang/test_km.py::test_punctranslate PASSED [ 37%] 829s tests/translate/lang/test_km.py::test_sentences PASSED [ 37%] 829s tests/translate/lang/test_ko.py::test_punctranslate PASSED [ 37%] 829s tests/translate/lang/test_ko.py::test_sentences PASSED [ 37%] 829s tests/translate/lang/test_ne.py::test_punctranslate PASSED [ 37%] 829s tests/translate/lang/test_ne.py::test_sentences PASSED [ 37%] 829s tests/translate/lang/test_nqo.py::test_punctranslate PASSED [ 37%] 829s tests/translate/lang/test_nqo.py::test_sentences PASSED [ 37%] 829s tests/translate/lang/test_or.py::test_punctranslate PASSED [ 37%] 829s tests/translate/lang/test_or.py::test_country_code PASSED [ 37%] 829s tests/translate/lang/test_or.py::test_sentences PASSED [ 37%] 829s tests/translate/lang/test_poedit.py::test_isocode PASSED [ 37%] 829s tests/translate/lang/test_ro.py::test_cedillas PASSED [ 37%] 829s tests/translate/lang/test_ro.py::test_niciun PASSED [ 37%] 829s tests/translate/lang/test_scn.py::test_italianisms PASSED [ 38%] 829s tests/translate/lang/test_scn.py::test_vocalism PASSED [ 38%] 829s tests/translate/lang/test_scn.py::test_suffixes PASSED [ 38%] 829s tests/translate/lang/test_team.py::test_simple PASSED [ 38%] 829s tests/translate/lang/test_th.py::test_punctranslate PASSED [ 38%] 829s tests/translate/lang/test_th.py::test_sentences PASSED [ 38%] 829s tests/translate/lang/test_tr.py::test_sentences PASSED [ 38%] 829s tests/translate/lang/test_uk.py::test_sentences PASSED [ 38%] 829s tests/translate/lang/test_vi.py::test_punctranslate PASSED [ 38%] 829s tests/translate/lang/test_vi.py::test_sentences PASSED [ 38%] 829s tests/translate/lang/test_zh.py::test_punctranslate PASSED [ 38%] 829s tests/translate/lang/test_zh.py::test_sentences PASSED [ 38%] 829s tests/translate/misc/test_deprecation.py::TestDeprecation::test_deprecated_decorator PASSED [ 38%] 829s tests/translate/misc/test_deprecation.py::TestDeprecation::test_no_deprecated_decorator PASSED [ 38%] 829s tests/translate/misc/test_dictutils.py::test_cidict_has_key PASSED [ 38%] 829s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor PASSED [ 38%] 829s tests/translate/misc/test_multistring.py::TestMultistring::test_repr PASSED [ 38%] 829s tests/translate/misc/test_multistring.py::TestMultistring::test_replace PASSED [ 38%] 829s tests/translate/misc/test_multistring.py::TestMultistring::test_comparison PASSED [ 38%] 829s tests/translate/misc/test_multistring.py::TestMultistring::test_coercion PASSED [ 38%] 829s tests/translate/misc/test_multistring.py::TestMultistring::test_unicode_coercion PASSED [ 38%] 829s tests/translate/misc/test_multistring.py::TestMultistring::test_list_coercion PASSED [ 38%] 829s tests/translate/misc/test_multistring.py::TestMultistring::test_multistring_hash PASSED [ 38%] 829s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_splitext PASSED [ 38%] 829s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_outputfile_receives_bytes PASSED [ 38%] 829s tests/translate/misc/test_progressbar.py::test_hashprogressbar PASSED [ 38%] 829s tests/translate/misc/test_quote.py::test_find_all PASSED [ 38%] 829s tests/translate/misc/test_quote.py::test_extract PASSED [ 38%] 829s tests/translate/misc/test_quote.py::test_extractwithoutquotes PASSED [ 38%] 829s tests/translate/misc/test_quote.py::test_extractwithoutquotes_passfunc PASSED [ 38%] 829s tests/translate/misc/test_quote.py::test_stripcomment PASSED [ 38%] 829s tests/translate/misc/test_quote.py::TestEncoding::test_javapropertiesencode PASSED [ 38%] 829s tests/translate/misc/test_quote.py::TestEncoding::test_java_utf8_properties_encode PASSED [ 38%] 829s tests/translate/misc/test_quote.py::TestEncoding::test_escapespace PASSED [ 39%] 829s tests/translate/misc/test_quote.py::TestEncoding::test_mozillaescapemarginspaces PASSED [ 39%] 829s tests/translate/misc/test_quote.py::TestEncoding::test_mozilla_control_escapes PASSED [ 39%] 829s tests/translate/misc/test_quote.py::TestEncoding::test_propertiesdecode PASSED [ 39%] 829s tests/translate/misc/test_quote.py::TestEncoding::test_controlchars PASSED [ 39%] 829s tests/translate/misc/test_quote.py::TestEncoding::test_properties_decode_slashu PASSED [ 39%] 829s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding PASSED [ 39%] 829s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_existing_entities PASSED [ 39%] 829s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_passthrough PASSED [ 39%] 829s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_nonentities PASSED [ 39%] 829s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_four_spaces PASSED [ 39%] 829s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_tab PASSED [ 39%] 829s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_distance PASSED [ 39%] 829s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_similarity PASSED [ 39%] 829s tests/translate/search/test_lshtein.py::TestLevenshtein::test_long_similarity PASSED [ 39%] 829s tests/translate/search/test_match.py::TestMatch::test_matching PASSED [ 39%] 829s tests/translate/search/test_match.py::TestMatch::test_multiple_store PASSED [ 39%] 829s tests/translate/search/test_match.py::TestMatch::test_extendtm PASSED [ 39%] 829s tests/translate/search/test_match.py::TestMatch::test_terminology PASSED [ 39%] 829s tests/translate/search/test_match.py::TestMatch::test_brackets PASSED [ 39%] 829s tests/translate/search/test_match.py::TestMatch::test_past_tences PASSED [ 39%] 829s tests/translate/search/test_match.py::TestMatch::test_space_mismatch PASSED [ 39%] 829s tests/translate/search/test_match.py::TestMatch::test_hyphen_mismatch PASSED [ 39%] 829s tests/translate/search/test_terminology.py::TestTerminology::test_basic PASSED [ 39%] 829s tests/translate/services/test_tmserver.py::TestTMServer::test_import PASSED [ 39%] 830s tests/translate/services/test_tmserver.py::TestTMServer::test_server PASSED [ 39%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_isfuzzy PASSED [ 39%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_create PASSED [ 39%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_eq PASSED [ 39%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escapes PASSED [ 39%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_difficult_escapes PASSED [ 39%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_note_sanity PASSED [ 39%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_target PASSED [ 39%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_get PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_set PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quotes_with_newline PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline_in_xml PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_twitter PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quote PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_question PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_double_space PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_leading_space PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_tailing_space PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_xml_entities PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote_newline PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_arrows PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link_and_text PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_blank_string PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_escape_message_with_newline PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_invalid_lang PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_quote PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_leading_space PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_trailing_space PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_with_ampersand PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_double_space PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_deep_double_space PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_complex_xml PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quoted_newlines PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline_in_xml PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_twitter PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_question PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quote PASSED [ 40%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_space PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_space PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_newlines PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_xml_entities PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_code PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_arrows PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link_and_text PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_space PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_spaces PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_spaces PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_newline PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_many_quotes PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string_again PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_quotes_string PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_newline_in_string PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_not_translatable_string PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_newline PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_comments PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_quote PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space_quoted PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space_quoted PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_with_ampersand PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_double_space_quoted PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_deep_double_space_quoted PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_complex_xml PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unicode PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_unescaped PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_alone PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_full PASSED [ 41%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_create_blank PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_remove PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_find PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_parse PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_files PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_save PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_extensions PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_mimetypes PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translate PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_nonascii PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_default_handlings PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_invalid_filename PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_namespaces PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_serialize PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add_formatting PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_invalid_entity PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_indent PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_markup PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_noedit PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_remove PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_set PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_others PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_quotes_set PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_g PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_namespace PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_zh_hk PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_b_zh_hk PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_missing_plural PASSED [ 42%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_removeunit PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_prefix PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_rtl PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_isfuzzy PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_create PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_eq PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_escapes PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_difficult_escapes PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_note_sanity PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_target PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_get PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_set PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_create_blank PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_add PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_remove PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_find PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_parse PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_files PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_save PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_extensions PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_mimetypes PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_translate PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_markup PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_nonascii PASSED [ 43%] 830s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_plural PASSED [ 43%] 830s tests/translate/storage/test_base.py::TestTranslationUnit::test_isfuzzy PASSED [ 43%] 830s tests/translate/storage/test_base.py::TestTranslationUnit::test_create PASSED [ 43%] 830s tests/translate/storage/test_base.py::TestTranslationUnit::test_eq PASSED [ 43%] 830s tests/translate/storage/test_base.py::TestTranslationUnit::test_target PASSED [ 43%] 830s tests/translate/storage/test_base.py::TestTranslationUnit::test_escapes PASSED [ 43%] 830s tests/translate/storage/test_base.py::TestTranslationUnit::test_difficult_escapes PASSED [ 43%] 830s tests/translate/storage/test_base.py::TestTranslationUnit::test_note_sanity PASSED [ 43%] 830s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_get PASSED [ 44%] 830s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_set PASSED [ 44%] 830s tests/translate/storage/test_base.py::TestTranslationStore::test_create_blank PASSED [ 44%] 830s tests/translate/storage/test_base.py::TestTranslationStore::test_add PASSED [ 44%] 830s tests/translate/storage/test_base.py::TestTranslationStore::test_remove PASSED [ 44%] 830s tests/translate/storage/test_base.py::TestTranslationStore::test_find PASSED [ 44%] 830s tests/translate/storage/test_base.py::TestTranslationStore::test_translate PASSED [ 44%] 830s tests/translate/storage/test_base.py::TestTranslationStore::test_parse PASSED [ 44%] 830s tests/translate/storage/test_base.py::TestTranslationStore::test_files PASSED [ 44%] 830s tests/translate/storage/test_base.py::TestTranslationStore::test_save PASSED [ 44%] 830s tests/translate/storage/test_base.py::TestTranslationStore::test_markup PASSED [ 44%] 830s tests/translate/storage/test_base.py::TestTranslationStore::test_nonascii PASSED [ 44%] 830s tests/translate/storage/test_base.py::TestTranslationStore::test_extensions PASSED [ 44%] 830s tests/translate/storage/test_base.py::TestTranslationStore::test_mimetypes PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_isfuzzy PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_create PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_eq PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_target PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_escapes PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_get PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_set PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_difficult_escapes PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_newlines PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_istranslated PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_note_sanity PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_create_blank PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_add PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_remove PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_find PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_translate PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_parse PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_files PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_save PASSED [ 44%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_markup PASSED [ 45%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_nonascii PASSED [ 45%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_extensions PASSED [ 45%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_mimetypes PASSED [ 45%] 830s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_checksum PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_isfuzzy PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_create PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_eq PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_target PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_escapes PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_difficult_escapes PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_note_sanity PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_get PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_set PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_create_blank PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_add PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_remove PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_find PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_translate PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_files PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_save PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_markup PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_nonascii PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_extensions PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_mimetypes PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_singlequoting PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8 PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_dialect PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_sig PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_default PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_location_is_parsed PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_context_is_parsed PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_newline PASSED [ 45%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse_sample PASSED [ 46%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_detection PASSED [ 46%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding PASSED [ 46%] 830s tests/translate/storage/test_csvl10n.py::TestCSV::test_corrupt PASSED [ 46%] 830s tests/translate/storage/test_directory.py::TestDirectory::test_created PASSED [ 46%] 830s tests/translate/storage/test_directory.py::TestDirectory::test_basic PASSED [ 46%] 830s tests/translate/storage/test_directory.py::TestDirectory::test_structure PASSED [ 46%] 830s tests/translate/storage/test_directory.py::TestDirectory::test_getunits PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::test_roundtrip_quoting PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases XFAIL [ 46%] 830s tests/translate/storage/test_dtd.py::test_quotefordtd PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases XFAIL [ 46%] 830s tests/translate/storage/test_dtd.py::test_unquotefromdtd PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::test_android_roundtrip_quoting PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::test_quoteforandroid PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::test_unquotefromandroid PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::test_removeinvalidamp PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::TestDTDUnit::test_isfuzzy PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::TestDTDUnit::test_create PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::TestDTDUnit::test_eq PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::TestDTDUnit::test_escapes PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::TestDTDUnit::test_difficult_escapes PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::TestDTDUnit::test_note_sanity PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::TestDTDUnit::test_target PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_get PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_set PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_create_blank PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_add PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_remove PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_find PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_parse PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_files PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_save PASSED [ 46%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_extensions PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_mimetypes PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_translate PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_markup PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_nonascii PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_blanklines PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity_source PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_hashcomment_source PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_commentclosing PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_commententity PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_newlines_in_entity PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_conflate_comments PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_localisation_notes PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_in_source PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_order_in_source PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_comment_following XFAIL [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_comment_newline_space_closing PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting XFAIL [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_missing_quotes PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping_roundtrip PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_create_blank PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_add PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_remove PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_find PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_parse PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_files PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_save PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_extensions PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_mimetypes PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_translate PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_markup PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_nonascii PASSED [ 47%] 830s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape PASSED [ 48%] 830s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape_parse_and_convert_back PASSED [ 48%] 830s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape PASSED [ 48%] 830s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape_parse_and_convert_back PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestPOFactory::test_getclass PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject_store PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestPOFactory::test_get_noname_object PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestPOFactory::test_gzfile PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestPOFactory::test_bz2file PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestPOFactory::test_directory PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestXliffFactory::test_getclass PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject_store PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestXliffFactory::test_get_noname_object PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestXliffFactory::test_gzfile PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestXliffFactory::test_bz2file PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestXliffFactory::test_directory PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getclass PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject_store PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_get_noname_object PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_gzfile PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_bz2file PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_directory PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getclass PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject_store PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestWordfastFactory::test_get_noname_object PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestWordfastFactory::test_gzfile PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestWordfastFactory::test_bz2file PASSED [ 48%] 830s tests/translate/storage/test_factory.py::TestWordfastFactory::test_directory PASSED [ 48%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_isfuzzy PASSED [ 48%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_create PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_eq PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_escapes PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_difficult_escapes PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_note_sanity PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_target PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_get PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_set PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_create_blank PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_add PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_remove PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_find PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_parse PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_files PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_save PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_extensions PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_mimetypes PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_translate PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_markup PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_nonascii PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_root_config_detect PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_detect PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_key_config_detect PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_mixed_ok PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_namespace_config_detect PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_four_spaces PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_tab PASSED [ 49%] 830s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_none_linearizes PASSED [ 49%] 830s tests/translate/storage/test_html.py::test_guess_encoding PASSED [ 49%] 830s tests/translate/storage/test_html.py::TestHTMLParsing::test_mismatched_tags PASSED [ 49%] 830s tests/translate/storage/test_html.py::TestHTMLParsing::test_self_closing_tags PASSED [ 49%] 830s tests/translate/storage/test_html.py::TestHTMLParsing::test_escaping_script_and_pre PASSED [ 49%] 830s tests/translate/storage/test_html.py::TestHTMLExtraction::test_strip_html PASSED [ 49%] 830s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_figcaption PASSED [ 50%] 830s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_caption_td_th PASSED [ 50%] 830s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_alt PASSED [ 50%] 830s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_title PASSED [ 50%] 830s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre PASSED [ 50%] 830s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre_code PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIUnit::test_isfuzzy PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIUnit::test_create PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIUnit::test_eq PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIUnit::test_escapes PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIUnit::test_difficult_escapes PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIUnit::test_note_sanity PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIUnit::test_target PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_get PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_set PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIStore::test_create_blank PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIStore::test_add PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIStore::test_remove PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIStore::test_find PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIStore::test_parse PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIStore::test_files PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIStore::test_save PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIStore::test_extensions PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIStore::test_mimetypes PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIStore::test_translate PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIStore::test_markup PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIStore::test_nonascii PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIStore::test_serialize PASSED [ 50%] 830s tests/translate/storage/test_ini.py::TestINIStore::test_rem PASSED [ 50%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_isfuzzy PASSED [ 50%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_create PASSED [ 50%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_eq PASSED [ 50%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_escapes PASSED [ 50%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_difficult_escapes PASSED [ 50%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_note_sanity PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_target PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_get PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_set PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_create_blank PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_remove PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_find PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_parse PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_files PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_save PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_extensions PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_mimetypes PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_translate PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_markup PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_nonascii PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_serialize PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_can_not_detect PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_error PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_filter PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_ordering PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_args PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_bom PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex_array PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_list_like PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_blank PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_types PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_null PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_isfuzzy PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_create PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_eq PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_escapes PASSED [ 51%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_difficult_escapes PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_note_sanity PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_target PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_get PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_set PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_serialize PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_ordering PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_array PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index_nested PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_nested_list_mixed PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_list_to_dict PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_complex_keys PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_other PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0]-expected0] PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0]-expected1] PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0][1][2][3]-expected2] PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test]selection-expected3] PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test][0]selection-expected4] PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0][test]selection-expected5] PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[-expected6] PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_isfuzzy PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_create PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_eq PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_escapes PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_difficult_escapes PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_note_sanity PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_target PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_get PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_set PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_create_blank PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_add PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_remove PASSED [ 52%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_find PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_parse PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_files PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_save PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_extensions PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_mimetypes PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_translate PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_markup PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_nonascii PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize_no_description PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_set_target PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_placeholders PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_create_blank PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_add PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_remove PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_find PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_parse PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_files PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_save PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_extensions PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_mimetypes PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_translate PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_markup PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nonascii PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_serialize PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_units PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_plurals PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nested_array PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural_id PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_create_blank PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_add PASSED [ 53%] 830s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_remove PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_find PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_parse PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_files PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_save PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_extensions PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_mimetypes PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_translate PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_markup PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_nonascii PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals_missing PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_case_no_msg PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_complex_id PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_create_blank PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_add PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_remove PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_find PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_parse PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_files PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_save PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_extensions PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_mimetypes PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_translate PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_markup PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nonascii PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_serialize PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_units PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_plurals PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nested_array PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_new_plural PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_ru PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_create_blank PASSED [ 54%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_add PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_remove PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_find PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_parse PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_files PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_save PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_extensions PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_mimetypes PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_translate PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_markup PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nonascii PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_serialize PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_units PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_plurals PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nested_array PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_new_plural PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_ru PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_create_blank PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_add PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_remove PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_find PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_parse PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_files PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_save PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_extensions PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_mimetypes PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_translate PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_markup PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_nonascii PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals_missing PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_invalid PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_create_blank PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_add PASSED [ 55%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_remove PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_find PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_parse PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_files PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_save PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_extensions PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_mimetypes PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_translate PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_markup PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_nonascii PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_1 PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_2 PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_blank PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_missing PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_simplification PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_invalid PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_create_blank PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_add PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_remove PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_find PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_parse PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_files PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_save PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_extensions PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_mimetypes PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_translate PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_markup PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_nonascii PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_roundtrip PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_create_blank PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_add PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_remove PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_find PASSED [ 56%] 830s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_parse PASSED [ 57%] 830s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_files PASSED [ 57%] 830s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_save PASSED [ 57%] 830s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_extensions PASSED [ 57%] 830s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_mimetypes PASSED [ 57%] 830s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_translate PASSED [ 57%] 830s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_markup PASSED [ 57%] 830s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_nonascii PASSED [ 57%] 830s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_roundtrip PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_atx_heading PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_autolink PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_block_quote PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_block PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_span PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_atx_heading PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_document PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_list_item PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_escaped_character PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_hard_line_break PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_block PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_character_entities PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_span PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_image_embedded_in_link PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_collapsed_reference_link PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_full_reference_link PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_shortcut_reference_link PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_merging_of_adjacent_placeholders PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_block_tokens PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_list PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_basic_markup PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_only_whitespace_and_placeholders PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_placeholder_trimming PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image_no_title PASSED [ 57%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_link PASSED [ 58%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_text_paragraph PASSED [ 58%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_remove_placeholders_from_both_ends_of_translation_units PASSED [ 58%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_setext_heading PASSED [ 58%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_table_with_header PASSED [ 58%] 830s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_thematic_break PASSED [ 58%] 830s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_hard_line_break_in_translation_unit PASSED [ 58%] 831s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_missing_placeholder PASSED [ 58%] 831s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_duplicate_placeholder PASSED [ 58%] 831s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_extraneous_placeholder PASSED [ 58%] 831s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_reordered_placeholders PASSED [ 58%] 831s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_invalid_markdown_in_translation PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOUnit::test_isfuzzy PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOUnit::test_create PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOUnit::test_eq PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOUnit::test_target PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOUnit::test_escapes PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOUnit::test_difficult_escapes PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOUnit::test_note_sanity PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_get PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_set PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOUnit::test_context PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOFile::test_create_blank PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOFile::test_add PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOFile::test_remove PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOFile::test_find PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOFile::test_translate PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOFile::test_parse PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOFile::test_files PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOFile::test_save PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOFile::test_markup PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOFile::test_nonascii PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOFile::test_extensions PASSED [ 58%] 831s tests/translate/storage/test_mo.py::TestMOFile::test_mimetypes PASSED [ 59%] 831s tests/translate/storage/test_mo.py::TestMOFile::test_language PASSED [ 59%] 831s tests/translate/storage/test_mo.py::TestMOFile::test_context PASSED [ 59%] 831s tests/translate/storage/test_mo.py::TestMOFile::test_output SKIPPED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_isfuzzy PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_create PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_eq PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_escapes PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_difficult_escapes PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_note_sanity PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_target PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_get PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_set PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_create_blank PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_add PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_remove PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_find PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_parse PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_files PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_save PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_extensions PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_mimetypes PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_translate PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_markup PASSED [ 59%] 831s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_nonascii PASSED [ 59%] 831s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[-] PASSED [ 59%] 831s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String-String] PASSED [ 59%] 831s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 59%] 831s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {OK}-String] PASSED [ 59%] 831s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[\u015e\u0167\u0159\u012b\u019e\u0260 {ok}-\u015e\u0167\u0159\u012b\u019e\u0260] PASSED [ 59%] 831s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{ok}-String] PASSED [ 59%] 831s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{OK}-String] PASSED [ 59%] 831s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 59%] 831s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok} -String] PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_isfuzzy PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_create PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_eq PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_target PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_escapes PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_difficult_escapes PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_note_sanity PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_get PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_set PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_translate_but_same PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_untranslated PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_comments PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_copy_target PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_create_blank PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_add PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_remove PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_find PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_translate PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_parse PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_files PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_save PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_markup PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_extensions PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_mimetypes PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_nonascii PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_format_layout PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_crlf PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_active_flag PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_multiline_comments PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_template PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[--False] PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ -Source -True] PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok}-Source-True] PASSED [ 60%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok} -Source-True] PASSED [ 61%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[{ok}-Source-True] PASSED [ 61%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_headers PASSED [ 61%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_not_headers PASSED [ 61%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[0] PASSED [ 61%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[1] PASSED [ 61%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[2] PASSED [ 61%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[3] PASSED [ 61%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_tag_comments PASSED [ 61%] 831s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_maxlength PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtUnit::test_isfuzzy PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtUnit::test_create PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtUnit::test_eq PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtUnit::test_target PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtUnit::test_escapes PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtUnit::test_difficult_escapes PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtUnit::test_note_sanity PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_get PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_set PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtFile::test_create_blank PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtFile::test_add PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtFile::test_remove PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtFile::test_find PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtFile::test_translate PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtFile::test_parse PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtFile::test_files PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtFile::test_save PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtFile::test_markup PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtFile::test_nonascii PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtFile::test_mimetypes PASSED [ 61%] 831s tests/translate/storage/test_omegat.py::TestOtFile::test_extensions XFAIL [ 61%] 831s tests/translate/storage/test_oo.py::test_makekey PASSED [ 61%] 831s tests/translate/storage/test_oo.py::test_escape_help_text PASSED [ 61%] 831s tests/translate/storage/test_oo.py::TestOO::test_simpleentry PASSED [ 62%] 831s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_quickhelptest PASSED [ 62%] 831s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_title PASSED [ 62%] 831s tests/translate/storage/test_oo.py::TestOO::test_blankline PASSED [ 62%] 831s tests/translate/storage/test_oo.py::TestOO::test_fieldlength PASSED [ 62%] 831s tests/translate/storage/test_oo.py::TestOO::test_escapes PASSED [ 62%] 831s tests/translate/storage/test_php.py::test_php_escaping_single_quote PASSED [ 62%] 831s tests/translate/storage/test_php.py::test_php_escaping_double_quote PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpUnit::test_isfuzzy PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpUnit::test_create PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpUnit::test_eq PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpUnit::test_escapes PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpUnit::test_note_sanity PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpUnit::test_target PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_get PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_set PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpUnit::test_difficult_escapes PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_create_blank PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_add PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_remove PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_find PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parse PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_files PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_save PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_extensions PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_mimetypes PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_translate PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_markup PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_nonascii PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_source PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_spaces_in_name PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_comment_definition PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_comment_blocks PASSED [ 62%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_comment_output PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_comment_add PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_multiline PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_no_array_syntax PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_spaces PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_non_textual PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define_with_spaces_before_key PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter_and_before_key PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equal_delimiter PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equaldel_but_before_key PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_entries_with_quotes PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_comments_at_entry_line_end PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_double_slash_comments_before_entries PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_before_end_delimiter PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simpledefinition_spaces_before_end_delimiter PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_no_trailing_comma PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_space_before_comma PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_space_before_array_declaration PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_declared_in_a_single_line PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys_assigned_to_array PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_no_keys PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_assignment_in_line_where_multiline_comment_ends PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_using_short_array_syntax PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_space_before_array_declaration PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_unnamed_nested_arrays PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_array_declaration_in_next_line PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_with_newline_after_delimiter PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_blank_entries PASSED [ 63%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_slashstar_in_string PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_heredoc_syntax PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_after_define PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_quotes PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_concatenation PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_serialize PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_space_before_comma PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_equals_in_id PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_comma_in_string PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_nowdoc PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_plain_concatenation PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_array_keys PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_double_var PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_return_array PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short_quotes PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestPhpFile::test_addunit PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_isfuzzy PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_create PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_eq PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_escapes PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_difficult_escapes PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_note_sanity PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_target PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_get PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_set PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_create_blank PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_add PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_remove PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_find PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_parse PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_files PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_save PASSED [ 64%] 831s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_extensions PASSED [ 65%] 831s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_mimetypes PASSED [ 65%] 831s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_translate PASSED [ 65%] 831s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_markup PASSED [ 65%] 831s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_nonascii PASSED [ 65%] 831s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_plurals PASSED [ 65%] 831s tests/translate/storage/test_po.py::test_roundtrip_quoting PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_isfuzzy PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_create PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_eq PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_target PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_escapes PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_difficult_escapes PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_note_sanity PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_rich_get PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_rich_set PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_istranslatable PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_locations PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_nongettext_location PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_adding_empty_note PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_markreview PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_errors PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_no_plural_settarget PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_wrapping_bug PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_extract_msgidcomments_from_text PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_isheader PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOUnit::test_buildfromunit PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOFile::test_create_blank PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOFile::test_add PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOFile::test_remove PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOFile::test_find PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOFile::test_translate PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOFile::test_parse PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOFile::test_files PASSED [ 65%] 831s tests/translate/storage/test_po.py::TestPOFile::test_save PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_markup PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_nonascii PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_extensions PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_mimetypes PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_context_only PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_simpleentry PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_copy PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_parse_source_string PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_parse_file PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_unicode PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_plurals PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_plural_unicode PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_nongettext_location PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_percent_location PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals XFAIL [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_empty_lines_notes PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_fuzzy PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated XFAIL [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_merging_automaticcomments PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_malformed_units PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_malformed_obsolete_units PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_uniforum_po PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_obsolete PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_obsolete_with_prev_msgid PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_header_escapes PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_plural PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgctxt PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgidcomments PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_multiline_obsolete PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_merge_duplicates PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_merge_mixed_sources PASSED [ 66%] 831s tests/translate/storage/test_po.py::TestPOFile::test_parse_context PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_parse_advanced_context PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_kde_context PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_broken_kde_context PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_id PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments_2 PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_final_slash PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_unfinished_lines PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_encoding_change PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_istranslated PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_wrapping PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_wrapping_cjk PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_wrap_emoji PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis XFAIL [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_wrap_gettext PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_msgidcomments PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_unicode_ids PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_syntax_error PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_invalid PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_wrapped_msgid PASSED [ 67%] 831s tests/translate/storage/test_po.py::TestPOFile::test_missing_plural PASSED [ 67%] 831s tests/translate/storage/test_pocommon.py::test_roundtrip_quote_plus PASSED [ 67%] 831s tests/translate/storage/test_poheader.py::test_parseheaderstring PASSED [ 67%] 831s tests/translate/storage/test_poheader.py::test_update PASSED [ 67%] 831s tests/translate/storage/test_poheader.py::test_po_dates PASSED [ 67%] 831s tests/translate/storage/test_poheader.py::test_timezones PASSED [ 67%] 831s tests/translate/storage/test_poheader.py::test_header_blank PASSED [ 67%] 831s tests/translate/storage/test_poheader.py::test_plural_equation PASSED [ 67%] 831s tests/translate/storage/test_poheader.py::test_plural_equation_across_lines PASSED [ 67%] 831s tests/translate/storage/test_poheader.py::test_updatecontributor PASSED [ 67%] 831s tests/translate/storage/test_poheader.py::test_updatecontributor_header PASSED [ 67%] 831s tests/translate/storage/test_poheader.py::test_language PASSED [ 67%] 831s tests/translate/storage/test_poheader.py::test_project PASSED [ 67%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_isfuzzy PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_create PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_eq PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_target PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_escapes PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_difficult_escapes PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_note_sanity PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_get PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_set PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_markreview PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_errors PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_accepted_control_chars PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_unaccepted_control_chars PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_plurals PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_ids PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_create_blank PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_remove PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_find PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_translate PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_files PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_save PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_markup PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_nonascii PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_extensions PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_mimetypes PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_basic PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_namespace PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_source PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_target PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_source PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_target PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_sourcelanguage PASSED [ 68%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage PASSED [ 69%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage_multi PASSED [ 69%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_alttrans PASSED [ 69%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_fuzzy PASSED [ 69%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_xml_space PASSED [ 69%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parsing PASSED [ 69%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_entities PASSED [ 69%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_multiple_filenodes PASSED [ 69%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_indent PASSED [ 69%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add_target PASSED [ 69%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve PASSED [ 69%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_closing_tags PASSED [ 69%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_context_groups PASSED [ 69%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_getlocations PASSED [ 69%] 831s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_addlocation PASSED [ 69%] 832s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_huge PASSED [ 69%] 832s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve_add PASSED [ 69%] 832s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse PASSED [ 69%] 832s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse_plural_alpha_id PASSED [ 69%] 832s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_notes PASSED [ 69%] 832s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_plural PASSED [ 69%] 832s tests/translate/storage/test_properties.py::test_find_delimiter_pos_simple PASSED [ 69%] 832s tests/translate/storage/test_properties.py::test_find_delimiter_pos_multiple PASSED [ 69%] 832s tests/translate/storage/test_properties.py::test_find_delimiter_pos_none PASSED [ 69%] 832s tests/translate/storage/test_properties.py::test_find_delimiter_pos_whitespace PASSED [ 69%] 832s tests/translate/storage/test_properties.py::test_find_delimiter_pos_escapes PASSED [ 69%] 832s tests/translate/storage/test_properties.py::test_is_line_continuation PASSED [ 69%] 832s tests/translate/storage/test_properties.py::test_key_strip PASSED [ 69%] 832s tests/translate/storage/test_properties.py::test_get_comment_one_line PASSED [ 69%] 832s tests/translate/storage/test_properties.py::test_get_comment_start PASSED [ 69%] 832s tests/translate/storage/test_properties.py::test_get_comment_end PASSED [ 69%] 832s tests/translate/storage/test_properties.py::TestPropUnit::test_isfuzzy PASSED [ 69%] 832s tests/translate/storage/test_properties.py::TestPropUnit::test_create PASSED [ 69%] 832s tests/translate/storage/test_properties.py::TestPropUnit::test_eq PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestPropUnit::test_escapes PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestPropUnit::test_difficult_escapes PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestPropUnit::test_note_sanity PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestPropUnit::test_target PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_get PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_set PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_create_blank PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_add PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_remove PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_find PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_parse PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_files PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_save PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_extensions PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_mimetypes PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_translate PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_markup PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_nonascii PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_quotes PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_simpledefinition PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition_source PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_reduce PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_increase PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_extra_plurals PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_non_plurals PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestGwtProp::test_encoding PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestProp::test_create_blank PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestProp::test_add PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestProp::test_remove PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestProp::test_find PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestProp::test_parse PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestProp::test_files PASSED [ 70%] 832s tests/translate/storage/test_properties.py::TestProp::test_save PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_extensions PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_mimetypes PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_translate PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_markup PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_nonascii PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition_source PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_controlutf8_source PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_control_source PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_unicode_escaping PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_newlines_startend PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_space PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_whitespace_handling PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_key_value_delimiters_simple PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_comments PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_latin1 PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_fullspec_delimiters PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_fullspec_escaped_key PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_fullspec_line_continuation PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_fullspec_key_without_value PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_mac_strings PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_utf_16_save PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_mac_multiline_strings PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_unicode PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_utf8 PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_newlines PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_multilines_comments PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments_dropping PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_quotes PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_equals PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_serialization PASSED [ 71%] 832s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_double_backslashes PASSED [ 72%] 832s tests/translate/storage/test_properties.py::TestProp::test_override_encoding PASSED [ 72%] 832s tests/translate/storage/test_properties.py::TestProp::test_trailing_comments PASSED [ 72%] 832s tests/translate/storage/test_properties.py::TestProp::test_utf16_byte_order_mark PASSED [ 72%] 832s tests/translate/storage/test_properties.py::TestProp::test_raise_ioerror_if_cannot_detect_encoding PASSED [ 72%] 832s tests/translate/storage/test_properties.py::TestProp::test_utf8_byte_order_mark PASSED [ 72%] 832s tests/translate/storage/test_properties.py::TestProp::test_joomla_set_target PASSED [ 72%] 832s tests/translate/storage/test_properties.py::TestProp::test_joomla PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestProp::test_joomla_escape PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_delimiter PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_value PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestProp::test_multi_comments PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestProp::test_serialize_note PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestProp::test_serialize_long_note PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_create_blank PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_add PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_remove PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_find PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_parse PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_files PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_save PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_extensions PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_mimetypes PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_translate PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_markup PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_nonascii PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_simpledefinition PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition_source PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote_and_argument PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_header_preserved PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_blank_line_before_comment_preserved PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWiki::test_deprecated_comments_preserved PASSED [ 72%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_create_blank PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_add PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_remove PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_find PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_parse PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_files PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_save PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_extensions PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_mimetypes PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_markup PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_nonascii PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_simpledefinition PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition_source PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote_and_argument PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_encoded_html PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_cleaning_attributes PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate_source PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_create_blank PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_add PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_find PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_extensions PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_mimetypes PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_translate PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_markup PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_nonascii PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_simpledefinition PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_parse PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_files PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_save PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_cleaning_attributes PASSED [ 73%] 833s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove XFAIL [ 74%] 833s tests/translate/storage/test_pypo.py::TestHelpers::test_unescape PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo_escaped_quotes PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isfuzzy PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_create PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_eq PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_target PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_escapes PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_difficult_escapes PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_note_sanity PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_get PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_set PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_istranslatable PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_locations PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_nongettext_location PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_adding_empty_note PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_markreview PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_errors PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_no_plural_settarget PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrapping_bug PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_extract_msgidcomments_from_text PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isheader PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_buildfromunit PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plurals PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plural_reduction PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes_withcomments PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_firstlines PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_newlines PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_max_line_length PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_slash PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_spacing_max_line PASSED [ 74%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_create_blank PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_add PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_remove PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_find PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_translate PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_files PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_save PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_markup PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nonascii PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_extensions PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mimetypes PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_context_only PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_simpleentry PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_copy PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_source_string PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_file PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plurals PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plural_unicode PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nongettext_location PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_percent_location PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals XFAIL [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_empty_lines_notes PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_fuzzy PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated XFAIL [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merging_automaticcomments PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_units PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_obsolete_units PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_uniforum_po PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete_with_prev_msgid PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_header_escapes PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete PASSED [ 75%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_plural PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgctxt PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgidcomments PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_multiline_obsolete PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_mixed_sources PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_context PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_advanced_context PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_context PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_broken_kde_context PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_id PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments_2 PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_final_slash PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unfinished_lines PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_encoding_change PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_istranslated PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping_cjk PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_emoji PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis XFAIL [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_gettext PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_msgidcomments PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_ids PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_syntax_error PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapped_msgid PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_missing_plural PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_combine_msgidcomments PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates_msgctxt PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_blanks PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_output_str_unicode PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_posections PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_typecomments PASSED [ 76%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unassociated_comments PASSED [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_header PASSED [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_prevmsgid_parse PASSED [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap PASSED [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_newlines PASSED [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unix_newlines PASSED [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines PASSED [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mac_newlines PASSED [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines PASSED [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_header PASSED [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_comment PASSED [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_bom PASSED [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_long_msgidcomments PASSED [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_incomplete PASSED [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_invalid PASSED [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_write PASSED [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment XFAIL [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_typecomment PASSED [ 77%] 833s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_custom PASSED [ 77%] 833s tests/translate/storage/test_qm.py::TestQtUnit::test_isfuzzy PASSED [ 77%] 833s tests/translate/storage/test_qm.py::TestQtUnit::test_create PASSED [ 77%] 833s tests/translate/storage/test_qm.py::TestQtUnit::test_eq PASSED [ 77%] 833s tests/translate/storage/test_qm.py::TestQtUnit::test_target PASSED [ 77%] 833s tests/translate/storage/test_qm.py::TestQtUnit::test_escapes PASSED [ 77%] 833s tests/translate/storage/test_qm.py::TestQtUnit::test_difficult_escapes PASSED [ 77%] 833s tests/translate/storage/test_qm.py::TestQtUnit::test_note_sanity PASSED [ 77%] 833s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_get PASSED [ 77%] 833s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_set PASSED [ 77%] 833s tests/translate/storage/test_qm.py::TestQtFile::test_create_blank PASSED [ 77%] 833s tests/translate/storage/test_qm.py::TestQtFile::test_find PASSED [ 77%] 833s tests/translate/storage/test_qm.py::TestQtFile::test_translate PASSED [ 77%] 833s tests/translate/storage/test_qm.py::TestQtFile::test_markup PASSED [ 77%] 833s tests/translate/storage/test_qm.py::TestQtFile::test_extensions PASSED [ 77%] 833s tests/translate/storage/test_qm.py::TestQtFile::test_mimetypes PASSED [ 77%] 833s tests/translate/storage/test_qm.py::TestQtFile::test_parse PASSED [ 78%] 833s tests/translate/storage/test_qm.py::TestQtFile::test_save PASSED [ 78%] 833s tests/translate/storage/test_qm.py::TestQtFile::test_files PASSED [ 78%] 833s tests/translate/storage/test_qm.py::TestQtFile::test_nonascii PASSED [ 78%] 833s tests/translate/storage/test_qm.py::TestQtFile::test_add PASSED [ 78%] 833s tests/translate/storage/test_qm.py::TestQtFile::test_remove PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphUnit::test_isfuzzy PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphUnit::test_create PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphUnit::test_eq PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphUnit::test_target PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphUnit::test_escapes PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphUnit::test_difficult_escapes PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphUnit::test_note_sanity PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_get PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_set PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphFile::test_create_blank PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphFile::test_add PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphFile::test_remove PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphFile::test_find PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphFile::test_translate PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphFile::test_parse PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphFile::test_files PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphFile::test_save PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphFile::test_markup PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphFile::test_nonascii PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphFile::test_extensions PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphFile::test_mimetypes PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphFile::test_basic PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphFile::test_source PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphFile::test_target PASSED [ 78%] 833s tests/translate/storage/test_qph.py::TestQphFile::test_language PASSED [ 78%] 833s tests/translate/storage/test_rc.py::test_escaping PASSED [ 78%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_comments PASSED [ 78%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_textinclude PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_parse_dialog PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_parse_stringtable PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_lf PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_crlf PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_cr PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_parse_no_language PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_multiline PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_str PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_empty PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_utf_8 PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_utf_16 PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_comment PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_stringtables PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude_appstudio PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_id_whitespace PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_menu_comment PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_decompiled PASSED [ 79%] 833s tests/translate/storage/test_rc.py::TestRcFile::test_quotes PASSED [ 79%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_isfuzzy PASSED [ 79%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_create PASSED [ 79%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_eq PASSED [ 79%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_escapes PASSED [ 79%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_difficult_escapes PASSED [ 79%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_note_sanity PASSED [ 79%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_target PASSED [ 79%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_get PASSED [ 79%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_set PASSED [ 79%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_create_blank PASSED [ 79%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_add PASSED [ 79%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_remove PASSED [ 79%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_find PASSED [ 79%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_parse PASSED [ 80%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_files PASSED [ 80%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_save PASSED [ 80%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_extensions PASSED [ 80%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_mimetypes PASSED [ 80%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_translate PASSED [ 80%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_markup PASSED [ 80%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_nonascii PASSED [ 80%] 833s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_roundtrip PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnit::test_isfuzzy PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnit::test_create PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnit::test_eq PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnit::test_escapes PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnit::test_difficult_escapes PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnit::test_note_sanity PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnit::test_target PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_get PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_set PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_isfuzzy PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_create PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_eq PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_escapes PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_difficult_escapes PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_note_sanity PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_target PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_get PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_set PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit_comment PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXfile::test_create_blank PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXfile::test_add PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXfile::test_remove PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXfile::test_find PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXfile::test_parse PASSED [ 80%] 833s tests/translate/storage/test_resx.py::TestRESXfile::test_files PASSED [ 81%] 833s tests/translate/storage/test_resx.py::TestRESXfile::test_save PASSED [ 81%] 833s tests/translate/storage/test_resx.py::TestRESXfile::test_extensions PASSED [ 81%] 833s tests/translate/storage/test_resx.py::TestRESXfile::test_mimetypes PASSED [ 81%] 833s tests/translate/storage/test_resx.py::TestRESXfile::test_translate PASSED [ 81%] 833s tests/translate/storage/test_resx.py::TestRESXfile::test_markup PASSED [ 81%] 833s tests/translate/storage/test_resx.py::TestRESXfile::test_nonascii PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_isfuzzy PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_create PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_escapes PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_difficult_escapes PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_note_sanity PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_target PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_get PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_set PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_source PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq_formatvaluetype PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_innerkey PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_create_blank PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_remove PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_find PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_parse PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_files PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_save PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_extensions PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_mimetypes PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_translate PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_markup PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_nonascii PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_serialize PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_default_handlings PASSED [ 81%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename PASSED [ 82%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_base_filename PASSED [ 82%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 82%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_plural_zero_always_set PASSED [ 82%] 833s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add_unit PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_isfuzzy PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_create PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_eq PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_escapes PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_difficult_escapes PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_target PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_get PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_set PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity XFAIL [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_create_blank PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_add PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_remove PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_find PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_parse PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_files PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_save PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_extensions PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_mimetypes PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_translate PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_markup PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_nonascii PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_create_blank PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_add PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_remove PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_find PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_parse PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_files PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_save PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_extensions PASSED [ 82%] 833s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_mimetypes PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_translate PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_markup PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_nonascii PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_create_blank PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_add PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_remove PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_find PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_parse PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_files PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_save PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_extensions PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_mimetypes PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_translate PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_markup PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_nonascii PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_create_blank PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_add PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_remove PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_find PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_parse PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_files PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_save PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_extensions PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_mimetypes PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_translate PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_markup PASSED [ 83%] 833s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_nonascii PASSED [ 83%] 833s tests/translate/storage/test_tbx.py::TestTBXUnit::test_isfuzzy PASSED [ 83%] 833s tests/translate/storage/test_tbx.py::TestTBXUnit::test_create PASSED [ 83%] 833s tests/translate/storage/test_tbx.py::TestTBXUnit::test_eq PASSED [ 83%] 833s tests/translate/storage/test_tbx.py::TestTBXUnit::test_target PASSED [ 83%] 833s tests/translate/storage/test_tbx.py::TestTBXUnit::test_escapes PASSED [ 83%] 833s tests/translate/storage/test_tbx.py::TestTBXUnit::test_difficult_escapes PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXUnit::test_note_sanity PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_get PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_set PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_create_blank PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_add PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_remove PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_find PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_translate PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_parse PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_files PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_save PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_markup PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_nonascii PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_extensions PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_mimetypes PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_basic PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_source PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_target PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_setid PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_indent PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_descrip PASSED [ 84%] 833s tests/translate/storage/test_tbx.py::TestTBXfile::test_note_from PASSED [ 84%] 833s tests/translate/storage/test_tiki.py::TestTikiUnit::test_locations PASSED [ 84%] 833s tests/translate/storage/test_tiki.py::TestTikiUnit::test_to_unicode PASSED [ 84%] 833s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_simple PASSED [ 84%] 833s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_encode PASSED [ 84%] 833s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_locations PASSED [ 84%] 833s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_ignore_extras PASSED [ 84%] 833s tests/translate/storage/test_tmx.py::TestTMXUnit::test_isfuzzy PASSED [ 84%] 833s tests/translate/storage/test_tmx.py::TestTMXUnit::test_create PASSED [ 84%] 833s tests/translate/storage/test_tmx.py::TestTMXUnit::test_eq PASSED [ 84%] 833s tests/translate/storage/test_tmx.py::TestTMXUnit::test_target PASSED [ 84%] 833s tests/translate/storage/test_tmx.py::TestTMXUnit::test_escapes PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXUnit::test_difficult_escapes PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXUnit::test_note_sanity PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_get PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_set PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_isfuzzy PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_create PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_eq PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_target PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_escapes PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_difficult_escapes PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_note_sanity PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_get PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_set PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXfile::test_create_blank PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXfile::test_add PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXfile::test_remove PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXfile::test_find PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXfile::test_parse PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXfile::test_files PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXfile::test_save PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXfile::test_markup PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXfile::test_nonascii PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXfile::test_extensions PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXfile::test_mimetypes PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXfile::test_translate PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXfile::test_addtranslation PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXfile::test_withcomment PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXfile::test_withnewlines PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXfile::test_xmlentities PASSED [ 85%] 833s tests/translate/storage/test_tmx.py::TestTMXfile::test_controls_cleaning PASSED [ 85%] 833s tests/translate/storage/test_trados.py::test_unescape PASSED [ 85%] 833s tests/translate/storage/test_trados.py::test_escape PASSED [ 85%] 833s tests/translate/storage/test_ts.py::TestTS::test_construct PASSED [ 85%] 833s tests/translate/storage/test_ts2.py::TestTSUnit::test_isfuzzy PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSUnit::test_create PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSUnit::test_eq PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSUnit::test_target PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSUnit::test_escapes PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSUnit::test_difficult_escapes PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSUnit::test_note_sanity PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_get PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_set PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_create_blank PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_add PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_remove PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_find PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_translate PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_parse PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_files PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_save PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_markup PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_nonascii PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_extensions PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_mimetypes PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_basic PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_source PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_target PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_plurals PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_nplural PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_language PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_edit PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_obsolete PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_locations PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_merge_with_fuzzies PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_getid PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_backnforth PASSED [ 86%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_context PASSED [ 87%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_roundtrip_context PASSED [ 87%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_edit_missing_translation PASSED [ 87%] 833s tests/translate/storage/test_ts2.py::TestTSfile::test_missing_source PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtUnit::test_isfuzzy PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtUnit::test_create PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtUnit::test_eq PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtUnit::test_escapes PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtUnit::test_difficult_escapes PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtUnit::test_note_sanity PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtUnit::test_target PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_get PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_set PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtFile::test_create_blank PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtFile::test_add PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtFile::test_remove PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtFile::test_find PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtFile::test_parse PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtFile::test_files PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtFile::test_save PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtFile::test_extensions PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtFile::test_mimetypes PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtFile::test_translate PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtFile::test_markup PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtFile::test_nonascii PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtFile::test_simpleblock PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtFile::test_multipleblocks PASSED [ 87%] 833s tests/translate/storage/test_txt.py::TestTxtFile::test_no_segmentation PASSED [ 87%] 833s tests/translate/storage/test_utx.py::TestUtxUnit::test_isfuzzy PASSED [ 87%] 833s tests/translate/storage/test_utx.py::TestUtxUnit::test_create PASSED [ 87%] 833s tests/translate/storage/test_utx.py::TestUtxUnit::test_eq PASSED [ 87%] 833s tests/translate/storage/test_utx.py::TestUtxUnit::test_target PASSED [ 87%] 833s tests/translate/storage/test_utx.py::TestUtxUnit::test_escapes PASSED [ 87%] 833s tests/translate/storage/test_utx.py::TestUtxUnit::test_difficult_escapes PASSED [ 87%] 833s tests/translate/storage/test_utx.py::TestUtxUnit::test_note_sanity PASSED [ 88%] 833s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_get PASSED [ 88%] 833s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_set PASSED [ 88%] 833s tests/translate/storage/test_utx.py::TestUtxFile::test_create_blank PASSED [ 88%] 833s tests/translate/storage/test_utx.py::TestUtxFile::test_add PASSED [ 88%] 833s tests/translate/storage/test_utx.py::TestUtxFile::test_remove PASSED [ 88%] 833s tests/translate/storage/test_utx.py::TestUtxFile::test_find PASSED [ 88%] 833s tests/translate/storage/test_utx.py::TestUtxFile::test_translate PASSED [ 88%] 833s tests/translate/storage/test_utx.py::TestUtxFile::test_parse PASSED [ 88%] 833s tests/translate/storage/test_utx.py::TestUtxFile::test_files PASSED [ 88%] 833s tests/translate/storage/test_utx.py::TestUtxFile::test_save PASSED [ 88%] 833s tests/translate/storage/test_utx.py::TestUtxFile::test_markup PASSED [ 88%] 833s tests/translate/storage/test_utx.py::TestUtxFile::test_nonascii PASSED [ 88%] 833s tests/translate/storage/test_utx.py::TestUtxFile::test_extensions PASSED [ 88%] 833s tests/translate/storage/test_utx.py::TestUtxFile::test_mimetypes PASSED [ 88%] 833s tests/translate/storage/test_wordfast.py::TestWFTime::test_timestring PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFTime::test_time PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFUnit::test_isfuzzy PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFUnit::test_create PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFUnit::test_eq PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFUnit::test_target PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFUnit::test_escapes PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFUnit::test_note_sanity PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_get PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_set PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFUnit::test_difficult_escapes PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFUnit::test_wordfast_escaping PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFUnit::test_newlines PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFUnit::test_language_setting PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFUnit::test_istranslated PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFFile::test_create_blank PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFFile::test_add PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFFile::test_remove PASSED [ 88%] 834s tests/translate/storage/test_wordfast.py::TestWFFile::test_find PASSED [ 89%] 834s tests/translate/storage/test_wordfast.py::TestWFFile::test_translate PASSED [ 89%] 834s tests/translate/storage/test_wordfast.py::TestWFFile::test_parse PASSED [ 89%] 834s tests/translate/storage/test_wordfast.py::TestWFFile::test_files PASSED [ 89%] 834s tests/translate/storage/test_wordfast.py::TestWFFile::test_save PASSED [ 89%] 834s tests/translate/storage/test_wordfast.py::TestWFFile::test_markup PASSED [ 89%] 834s tests/translate/storage/test_wordfast.py::TestWFFile::test_nonascii PASSED [ 89%] 834s tests/translate/storage/test_wordfast.py::TestWFFile::test_extensions PASSED [ 89%] 834s tests/translate/storage/test_wordfast.py::TestWFFile::test_mimetypes PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_isfuzzy PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_create PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_eq PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_target PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_escapes PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_difficult_escapes PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_note_sanity PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_get PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_set PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_markreview PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_errors PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_accepted_control_chars PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_unaccepted_control_chars PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_create_blank PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_remove PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_find PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_translate PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parse PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_files PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_save PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_markup PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_nonascii PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_extensions PASSED [ 89%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_mimetypes PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_basic PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_namespace PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_source PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_target PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_source PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_target PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_sourcelanguage PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage_multi PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_notes PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_alttrans PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_fuzzy PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_xml_space PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parsing PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_entities PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_multiple_filenodes PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_indent PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add_target PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_closing_tags PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_context_groups PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_getlocations PASSED [ 90%] 834s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_addlocation PASSED [ 90%] 835s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_huge PASSED [ 90%] 835s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve_add PASSED [ 90%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_isfuzzy PASSED [ 90%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_create PASSED [ 90%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_eq PASSED [ 90%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_escapes PASSED [ 90%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_difficult_escapes PASSED [ 90%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_note_sanity PASSED [ 90%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_target PASSED [ 90%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_get PASSED [ 90%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_set PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_getlocations PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_create_blank PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_find PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_files PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_save PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_extensions PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_mimetypes PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_translate PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_markup PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nonascii PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_serialize PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit_unicode PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse_unicode_list PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_ordering PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_initial_comments PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_string_key PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nested PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_multiline PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_boolean PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_integer PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_no_quote_strings PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_double_quote_strings PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_single_quote_strings PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_double_quote_strings PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_single_quote_strings PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_escaped_double_quotes PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_newlines PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_list PASSED [ 91%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_dictionary PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_key_nesting PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add_to_mepty PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty_key PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dict_in_list PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dump_args PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_anchors PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_tagged_scalar PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_numeric PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_remove PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_special PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_quotes_roundtrip PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_create_blank PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_remove PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_find PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_parse PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_files PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_save PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_extensions PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_mimetypes PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_translate PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_markup PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_nonascii PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_list PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_wrong PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_invalid_value PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_empty PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_anchors PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_type_change PASSED [ 92%] 835s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_add PASSED [ 92%] 835s tests/translate/storage/test_zip.py::TestZIPFile::test_created PASSED [ 92%] 835s tests/translate/storage/test_zip.py::TestZIPFile::test_basic PASSED [ 92%] 835s tests/translate/storage/test_zip.py::TestZIPFile::test_structure PASSED [ 93%] 835s tests/translate/storage/test_zip.py::TestZIPFile::test_getunits PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_parse PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_tree PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_add PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_contains PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getitem PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getslice PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_iter PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_len PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_mul PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_offset PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_at_offset PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find_elems_with PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_flatten PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case1 PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case2 PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case3 PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case4 PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_insert PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_isleaf PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestStringElem::test_prune PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_base_placeables PASSED [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables XFAIL [ 93%] 835s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables XFAIL [ 93%] 835s tests/translate/storage/placeables/test_general.py::test_placeable_numbers PASSED [ 93%] 835s tests/translate/storage/placeables/test_general.py::test_placeable_newline PASSED [ 93%] 835s tests/translate/storage/placeables/test_general.py::test_placeable_alt_attr PASSED [ 93%] 835s tests/translate/storage/placeables/test_general.py::test_placeable_qt_formatting PASSED [ 93%] 835s tests/translate/storage/placeables/test_general.py::test_placeable_camelcase PASSED [ 93%] 835s tests/translate/storage/placeables/test_general.py::test_placeable_space PASSED [ 93%] 835s tests/translate/storage/placeables/test_general.py::test_placeable_punctuation PASSED [ 93%] 835s tests/translate/storage/placeables/test_general.py::test_placeable_xml_entity PASSED [ 94%] 835s tests/translate/storage/placeables/test_general.py::test_placeable_xml_tag PASSED [ 94%] 835s tests/translate/storage/placeables/test_general.py::test_placeable_option PASSED [ 94%] 835s tests/translate/storage/placeables/test_general.py::test_placeable_file PASSED [ 94%] 835s tests/translate/storage/placeables/test_general.py::test_placeable_email PASSED [ 94%] 835s tests/translate/storage/placeables/test_general.py::test_placeable_caps PASSED [ 94%] 835s tests/translate/storage/placeables/test_general.py::test_placeable_formatting PASSED [ 94%] 835s tests/translate/storage/placeables/test_general.py::test_placeable_doubleat PASSED [ 94%] 835s tests/translate/storage/placeables/test_general.py::test_placeable_brace PASSED [ 94%] 835s tests/translate/storage/placeables/test_general.py::test_python_placeable PASSED [ 94%] 835s tests/translate/storage/placeables/test_lisa.py::test_xml_to_strelem PASSED [ 94%] 835s tests/translate/storage/placeables/test_lisa.py::test_xml_space PASSED [ 94%] 835s tests/translate/storage/placeables/test_lisa.py::test_chunk_list PASSED [ 94%] 835s tests/translate/storage/placeables/test_lisa.py::test_set_strelem_to_xml PASSED [ 94%] 835s tests/translate/storage/placeables/test_lisa.py::test_unknown_xml_placeable PASSED [ 94%] 835s tests/translate/storage/placeables/test_terminology.py::TestTerminologyPlaceable::test_simple_terminology PASSED [ 94%] 835s tests/translate/storage/xml_extract/test_misc.py::test_reduce_tree PASSED [ 94%] 835s tests/translate/storage/xml_extract/test_misc.py::test_compose_mappings PASSED [ 94%] 835s tests/translate/storage/xml_extract/test_misc.py::test_parse_tag PASSED [ 94%] 835s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath_component PASSED [ 94%] 835s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath PASSED [ 94%] 835s tests/translate/storage/xml_extract/test_unit_tree.py::test__add_unit_to_tree PASSED [ 94%] 835s tests/translate/storage/xml_extract/test_xpath_breadcrumb.py::test_breadcrumb PASSED [ 94%] 835s tests/translate/tools/test_help.py::test_help[build_tmdb] SKIPPED (S...) [ 94%] 835s tests/translate/tools/test_help.py::test_help[phppo2pypo] SKIPPED (S...) [ 94%] 835s tests/translate/tools/test_help.py::test_help[poclean] SKIPPED (Skip...) [ 94%] 835s tests/translate/tools/test_help.py::test_help[pocompile] SKIPPED (Sk...) [ 94%] 835s tests/translate/tools/test_help.py::test_help[poconflicts] SKIPPED (...) [ 94%] 835s tests/translate/tools/test_help.py::test_help[pocount] SKIPPED (Skip...) [ 94%] 835s tests/translate/tools/test_help.py::test_help[podebug] SKIPPED (Skip...) [ 94%] 835s tests/translate/tools/test_help.py::test_help[pogrep] SKIPPED (Skip ...) [ 94%] 835s tests/translate/tools/test_help.py::test_help[pomerge] SKIPPED (Skip...) [ 94%] 835s tests/translate/tools/test_help.py::test_help[porestructure] SKIPPED [ 94%] 835s tests/translate/tools/test_help.py::test_help[posegment] SKIPPED (Sk...) [ 95%] 835s tests/translate/tools/test_help.py::test_help[poswap] SKIPPED (Skip ...) [ 95%] 835s tests/translate/tools/test_help.py::test_help[poterminology] SKIPPED [ 95%] 835s tests/translate/tools/test_help.py::test_help[pretranslate] SKIPPED [ 95%] 835s tests/translate/tools/test_help.py::test_help[pydiff] SKIPPED (Skip ...) [ 95%] 835s tests/translate/tools/test_help.py::test_help[pypo2phppo] SKIPPED (S...) [ 95%] 835s tests/translate/tools/test_junitmsgfmt.py::test_output[failure] PASSED [ 95%] 835s tests/translate/tools/test_junitmsgfmt.py::test_output[untranslated] PASSED [ 95%] 835s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_single_po PASSED [ 95%] 835s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_plural_po PASSED [ 95%] 835s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_single_po PASSED [ 95%] 835s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_plural_po PASSED [ 95%] 835s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_help PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_zero PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_one PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_two PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::TestCount::test_punctuation_divides_words PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::TestCount::test_xml_tags PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::TestCount::test_newlines PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::TestCount::test_variables_are_words PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::TestCount::test_plurals PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde XFAIL [ 95%] 835s tests/translate/tools/test_pocount.py::TestCount::test_msgid_blank PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::TestPOCount::test_translated PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzy PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslated PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::TestPOCount::test_total PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::TestPOCount::test_translatedsourcewords PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzysourcewords PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslatedsourcewords PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::TestPOCount::test_totalsourcewords PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-csv] PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-full] PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-strings] PASSED [ 95%] 835s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-words] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-csv] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-full] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-strings] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-words] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-csv] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-full] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-strings] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-words] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-csv] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-full] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-strings] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-words] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_cases[po-file] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_cases[po-file-fuzzy] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_cases[po-file-csv] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_cases[xliff-states-yes] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_cases[xliff-states-no] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_error_cases[mutually-exclusive] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_error_cases[missing-file] PASSED [ 96%] 835s tests/translate/tools/test_pocount.py::test_error_cases[no-args] PASSED [ 96%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_ignore_gtk PASSED [ 96%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_keep_target PASSED [ 96%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_blank PASSED [ 96%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_en PASSED [ 96%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_xxx PASSED [ 96%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_bracket PASSED [ 96%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode PASSED [ 96%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_at_placeholders PASSED [ 96%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_single_brace_placeholders PASSED [ 96%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_double_brace_placeholders PASSED [ 96%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_html PASSED [ 96%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_multiple_styles_of_placeholder PASSED [ 96%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped PASSED [ 97%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_at_placeholders PASSED [ 97%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_single_brace_placeholders PASSED [ 97%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_double_brace_placeholders PASSED [ 97%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_html PASSED [ 97%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_multiple_styles_of_placeholder PASSED [ 97%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified PASSED [ 97%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_at_placeholders PASSED [ 97%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_single_brace_placeholders PASSED [ 97%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_double_brace_placeholders PASSED [ 97%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_html PASSED [ 97%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_multiple_styles_of_placeholder PASSED [ 97%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_chef PASSED [ 97%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_po_variables PASSED [ 97%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_xliff_rewrite PASSED [ 97%] 835s tests/translate/tools/test_podebug.py::TestPODebug::test_hash PASSED [ 97%] 835s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgid PASSED [ 97%] 835s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgstr PASSED [ 97%] 835s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations PASSED [ 97%] 835s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_comments PASSED [ 97%] 835s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations_with_comment_enabled PASSED [ 97%] 835s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_searchstring PASSED [ 97%] 835s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_regex_searchstring PASSED [ 97%] 835s tests/translate/tools/test_pogrep.py::TestPOGrep::test_keep_translations PASSED [ 97%] 835s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_normalise PASSED [ 97%] 835s tests/translate/tools/test_pogrep.py::TestXLiffGrep::test_simplegrep PASSED [ 97%] 835s tests/translate/tools/test_pomerge.py::test_str2bool PASSED [ 97%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_mergesore_bad_data PASSED [ 97%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge PASSED [ 97%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge_no_locations PASSED [ 97%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_replacemerge PASSED [ 97%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_blanks PASSED [ 97%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_fuzzies PASSED [ 97%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_locations PASSED [ 97%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_with_locations PASSED [ 98%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_no_locations PASSED [ 98%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_reflowed_source_comments PASSED [ 98%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_comments_with_blank_lines PASSED [ 98%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dont_delete_unassociated_comments PASSED [ 98%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_trailing_newlines PASSED [ 98%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_minor_start_and_end_of_sentence_changes PASSED [ 98%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_last_entry_in_a_file PASSED [ 98%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs XFAIL [ 98%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_comments_layout PASSED [ 98%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dos2unix PASSED [ 98%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_xliff PASSED [ 98%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_po_into_xliff PASSED [ 98%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_po PASSED [ 98%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_dont_merge_kde_comments_found_in_translation PASSED [ 98%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_untranslated_with_kde_disambiguation PASSED [ 98%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_header_entries PASSED [ 98%] 835s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_different_locations PASSED [ 98%] 835s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_simple PASSED [ 98%] 835s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_punctuation PASSED [ 98%] 835s tests/translate/tools/test_poterminology.py::TestPOTerminology::test_term_extraction PASSED [ 98%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_pretranslatepo_blank PASSED [ 98%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_simple PASSED [ 98%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_messages_marked_fuzzy PASSED [ 98%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals_with_fuzzy_matching PASSED [ 98%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change XFAIL [ 98%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_change PASSED [ 98%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_and_whitespace_change PASSED [ 98%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes XFAIL [ 98%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently XFAIL [ 98%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_dont_duplicate PASSED [ 98%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_new_overides_old PASSED [ 98%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments_with_blank_comment_lines PASSED [ 98%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_empty_commentlines PASSED [ 99%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgidcomments PASSED [ 99%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals PASSED [ 99%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_resurect_obsolete_messages PASSED [ 99%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments PASSED [ 99%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_typecomments PASSED [ 99%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_xliff_states PASSED [ 99%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_pretranslatepo_blank PASSED [ 99%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_simple PASSED [ 99%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_messages_marked_fuzzy PASSED [ 99%] 835s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 99%] 836s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change XFAIL [ 99%] 836s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_change PASSED [ 99%] 836s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_and_whitespace_change PASSED [ 99%] 836s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes XFAIL [ 99%] 836s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently XFAIL [ 99%] 836s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 99%] 836s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_new_overides_old PASSED [ 99%] 836s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments_with_blank_comment_lines PASSED [ 99%] 836s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_empty_commentlines PASSED [ 99%] 836s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgidcomments PASSED [ 99%] 836s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals PASSED [ 99%] 836s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_resurect_obsolete_messages PASSED [ 99%] 836s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments PASSED [ 99%] 836s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_typecomments PASSED [ 99%] 836s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_xliff_states PASSED [ 99%] 836s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_help PASSED [ 99%] 836s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_single_po PASSED [ 99%] 836s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_plural_po PASSED [ 99%] 836s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_single_po PASSED [ 99%] 836s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_plural_po PASSED [ 99%] 836s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_help PASSED [ 99%] 836s tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff SKIPPED [ 99%] 836s tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff SKIPPED [100%] 836s 836s =============================== warnings summary =============================== 836s tests/odf_xliff/test_odf_xliff.py::test_roundtrip 836s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.yhF5Vh/autopkgtest_tmp/tests/odf_xliff/test_2.odt'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid 836s Warning: unclosed file <_io.TextIOWrapper name='TestAndroid2POCommand_test_convertandroid/en.po' mode='r' encoding='UTF-8'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 836s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 836s Warning: unclosed file <_io.TextIOWrapper name='TestCSV2POCommand_test_columnorder/test.po' mode='r' encoding='UTF-8'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot 836s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_pot/simple.pot'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po 836s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po 836s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_po/simple.po'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates 836s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_remove_duplicates/simple.po'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf 836s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_xlf/simple.xlf'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 836s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 836s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_columnorder/test.csv' mode='r' encoding='UTF-8'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context 836s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_context/test.csv' mode='r' encoding='UTF-8'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing 836s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey 836s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey 836s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing 836s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey 836s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey 836s Warning: Could not find accesskey for key.accesskey 836s 836s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 836s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file 836s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten 836s Warning: unclosed file <_io.BufferedReader name='translation/file1.po'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 836s Warning: unclosed file <_io.BufferedWriter name='translated/file1.html'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert 836s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.yhF5Vh/autopkgtest_tmp/tests/translate/convert/test.idml'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po 836s Warning: unclosed file <_io.BufferedReader name='translation.po'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 836s Warning: unclosed file <_io.FileIO name='input.oo' mode='rb' closefd=True> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 836s Warning: unclosed file <_io.FileIO name='output.oo' mode='wb' closefd=True> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey 836s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey 836s Warning: Could not find accesskey for prop.accesskey 836s 836s tests/translate/convert/test_po2tmx.py: 26 warnings 836s tests/translate/filters/test_pofilter.py: 13 warnings 836s tests/translate/storage/test_tbx.py: 17 warnings 836s tests/translate/storage/test_tmx.py: 24 warnings 836s Warning: This search incorrectly ignores the root element, and will be fixed in a future version. If you rely on the current behaviour, change it to './/body' 836s 836s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert 836s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert/simple.po'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 836s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf16/simple.po'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 836s Warning: unclosed file <_io.BufferedWriter name='simple.po'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 836s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 836s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_wrong/simple.po'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 836s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf8/simple.po'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex 836s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_menuex/simple.po'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot 836s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_pot/simple.pot'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po 836s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_po/simple.po'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates 836s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_remove_duplicates/simple.po'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 836s Warning: unclosed file <_io.BufferedWriter name='simple.odt'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 836s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.yhF5Vh/autopkgtest_tmp/tests/translate/convert/test.odt'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename 836s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_preserve_filename/snippet.xlf'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot 836s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_pot/simple.pot'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po 836s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_po/simple.po'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates 836s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_remove_duplicates/simple.po'> 836s Enable tracemalloc to get traceback where the object was allocated. 836s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 836s 836s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 836s Warning: DTD parse error: :1:36:FATAL:PARSER:ERR_ENTITY_NOT_FINISHED: xmlParseEntityDecl: entity test.me not terminated 836s 836s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 836s Warning: DTD file '' does not validate 836s 836s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 836s --------------------------- snapshot report summary ---------------------------- 836s 23 snapshots passed. 836s =========================== short test summary info ============================ 836s SKIPPED [1] tests/translate/storage/test_cpo.py:15: could not import 'translate.storage.cpo': gettext PO library not found 836s SKIPPED [1] tests/translate/storage/test_fluent.py:29: could not import 'translate.storage.fluent': No module named 'fluent' 836s SKIPPED [1] tests/translate/filters/test_checks.py:1429: Spell checking for af is not available 836s SKIPPED [1] tests/translate/storage/test_mo.py:498: Skip testing command line tools 836s SKIPPED [16] tests/translate/tools/test_help.py:16: Skip testing command line tools 836s SKIPPED [1] tests/xliff_conformance/test_xliff_conformance.py:49: Skip testing command line tools 836s SKIPPED [1] tests/xliff_conformance/test_xliff_conformance.py:58: Skip testing command line tools 836s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence - Not Implemented 836s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence - Not Implemented 836s XFAIL tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template - Need to review if we want this behaviour 836s XFAIL tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template - Need to review if we want this behaviour 836s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change - Not implemented - review if this is even correct 836s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes - Not Implemented - needs review 836s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently - Not Implemented - review if this is even correct 836s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change - Not implemented - review if this is even correct 836s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes - Not Implemented - needs review 836s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently - Not Implemented - review if this is even correct 836s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates - This is invalid YAML document 836s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates - This is invalid YAML document 836s XFAIL tests/translate/filters/test_checks.py::test_acceleratedvariables - Accelerated variables needs a better implementation 836s XFAIL tests/translate/filters/test_checks.py::test_musttranslatewords - FIXME: All fails() tests are not working 836s XFAIL tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time - Bug #3408 836s XFAIL tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags - Bug #3506 836s 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. 836s XFAIL tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases - Not Implemented 836s XFAIL tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases - Not Implemented 836s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_comment_following - Not Implemented 836s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting - Not Implemented 836s 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 836s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals - Not Implemented 836s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 836s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis - Incompatible wrapping with gettext, see #5251 836s XFAIL tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove - removal not working in full page 836s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals - Not Implemented 836s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 836s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis - Incompatible wrapping with gettext, see #5251 836s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment - Not sure if this can not be parsed gracefully 836s XFAIL tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity - Not Implemented 836s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables - Test needs fixing, disabled for now 836s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables - Test needs fixing, disabled for now 836s XFAIL tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde - Support commented out pending removal 836s XFAIL tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs - Not Implemented 836s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change - Not Implemented 836s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes - Not Implemented 836s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently - Not Implemented 836s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change - Not Implemented 836s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes - Not Implemented 836s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently - Not Implemented 836s ========= 3279 passed, 22 skipped, 41 xfailed, 126 warnings in 17.02s ========== 841s autopkgtest [21:44:15]: test python3-translate: -----------------------] 848s autopkgtest [21:44:22]: test python3-translate: - - - - - - - - - - results - - - - - - - - - - 848s python3-translate PASS 870s autopkgtest [21:44:44]: test python3-translate-commands: preparing testbed 879s Note, using file '/tmp/autopkgtest.yhF5Vh/5-autopkgtest-satdep.dsc' to get the build dependencies 879s Reading package lists... 879s Building dependency tree... 879s Reading state information... 880s Starting pkgProblemResolver with broken count: 0 880s Starting 2 pkgProblemResolver with broken count: 0 880s Done 880s The following NEW packages will be installed: 880s translate-toolkit 880s 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 880s Need to get 81.0 kB of archives. 880s After this operation, 225 kB of additional disk space will be used. 880s Get:1 http://ftpmaster.internal/ubuntu oracular/universe amd64 translate-toolkit all 3.13.2-1 [81.0 kB] 880s Fetched 81.0 kB in 0s (3294 kB/s) 881s Selecting previously unselected package translate-toolkit. 881s (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 ... 79242 files and directories currently installed.) 881s Preparing to unpack .../translate-toolkit_3.13.2-1_all.deb ... 881s Unpacking translate-toolkit (3.13.2-1) ... 881s Setting up translate-toolkit (3.13.2-1) ... 881s Processing triggers for man-db (2.12.1-2) ... 882s Reading package lists... 882s Building dependency tree... 882s Reading state information... 882s Starting pkgProblemResolver with broken count: 0 882s Starting 2 pkgProblemResolver with broken count: 0 882s Done 883s The following NEW packages will be installed: 883s autopkgtest-satdep 883s 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 883s Need to get 0 B/700 B of archives. 883s After this operation, 0 B of additional disk space will be used. 883s Get:1 /tmp/autopkgtest.yhF5Vh/6-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [700 B] 883s Selecting previously unselected package autopkgtest-satdep. 883s (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 ... 79412 files and directories currently installed.) 883s Preparing to unpack .../6-autopkgtest-satdep.deb ... 883s Unpacking autopkgtest-satdep (0) ... 883s Setting up autopkgtest-satdep (0) ... 883s autopkgtest: WARNING: package python3-translate:i386 is not installed though it should be 883s autopkgtest: WARNING: package translate-toolkit:i386 is not installed though it should be 885s (Reading database ... 79412 files and directories currently installed.) 885s Removing autopkgtest-satdep (0) ... 910s autopkgtest [21:45:24]: test python3-translate-commands: [----------------------- 922s ============================= test session starts ============================== 922s platform linux -- Python 3.12.4, pytest-7.4.4, pluggy-1.5.0 -- /usr/bin/python3.12 922s cachedir: .pytest_cache 922s rootdir: /tmp/autopkgtest.yhF5Vh/autopkgtest_tmp 922s plugins: syrupy-4.6.1 927s collecting ... collected 3340 items / 2 skipped 927s 927s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff PASSED [ 0%] 927s tests/odf_xliff/test_odf_xliff.py::test_roundtrip PASSED [ 0%] 927s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff2_inline PASSED [ 0%] 927s tests/translate/convert/test_accesskey.py::test_get_label_and_accesskey PASSED [ 0%] 927s tests/translate/convert/test_accesskey.py::test_extract_bad_accesskeys PASSED [ 0%] 927s tests/translate/convert/test_accesskey.py::test_ignore_entities PASSED [ 0%] 927s tests/translate/convert/test_accesskey.py::test_alternate_accesskey_marker PASSED [ 0%] 927s tests/translate/convert/test_accesskey.py::test_unicode PASSED [ 0%] 927s tests/translate/convert/test_accesskey.py::test_numeric PASSED [ 0%] 927s tests/translate/convert/test_accesskey.py::test_empty_string PASSED [ 0%] 927s tests/translate/convert/test_accesskey.py::test_end_of_string PASSED [ 0%] 927s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey PASSED [ 0%] 927s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey_different_capitals PASSED [ 0%] 927s tests/translate/convert/test_accesskey.py::test_uncombinable PASSED [ 0%] 927s tests/translate/convert/test_accesskey.py::test_accesskey_already_in_text PASSED [ 0%] 927s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_no_template_units PASSED [ 0%] 927s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_template_units PASSED [ 0%] 927s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_no_template_units PASSED [ 0%] 927s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_template_units PASSED [ 0%] 927s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_help PASSED [ 0%] 927s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid PASSED [ 0%] 927s tests/translate/convert/test_convert.py::TestConvertCommand::test_help PASSED [ 0%] 927s tests/translate/convert/test_csv2po.py::test_replacestrings PASSED [ 0%] 927s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity PASSED [ 0%] 928s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity_with_template PASSED [ 0%] 928s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_newlines PASSED [ 0%] 928s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_tabs PASSED [ 0%] 928s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_quotes PASSED [ 0%] 928s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_empties PASSED [ 0%] 928s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_kdecomment PASSED [ 0%] 928s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_escaped_newlines PASSED [ 0%] 928s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity PASSED [ 0%] 928s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity_with_template PASSED [ 0%] 928s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_newlines PASSED [ 1%] 928s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_tabs PASSED [ 1%] 928s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_quotes PASSED [ 1%] 928s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_empties PASSED [ 1%] 928s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_kdecomment PASSED [ 1%] 928s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_escaped_newlines PASSED [ 1%] 928s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_help PASSED [ 1%] 928s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_simpleentity PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_convertdtd PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_apos PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_quotes PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_two_empty_entities PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity_translated PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisaton_note_simple PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisation_note_merge PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_simple PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_label PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_onlyentity PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_commentedout PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_spaces_at_start_of_dtd_lines PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_folding PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_mismatch PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_carriage_return_in_multiline_dtd PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_with_blankline PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_closing_quotes PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_preserving_spaces PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_escaping_newline_tabs PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_abandoned_accelerator PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_unassociable_accelerator PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_changed_labels_and_accelerators PASSED [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence XFAIL [ 1%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_exclude_entity_includes PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_linewraps PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merging_with_new_untranslated PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merge_without_template PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_simpleentity PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_convertdtd PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_apos PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_quotes PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_two_empty_entities PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity_translated PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisaton_note_simple PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisation_note_merge PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_simple PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_label PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_onlyentity PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_commentedout PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_spaces_at_start_of_dtd_lines PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_folding PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_mismatch PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_carriage_return_in_multiline_dtd PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_with_blankline PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_closing_quotes PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_preserving_spaces PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_escaping_newline_tabs PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_abandoned_accelerator PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_unassociable_accelerator PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_changed_labels_and_accelerators PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence XFAIL [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_exclude_entity_includes PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_linewraps PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merging_with_new_untranslated PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merge_without_template PASSED [ 2%] 928s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_help PASSED [ 2%] 928s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_defaults PASSED [ 3%] 928s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_root_name PASSED [ 3%] 928s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_value_name PASSED [ 3%] 928s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_key PASSED [ 3%] 928s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_default_namespace PASSED [ 3%] 928s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_namespace_prefix PASSED [ 3%] 928s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_all_parameters PASSED [ 3%] 928s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_empty_file_is_empty_store PASSED [ 3%] 928s tests/translate/convert/test_flatxml2po.py::TestFlatXML2POCommand::test_help PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_extract_lang_attribute_from_html_tag PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title_with_linebreak PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_meta PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_br PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak_and_embedded_br PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_uppercase_html PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div_with_linebreaks PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a_with_linebreak PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_sequence_of_anchor_elements PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_img_empty PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img_inside_a PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_table_summary PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_simple PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_complex PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_empty PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_address PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings PASSED [ 3%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings_with_linebreaks PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dt PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dd PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_span PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_ul PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_lists PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_duplicates PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiline_reflow PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_tags PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_carriage_return PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_encoding_latin1 PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_strip_html PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_text PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_attributes PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_charrefs PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiple_php PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_multiline PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_with_embedded_html PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_comments PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2PO::test_attribute_without_value PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_extract_lang_attribute_from_html_tag PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title_with_linebreak PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_meta PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_br PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak_and_embedded_br PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_uppercase_html PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div_with_linebreaks PASSED [ 4%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a_with_linebreak PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_sequence_of_anchor_elements PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_img_empty PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img_inside_a PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_table_summary PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_simple PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_complex PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_empty PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_address PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings_with_linebreaks PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dt PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dd PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_span PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_ul PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_lists PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_duplicates PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiline_reflow PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_tags PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_carriage_return PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_encoding_latin1 PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_strip_html PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_text PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_attributes PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_charrefs PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiple_php PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_multiline PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_with_embedded_html PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_comments PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_attribute_without_value PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_help PASSED [ 5%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_single PASSED [ 6%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile PASSED [ 6%] 928s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile_to_stdout PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_convert_empty_file PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_translations PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_summary PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_description PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_location PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_comment PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_template_duplicate_style PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_misaligned_files PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_blank_msgstr PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_duplicate_style PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_convert_empty_file PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_translations PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_summary PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_description PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_location PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_comment PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_template_duplicate_style PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_misaligned_files PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_blank_msgstr PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_duplicate_style PASSED [ 6%] 928s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_help PASSED [ 6%] 928s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_help PASSED [ 6%] 928s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_convert PASSED [ 6%] 928s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_empty_file PASSED [ 6%] 928s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_no_translation PASSED [ 6%] 928s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_simple PASSED [ 6%] 928s tests/translate/convert/test_ini2po.py::TestIni2PO::test_no_duplicates PASSED [ 6%] 928s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_simple PASSED [ 6%] 928s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_misaligned_files PASSED [ 7%] 928s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_blank_msgstr PASSED [ 7%] 928s tests/translate/convert/test_ini2po.py::TestIni2PO::test_dialects_inno PASSED [ 7%] 928s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_empty_file PASSED [ 7%] 928s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_no_translation PASSED [ 7%] 928s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_simple PASSED [ 7%] 928s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_no_duplicates PASSED [ 7%] 928s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_simple PASSED [ 7%] 928s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_misaligned_files PASSED [ 7%] 928s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_blank_msgstr PASSED [ 7%] 928s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_dialects_inno PASSED [ 7%] 928s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_help PASSED [ 7%] 928s tests/translate/convert/test_json2po.py::TestJson2PO::test_simple PASSED [ 7%] 928s tests/translate/convert/test_json2po.py::TestJson2PO::test_three_same_keys PASSED [ 7%] 928s tests/translate/convert/test_json2po.py::TestJson2PO::test_filter PASSED [ 7%] 928s tests/translate/convert/test_json2po.py::TestJson2PO::test_miltiple_units PASSED [ 7%] 928s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_simple PASSED [ 7%] 928s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_three_same_keys PASSED [ 7%] 928s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_filter PASSED [ 7%] 928s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_miltiple_units PASSED [ 7%] 928s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_help PASSED [ 7%] 928s tests/translate/convert/test_md2po.py::TestMD2PO::test_help PASSED [ 7%] 928s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_single PASSED [ 7%] 928s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_onefile PASSED [ 7%] 928s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_single PASSED [ 7%] 928s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_onefile PASSED [ 7%] 928s tests/translate/convert/test_moz2po.py::TestMoz2POCommand::test_help PASSED [ 7%] 928s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_simpleentry PASSED [ 7%] 928s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_uncomment_contributors PASSED [ 7%] 928s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_convert_empty PASSED [ 7%] 928s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_string PASSED [ 7%] 928s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_merge PASSED [ 7%] 928s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_entry PASSED [ 7%] 928s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_comment PASSED [ 7%] 928s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_meta_tags PASSED [ 8%] 928s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_keep_duplicates PASSED [ 8%] 928s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_drop_duplicates PASSED [ 8%] 928s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_convert_empty PASSED [ 8%] 928s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_string PASSED [ 8%] 928s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_merge PASSED [ 8%] 928s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_entry PASSED [ 8%] 928s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_comment PASSED [ 8%] 928s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_meta_tags PASSED [ 8%] 928s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_keep_duplicates PASSED [ 8%] 928s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_drop_duplicates PASSED [ 8%] 928s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_help PASSED [ 8%] 928s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_help PASSED [ 8%] 928s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_convert PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2PO::test_simpleentity PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_escape PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_whitespaceonly PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2PO::test_double_escapes PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes_helpcontent2 PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2PO::test_msgid_bug_error_address PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2PO::test_x_comment_inclusion PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simpleentity PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_double_escapes PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_help PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_preserve_filename PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot PASSED [ 8%] 928s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 928s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 928s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_simpleentity PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_escape PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_whitespaceonly PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_double_escapes PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes_helpcontent2 PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_x_comment_inclusion PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_msgid_bug_error_address PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simpleentity PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_double_escapes PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_help PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_preserve_filename PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 928s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 928s tests/translate/convert/test_php2po.py::TestPhp2PO::test_simpleentry PASSED [ 9%] 928s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphp PASSED [ 9%] 928s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphptemplate PASSED [ 9%] 928s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpmissing PASSED [ 9%] 928s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpempty PASSED [ 9%] 928s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unicode PASSED [ 9%] 928s tests/translate/convert/test_php2po.py::TestPhp2PO::test_multiline PASSED [ 9%] 928s tests/translate/convert/test_php2po.py::TestPhp2PO::test_comments_before PASSED [ 9%] 928s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry PASSED [ 9%] 928s tests/translate/convert/test_php2po.py::TestPhp2PO::test_hash_comment_with_equals PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry_translated PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2PO::test_newlines_in_value PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2PO::test_spaces_in_name PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_array PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_array PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_nested_arrays PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_nested_arrays PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_simpleentry PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphp PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphptemplate PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpmissing PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpempty PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unicode PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_multiline PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_comments_before PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_hash_comment_with_equals PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry_translated PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_newlines_in_value PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_spaces_in_name PASSED [ 10%] 928s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_array PASSED [ 10%] 929s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_array PASSED [ 10%] 929s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_nested_arrays PASSED [ 10%] 929s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_nested_arrays PASSED [ 10%] 929s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_help PASSED [ 10%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_simpleentity PASSED [ 10%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_multiline PASSED [ 10%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapednewlines PASSED [ 10%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedtabs PASSED [ 10%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedquotes PASSED [ 10%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedescape PASSED [ 10%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_singlequotes PASSED [ 10%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_empties PASSED [ 10%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_kdecomments PASSED [ 11%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_simpleentity PASSED [ 11%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_multiline PASSED [ 11%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapednewlines PASSED [ 11%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedtabs PASSED [ 11%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedquotes PASSED [ 11%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedescape PASSED [ 11%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_singlequotes PASSED [ 11%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_empties PASSED [ 11%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_kdecomments PASSED [ 11%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_help PASSED [ 11%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder PASSED [ 11%] 929s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_joinlines PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_escapedstr PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_missingaccesskey PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskeycase PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_types PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities_two PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments_translator PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_retains_hashprefix PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_convertdtd PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_with_template PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_without_template PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_blank_source PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_newlines_escapes PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_simple PASSED [ 11%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_escape PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_quotes PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_amp PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_merging_entries_with_spaces_removed PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces_after_value PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_duplicates PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_joinlines PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_escapedstr PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_missingaccesskey PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskeycase PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_types PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities_two PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments_translator PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_retains_hashprefix PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_convertdtd PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_with_template PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_without_template PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_blank_source PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_newlines_escapes PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_simple PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_escape PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_quotes PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_amp PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_merging_entries_with_spaces_removed PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces_after_value PASSED [ 12%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments PASSED [ 13%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_duplicates PASSED [ 13%] 929s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_help PASSED [ 13%] 929s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_defaults PASSED [ 13%] 929s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_root_name PASSED [ 13%] 929s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_value_name PASSED [ 13%] 929s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_key PASSED [ 13%] 929s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_default_namespace PASSED [ 13%] 929s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_namespace_prefix PASSED [ 13%] 929s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_indent_eight PASSED [ 13%] 929s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_noindent PASSED [ 13%] 929s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXMLCommand::test_help PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2Html::test_simple PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2Html::test_linebreaks PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2Html::test_replace_substrings PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_outside_translatable_content PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_embedded_within_translatable_content PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_without_value PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2Html::test_entities PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2Html::test_escapes PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_translated PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_untranslated PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_fuzzy PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2Html::test_untranslated_attributes PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_simple PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_linebreaks PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_replace_substrings PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_outside_translatable_content PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_embedded_within_translatable_content PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_without_value PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_entities PASSED [ 13%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_escapes PASSED [ 14%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_translated PASSED [ 14%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_untranslated PASSED [ 14%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_fuzzy PASSED [ 14%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_untranslated_attributes PASSED [ 14%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_help PASSED [ 14%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_individual_files PASSED [ 14%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_fully_recursive PASSED [ 14%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_input_specified PASSED [ 14%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified PASSED [ 14%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_output_specified PASSED [ 14%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file PASSED [ 14%] 929s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_empty_file PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_summary PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_description PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_location PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_comment PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_complex_icalendar PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_skip_fuzzy PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_include_fuzzy PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_no_template PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_template_location_not_in_source_file PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_below_threshold PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_above_threshold PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_empty_file PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_summary PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_description PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_location PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_comment PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_complex_icalendar PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_skip_fuzzy PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_include_fuzzy PASSED [ 14%] 929s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_no_template PASSED [ 15%] 929s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_template_location_not_in_source_file PASSED [ 15%] 929s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_below_threshold PASSED [ 15%] 929s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_above_threshold PASSED [ 15%] 929s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_help PASSED [ 15%] 929s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_help PASSED [ 15%] 929s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_no_templates PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_simple PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_space_preservation PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_blank_entries PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_fuzzy PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_propertyless_template PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_empty_value PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_dialects_inno PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_misaligned_files PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_below_threshold PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_above_threshold PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_no_fuzzy PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_allow_fuzzy PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_missing_source PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_repeated_locations PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_no_templates PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_simple PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_space_preservation PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_blank_entries PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_fuzzy PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_propertyless_template PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_empty_value PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_dialects_inno PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_misaligned_files PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_below_threshold PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_above_threshold PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_no_fuzzy PASSED [ 15%] 929s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_allow_fuzzy PASSED [ 16%] 929s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_missing_source PASSED [ 16%] 929s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_repeated_locations PASSED [ 16%] 929s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_help PASSED [ 16%] 929s tests/translate/convert/test_po2json.py::TestPO2JSON::test_basic PASSED [ 16%] 929s tests/translate/convert/test_po2json.py::TestPO2JSON::test_ordering_serialize PASSED [ 16%] 929s tests/translate/convert/test_po2json.py::TestPO2JSON::test_dont_use_empty_translation PASSED [ 16%] 929s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_false PASSED [ 16%] 929s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_true PASSED [ 16%] 929s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_false PASSED [ 16%] 929s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_true PASSED [ 16%] 929s tests/translate/convert/test_po2md.py::TestPO2MD::test_help PASSED [ 16%] 929s tests/translate/convert/test_po2md.py::TestPO2MD::test_single_markdown_file_with_single_po PASSED [ 16%] 929s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po PASSED [ 16%] 929s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_and_directory_of_po_files PASSED [ 16%] 929s tests/translate/convert/test_po2moz.py::TestPO2MozCommand::test_help PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_empty PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_simple PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_comment PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_ok_marker PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_below_threshold PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_above_threshold PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_skip_non_translatable_input PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_no_fuzzy PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_allow_fuzzy PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_mark_active PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_empty PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_simple PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_comment PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_ok_marker PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_below_threshold PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_above_threshold PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_skip_non_translatable_input PASSED [ 16%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_no_fuzzy PASSED [ 17%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_allow_fuzzy PASSED [ 17%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_mark_active PASSED [ 17%] 929s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_help PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OO::test_convertoo PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OO::test_pofilter PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_simple PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_escape PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_quotes PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_spaces PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OO::test_default_timestamp PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OO::test_escape_conversion PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes2 PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_convertoo PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_pofilter PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_simple PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_quotes PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_spaces PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_escape_conversion PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes2 PASSED [ 17%] 929s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_help PASSED [ 17%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp PASSED [ 17%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_notemplate PASSED [ 17%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_empty_template PASSED [ 17%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_simple PASSED [ 17%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_space_preservation PASSED [ 17%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_preserve_unused_statement PASSED [ 17%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_not_translated_multiline PASSED [ 17%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_blank_entries PASSED [ 17%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_fuzzy PASSED [ 17%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_locations_with_spaces PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_inline_comments PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_block_comments PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_variables PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_multiline PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_hash_comment PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_arrays PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_nested_array PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_unnamed_nested_arrays PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template XFAIL [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_notemplate PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_empty_template PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_simple PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_space_preservation PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_preserve_unused_statement PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_not_translated_multiline PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_blank_entries PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_fuzzy PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_locations_with_spaces PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_inline_comments PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_block_comments PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_variables PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_multiline PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_hash_comment PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_arrays PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_nested_array PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_unnamed_nested_arrays PASSED [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template XFAIL [ 18%] 929s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_help PASSED [ 18%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_simple PASSED [ 18%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated PASSED [ 18%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_hard_newlines_preserved PASSED [ 18%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_space_preservation PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_value PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_separator PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank_entries PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_fuzzy PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_margin_whitespace PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_all_whitespace PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_propertyless_template PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_delimiters PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_empty_value PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_personalities PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_simple PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline2 PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_comments PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_unchanged PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gaia_plurals PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_duplicates PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gwt_plurals PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_simple PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_hard_newlines_preserved PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_space_preservation PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_value PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_separator PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank_entries PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_fuzzy PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_margin_whitespace PASSED [ 19%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_all_whitespace PASSED [ 20%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_propertyless_template PASSED [ 20%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_delimiters PASSED [ 20%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_empty_value PASSED [ 20%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_personalities PASSED [ 20%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_simple PASSED [ 20%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline PASSED [ 20%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline2 PASSED [ 20%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_comments PASSED [ 20%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_unchanged PASSED [ 20%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank PASSED [ 20%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gaia_plurals PASSED [ 20%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_duplicates PASSED [ 20%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gwt_plurals PASSED [ 20%] 929s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_help PASSED [ 20%] 929s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_help PASSED [ 20%] 929s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert PASSED [ 20%] 930s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_quotes PASSED [ 20%] 930s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment PASSED [ 20%] 930s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_dos_eol PASSED [ 20%] 930s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_double_string PASSED [ 20%] 930s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_popup PASSED [ 20%] 930s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_discardable PASSED [ 20%] 930s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_menuex PASSED [ 20%] 930s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_newlines PASSED [ 20%] 930s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_after PASSED [ 20%] 930s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_block_language PASSED [ 20%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_simpleunit PASSED [ 20%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_basic PASSED [ 20%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_multiline PASSED [ 20%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapednewlines PASSED [ 20%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedtabs PASSED [ 20%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedquotes PASSED [ 20%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_exclusions PASSED [ 20%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingcomment PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingcomment PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingduplicatecomment PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingcomment PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_existingcomments PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_simpleunit PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_basic PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_multiline PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapednewlines PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedtabs PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedquotes PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_exclusions PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingcomment PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingcomment PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingduplicatecomment PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingcomment PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_existingcomments PASSED [ 21%] 930s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_help PASSED [ 21%] 930s tests/translate/convert/test_po2sub.py::TestPO2Sub::test_subrip PASSED [ 21%] 930s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_subrip PASSED [ 21%] 930s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_help PASSED [ 21%] 930s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_empty PASSED [ 22%] 930s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert PASSED [ 22%] 930s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_marked_untranslated PASSED [ 22%] 930s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_empty PASSED [ 22%] 930s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert PASSED [ 22%] 930s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_marked_untranslated PASSED [ 22%] 930s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_help PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_basic PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcelanguage PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_targetlanguage PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_multiline PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapednewlines PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedtabs PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedquotes PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_exclusions PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonascii PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonecomments PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_otherscomments PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcecomments PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_typecomments PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_basic PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcelanguage PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_targetlanguage PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_multiline PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapednewlines PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedtabs PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedquotes PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_exclusions PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonascii PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonecomments PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_otherscomments PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcecomments PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_typecomments PASSED [ 22%] 930s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_help PASSED [ 22%] 930s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simpleunit PASSED [ 23%] 930s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simple_unicode_unit PASSED [ 23%] 930s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fullunit PASSED [ 23%] 930s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fuzzyunit PASSED [ 23%] 930s tests/translate/convert/test_po2ts.py::TestPO2TS::test_obsolete PASSED [ 23%] 930s tests/translate/convert/test_po2ts.py::TestPO2TS::test_duplicates PASSED [ 23%] 930s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak PASSED [ 23%] 930s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak_consecutive PASSED [ 23%] 930s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simpleunit PASSED [ 23%] 930s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simple_unicode_unit PASSED [ 23%] 930s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fullunit PASSED [ 23%] 930s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fuzzyunit PASSED [ 23%] 930s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_obsolete PASSED [ 23%] 930s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_duplicates PASSED [ 23%] 930s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak PASSED [ 23%] 930s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak_consecutive PASSED [ 23%] 930s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_help PASSED [ 23%] 930s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_basic PASSED [ 23%] 930s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_nonascii PASSED [ 23%] 930s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_blank_handling PASSED [ 23%] 930s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_fuzzy_handling PASSED [ 23%] 930s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_obsolete_ignore PASSED [ 23%] 930s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_header_ignore PASSED [ 23%] 930s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_below_threshold PASSED [ 23%] 930s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_above_threshold PASSED [ 23%] 930s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_basic PASSED [ 23%] 930s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_nonascii PASSED [ 23%] 930s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_blank_handling PASSED [ 23%] 930s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_fuzzy_handling PASSED [ 23%] 930s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_obsolete_ignore PASSED [ 23%] 930s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_header_ignore PASSED [ 23%] 930s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_below_threshold PASSED [ 23%] 930s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_above_threshold PASSED [ 23%] 930s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_help PASSED [ 24%] 930s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_basic PASSED [ 24%] 930s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_unicode PASSED [ 24%] 930s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_ordering_serialize PASSED [ 24%] 930s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_markmin PASSED [ 24%] 930s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_minimal PASSED [ 24%] 930s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_basic PASSED [ 24%] 930s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_multiline PASSED [ 24%] 930s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapednewlines PASSED [ 24%] 930s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedtabs PASSED [ 24%] 930s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedquotes PASSED [ 24%] 930s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_locationcomments PASSED [ 24%] 930s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_othercomments PASSED [ 24%] 930s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_automaticcomments PASSED [ 24%] 930s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_header PASSED [ 24%] 930s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_fuzzy PASSED [ 24%] 930s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_germanic_plurals PASSED [ 24%] 930s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_funny_plurals PASSED [ 24%] 930s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_language_tags PASSED [ 24%] 930s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_variables PASSED [ 24%] 930s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_approved PASSED [ 24%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_empty_PO PASSED [ 24%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_no_templates PASSED [ 24%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple_output PASSED [ 24%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple PASSED [ 24%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_translated PASSED [ 24%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_no_fuzzy PASSED [ 24%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_allow_fuzzy PASSED [ 24%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_nested PASSED [ 24%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_below_threshold PASSED [ 24%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_above_threshold PASSED [ 24%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_empty_PO PASSED [ 24%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_no_templates PASSED [ 24%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple_output PASSED [ 25%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple PASSED [ 25%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_translated PASSED [ 25%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_no_fuzzy PASSED [ 25%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_allow_fuzzy PASSED [ 25%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_nested PASSED [ 25%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_below_threshold PASSED [ 25%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_above_threshold PASSED [ 25%] 930s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_help PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank_plurals PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_simple PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_messages_marked_fuzzy PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals_with_fuzzy_matching PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change XFAIL [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_change PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_and_whitespace_change PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_ambiguous_with_disambiguous PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes XFAIL [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently XFAIL [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_dont_duplicate PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_new_overides_old PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments_with_blank_comment_lines PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_commentlines PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgidcomments PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_with_msgidcomment PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_obsoleting_messages PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_not_obsoleting_empty_messages PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_new_before_obsolete PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_header_initialisation PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments PASSED [ 25%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_typecomments PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt_multiline PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_location PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_id PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_msgid PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_migrate_msgidcomment_to_msgctxt PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_obsolete_msgctxt PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_small_strings PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank_plurals PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_simple PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_messages_marked_fuzzy PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change XFAIL [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_change PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_and_whitespace_change PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_ambiguous_with_disambiguous PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes XFAIL [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently XFAIL [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_new_overides_old PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments_with_blank_comment_lines PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_commentlines PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgidcomments PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_with_msgidcomment PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_obsoleting_messages PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_not_obsoleting_empty_messages PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_new_before_obsolete PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_header_initialisation PASSED [ 26%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments PASSED [ 27%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_typecomments PASSED [ 27%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt PASSED [ 27%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt_multiline PASSED [ 27%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_location PASSED [ 27%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_id PASSED [ 27%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_msgid PASSED [ 27%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_migrate_msgidcomment_to_msgctxt PASSED [ 27%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_obsolete_msgctxt PASSED [ 27%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_small_strings PASSED [ 27%] 930s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_help PASSED [ 27%] 930s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_no_endlines_added PASSED [ 27%] 930s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_uncomment_contributors PASSED [ 27%] 930s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_multiline_comment_newlines PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_simpleentry PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_convertprop PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_value_entry PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_separator_entry PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_end_of_string PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_start_of_value PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unicode PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_escaping PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_comments PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_comments PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_folding_accesskeys PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_dont_translate PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty_translated PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_newlines_in_value PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_header_comments PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unassociated_comment_order PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_x_header PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gaia_plurals PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_successive_gaia_plurals PASSED [ 27%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_duplicate_keys PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gwt_plurals PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_simpleentry PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_convertprop PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_value_entry PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_separator_entry PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_end_of_string PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_start_of_value PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unicode PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_escaping PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_comments PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_comments PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_folding_accesskeys PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_dont_translate PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty_translated PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_newlines_in_value PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_header_comments PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unassociated_comment_order PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_x_header PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gaia_plurals PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_successive_gaia_plurals PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_duplicate_keys PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gwt_plurals PASSED [ 28%] 930s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_help PASSED [ 28%] 930s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_help PASSED [ 28%] 930s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert PASSED [ 28%] 930s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 PASSED [ 28%] 930s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong PASSED [ 28%] 931s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 PASSED [ 28%] 931s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex PASSED [ 28%] 931s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_simple PASSED [ 28%] 931s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_multiple_units PASSED [ 28%] 931s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_automaticcomments PASSED [ 29%] 931s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_translatorcomments PASSED [ 29%] 931s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_locations PASSED [ 29%] 931s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple PASSED [ 29%] 931s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_multiple_units PASSED [ 29%] 931s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_automaticcomments PASSED [ 29%] 931s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_translatorcomments PASSED [ 29%] 931s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_locations PASSED [ 29%] 931s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_help PASSED [ 29%] 931s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot PASSED [ 29%] 931s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po PASSED [ 29%] 931s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates PASSED [ 29%] 931s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_convert_empty PASSED [ 29%] 931s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_defaults PASSED [ 29%] 931s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_includeunused PASSED [ 29%] 931s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_convert_empty PASSED [ 29%] 931s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_defaults PASSED [ 29%] 931s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_includeunused PASSED [ 29%] 931s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_help PASSED [ 29%] 931s tests/translate/convert/test_ts2po.py::TestTS2PO::test_blank PASSED [ 29%] 931s tests/translate/convert/test_ts2po.py::TestTS2PO::test_basic PASSED [ 29%] 931s tests/translate/convert/test_ts2po.py::TestTS2PO::test_unfinished PASSED [ 29%] 931s tests/translate/convert/test_ts2po.py::TestTS2PO::test_multiline PASSED [ 29%] 931s tests/translate/convert/test_ts2po.py::TestTS2PO::test_obsolete PASSED [ 29%] 931s tests/translate/convert/test_ts2po.py::TestTS2PO::test_comment PASSED [ 29%] 931s tests/translate/convert/test_ts2po.py::TestTS2PO::test_extracomment PASSED [ 29%] 931s tests/translate/convert/test_ts2po.py::TestTS2PO::test_emptycontext PASSED [ 29%] 931s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_blank PASSED [ 29%] 931s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_basic PASSED [ 29%] 931s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_unfinished PASSED [ 29%] 931s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_multiline PASSED [ 29%] 931s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_obsolete PASSED [ 29%] 931s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_comment PASSED [ 29%] 931s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_extracomment PASSED [ 30%] 931s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_emptycontext PASSED [ 30%] 931s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_help PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_convert_empty PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_keep_duplicates PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_drop_duplicates PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_simple PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_multiple_units PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_carriage_return PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_merge PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_no_segmentation PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestDoku2po::test_convert_empty PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestDoku2po::test_keep_duplicates PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestDoku2po::test_drop_duplicates PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestDoku2po::test_basic PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestDoku2po::test_bullet_list PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestDoku2po::test_numbered_list PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestDoku2po::test_spacing PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestDoku2po::test_merge PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_convert_empty PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_keep_duplicates PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_drop_duplicates PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_simple PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_multiple_units PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_carriage_return PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_merge PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_no_segmentation PASSED [ 30%] 931s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_help PASSED [ 30%] 931s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_basic PASSED [ 30%] 931s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_unicode PASSED [ 30%] 931s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_markmin PASSED [ 30%] 931s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_help PASSED [ 30%] 931s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert PASSED [ 30%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_minimal PASSED [ 30%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_basic PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_translatorcomments PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_autocomment PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_locations PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_fuzzy PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_plurals PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_minimal PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_basic PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_translatorcomments PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_autocomment PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_locations PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_fuzzy PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_plurals PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_help PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_simple_convert PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_minimal PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_basic PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_translatorcomments PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_autocomment PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_locations PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_fuzzy PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_plurals PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_help PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po PASSED [ 31%] 931s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates PASSED [ 31%] 931s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_empty_YAML PASSED [ 31%] 931s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple_output PASSED [ 31%] 931s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple PASSED [ 31%] 931s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_nested PASSED [ 31%] 931s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates XFAIL [ 31%] 931s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_with_template PASSED [ 31%] 931s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_empty_YAML PASSED [ 32%] 931s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple_output PASSED [ 32%] 931s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple PASSED [ 32%] 931s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_nested PASSED [ 32%] 931s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates XFAIL [ 32%] 931s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_with_template PASSED [ 32%] 931s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_help PASSED [ 32%] 931s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_empty_target PASSED [ 32%] 931s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_ellipsis PASSED [ 32%] 931s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_spacestart_spaceend PASSED [ 32%] 931s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_start_capitals PASSED [ 32%] 931s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_end_punc PASSED [ 32%] 931s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_combinations PASSED [ 32%] 931s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_nothing_to_do PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_defaults PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_construct PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_accelerator_markers PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_messages PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_accelerators PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_acceleratedvariables XFAIL [ 32%] 931s tests/translate/filters/test_checks.py::test_acronyms PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_blank PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_brackets PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_compendiumconflicts PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_doublequoting PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_doublespacing PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_doublewords PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_endpunc PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_endwhitespace PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_escapes PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_newlines PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_tabs PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_filepaths PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_kdecomments PASSED [ 32%] 931s tests/translate/filters/test_checks.py::test_long PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_musttranslatewords XFAIL [ 33%] 931s tests/translate/filters/test_checks.py::test_notranslatewords PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_numbers PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_persian_numbers PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_bengali_numbers PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_arabic_numbers PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_assamese_numbers PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_options PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_printf PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_pythonbraceformat PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_puncspacing PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_purepunc PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_sentencecount PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_short PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_singlequoting PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_vietnamese_singlequoting PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time XFAIL [ 33%] 931s tests/translate/filters/test_checks.py::test_persian_quoting PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_simplecaps PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_spellcheck SKIPPED (Spe...) [ 33%] 931s tests/translate/filters/test_checks.py::test_startcaps PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_startpunc PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_startwhitespace PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_unchanged PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_untranslated PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_validchars PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_minimalchecker PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_reducedchecker PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_variables_kde PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_variables_gnome PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_variables_mozilla PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_variables_openoffice PASSED [ 33%] 931s tests/translate/filters/test_checks.py::test_variables_cclicense PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_variables_ios PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_xmltags PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags XFAIL [ 34%] 931s tests/translate/filters/test_checks.py::test_ooxmltags PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_functions PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_emails PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_urls PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_simpleplurals PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_nplurals PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_credits PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_gconf PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_validxml PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_hassuggestion PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_dialogsizes PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_mozilla_no_accelerators_for_indic PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_ensure_bengali_languages_script_is_correct PASSED [ 34%] 931s tests/translate/filters/test_checks.py::test_category PASSED [ 34%] 931s tests/translate/filters/test_decoration.py::test_spacestart PASSED [ 34%] 931s tests/translate/filters/test_decoration.py::test_isvalidaccelerator PASSED [ 34%] 931s tests/translate/filters/test_decoration.py::test_find_marked_variables PASSED [ 34%] 931s tests/translate/filters/test_decoration.py::test_getnumbers PASSED [ 34%] 931s tests/translate/filters/test_decoration.py::test_getfunctions PASSED [ 34%] 931s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplepass PASSED [ 34%] 931s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplefail PASSED [ 34%] 931s tests/translate/filters/test_pofilter.py::TestPOFilter::test_variables_across_lines PASSED [ 34%] 931s tests/translate/filters/test_pofilter.py::TestPOFilter::test_ignore_if_already_marked PASSED [ 34%] 931s tests/translate/filters/test_pofilter.py::TestPOFilter::test_non_existant_check PASSED [ 34%] 931s tests/translate/filters/test_pofilter.py::TestPOFilter::test_list_all_tests PASSED [ 34%] 931s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_fuzzy PASSED [ 34%] 931s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_review PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isfuzzy PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isreview PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestPOFilter::test_notes PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestPOFilter::test_unicode PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestPOFilter::test_preconditions PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestPOFilter::test_msgid_comments PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplepass PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplefail PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_variables_across_lines PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_ignore_if_already_marked PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_non_existant_check PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_list_all_tests PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_fuzzy PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_review PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isfuzzy PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isreview PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_notes PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_unicode PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_preconditions PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplepass PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplefail PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_variables_across_lines PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_ignore_if_already_marked PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_non_existant_check PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_list_all_tests PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_notes PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_unicode PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_preconditions PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_fuzzy PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_review PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isfuzzy PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isreview PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplepass PASSED [ 35%] 931s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplefail PASSED [ 36%] 931s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_variables_across_lines PASSED [ 36%] 931s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_ignore_if_already_marked PASSED [ 36%] 931s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_non_existant_check PASSED [ 36%] 931s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_list_all_tests PASSED [ 36%] 931s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_fuzzy PASSED [ 36%] 931s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_review PASSED [ 36%] 931s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isfuzzy PASSED [ 36%] 931s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isreview PASSED [ 36%] 931s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_notes PASSED [ 36%] 931s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_unicode PASSED [ 36%] 931s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_preconditions PASSED [ 36%] 931s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_msgid_comments PASSED [ 36%] 931s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_cedillas PASSED [ 36%] 931s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_niciun PASSED [ 36%] 931s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_nicio PASSED [ 36%] 931s tests/translate/filters/test_prefilters.py::test_removekdecomments PASSED [ 36%] 931s tests/translate/filters/test_prefilters.py::test_filterwordswithpunctuation PASSED [ 36%] 931s tests/translate/lang/test_af.py::test_sentences PASSED [ 36%] 931s tests/translate/lang/test_af.py::test_capsstart PASSED [ 36%] 931s tests/translate/lang/test_af.py::test_transliterate_cyrillic PASSED [ 36%] 931s tests/translate/lang/test_am.py::test_punctranslate PASSED [ 36%] 931s tests/translate/lang/test_am.py::test_sentences PASSED [ 36%] 931s tests/translate/lang/test_ar.py::test_punctranslate PASSED [ 36%] 931s tests/translate/lang/test_ar.py::test_sentences PASSED [ 36%] 931s tests/translate/lang/test_common.py::test_characters PASSED [ 36%] 931s tests/translate/lang/test_common.py::test_words PASSED [ 36%] 931s tests/translate/lang/test_common.py::test_word_khmer XFAIL (ZWS is n...) [ 36%] 931s tests/translate/lang/test_common.py::test_sentences PASSED [ 36%] 931s tests/translate/lang/test_common.py::test_capsstart PASSED [ 36%] 931s tests/translate/lang/test_common.py::test_numstart PASSED [ 36%] 931s tests/translate/lang/test_common.py::test_punctranslate PASSED [ 36%] 931s tests/translate/lang/test_common.py::test_length_difference PASSED [ 36%] 931s tests/translate/lang/test_common.py::test_alter_length PASSED [ 37%] 931s tests/translate/lang/test_data.py::test_normalise_code PASSED [ 37%] 931s tests/translate/lang/test_data.py::test_simplify_to_common PASSED [ 37%] 931s tests/translate/lang/test_el.py::test_punctranslate PASSED [ 37%] 931s tests/translate/lang/test_el.py::test_sentences PASSED [ 37%] 931s tests/translate/lang/test_es.py::test_punctranslate PASSED [ 37%] 931s tests/translate/lang/test_es.py::test_sentences PASSED [ 37%] 931s tests/translate/lang/test_fa.py::test_punctranslate PASSED [ 37%] 931s tests/translate/lang/test_fa.py::test_sentences PASSED [ 37%] 931s tests/translate/lang/test_factory.py::test_getlanguage PASSED [ 37%] 931s tests/translate/lang/test_factory.py::test_get_all_languages PASSED [ 37%] 931s tests/translate/lang/test_fr.py::test_punctranslate PASSED [ 37%] 931s tests/translate/lang/test_fr.py::test_sentences PASSED [ 37%] 931s tests/translate/lang/test_hy.py::test_punctranslate PASSED [ 37%] 931s tests/translate/lang/test_hy.py::test_sentences PASSED [ 37%] 931s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_lang PASSED [ 37%] 931s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_store PASSED [ 37%] 931s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_bad_init_data PASSED [ 37%] 931s tests/translate/lang/test_ja.py::test_punctranslate PASSED [ 37%] 931s tests/translate/lang/test_ja.py::test_sentences PASSED [ 37%] 932s tests/translate/lang/test_km.py::test_punctranslate PASSED [ 37%] 932s tests/translate/lang/test_km.py::test_sentences PASSED [ 37%] 932s tests/translate/lang/test_ko.py::test_punctranslate PASSED [ 37%] 932s tests/translate/lang/test_ko.py::test_sentences PASSED [ 37%] 932s tests/translate/lang/test_ne.py::test_punctranslate PASSED [ 37%] 932s tests/translate/lang/test_ne.py::test_sentences PASSED [ 37%] 932s tests/translate/lang/test_nqo.py::test_punctranslate PASSED [ 37%] 932s tests/translate/lang/test_nqo.py::test_sentences PASSED [ 37%] 932s tests/translate/lang/test_or.py::test_punctranslate PASSED [ 37%] 932s tests/translate/lang/test_or.py::test_country_code PASSED [ 37%] 932s tests/translate/lang/test_or.py::test_sentences PASSED [ 37%] 932s tests/translate/lang/test_poedit.py::test_isocode PASSED [ 37%] 932s tests/translate/lang/test_ro.py::test_cedillas PASSED [ 37%] 932s tests/translate/lang/test_ro.py::test_niciun PASSED [ 37%] 932s tests/translate/lang/test_scn.py::test_italianisms PASSED [ 38%] 932s tests/translate/lang/test_scn.py::test_vocalism PASSED [ 38%] 932s tests/translate/lang/test_scn.py::test_suffixes PASSED [ 38%] 932s tests/translate/lang/test_team.py::test_simple PASSED [ 38%] 932s tests/translate/lang/test_th.py::test_punctranslate PASSED [ 38%] 932s tests/translate/lang/test_th.py::test_sentences PASSED [ 38%] 932s tests/translate/lang/test_tr.py::test_sentences PASSED [ 38%] 932s tests/translate/lang/test_uk.py::test_sentences PASSED [ 38%] 932s tests/translate/lang/test_vi.py::test_punctranslate PASSED [ 38%] 932s tests/translate/lang/test_vi.py::test_sentences PASSED [ 38%] 932s tests/translate/lang/test_zh.py::test_punctranslate PASSED [ 38%] 932s tests/translate/lang/test_zh.py::test_sentences PASSED [ 38%] 932s tests/translate/misc/test_deprecation.py::TestDeprecation::test_deprecated_decorator PASSED [ 38%] 932s tests/translate/misc/test_deprecation.py::TestDeprecation::test_no_deprecated_decorator PASSED [ 38%] 932s tests/translate/misc/test_dictutils.py::test_cidict_has_key PASSED [ 38%] 932s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor PASSED [ 38%] 932s tests/translate/misc/test_multistring.py::TestMultistring::test_repr PASSED [ 38%] 932s tests/translate/misc/test_multistring.py::TestMultistring::test_replace PASSED [ 38%] 932s tests/translate/misc/test_multistring.py::TestMultistring::test_comparison PASSED [ 38%] 932s tests/translate/misc/test_multistring.py::TestMultistring::test_coercion PASSED [ 38%] 932s tests/translate/misc/test_multistring.py::TestMultistring::test_unicode_coercion PASSED [ 38%] 932s tests/translate/misc/test_multistring.py::TestMultistring::test_list_coercion PASSED [ 38%] 932s tests/translate/misc/test_multistring.py::TestMultistring::test_multistring_hash PASSED [ 38%] 932s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_splitext PASSED [ 38%] 932s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_outputfile_receives_bytes PASSED [ 38%] 932s tests/translate/misc/test_progressbar.py::test_hashprogressbar PASSED [ 38%] 932s tests/translate/misc/test_quote.py::test_find_all PASSED [ 38%] 932s tests/translate/misc/test_quote.py::test_extract PASSED [ 38%] 932s tests/translate/misc/test_quote.py::test_extractwithoutquotes PASSED [ 38%] 932s tests/translate/misc/test_quote.py::test_extractwithoutquotes_passfunc PASSED [ 38%] 932s tests/translate/misc/test_quote.py::test_stripcomment PASSED [ 38%] 932s tests/translate/misc/test_quote.py::TestEncoding::test_javapropertiesencode PASSED [ 38%] 932s tests/translate/misc/test_quote.py::TestEncoding::test_java_utf8_properties_encode PASSED [ 38%] 932s tests/translate/misc/test_quote.py::TestEncoding::test_escapespace PASSED [ 39%] 932s tests/translate/misc/test_quote.py::TestEncoding::test_mozillaescapemarginspaces PASSED [ 39%] 932s tests/translate/misc/test_quote.py::TestEncoding::test_mozilla_control_escapes PASSED [ 39%] 932s tests/translate/misc/test_quote.py::TestEncoding::test_propertiesdecode PASSED [ 39%] 932s tests/translate/misc/test_quote.py::TestEncoding::test_controlchars PASSED [ 39%] 932s tests/translate/misc/test_quote.py::TestEncoding::test_properties_decode_slashu PASSED [ 39%] 932s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding PASSED [ 39%] 932s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_existing_entities PASSED [ 39%] 932s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_passthrough PASSED [ 39%] 932s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_nonentities PASSED [ 39%] 932s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_four_spaces PASSED [ 39%] 932s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_tab PASSED [ 39%] 932s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_distance PASSED [ 39%] 932s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_similarity PASSED [ 39%] 932s tests/translate/search/test_lshtein.py::TestLevenshtein::test_long_similarity PASSED [ 39%] 932s tests/translate/search/test_match.py::TestMatch::test_matching PASSED [ 39%] 932s tests/translate/search/test_match.py::TestMatch::test_multiple_store PASSED [ 39%] 932s tests/translate/search/test_match.py::TestMatch::test_extendtm PASSED [ 39%] 932s tests/translate/search/test_match.py::TestMatch::test_terminology PASSED [ 39%] 932s tests/translate/search/test_match.py::TestMatch::test_brackets PASSED [ 39%] 932s tests/translate/search/test_match.py::TestMatch::test_past_tences PASSED [ 39%] 932s tests/translate/search/test_match.py::TestMatch::test_space_mismatch PASSED [ 39%] 932s tests/translate/search/test_match.py::TestMatch::test_hyphen_mismatch PASSED [ 39%] 932s tests/translate/search/test_terminology.py::TestTerminology::test_basic PASSED [ 39%] 932s tests/translate/services/test_tmserver.py::TestTMServer::test_import PASSED [ 39%] 932s tests/translate/services/test_tmserver.py::TestTMServer::test_server PASSED [ 39%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_isfuzzy PASSED [ 39%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_create PASSED [ 39%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_eq PASSED [ 39%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escapes PASSED [ 39%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_difficult_escapes PASSED [ 39%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_note_sanity PASSED [ 39%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_target PASSED [ 39%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_get PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_set PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quotes_with_newline PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline_in_xml PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_twitter PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quote PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_question PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_double_space PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_leading_space PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_tailing_space PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_xml_entities PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote_newline PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_arrows PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link_and_text PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_blank_string PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_escape_message_with_newline PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_invalid_lang PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_quote PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_leading_space PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_trailing_space PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_with_ampersand PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_double_space PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_deep_double_space PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_complex_xml PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quoted_newlines PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline_in_xml PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_twitter PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_question PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quote PASSED [ 40%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_space PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_space PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_newlines PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_xml_entities PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_code PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_arrows PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link_and_text PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_space PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_spaces PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_spaces PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_newline PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_many_quotes PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string_again PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_quotes_string PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_newline_in_string PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_not_translatable_string PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_newline PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_comments PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_quote PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space_quoted PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space_quoted PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_with_ampersand PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_double_space_quoted PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_deep_double_space_quoted PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_complex_xml PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unicode PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_unescaped PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_alone PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_full PASSED [ 41%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_create_blank PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_remove PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_find PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_parse PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_files PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_save PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_extensions PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_mimetypes PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translate PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_nonascii PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_default_handlings PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_invalid_filename PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_namespaces PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_serialize PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add_formatting PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_invalid_entity PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_indent PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_markup PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_noedit PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_remove PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_set PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_others PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_quotes_set PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_g PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_namespace PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_zh_hk PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_b_zh_hk PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_missing_plural PASSED [ 42%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_removeunit PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_prefix PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_rtl PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_isfuzzy PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_create PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_eq PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_escapes PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_difficult_escapes PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_note_sanity PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_target PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_get PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_set PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_create_blank PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_add PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_remove PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_find PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_parse PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_files PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_save PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_extensions PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_mimetypes PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_translate PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_markup PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_nonascii PASSED [ 43%] 932s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_plural PASSED [ 43%] 932s tests/translate/storage/test_base.py::TestTranslationUnit::test_isfuzzy PASSED [ 43%] 932s tests/translate/storage/test_base.py::TestTranslationUnit::test_create PASSED [ 43%] 932s tests/translate/storage/test_base.py::TestTranslationUnit::test_eq PASSED [ 43%] 932s tests/translate/storage/test_base.py::TestTranslationUnit::test_target PASSED [ 43%] 932s tests/translate/storage/test_base.py::TestTranslationUnit::test_escapes PASSED [ 43%] 932s tests/translate/storage/test_base.py::TestTranslationUnit::test_difficult_escapes PASSED [ 43%] 932s tests/translate/storage/test_base.py::TestTranslationUnit::test_note_sanity PASSED [ 43%] 932s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_get PASSED [ 44%] 932s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_set PASSED [ 44%] 932s tests/translate/storage/test_base.py::TestTranslationStore::test_create_blank PASSED [ 44%] 932s tests/translate/storage/test_base.py::TestTranslationStore::test_add PASSED [ 44%] 932s tests/translate/storage/test_base.py::TestTranslationStore::test_remove PASSED [ 44%] 932s tests/translate/storage/test_base.py::TestTranslationStore::test_find PASSED [ 44%] 932s tests/translate/storage/test_base.py::TestTranslationStore::test_translate PASSED [ 44%] 932s tests/translate/storage/test_base.py::TestTranslationStore::test_parse PASSED [ 44%] 932s tests/translate/storage/test_base.py::TestTranslationStore::test_files PASSED [ 44%] 932s tests/translate/storage/test_base.py::TestTranslationStore::test_save PASSED [ 44%] 932s tests/translate/storage/test_base.py::TestTranslationStore::test_markup PASSED [ 44%] 932s tests/translate/storage/test_base.py::TestTranslationStore::test_nonascii PASSED [ 44%] 932s tests/translate/storage/test_base.py::TestTranslationStore::test_extensions PASSED [ 44%] 932s tests/translate/storage/test_base.py::TestTranslationStore::test_mimetypes PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_isfuzzy PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_create PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_eq PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_target PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_escapes PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_get PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_set PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_difficult_escapes PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_newlines PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_istranslated PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_note_sanity PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_create_blank PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_add PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_remove PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_find PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_translate PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_parse PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_files PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_save PASSED [ 44%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_markup PASSED [ 45%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_nonascii PASSED [ 45%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_extensions PASSED [ 45%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_mimetypes PASSED [ 45%] 932s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_checksum PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_isfuzzy PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_create PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_eq PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_target PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_escapes PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_difficult_escapes PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_note_sanity PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_get PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_set PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_create_blank PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_add PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_remove PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_find PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_translate PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_files PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_save PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_markup PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_nonascii PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_extensions PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_mimetypes PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_singlequoting PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8 PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_dialect PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_sig PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_default PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_location_is_parsed PASSED [ 45%] 932s tests/translate/storage/test_csvl10n.py::TestCSV::test_context_is_parsed PASSED [ 45%] 933s tests/translate/storage/test_csvl10n.py::TestCSV::test_newline PASSED [ 45%] 933s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse_sample PASSED [ 46%] 933s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_detection PASSED [ 46%] 933s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding PASSED [ 46%] 933s tests/translate/storage/test_csvl10n.py::TestCSV::test_corrupt PASSED [ 46%] 933s tests/translate/storage/test_directory.py::TestDirectory::test_created PASSED [ 46%] 933s tests/translate/storage/test_directory.py::TestDirectory::test_basic PASSED [ 46%] 933s tests/translate/storage/test_directory.py::TestDirectory::test_structure PASSED [ 46%] 933s tests/translate/storage/test_directory.py::TestDirectory::test_getunits PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::test_roundtrip_quoting PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases XFAIL [ 46%] 933s tests/translate/storage/test_dtd.py::test_quotefordtd PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases XFAIL [ 46%] 933s tests/translate/storage/test_dtd.py::test_unquotefromdtd PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::test_android_roundtrip_quoting PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::test_quoteforandroid PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::test_unquotefromandroid PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::test_removeinvalidamp PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::TestDTDUnit::test_isfuzzy PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::TestDTDUnit::test_create PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::TestDTDUnit::test_eq PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::TestDTDUnit::test_escapes PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::TestDTDUnit::test_difficult_escapes PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::TestDTDUnit::test_note_sanity PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::TestDTDUnit::test_target PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_get PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_set PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_create_blank PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_add PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_remove PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_find PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_parse PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_files PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_save PASSED [ 46%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_extensions PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_mimetypes PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_translate PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_markup PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_nonascii PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_blanklines PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity_source PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_hashcomment_source PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_commentclosing PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_commententity PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_newlines_in_entity PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_conflate_comments PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_localisation_notes PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_in_source PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_order_in_source PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_comment_following XFAIL [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_comment_newline_space_closing PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting XFAIL [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_missing_quotes PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping_roundtrip PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_create_blank PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_add PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_remove PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_find PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_parse PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_files PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_save PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_extensions PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_mimetypes PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_translate PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_markup PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_nonascii PASSED [ 47%] 933s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape PASSED [ 48%] 933s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape_parse_and_convert_back PASSED [ 48%] 933s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape PASSED [ 48%] 933s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape_parse_and_convert_back PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestPOFactory::test_getclass PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject_store PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestPOFactory::test_get_noname_object PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestPOFactory::test_gzfile PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestPOFactory::test_bz2file PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestPOFactory::test_directory PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestXliffFactory::test_getclass PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject_store PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestXliffFactory::test_get_noname_object PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestXliffFactory::test_gzfile PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestXliffFactory::test_bz2file PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestXliffFactory::test_directory PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getclass PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject_store PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_get_noname_object PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_gzfile PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_bz2file PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_directory PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getclass PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject_store PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestWordfastFactory::test_get_noname_object PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestWordfastFactory::test_gzfile PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestWordfastFactory::test_bz2file PASSED [ 48%] 933s tests/translate/storage/test_factory.py::TestWordfastFactory::test_directory PASSED [ 48%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_isfuzzy PASSED [ 48%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_create PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_eq PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_escapes PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_difficult_escapes PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_note_sanity PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_target PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_get PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_set PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_create_blank PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_add PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_remove PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_find PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_parse PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_files PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_save PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_extensions PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_mimetypes PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_translate PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_markup PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_nonascii PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_root_config_detect PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_detect PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_key_config_detect PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_mixed_ok PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_namespace_config_detect PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_four_spaces PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_tab PASSED [ 49%] 933s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_none_linearizes PASSED [ 49%] 933s tests/translate/storage/test_html.py::test_guess_encoding PASSED [ 49%] 933s tests/translate/storage/test_html.py::TestHTMLParsing::test_mismatched_tags PASSED [ 49%] 933s tests/translate/storage/test_html.py::TestHTMLParsing::test_self_closing_tags PASSED [ 49%] 933s tests/translate/storage/test_html.py::TestHTMLParsing::test_escaping_script_and_pre PASSED [ 49%] 933s tests/translate/storage/test_html.py::TestHTMLExtraction::test_strip_html PASSED [ 49%] 933s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_figcaption PASSED [ 50%] 933s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_caption_td_th PASSED [ 50%] 933s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_alt PASSED [ 50%] 933s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_title PASSED [ 50%] 933s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre PASSED [ 50%] 933s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre_code PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIUnit::test_isfuzzy PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIUnit::test_create PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIUnit::test_eq PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIUnit::test_escapes PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIUnit::test_difficult_escapes PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIUnit::test_note_sanity PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIUnit::test_target PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_get PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_set PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIStore::test_create_blank PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIStore::test_add PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIStore::test_remove PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIStore::test_find PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIStore::test_parse PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIStore::test_files PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIStore::test_save PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIStore::test_extensions PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIStore::test_mimetypes PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIStore::test_translate PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIStore::test_markup PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIStore::test_nonascii PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIStore::test_serialize PASSED [ 50%] 933s tests/translate/storage/test_ini.py::TestINIStore::test_rem PASSED [ 50%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_isfuzzy PASSED [ 50%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_create PASSED [ 50%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_eq PASSED [ 50%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_escapes PASSED [ 50%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_difficult_escapes PASSED [ 50%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_note_sanity PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_target PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_get PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_set PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_create_blank PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_remove PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_find PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_parse PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_files PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_save PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_extensions PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_mimetypes PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_translate PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_markup PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_nonascii PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_serialize PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_can_not_detect PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_error PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_filter PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_ordering PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_args PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_bom PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex_array PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_list_like PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_blank PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_types PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_null PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_isfuzzy PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_create PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_eq PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_escapes PASSED [ 51%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_difficult_escapes PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_note_sanity PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_target PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_get PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_set PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_serialize PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_ordering PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_array PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index_nested PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_nested_list_mixed PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_list_to_dict PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_complex_keys PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_other PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0]-expected0] PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0]-expected1] PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0][1][2][3]-expected2] PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test]selection-expected3] PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test][0]selection-expected4] PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0][test]selection-expected5] PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[-expected6] PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_isfuzzy PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_create PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_eq PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_escapes PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_difficult_escapes PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_note_sanity PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_target PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_get PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_set PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_create_blank PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_add PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_remove PASSED [ 52%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_find PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_parse PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_files PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_save PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_extensions PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_mimetypes PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_translate PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_markup PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_nonascii PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize_no_description PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_set_target PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_placeholders PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_create_blank PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_add PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_remove PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_find PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_parse PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_files PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_save PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_extensions PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_mimetypes PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_translate PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_markup PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nonascii PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_serialize PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_units PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_plurals PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nested_array PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural_id PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_create_blank PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_add PASSED [ 53%] 933s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_remove PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_find PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_parse PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_files PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_save PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_extensions PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_mimetypes PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_translate PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_markup PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_nonascii PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals_missing PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_case_no_msg PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_complex_id PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_create_blank PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_add PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_remove PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_find PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_parse PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_files PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_save PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_extensions PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_mimetypes PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_translate PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_markup PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nonascii PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_serialize PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_units PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_plurals PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nested_array PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_new_plural PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_ru PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_create_blank PASSED [ 54%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_add PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_remove PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_find PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_parse PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_files PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_save PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_extensions PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_mimetypes PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_translate PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_markup PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nonascii PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_serialize PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_units PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_plurals PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nested_array PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_new_plural PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_ru PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_create_blank PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_add PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_remove PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_find PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_parse PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_files PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_save PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_extensions PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_mimetypes PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_translate PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_markup PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_nonascii PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals_missing PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_invalid PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_create_blank PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_add PASSED [ 55%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_remove PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_find PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_parse PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_files PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_save PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_extensions PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_mimetypes PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_translate PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_markup PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_nonascii PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_1 PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_2 PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_blank PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_missing PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_simplification PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_invalid PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_create_blank PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_add PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_remove PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_find PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_parse PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_files PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_save PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_extensions PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_mimetypes PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_translate PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_markup PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_nonascii PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_roundtrip PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_create_blank PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_add PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_remove PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_find PASSED [ 56%] 933s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_parse PASSED [ 57%] 933s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_files PASSED [ 57%] 933s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_save PASSED [ 57%] 933s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_extensions PASSED [ 57%] 933s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_mimetypes PASSED [ 57%] 933s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_translate PASSED [ 57%] 933s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_markup PASSED [ 57%] 933s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_nonascii PASSED [ 57%] 933s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_roundtrip PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_atx_heading PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_autolink PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_block_quote PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_block PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_span PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_atx_heading PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_document PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_list_item PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_escaped_character PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_hard_line_break PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_block PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_character_entities PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_span PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_image_embedded_in_link PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_collapsed_reference_link PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_full_reference_link PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_shortcut_reference_link PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_merging_of_adjacent_placeholders PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_block_tokens PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_list PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_basic_markup PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_only_whitespace_and_placeholders PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_placeholder_trimming PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image_no_title PASSED [ 57%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_link PASSED [ 58%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_text_paragraph PASSED [ 58%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_remove_placeholders_from_both_ends_of_translation_units PASSED [ 58%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_setext_heading PASSED [ 58%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_table_with_header PASSED [ 58%] 933s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_thematic_break PASSED [ 58%] 933s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_hard_line_break_in_translation_unit PASSED [ 58%] 933s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_missing_placeholder PASSED [ 58%] 933s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_duplicate_placeholder PASSED [ 58%] 933s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_extraneous_placeholder PASSED [ 58%] 933s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_reordered_placeholders PASSED [ 58%] 933s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_invalid_markdown_in_translation PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOUnit::test_isfuzzy PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOUnit::test_create PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOUnit::test_eq PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOUnit::test_target PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOUnit::test_escapes PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOUnit::test_difficult_escapes PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOUnit::test_note_sanity PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_get PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_set PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOUnit::test_context PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOFile::test_create_blank PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOFile::test_add PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOFile::test_remove PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOFile::test_find PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOFile::test_translate PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOFile::test_parse PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOFile::test_files PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOFile::test_save PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOFile::test_markup PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOFile::test_nonascii PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOFile::test_extensions PASSED [ 58%] 933s tests/translate/storage/test_mo.py::TestMOFile::test_mimetypes PASSED [ 59%] 933s tests/translate/storage/test_mo.py::TestMOFile::test_language PASSED [ 59%] 933s tests/translate/storage/test_mo.py::TestMOFile::test_context PASSED [ 59%] 933s tests/translate/storage/test_mo.py::TestMOFile::test_output PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_isfuzzy PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_create PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_eq PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_escapes PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_difficult_escapes PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_note_sanity PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_target PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_get PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_set PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_create_blank PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_add PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_remove PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_find PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_parse PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_files PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_save PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_extensions PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_mimetypes PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_translate PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_markup PASSED [ 59%] 933s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_nonascii PASSED [ 59%] 933s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[-] PASSED [ 59%] 933s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String-String] PASSED [ 59%] 933s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 59%] 933s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {OK}-String] PASSED [ 59%] 933s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[\u015e\u0167\u0159\u012b\u019e\u0260 {ok}-\u015e\u0167\u0159\u012b\u019e\u0260] PASSED [ 59%] 933s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{ok}-String] PASSED [ 59%] 933s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{OK}-String] PASSED [ 59%] 933s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 59%] 933s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok} -String] PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_isfuzzy PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_create PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_eq PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_target PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_escapes PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_difficult_escapes PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_note_sanity PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_get PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_set PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_translate_but_same PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_untranslated PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_comments PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_copy_target PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_create_blank PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_add PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_remove PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_find PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_translate PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_parse PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_files PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_save PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_markup PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_extensions PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_mimetypes PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_nonascii PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_format_layout PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_crlf PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_active_flag PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_multiline_comments PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_template PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[--False] PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ -Source -True] PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok}-Source-True] PASSED [ 60%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok} -Source-True] PASSED [ 61%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[{ok}-Source-True] PASSED [ 61%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_headers PASSED [ 61%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_not_headers PASSED [ 61%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[0] PASSED [ 61%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[1] PASSED [ 61%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[2] PASSED [ 61%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[3] PASSED [ 61%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_tag_comments PASSED [ 61%] 933s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_maxlength PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtUnit::test_isfuzzy PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtUnit::test_create PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtUnit::test_eq PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtUnit::test_target PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtUnit::test_escapes PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtUnit::test_difficult_escapes PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtUnit::test_note_sanity PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_get PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_set PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtFile::test_create_blank PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtFile::test_add PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtFile::test_remove PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtFile::test_find PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtFile::test_translate PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtFile::test_parse PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtFile::test_files PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtFile::test_save PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtFile::test_markup PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtFile::test_nonascii PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtFile::test_mimetypes PASSED [ 61%] 933s tests/translate/storage/test_omegat.py::TestOtFile::test_extensions XFAIL [ 61%] 933s tests/translate/storage/test_oo.py::test_makekey PASSED [ 61%] 933s tests/translate/storage/test_oo.py::test_escape_help_text PASSED [ 61%] 933s tests/translate/storage/test_oo.py::TestOO::test_simpleentry PASSED [ 62%] 933s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_quickhelptest PASSED [ 62%] 933s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_title PASSED [ 62%] 933s tests/translate/storage/test_oo.py::TestOO::test_blankline PASSED [ 62%] 933s tests/translate/storage/test_oo.py::TestOO::test_fieldlength PASSED [ 62%] 933s tests/translate/storage/test_oo.py::TestOO::test_escapes PASSED [ 62%] 933s tests/translate/storage/test_php.py::test_php_escaping_single_quote PASSED [ 62%] 933s tests/translate/storage/test_php.py::test_php_escaping_double_quote PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpUnit::test_isfuzzy PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpUnit::test_create PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpUnit::test_eq PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpUnit::test_escapes PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpUnit::test_note_sanity PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpUnit::test_target PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_get PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_set PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpUnit::test_difficult_escapes PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_create_blank PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_add PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_remove PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_find PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parse PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_files PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_save PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_extensions PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_mimetypes PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_translate PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_markup PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_nonascii PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_source PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_spaces_in_name PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_comment_definition PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_comment_blocks PASSED [ 62%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_comment_output PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_comment_add PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_multiline PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_no_array_syntax PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_spaces PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_non_textual PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define_with_spaces_before_key PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter_and_before_key PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equal_delimiter PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equaldel_but_before_key PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_entries_with_quotes PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_comments_at_entry_line_end PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_double_slash_comments_before_entries PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_before_end_delimiter PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simpledefinition_spaces_before_end_delimiter PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_no_trailing_comma PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_space_before_comma PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_space_before_array_declaration PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_declared_in_a_single_line PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys_assigned_to_array PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_no_keys PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_assignment_in_line_where_multiline_comment_ends PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_using_short_array_syntax PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_space_before_array_declaration PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_unnamed_nested_arrays PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_array_declaration_in_next_line PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_with_newline_after_delimiter PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_blank_entries PASSED [ 63%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_slashstar_in_string PASSED [ 64%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_heredoc_syntax PASSED [ 64%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_after_define PASSED [ 64%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_quotes PASSED [ 64%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_concatenation PASSED [ 64%] 933s tests/translate/storage/test_php.py::TestPhpFile::test_serialize PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestPhpFile::test_space_before_comma PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestPhpFile::test_equals_in_id PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestPhpFile::test_comma_in_string PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestPhpFile::test_nowdoc PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestPhpFile::test_plain_concatenation PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestPhpFile::test_array_keys PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestPhpFile::test_double_var PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestPhpFile::test_return_array PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short_quotes PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestPhpFile::test_addunit PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_isfuzzy PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_create PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_eq PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_escapes PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_difficult_escapes PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_note_sanity PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_target PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_get PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_set PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_create_blank PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_add PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_remove PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_find PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_parse PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_files PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_save PASSED [ 64%] 934s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_extensions PASSED [ 65%] 934s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_mimetypes PASSED [ 65%] 934s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_translate PASSED [ 65%] 934s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_markup PASSED [ 65%] 934s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_nonascii PASSED [ 65%] 934s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_plurals PASSED [ 65%] 934s tests/translate/storage/test_po.py::test_roundtrip_quoting PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_isfuzzy PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_create PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_eq PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_target PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_escapes PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_difficult_escapes PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_note_sanity PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_rich_get PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_rich_set PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_istranslatable PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_locations PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_nongettext_location PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_adding_empty_note PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_markreview PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_errors PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_no_plural_settarget PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_wrapping_bug PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_extract_msgidcomments_from_text PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_isheader PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOUnit::test_buildfromunit PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOFile::test_create_blank PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOFile::test_add PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOFile::test_remove PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOFile::test_find PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOFile::test_translate PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOFile::test_parse PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOFile::test_files PASSED [ 65%] 934s tests/translate/storage/test_po.py::TestPOFile::test_save PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_markup PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_nonascii PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_extensions PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_mimetypes PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_context_only PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_simpleentry PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_copy PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_parse_source_string PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_parse_file PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_unicode PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_plurals PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_plural_unicode PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_nongettext_location PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_percent_location PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals XFAIL [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_empty_lines_notes PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_fuzzy PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated XFAIL [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_merging_automaticcomments PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_malformed_units PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_malformed_obsolete_units PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_uniforum_po PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_obsolete PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_obsolete_with_prev_msgid PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_header_escapes PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_plural PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgctxt PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgidcomments PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_multiline_obsolete PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_merge_duplicates PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_merge_mixed_sources PASSED [ 66%] 934s tests/translate/storage/test_po.py::TestPOFile::test_parse_context PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_parse_advanced_context PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_kde_context PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_broken_kde_context PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_id PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments_2 PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_final_slash PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_unfinished_lines PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_encoding_change PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_istranslated PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_wrapping PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_wrapping_cjk PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_wrap_emoji PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis XFAIL [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_wrap_gettext PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_msgidcomments PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_unicode_ids PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_syntax_error PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_invalid PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_wrapped_msgid PASSED [ 67%] 934s tests/translate/storage/test_po.py::TestPOFile::test_missing_plural PASSED [ 67%] 934s tests/translate/storage/test_pocommon.py::test_roundtrip_quote_plus PASSED [ 67%] 934s tests/translate/storage/test_poheader.py::test_parseheaderstring PASSED [ 67%] 934s tests/translate/storage/test_poheader.py::test_update PASSED [ 67%] 934s tests/translate/storage/test_poheader.py::test_po_dates PASSED [ 67%] 934s tests/translate/storage/test_poheader.py::test_timezones PASSED [ 67%] 934s tests/translate/storage/test_poheader.py::test_header_blank PASSED [ 67%] 934s tests/translate/storage/test_poheader.py::test_plural_equation PASSED [ 67%] 934s tests/translate/storage/test_poheader.py::test_plural_equation_across_lines PASSED [ 67%] 934s tests/translate/storage/test_poheader.py::test_updatecontributor PASSED [ 67%] 934s tests/translate/storage/test_poheader.py::test_updatecontributor_header PASSED [ 67%] 934s tests/translate/storage/test_poheader.py::test_language PASSED [ 67%] 934s tests/translate/storage/test_poheader.py::test_project PASSED [ 67%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_isfuzzy PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_create PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_eq PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_target PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_escapes PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_difficult_escapes PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_note_sanity PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_get PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_set PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_markreview PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_errors PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_accepted_control_chars PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_unaccepted_control_chars PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_plurals PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_ids PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_create_blank PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_remove PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_find PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_translate PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_files PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_save PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_markup PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_nonascii PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_extensions PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_mimetypes PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_basic PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_namespace PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_source PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_target PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_source PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_target PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_sourcelanguage PASSED [ 68%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage PASSED [ 69%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage_multi PASSED [ 69%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_alttrans PASSED [ 69%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_fuzzy PASSED [ 69%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_xml_space PASSED [ 69%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parsing PASSED [ 69%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_entities PASSED [ 69%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_multiple_filenodes PASSED [ 69%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_indent PASSED [ 69%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add_target PASSED [ 69%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve PASSED [ 69%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_closing_tags PASSED [ 69%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_context_groups PASSED [ 69%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_getlocations PASSED [ 69%] 934s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_addlocation PASSED [ 69%] 935s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_huge PASSED [ 69%] 935s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve_add PASSED [ 69%] 935s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse PASSED [ 69%] 935s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse_plural_alpha_id PASSED [ 69%] 935s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_notes PASSED [ 69%] 935s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_plural PASSED [ 69%] 935s tests/translate/storage/test_properties.py::test_find_delimiter_pos_simple PASSED [ 69%] 935s tests/translate/storage/test_properties.py::test_find_delimiter_pos_multiple PASSED [ 69%] 935s tests/translate/storage/test_properties.py::test_find_delimiter_pos_none PASSED [ 69%] 935s tests/translate/storage/test_properties.py::test_find_delimiter_pos_whitespace PASSED [ 69%] 935s tests/translate/storage/test_properties.py::test_find_delimiter_pos_escapes PASSED [ 69%] 935s tests/translate/storage/test_properties.py::test_is_line_continuation PASSED [ 69%] 935s tests/translate/storage/test_properties.py::test_key_strip PASSED [ 69%] 935s tests/translate/storage/test_properties.py::test_get_comment_one_line PASSED [ 69%] 935s tests/translate/storage/test_properties.py::test_get_comment_start PASSED [ 69%] 935s tests/translate/storage/test_properties.py::test_get_comment_end PASSED [ 69%] 935s tests/translate/storage/test_properties.py::TestPropUnit::test_isfuzzy PASSED [ 69%] 935s tests/translate/storage/test_properties.py::TestPropUnit::test_create PASSED [ 69%] 935s tests/translate/storage/test_properties.py::TestPropUnit::test_eq PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestPropUnit::test_escapes PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestPropUnit::test_difficult_escapes PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestPropUnit::test_note_sanity PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestPropUnit::test_target PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_get PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_set PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_create_blank PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_add PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_remove PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_find PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_parse PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_files PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_save PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_extensions PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_mimetypes PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_translate PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_markup PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_nonascii PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_quotes PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_simpledefinition PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition_source PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_reduce PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_increase PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_extra_plurals PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_non_plurals PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestGwtProp::test_encoding PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestProp::test_create_blank PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestProp::test_add PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestProp::test_remove PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestProp::test_find PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestProp::test_parse PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestProp::test_files PASSED [ 70%] 935s tests/translate/storage/test_properties.py::TestProp::test_save PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_extensions PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_mimetypes PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_translate PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_markup PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_nonascii PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition_source PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_controlutf8_source PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_control_source PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_unicode_escaping PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_newlines_startend PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_space PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_whitespace_handling PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_key_value_delimiters_simple PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_comments PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_latin1 PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_fullspec_delimiters PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_fullspec_escaped_key PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_fullspec_line_continuation PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_fullspec_key_without_value PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_mac_strings PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_utf_16_save PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_mac_multiline_strings PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_unicode PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_utf8 PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_newlines PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_multilines_comments PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments_dropping PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_quotes PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_equals PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_serialization PASSED [ 71%] 935s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_double_backslashes PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestProp::test_override_encoding PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestProp::test_trailing_comments PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestProp::test_utf16_byte_order_mark PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestProp::test_raise_ioerror_if_cannot_detect_encoding PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestProp::test_utf8_byte_order_mark PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestProp::test_joomla_set_target PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestProp::test_joomla PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestProp::test_joomla_escape PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_delimiter PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_value PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestProp::test_multi_comments PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestProp::test_serialize_note PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestProp::test_serialize_long_note PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_create_blank PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_add PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_remove PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_find PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_parse PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_files PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_save PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_extensions PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_mimetypes PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_translate PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_markup PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_nonascii PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_simpledefinition PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition_source PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote_and_argument PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_header_preserved PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_blank_line_before_comment_preserved PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWiki::test_deprecated_comments_preserved PASSED [ 72%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_create_blank PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_add PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_remove PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_find PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_parse PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_files PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_save PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_extensions PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_mimetypes PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_markup PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_nonascii PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_simpledefinition PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition_source PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote_and_argument PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_encoded_html PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_cleaning_attributes PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate_source PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_create_blank PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_add PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_find PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_extensions PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_mimetypes PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_translate PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_markup PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_nonascii PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_simpledefinition PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_parse PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_files PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_save PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_cleaning_attributes PASSED [ 73%] 935s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove XFAIL [ 74%] 935s tests/translate/storage/test_pypo.py::TestHelpers::test_unescape PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo_escaped_quotes PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isfuzzy PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_create PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_eq PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_target PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_escapes PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_difficult_escapes PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_note_sanity PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_get PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_set PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_istranslatable PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_locations PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_nongettext_location PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_adding_empty_note PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_markreview PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_errors PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_no_plural_settarget PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrapping_bug PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_extract_msgidcomments_from_text PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isheader PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_buildfromunit PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plurals PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plural_reduction PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes_withcomments PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_firstlines PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_newlines PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_max_line_length PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_slash PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_spacing_max_line PASSED [ 74%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_create_blank PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_add PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_remove PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_find PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_translate PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_files PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_save PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_markup PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nonascii PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_extensions PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mimetypes PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_context_only PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_simpleentry PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_copy PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_source_string PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_file PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plurals PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plural_unicode PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nongettext_location PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_percent_location PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals XFAIL [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_empty_lines_notes PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_fuzzy PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated XFAIL [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merging_automaticcomments PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_units PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_obsolete_units PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_uniforum_po PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete_with_prev_msgid PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_header_escapes PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete PASSED [ 75%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_plural PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgctxt PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgidcomments PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_multiline_obsolete PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_mixed_sources PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_context PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_advanced_context PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_context PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_broken_kde_context PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_id PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments_2 PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_final_slash PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unfinished_lines PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_encoding_change PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_istranslated PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping_cjk PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_emoji PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis XFAIL [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_gettext PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_msgidcomments PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_ids PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_syntax_error PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapped_msgid PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_missing_plural PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_combine_msgidcomments PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates_msgctxt PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_blanks PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_output_str_unicode PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_posections PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_typecomments PASSED [ 76%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unassociated_comments PASSED [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_header PASSED [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_prevmsgid_parse PASSED [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap PASSED [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_newlines PASSED [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unix_newlines PASSED [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines PASSED [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mac_newlines PASSED [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines PASSED [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_header PASSED [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_comment PASSED [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_bom PASSED [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_long_msgidcomments PASSED [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_incomplete PASSED [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_invalid PASSED [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_write PASSED [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment XFAIL [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_typecomment PASSED [ 77%] 935s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_custom PASSED [ 77%] 935s tests/translate/storage/test_qm.py::TestQtUnit::test_isfuzzy PASSED [ 77%] 935s tests/translate/storage/test_qm.py::TestQtUnit::test_create PASSED [ 77%] 935s tests/translate/storage/test_qm.py::TestQtUnit::test_eq PASSED [ 77%] 935s tests/translate/storage/test_qm.py::TestQtUnit::test_target PASSED [ 77%] 935s tests/translate/storage/test_qm.py::TestQtUnit::test_escapes PASSED [ 77%] 935s tests/translate/storage/test_qm.py::TestQtUnit::test_difficult_escapes PASSED [ 77%] 935s tests/translate/storage/test_qm.py::TestQtUnit::test_note_sanity PASSED [ 77%] 935s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_get PASSED [ 77%] 935s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_set PASSED [ 77%] 935s tests/translate/storage/test_qm.py::TestQtFile::test_create_blank PASSED [ 77%] 935s tests/translate/storage/test_qm.py::TestQtFile::test_find PASSED [ 77%] 935s tests/translate/storage/test_qm.py::TestQtFile::test_translate PASSED [ 77%] 935s tests/translate/storage/test_qm.py::TestQtFile::test_markup PASSED [ 77%] 935s tests/translate/storage/test_qm.py::TestQtFile::test_extensions PASSED [ 77%] 935s tests/translate/storage/test_qm.py::TestQtFile::test_mimetypes PASSED [ 77%] 935s tests/translate/storage/test_qm.py::TestQtFile::test_parse PASSED [ 78%] 935s tests/translate/storage/test_qm.py::TestQtFile::test_save PASSED [ 78%] 935s tests/translate/storage/test_qm.py::TestQtFile::test_files PASSED [ 78%] 935s tests/translate/storage/test_qm.py::TestQtFile::test_nonascii PASSED [ 78%] 935s tests/translate/storage/test_qm.py::TestQtFile::test_add PASSED [ 78%] 935s tests/translate/storage/test_qm.py::TestQtFile::test_remove PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphUnit::test_isfuzzy PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphUnit::test_create PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphUnit::test_eq PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphUnit::test_target PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphUnit::test_escapes PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphUnit::test_difficult_escapes PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphUnit::test_note_sanity PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_get PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_set PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphFile::test_create_blank PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphFile::test_add PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphFile::test_remove PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphFile::test_find PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphFile::test_translate PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphFile::test_parse PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphFile::test_files PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphFile::test_save PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphFile::test_markup PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphFile::test_nonascii PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphFile::test_extensions PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphFile::test_mimetypes PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphFile::test_basic PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphFile::test_source PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphFile::test_target PASSED [ 78%] 935s tests/translate/storage/test_qph.py::TestQphFile::test_language PASSED [ 78%] 935s tests/translate/storage/test_rc.py::test_escaping PASSED [ 78%] 935s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_comments PASSED [ 78%] 935s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_textinclude PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_parse_dialog PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_parse_stringtable PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_lf PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_crlf PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_cr PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_parse_no_language PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_multiline PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_str PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_empty PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_utf_8 PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_utf_16 PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_comment PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_stringtables PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude_appstudio PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_id_whitespace PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_menu_comment PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_decompiled PASSED [ 79%] 936s tests/translate/storage/test_rc.py::TestRcFile::test_quotes PASSED [ 79%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_isfuzzy PASSED [ 79%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_create PASSED [ 79%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_eq PASSED [ 79%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_escapes PASSED [ 79%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_difficult_escapes PASSED [ 79%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_note_sanity PASSED [ 79%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_target PASSED [ 79%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_get PASSED [ 79%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_set PASSED [ 79%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_create_blank PASSED [ 79%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_add PASSED [ 79%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_remove PASSED [ 79%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_find PASSED [ 79%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_parse PASSED [ 80%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_files PASSED [ 80%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_save PASSED [ 80%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_extensions PASSED [ 80%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_mimetypes PASSED [ 80%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_translate PASSED [ 80%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_markup PASSED [ 80%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_nonascii PASSED [ 80%] 936s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_roundtrip PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnit::test_isfuzzy PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnit::test_create PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnit::test_eq PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnit::test_escapes PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnit::test_difficult_escapes PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnit::test_note_sanity PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnit::test_target PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_get PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_set PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_isfuzzy PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_create PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_eq PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_escapes PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_difficult_escapes PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_note_sanity PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_target PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_get PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_set PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit_comment PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXfile::test_create_blank PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXfile::test_add PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXfile::test_remove PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXfile::test_find PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXfile::test_parse PASSED [ 80%] 936s tests/translate/storage/test_resx.py::TestRESXfile::test_files PASSED [ 81%] 936s tests/translate/storage/test_resx.py::TestRESXfile::test_save PASSED [ 81%] 936s tests/translate/storage/test_resx.py::TestRESXfile::test_extensions PASSED [ 81%] 936s tests/translate/storage/test_resx.py::TestRESXfile::test_mimetypes PASSED [ 81%] 936s tests/translate/storage/test_resx.py::TestRESXfile::test_translate PASSED [ 81%] 936s tests/translate/storage/test_resx.py::TestRESXfile::test_markup PASSED [ 81%] 936s tests/translate/storage/test_resx.py::TestRESXfile::test_nonascii PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_isfuzzy PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_create PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_escapes PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_difficult_escapes PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_note_sanity PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_target PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_get PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_set PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_source PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq_formatvaluetype PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_innerkey PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_create_blank PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_remove PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_find PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_parse PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_files PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_save PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_extensions PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_mimetypes PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_translate PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_markup PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_nonascii PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_serialize PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_default_handlings PASSED [ 81%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename PASSED [ 82%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_base_filename PASSED [ 82%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 82%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_plural_zero_always_set PASSED [ 82%] 936s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add_unit PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_isfuzzy PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_create PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_eq PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_escapes PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_difficult_escapes PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_target PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_get PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_set PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity XFAIL [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_create_blank PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_add PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_remove PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_find PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_parse PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_files PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_save PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_extensions PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_mimetypes PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_translate PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_markup PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_nonascii PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_create_blank PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_add PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_remove PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_find PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_parse PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_files PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_save PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_extensions PASSED [ 82%] 936s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_mimetypes PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_translate PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_markup PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_nonascii PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_create_blank PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_add PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_remove PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_find PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_parse PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_files PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_save PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_extensions PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_mimetypes PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_translate PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_markup PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_nonascii PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_create_blank PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_add PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_remove PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_find PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_parse PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_files PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_save PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_extensions PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_mimetypes PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_translate PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_markup PASSED [ 83%] 936s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_nonascii PASSED [ 83%] 936s tests/translate/storage/test_tbx.py::TestTBXUnit::test_isfuzzy PASSED [ 83%] 936s tests/translate/storage/test_tbx.py::TestTBXUnit::test_create PASSED [ 83%] 936s tests/translate/storage/test_tbx.py::TestTBXUnit::test_eq PASSED [ 83%] 936s tests/translate/storage/test_tbx.py::TestTBXUnit::test_target PASSED [ 83%] 936s tests/translate/storage/test_tbx.py::TestTBXUnit::test_escapes PASSED [ 83%] 936s tests/translate/storage/test_tbx.py::TestTBXUnit::test_difficult_escapes PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXUnit::test_note_sanity PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_get PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_set PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_create_blank PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_add PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_remove PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_find PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_translate PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_parse PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_files PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_save PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_markup PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_nonascii PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_extensions PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_mimetypes PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_basic PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_source PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_target PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_setid PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_indent PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_descrip PASSED [ 84%] 936s tests/translate/storage/test_tbx.py::TestTBXfile::test_note_from PASSED [ 84%] 936s tests/translate/storage/test_tiki.py::TestTikiUnit::test_locations PASSED [ 84%] 936s tests/translate/storage/test_tiki.py::TestTikiUnit::test_to_unicode PASSED [ 84%] 936s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_simple PASSED [ 84%] 936s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_encode PASSED [ 84%] 936s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_locations PASSED [ 84%] 936s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_ignore_extras PASSED [ 84%] 936s tests/translate/storage/test_tmx.py::TestTMXUnit::test_isfuzzy PASSED [ 84%] 936s tests/translate/storage/test_tmx.py::TestTMXUnit::test_create PASSED [ 84%] 936s tests/translate/storage/test_tmx.py::TestTMXUnit::test_eq PASSED [ 84%] 936s tests/translate/storage/test_tmx.py::TestTMXUnit::test_target PASSED [ 84%] 936s tests/translate/storage/test_tmx.py::TestTMXUnit::test_escapes PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXUnit::test_difficult_escapes PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXUnit::test_note_sanity PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_get PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_set PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_isfuzzy PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_create PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_eq PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_target PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_escapes PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_difficult_escapes PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_note_sanity PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_get PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_set PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXfile::test_create_blank PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXfile::test_add PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXfile::test_remove PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXfile::test_find PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXfile::test_parse PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXfile::test_files PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXfile::test_save PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXfile::test_markup PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXfile::test_nonascii PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXfile::test_extensions PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXfile::test_mimetypes PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXfile::test_translate PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXfile::test_addtranslation PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXfile::test_withcomment PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXfile::test_withnewlines PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXfile::test_xmlentities PASSED [ 85%] 936s tests/translate/storage/test_tmx.py::TestTMXfile::test_controls_cleaning PASSED [ 85%] 936s tests/translate/storage/test_trados.py::test_unescape PASSED [ 85%] 936s tests/translate/storage/test_trados.py::test_escape PASSED [ 85%] 936s tests/translate/storage/test_ts.py::TestTS::test_construct PASSED [ 85%] 936s tests/translate/storage/test_ts2.py::TestTSUnit::test_isfuzzy PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSUnit::test_create PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSUnit::test_eq PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSUnit::test_target PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSUnit::test_escapes PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSUnit::test_difficult_escapes PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSUnit::test_note_sanity PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_get PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_set PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_create_blank PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_add PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_remove PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_find PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_translate PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_parse PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_files PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_save PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_markup PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_nonascii PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_extensions PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_mimetypes PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_basic PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_source PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_target PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_plurals PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_nplural PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_language PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_edit PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_obsolete PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_locations PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_merge_with_fuzzies PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_getid PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_backnforth PASSED [ 86%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_context PASSED [ 87%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_roundtrip_context PASSED [ 87%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_edit_missing_translation PASSED [ 87%] 936s tests/translate/storage/test_ts2.py::TestTSfile::test_missing_source PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtUnit::test_isfuzzy PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtUnit::test_create PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtUnit::test_eq PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtUnit::test_escapes PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtUnit::test_difficult_escapes PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtUnit::test_note_sanity PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtUnit::test_target PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_get PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_set PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtFile::test_create_blank PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtFile::test_add PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtFile::test_remove PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtFile::test_find PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtFile::test_parse PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtFile::test_files PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtFile::test_save PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtFile::test_extensions PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtFile::test_mimetypes PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtFile::test_translate PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtFile::test_markup PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtFile::test_nonascii PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtFile::test_simpleblock PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtFile::test_multipleblocks PASSED [ 87%] 936s tests/translate/storage/test_txt.py::TestTxtFile::test_no_segmentation PASSED [ 87%] 936s tests/translate/storage/test_utx.py::TestUtxUnit::test_isfuzzy PASSED [ 87%] 936s tests/translate/storage/test_utx.py::TestUtxUnit::test_create PASSED [ 87%] 936s tests/translate/storage/test_utx.py::TestUtxUnit::test_eq PASSED [ 87%] 936s tests/translate/storage/test_utx.py::TestUtxUnit::test_target PASSED [ 87%] 936s tests/translate/storage/test_utx.py::TestUtxUnit::test_escapes PASSED [ 87%] 936s tests/translate/storage/test_utx.py::TestUtxUnit::test_difficult_escapes PASSED [ 87%] 936s tests/translate/storage/test_utx.py::TestUtxUnit::test_note_sanity PASSED [ 88%] 936s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_get PASSED [ 88%] 936s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_set PASSED [ 88%] 936s tests/translate/storage/test_utx.py::TestUtxFile::test_create_blank PASSED [ 88%] 936s tests/translate/storage/test_utx.py::TestUtxFile::test_add PASSED [ 88%] 936s tests/translate/storage/test_utx.py::TestUtxFile::test_remove PASSED [ 88%] 936s tests/translate/storage/test_utx.py::TestUtxFile::test_find PASSED [ 88%] 936s tests/translate/storage/test_utx.py::TestUtxFile::test_translate PASSED [ 88%] 936s tests/translate/storage/test_utx.py::TestUtxFile::test_parse PASSED [ 88%] 936s tests/translate/storage/test_utx.py::TestUtxFile::test_files PASSED [ 88%] 936s tests/translate/storage/test_utx.py::TestUtxFile::test_save PASSED [ 88%] 936s tests/translate/storage/test_utx.py::TestUtxFile::test_markup PASSED [ 88%] 936s tests/translate/storage/test_utx.py::TestUtxFile::test_nonascii PASSED [ 88%] 936s tests/translate/storage/test_utx.py::TestUtxFile::test_extensions PASSED [ 88%] 936s tests/translate/storage/test_utx.py::TestUtxFile::test_mimetypes PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFTime::test_timestring PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFTime::test_time PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFUnit::test_isfuzzy PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFUnit::test_create PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFUnit::test_eq PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFUnit::test_target PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFUnit::test_escapes PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFUnit::test_note_sanity PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_get PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_set PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFUnit::test_difficult_escapes PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFUnit::test_wordfast_escaping PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFUnit::test_newlines PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFUnit::test_language_setting PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFUnit::test_istranslated PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFFile::test_create_blank PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFFile::test_add PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFFile::test_remove PASSED [ 88%] 936s tests/translate/storage/test_wordfast.py::TestWFFile::test_find PASSED [ 89%] 936s tests/translate/storage/test_wordfast.py::TestWFFile::test_translate PASSED [ 89%] 936s tests/translate/storage/test_wordfast.py::TestWFFile::test_parse PASSED [ 89%] 936s tests/translate/storage/test_wordfast.py::TestWFFile::test_files PASSED [ 89%] 936s tests/translate/storage/test_wordfast.py::TestWFFile::test_save PASSED [ 89%] 936s tests/translate/storage/test_wordfast.py::TestWFFile::test_markup PASSED [ 89%] 936s tests/translate/storage/test_wordfast.py::TestWFFile::test_nonascii PASSED [ 89%] 936s tests/translate/storage/test_wordfast.py::TestWFFile::test_extensions PASSED [ 89%] 936s tests/translate/storage/test_wordfast.py::TestWFFile::test_mimetypes PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_isfuzzy PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_create PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_eq PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_target PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_escapes PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_difficult_escapes PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_note_sanity PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_get PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_set PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_markreview PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_errors PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_accepted_control_chars PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_unaccepted_control_chars PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_create_blank PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_remove PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_find PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_translate PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parse PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_files PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_save PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_markup PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_nonascii PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_extensions PASSED [ 89%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_mimetypes PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_basic PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_namespace PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_source PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_target PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_source PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_target PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_sourcelanguage PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage_multi PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_notes PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_alttrans PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_fuzzy PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_xml_space PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parsing PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_entities PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_multiple_filenodes PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_indent PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add_target PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_closing_tags PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_context_groups PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_getlocations PASSED [ 90%] 936s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_addlocation PASSED [ 90%] 937s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_huge PASSED [ 90%] 937s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve_add PASSED [ 90%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_isfuzzy PASSED [ 90%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_create PASSED [ 90%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_eq PASSED [ 90%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_escapes PASSED [ 90%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_difficult_escapes PASSED [ 90%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_note_sanity PASSED [ 90%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_target PASSED [ 90%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_get PASSED [ 90%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_set PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_getlocations PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_create_blank PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_find PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_files PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_save PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_extensions PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_mimetypes PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_translate PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_markup PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nonascii PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_serialize PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit_unicode PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse_unicode_list PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_ordering PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_initial_comments PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_string_key PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nested PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_multiline PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_boolean PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_integer PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_no_quote_strings PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_double_quote_strings PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_single_quote_strings PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_double_quote_strings PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_single_quote_strings PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_escaped_double_quotes PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_newlines PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_list PASSED [ 91%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_dictionary PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_key_nesting PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add_to_mepty PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty_key PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dict_in_list PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dump_args PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_anchors PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_tagged_scalar PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_numeric PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_remove PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_special PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_quotes_roundtrip PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_create_blank PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_remove PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_find PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_parse PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_files PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_save PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_extensions PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_mimetypes PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_translate PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_markup PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_nonascii PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_list PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_wrong PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_invalid_value PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_empty PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_anchors PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_type_change PASSED [ 92%] 937s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_add PASSED [ 92%] 937s tests/translate/storage/test_zip.py::TestZIPFile::test_created PASSED [ 92%] 937s tests/translate/storage/test_zip.py::TestZIPFile::test_basic PASSED [ 92%] 937s tests/translate/storage/test_zip.py::TestZIPFile::test_structure PASSED [ 93%] 937s tests/translate/storage/test_zip.py::TestZIPFile::test_getunits PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_parse PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_tree PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_add PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_contains PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getitem PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getslice PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_iter PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_len PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_mul PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_offset PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_at_offset PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find_elems_with PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_flatten PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case1 PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case2 PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case3 PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case4 PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_insert PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_isleaf PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestStringElem::test_prune PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_base_placeables PASSED [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables XFAIL [ 93%] 937s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables XFAIL [ 93%] 937s tests/translate/storage/placeables/test_general.py::test_placeable_numbers PASSED [ 93%] 937s tests/translate/storage/placeables/test_general.py::test_placeable_newline PASSED [ 93%] 937s tests/translate/storage/placeables/test_general.py::test_placeable_alt_attr PASSED [ 93%] 937s tests/translate/storage/placeables/test_general.py::test_placeable_qt_formatting PASSED [ 93%] 937s tests/translate/storage/placeables/test_general.py::test_placeable_camelcase PASSED [ 93%] 937s tests/translate/storage/placeables/test_general.py::test_placeable_space PASSED [ 93%] 937s tests/translate/storage/placeables/test_general.py::test_placeable_punctuation PASSED [ 93%] 937s tests/translate/storage/placeables/test_general.py::test_placeable_xml_entity PASSED [ 94%] 937s tests/translate/storage/placeables/test_general.py::test_placeable_xml_tag PASSED [ 94%] 937s tests/translate/storage/placeables/test_general.py::test_placeable_option PASSED [ 94%] 937s tests/translate/storage/placeables/test_general.py::test_placeable_file PASSED [ 94%] 937s tests/translate/storage/placeables/test_general.py::test_placeable_email PASSED [ 94%] 937s tests/translate/storage/placeables/test_general.py::test_placeable_caps PASSED [ 94%] 937s tests/translate/storage/placeables/test_general.py::test_placeable_formatting PASSED [ 94%] 937s tests/translate/storage/placeables/test_general.py::test_placeable_doubleat PASSED [ 94%] 937s tests/translate/storage/placeables/test_general.py::test_placeable_brace PASSED [ 94%] 937s tests/translate/storage/placeables/test_general.py::test_python_placeable PASSED [ 94%] 937s tests/translate/storage/placeables/test_lisa.py::test_xml_to_strelem PASSED [ 94%] 937s tests/translate/storage/placeables/test_lisa.py::test_xml_space PASSED [ 94%] 937s tests/translate/storage/placeables/test_lisa.py::test_chunk_list PASSED [ 94%] 937s tests/translate/storage/placeables/test_lisa.py::test_set_strelem_to_xml PASSED [ 94%] 937s tests/translate/storage/placeables/test_lisa.py::test_unknown_xml_placeable PASSED [ 94%] 937s tests/translate/storage/placeables/test_terminology.py::TestTerminologyPlaceable::test_simple_terminology PASSED [ 94%] 937s tests/translate/storage/xml_extract/test_misc.py::test_reduce_tree PASSED [ 94%] 937s tests/translate/storage/xml_extract/test_misc.py::test_compose_mappings PASSED [ 94%] 937s tests/translate/storage/xml_extract/test_misc.py::test_parse_tag PASSED [ 94%] 937s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath_component PASSED [ 94%] 937s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath PASSED [ 94%] 937s tests/translate/storage/xml_extract/test_unit_tree.py::test__add_unit_to_tree PASSED [ 94%] 937s tests/translate/storage/xml_extract/test_xpath_breadcrumb.py::test_breadcrumb PASSED [ 94%] 937s tests/translate/tools/test_help.py::test_help[build_tmdb] PASSED [ 94%] 937s tests/translate/tools/test_help.py::test_help[phppo2pypo] PASSED [ 94%] 937s tests/translate/tools/test_help.py::test_help[poclean] PASSED [ 94%] 938s tests/translate/tools/test_help.py::test_help[pocompile] PASSED [ 94%] 938s tests/translate/tools/test_help.py::test_help[poconflicts] PASSED [ 94%] 938s tests/translate/tools/test_help.py::test_help[pocount] PASSED [ 94%] 938s tests/translate/tools/test_help.py::test_help[podebug] PASSED [ 94%] 938s tests/translate/tools/test_help.py::test_help[pogrep] PASSED [ 94%] 938s tests/translate/tools/test_help.py::test_help[pomerge] PASSED [ 94%] 938s tests/translate/tools/test_help.py::test_help[porestructure] PASSED [ 94%] 938s tests/translate/tools/test_help.py::test_help[posegment] PASSED [ 95%] 938s tests/translate/tools/test_help.py::test_help[poswap] PASSED [ 95%] 938s tests/translate/tools/test_help.py::test_help[poterminology] PASSED [ 95%] 938s tests/translate/tools/test_help.py::test_help[pretranslate] PASSED [ 95%] 938s tests/translate/tools/test_help.py::test_help[pydiff] PASSED [ 95%] 938s tests/translate/tools/test_help.py::test_help[pypo2phppo] PASSED [ 95%] 938s tests/translate/tools/test_junitmsgfmt.py::test_output[failure] PASSED [ 95%] 938s tests/translate/tools/test_junitmsgfmt.py::test_output[untranslated] PASSED [ 95%] 938s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_single_po PASSED [ 95%] 938s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_plural_po PASSED [ 95%] 938s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_single_po PASSED [ 95%] 938s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_plural_po PASSED [ 95%] 938s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_help PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_zero PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_one PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_two PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::TestCount::test_punctuation_divides_words PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::TestCount::test_xml_tags PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::TestCount::test_newlines PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::TestCount::test_variables_are_words PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::TestCount::test_plurals PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde XFAIL [ 95%] 938s tests/translate/tools/test_pocount.py::TestCount::test_msgid_blank PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::TestPOCount::test_translated PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzy PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslated PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::TestPOCount::test_total PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::TestPOCount::test_translatedsourcewords PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzysourcewords PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslatedsourcewords PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::TestPOCount::test_totalsourcewords PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-csv] PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-full] PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-strings] PASSED [ 95%] 938s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-words] PASSED [ 96%] 938s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-csv] PASSED [ 96%] 938s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-full] PASSED [ 96%] 938s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-strings] PASSED [ 96%] 938s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-words] PASSED [ 96%] 938s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-csv] PASSED [ 96%] 938s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-full] PASSED [ 96%] 938s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-strings] PASSED [ 96%] 938s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-words] PASSED [ 96%] 938s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-csv] PASSED [ 96%] 938s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-full] PASSED [ 96%] 938s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-strings] PASSED [ 96%] 938s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-words] PASSED [ 96%] 938s tests/translate/tools/test_pocount.py::test_cases[po-file] PASSED [ 96%] 938s tests/translate/tools/test_pocount.py::test_cases[po-file-fuzzy] PASSED [ 96%] 938s tests/translate/tools/test_pocount.py::test_cases[po-file-csv] PASSED [ 96%] 938s tests/translate/tools/test_pocount.py::test_cases[xliff-states-yes] PASSED [ 96%] 938s tests/translate/tools/test_pocount.py::test_cases[xliff-states-no] PASSED [ 96%] 939s tests/translate/tools/test_pocount.py::test_error_cases[mutually-exclusive] PASSED [ 96%] 939s tests/translate/tools/test_pocount.py::test_error_cases[missing-file] PASSED [ 96%] 939s tests/translate/tools/test_pocount.py::test_error_cases[no-args] PASSED [ 96%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_ignore_gtk PASSED [ 96%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_keep_target PASSED [ 96%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_blank PASSED [ 96%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_en PASSED [ 96%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_xxx PASSED [ 96%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_bracket PASSED [ 96%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode PASSED [ 96%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_at_placeholders PASSED [ 96%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_single_brace_placeholders PASSED [ 96%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_double_brace_placeholders PASSED [ 96%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_html PASSED [ 96%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_multiple_styles_of_placeholder PASSED [ 96%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped PASSED [ 97%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_at_placeholders PASSED [ 97%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_single_brace_placeholders PASSED [ 97%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_double_brace_placeholders PASSED [ 97%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_html PASSED [ 97%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_multiple_styles_of_placeholder PASSED [ 97%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified PASSED [ 97%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_at_placeholders PASSED [ 97%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_single_brace_placeholders PASSED [ 97%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_double_brace_placeholders PASSED [ 97%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_html PASSED [ 97%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_multiple_styles_of_placeholder PASSED [ 97%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_chef PASSED [ 97%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_po_variables PASSED [ 97%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_xliff_rewrite PASSED [ 97%] 939s tests/translate/tools/test_podebug.py::TestPODebug::test_hash PASSED [ 97%] 939s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgid PASSED [ 97%] 939s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgstr PASSED [ 97%] 939s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations PASSED [ 97%] 939s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_comments PASSED [ 97%] 939s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations_with_comment_enabled PASSED [ 97%] 939s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_searchstring PASSED [ 97%] 939s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_regex_searchstring PASSED [ 97%] 939s tests/translate/tools/test_pogrep.py::TestPOGrep::test_keep_translations PASSED [ 97%] 939s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_normalise PASSED [ 97%] 939s tests/translate/tools/test_pogrep.py::TestXLiffGrep::test_simplegrep PASSED [ 97%] 939s tests/translate/tools/test_pomerge.py::test_str2bool PASSED [ 97%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_mergesore_bad_data PASSED [ 97%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge PASSED [ 97%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge_no_locations PASSED [ 97%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_replacemerge PASSED [ 97%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_blanks PASSED [ 97%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_fuzzies PASSED [ 97%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_locations PASSED [ 97%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_with_locations PASSED [ 98%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_no_locations PASSED [ 98%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_reflowed_source_comments PASSED [ 98%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_comments_with_blank_lines PASSED [ 98%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dont_delete_unassociated_comments PASSED [ 98%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_trailing_newlines PASSED [ 98%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_minor_start_and_end_of_sentence_changes PASSED [ 98%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_last_entry_in_a_file PASSED [ 98%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs XFAIL [ 98%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_comments_layout PASSED [ 98%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dos2unix PASSED [ 98%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_xliff PASSED [ 98%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_po_into_xliff PASSED [ 98%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_po PASSED [ 98%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_dont_merge_kde_comments_found_in_translation PASSED [ 98%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_untranslated_with_kde_disambiguation PASSED [ 98%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_header_entries PASSED [ 98%] 939s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_different_locations PASSED [ 98%] 939s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_simple PASSED [ 98%] 939s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_punctuation PASSED [ 98%] 939s tests/translate/tools/test_poterminology.py::TestPOTerminology::test_term_extraction PASSED [ 98%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_pretranslatepo_blank PASSED [ 98%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_simple PASSED [ 98%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_messages_marked_fuzzy PASSED [ 98%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals_with_fuzzy_matching PASSED [ 98%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change XFAIL [ 98%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_change PASSED [ 98%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_and_whitespace_change PASSED [ 98%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes XFAIL [ 98%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently XFAIL [ 98%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_dont_duplicate PASSED [ 98%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_new_overides_old PASSED [ 98%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments_with_blank_comment_lines PASSED [ 98%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_empty_commentlines PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgidcomments PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_resurect_obsolete_messages PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_typecomments PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_xliff_states PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_pretranslatepo_blank PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_simple PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_messages_marked_fuzzy PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change XFAIL [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_change PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_and_whitespace_change PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes XFAIL [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently XFAIL [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_new_overides_old PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments_with_blank_comment_lines PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_empty_commentlines PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgidcomments PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_resurect_obsolete_messages PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_typecomments PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_xliff_states PASSED [ 99%] 939s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_help PASSED [ 99%] 939s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_single_po PASSED [ 99%] 939s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_plural_po PASSED [ 99%] 939s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_single_po PASSED [ 99%] 939s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_plural_po PASSED [ 99%] 939s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_help PASSED [ 99%] 939s tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff PASSED [ 99%] 940s tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff PASSED [100%] 940s 940s =============================== warnings summary =============================== 940s tests/odf_xliff/test_odf_xliff.py::test_roundtrip 940s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.yhF5Vh/autopkgtest_tmp/tests/odf_xliff/test_2.odt'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid 940s Warning: unclosed file <_io.TextIOWrapper name='TestAndroid2POCommand_test_convertandroid/en.po' mode='r' encoding='UTF-8'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 940s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 940s Warning: unclosed file <_io.TextIOWrapper name='TestCSV2POCommand_test_columnorder/test.po' mode='r' encoding='UTF-8'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot 940s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_pot/simple.pot'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po 940s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po 940s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_po/simple.po'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates 940s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_remove_duplicates/simple.po'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf 940s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_xlf/simple.xlf'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 940s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 940s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_columnorder/test.csv' mode='r' encoding='UTF-8'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context 940s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_context/test.csv' mode='r' encoding='UTF-8'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing 940s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey 940s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey 940s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing 940s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey 940s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey 940s Warning: Could not find accesskey for key.accesskey 940s 940s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 940s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file 940s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten 940s Warning: unclosed file <_io.BufferedReader name='translation/file1.po'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 940s Warning: unclosed file <_io.BufferedWriter name='translated/file1.html'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert 940s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.yhF5Vh/autopkgtest_tmp/tests/translate/convert/test.idml'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po 940s Warning: unclosed file <_io.BufferedReader name='translation.po'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 940s Warning: unclosed file <_io.FileIO name='input.oo' mode='rb' closefd=True> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 940s Warning: unclosed file <_io.FileIO name='output.oo' mode='wb' closefd=True> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey 940s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey 940s Warning: Could not find accesskey for prop.accesskey 940s 940s tests/translate/convert/test_po2tmx.py: 26 warnings 940s tests/translate/filters/test_pofilter.py: 13 warnings 940s tests/translate/storage/test_tbx.py: 17 warnings 940s tests/translate/storage/test_tmx.py: 24 warnings 940s Warning: This search incorrectly ignores the root element, and will be fixed in a future version. If you rely on the current behaviour, change it to './/body' 940s 940s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert 940s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert/simple.po'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 940s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf16/simple.po'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 940s Warning: unclosed file <_io.BufferedWriter name='simple.po'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 940s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 940s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_wrong/simple.po'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 940s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf8/simple.po'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex 940s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_menuex/simple.po'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot 940s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_pot/simple.pot'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po 940s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_po/simple.po'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates 940s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_remove_duplicates/simple.po'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 940s Warning: unclosed file <_io.BufferedWriter name='simple.odt'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 940s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.yhF5Vh/autopkgtest_tmp/tests/translate/convert/test.odt'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename 940s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_preserve_filename/snippet.xlf'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot 940s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_pot/simple.pot'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po 940s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_po/simple.po'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates 940s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_remove_duplicates/simple.po'> 940s Enable tracemalloc to get traceback where the object was allocated. 940s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 940s 940s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 940s Warning: DTD parse error: :1:36:FATAL:PARSER:ERR_ENTITY_NOT_FINISHED: xmlParseEntityDecl: entity test.me not terminated 940s 940s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 940s Warning: DTD file '' does not validate 940s 940s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 940s --------------------------- snapshot report summary ---------------------------- 940s 23 snapshots passed. 940s =========================== short test summary info ============================ 940s SKIPPED [1] tests/translate/storage/test_cpo.py:15: could not import 'translate.storage.cpo': gettext PO library not found 940s SKIPPED [1] tests/translate/storage/test_fluent.py:29: could not import 'translate.storage.fluent': No module named 'fluent' 940s SKIPPED [1] tests/translate/filters/test_checks.py:1429: Spell checking for af is not available 940s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence - Not Implemented 940s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence - Not Implemented 940s XFAIL tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template - Need to review if we want this behaviour 940s XFAIL tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template - Need to review if we want this behaviour 940s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change - Not implemented - review if this is even correct 940s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes - Not Implemented - needs review 940s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently - Not Implemented - review if this is even correct 940s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change - Not implemented - review if this is even correct 940s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes - Not Implemented - needs review 940s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently - Not Implemented - review if this is even correct 940s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates - This is invalid YAML document 940s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates - This is invalid YAML document 940s XFAIL tests/translate/filters/test_checks.py::test_acceleratedvariables - Accelerated variables needs a better implementation 940s XFAIL tests/translate/filters/test_checks.py::test_musttranslatewords - FIXME: All fails() tests are not working 940s XFAIL tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time - Bug #3408 940s XFAIL tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags - Bug #3506 940s 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. 940s XFAIL tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases - Not Implemented 940s XFAIL tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases - Not Implemented 940s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_comment_following - Not Implemented 940s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting - Not Implemented 940s 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 940s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals - Not Implemented 940s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 940s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis - Incompatible wrapping with gettext, see #5251 940s XFAIL tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove - removal not working in full page 940s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals - Not Implemented 940s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 940s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis - Incompatible wrapping with gettext, see #5251 940s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment - Not sure if this can not be parsed gracefully 940s XFAIL tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity - Not Implemented 940s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables - Test needs fixing, disabled for now 940s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables - Test needs fixing, disabled for now 940s XFAIL tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde - Support commented out pending removal 940s XFAIL tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs - Not Implemented 940s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change - Not Implemented 940s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes - Not Implemented 940s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently - Not Implemented 940s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change - Not Implemented 940s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes - Not Implemented 940s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently - Not Implemented 940s ========== 3298 passed, 3 skipped, 41 xfailed, 126 warnings in 17.69s ========== 940s autopkgtest [21:45:54]: test python3-translate-commands: -----------------------] 941s python3-translate-commands PASS 941s autopkgtest [21:45:55]: test python3-translate-commands: - - - - - - - - - - results - - - - - - - - - - 941s autopkgtest [21:45:55]: @@@@@@@@@@@@@@@@@@@@ summary 941s translate-toolkit PASS 941s python3-translate PASS 941s python3-translate-commands PASS 989s nova [W] Skipping flock for amd64 989s Creating nova instance adt-oracular-i386-translate-toolkit-20240720-213014-juju-7f2275-prod-proposed-migration-environment-3-8f689595-be47-4b8d-bb6c-40808b11aa11 from image adt/ubuntu-oracular-amd64-server-20240720.img (UUID 7d1e67ab-b95e-41e3-9f93-a01c05dbb6a2)... 989s nova [W] Skipping flock for amd64 989s Creating nova instance adt-oracular-i386-translate-toolkit-20240720-213014-juju-7f2275-prod-proposed-migration-environment-3-8f689595-be47-4b8d-bb6c-40808b11aa11 from image adt/ubuntu-oracular-amd64-server-20240720.img (UUID 7d1e67ab-b95e-41e3-9f93-a01c05dbb6a2)...